:root{--bg-color:#f8f9fa;--sidebar-bg:#fff;--card-bg:#fff;--text-primary:#1a1a1a;--text-secondary:#666;--accent-color:#000;--border-color:#e5e7eb;--badge-bg:#f3f4f6;--badge-text:#374151;--shadow:0 1px 3px 0 #0000001a, 0 1px 2px 0 #0000000f;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--container-max-width:1200px}[data-theme=dark]{--bg-color:#111;--sidebar-bg:#1a1a1a;--card-bg:#1a1a1a;--text-primary:#fff;--text-secondary:#a1a1aa;--accent-color:#fff;--border-color:#27272a;--badge-bg:#27272a;--badge-text:#e4e4e7;--shadow:0 4px 6px -1px #0000004d}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:#0000001a;border-radius:20px}[data-theme=dark] ::-webkit-scrollbar-thumb{background-color:#ffffff1a}::-webkit-scrollbar-thumb:hover{background-color:var(--text-secondary)}*{scrollbar-width:thin;scrollbar-color:#0000001a transparent}[data-theme=dark] *{scrollbar-color:#ffffff1a transparent}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-color);color:var(--text-primary);line-height:1.5}html.theme-ready body{transition:background-color .3s,color .3s}a{color:inherit;text-decoration:none}ul{list-style:none}.container{max-width:var(--container-max-width);grid-template-columns:320px 1fr 150px;align-items:start;gap:3rem;margin:0 auto;padding:2rem;display:grid}.container>*{min-width:0}@media (width<=1024px){.container{grid-template-columns:320px 1fr;gap:2rem}}@media (width<=768px){.container{grid-template-columns:1fr;padding:1rem}}.sidebar{flex-direction:column;gap:1rem;display:flex;position:sticky;top:2rem}.profile-card,.contact-card{background-color:var(--sidebar-bg);border:1px solid var(--border-color);border-radius:2rem;padding:1.25rem 1.5rem;box-shadow:0 8px 24px -4px #0000001f}[data-theme=dark] .profile-card,[data-theme=dark] .contact-card{box-shadow:0 8px 24px -4px #0006}.avatar-container{aspect-ratio:1;border:1px solid var(--border-color);background:linear-gradient(135deg,#f0f7ff 0%,#e0e7ff 100%);border-radius:1.5rem;justify-content:center;align-items:center;width:100%;margin-bottom:1.25rem;display:flex;overflow:hidden;box-shadow:0 4px 12px #00000014}[data-theme=dark] .avatar-container{background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);box-shadow:0 4px 12px #0000004d}.avatar{object-fit:cover;object-position:center;transform-origin:50%;backface-visibility:hidden;will-change:transform;width:100%;height:100%;transition:transform .45s cubic-bezier(.22,1,.36,1);display:block;transform:scale(1)translateZ(0)}.avatar:hover{transform:scale(1.06)translateZ(0)}@media (prefers-reduced-motion:reduce){.avatar{transition:none}.avatar:hover{transform:none}}.name-heading{color:var(--text-primary);margin-bottom:.75rem;font-size:2.25rem;font-weight:700;line-height:1.1}.name-heading .greeting{color:var(--text-secondary);margin-bottom:.25rem;font-size:1.1rem;font-weight:500;display:inline-block}.title{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1.1rem;font-weight:400}.status-badge{border:1px solid var(--border-color);color:var(--text-secondary);letter-spacing:.02em;background-color:#0000;border-radius:.75rem;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.5rem 1rem;font-size:.8rem;font-weight:600;display:inline-flex}.status-badge .dot{background-color:#10b981;border-radius:50%;width:10px;height:10px;animation:2s infinite pulse-zoom;position:relative}@keyframes pulse-zoom{0%{transform:scale(1);box-shadow:0 0 #10b981b3}70%{transform:scale(1.2);box-shadow:0 0 0 6px #10b98100}to{transform:scale(1);box-shadow:0 0 #10b98100}}.location{color:var(--text-secondary);align-items:center;gap:.75rem;font-size:1rem;display:flex}.contact-card{flex-direction:column;gap:1rem;display:flex}.contact-item{color:var(--text-secondary);align-items:center;gap:1rem;font-size:1rem;display:flex}.contact-btn{border:1px solid var(--border-color);cursor:pointer;width:100%;color:var(--text-primary);background-color:#fff;border-radius:.75rem;justify-content:center;align-items:center;margin-top:.25rem;padding:.6rem 1rem;font-family:inherit;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}[data-theme=dark] .contact-btn{background-color:#1a1a1a}.contact-btn:hover{background-color:var(--badge-bg)}.social-links{gap:.75rem;margin-top:.5rem;display:flex}.social-icon{color:#fff;background-color:#1a1a1a;border-radius:.75rem;flex:1;justify-content:center;align-items:center;height:42px;transition:all .2s;display:flex}[data-theme=dark] .social-icon{background-color:#27272a}.social-icon:hover{background-color:#000;transform:translateY(-2px)}@media (width<=768px){.sidebar{position:static}}.skeleton{background-color:var(--sk-base);border-radius:10px;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg, transparent, var(--sk-shine), transparent);animation:1.6s ease-in-out infinite sk-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes sk-shimmer{to{transform:translate(100%)}}:root{--sk-base:#e8eaed;--sk-shine:#ffffffa6}[data-theme=dark]{--sk-base:#27272a;--sk-shine:#ffffff0f}.sk-avatar{aspect-ratio:1;border-radius:1.5rem;width:100%;margin-bottom:1.25rem}.sk-line{border-radius:6px;height:14px;margin-bottom:10px}.sk-line:last-child{margin-bottom:0}.sk-line.lg{height:30px;margin-bottom:14px}.sk-w-40{width:40%}.sk-w-50{width:50%}.sk-w-60{width:60%}.sk-w-70{width:70%}.sk-w-80{width:80%}.sk-w-90{width:90%}.sk-badge{border-radius:.75rem;width:65%;height:30px;margin:14px 0}.sk-btn{border-radius:.75rem;height:42px;margin-top:10px}.sk-social{gap:.75rem;margin-top:12px;display:flex}.sk-social-item{border-radius:.75rem;flex:1;height:42px}.sk-section{margin-bottom:2.75rem}.sk-badge-sm{border-radius:6px;width:130px;height:22px;margin-bottom:1.1rem}.sk-block{border-radius:1rem;height:90px;margin-top:14px}.sk-nav{flex-direction:column;align-self:start;gap:1.1rem;display:flex;position:sticky;top:2rem}.sk-nav-dot{border-radius:6px;width:64px;height:10px}@media (width<=1024px){.sk-nav{display:none}}.app-enter{animation:.55s cubic-bezier(.22,1,.36,1) both app-enter}@keyframes app-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.skeleton:after,.app-enter{animation:none}}
