:root{--bg-primary:#000;--bg-secondary:#1c1c1e;--bg-tertiary:#2c2c2e;--bg-elevated:#1c1c1ef2;--glass-bg:#ffffff0d;--glass-bg-hover:#ffffff14;--glass-border:#ffffff1a;--glass-border-hover:#fff3;--glass-shadow:0 8px 32px #0006;--text-primary:#fffffff2;--text-secondary:#fff9;--text-tertiary:#fff6;--text-inverse:#000000f2;--accent-blue:#007aff;--accent-purple:#5856d6;--accent-pink:#ff2d55;--accent-red:#ff3b30;--accent-orange:#ff9500;--accent-yellow:#fc0;--accent-green:#34c759;--accent-teal:#00c7be;--accent-cyan:#32ade6;--accent-indigo:#5856d6;--gradient-primary:linear-gradient(135deg, var(--accent-blue), var(--accent-purple));--gradient-secondary:linear-gradient(135deg, var(--accent-purple), var(--accent-pink));--gradient-accent:linear-gradient(135deg, var(--accent-teal), var(--accent-blue));--gradient-mesh:radial-gradient(at 40% 20%, #7877c64d 0px, transparent 50%), radial-gradient(at 80% 0%, #ff2d5533 0px, transparent 50%), radial-gradient(at 0% 50%, #00c7be33 0px, transparent 50%), radial-gradient(at 80% 50%, #ff950026 0px, transparent 50%), radial-gradient(at 0% 100%, #5856d633 0px, transparent 50%);--font-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, sans-serif;--font-text:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif;--font-mono:"SF Mono", "JetBrains Mono", "Fira Code", "Consolas", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:4rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-2xl:32px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080;--shadow-xl:0 16px 48px #0009;--shadow-glow:0 0 40px #007aff4d;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.35s cubic-bezier(.4, 0, .2, 1);--transition-bounce:.5s cubic-bezier(.34, 1.56, .64, 1);--sidebar-width:260px;--topbar-height:48px;--dock-height:80px;--content-max-width:1400px;--blur-sm:8px;--blur-md:16px;--blur-lg:40px;--blur-xl:64px}:root.light{--bg-primary:#f5f5f7;--bg-secondary:#fff;--bg-tertiary:#e5e5ea;--bg-elevated:#fffffff2;--glass-bg:#00000008;--glass-bg-hover:#0000000d;--glass-border:#0000001a;--glass-border-hover:#00000026;--glass-shadow:0 8px 32px #00000014;--text-primary:#000000f2;--text-secondary:#0009;--text-tertiary:#0006;--text-inverse:#fffffff2;--shadow-sm:0 1px 2px #00000014;--shadow-md:0 4px 12px #0000001a;--shadow-lg:0 8px 24px #00000026;--shadow-xl:0 16px 48px #0003}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-text);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;overflow:hidden}#app{background:var(--gradient-mesh), var(--bg-primary);background-attachment:fixed;flex-direction:column;min-height:100vh;display:flex}a{color:var(--accent-blue);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-cyan)}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}img{max-width:100%;height:auto;display:block}.top-bar{height:var(--topbar-height);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--blur-lg));border-bottom:1px solid var(--glass-border);padding:0 var(--space-4);z-index:100;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.top-bar-left,.top-bar-center,.top-bar-right{align-items:center;gap:var(--space-3);display:flex}.top-bar-left{flex:1}.top-bar-center{flex:2;justify-content:center}.top-bar-right{flex:1;justify-content:flex-end}.apple-menu{border-radius:var(--radius-md);background:var(--gradient-primary);width:32px;height:32px;font-weight:700;font-size:var(--text-xs);color:#fff;transition:transform var(--transition-bounce);justify-content:center;align-items:center;display:flex}.apple-menu:hover{transform:scale(1.1)}.breadcrumb{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);display:flex}.breadcrumb .separator{color:var(--text-tertiary)}.breadcrumb .current{color:var(--text-primary);font-weight:500}.search-trigger{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:var(--text-sm);min-width:280px;transition:all var(--transition-fast);display:flex}.search-trigger:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover)}.search-icon{background:var(--glass-bg);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:500}.top-bar-icon{border-radius:var(--radius-md);background:var(--glass-bg);width:32px;height:32px;font-size:var(--text-base);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.top-bar-icon:hover{background:var(--glass-bg-hover);transform:scale(1.1)}.clock{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary);font-weight:500}.main-container{margin-top:var(--topbar-height);height:calc(100vh - var(--topbar-height) - var(--dock-height));display:flex}.sidebar{width:var(--sidebar-width);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--blur-lg));border-right:1px solid var(--glass-border);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.sidebar-header{padding:var(--space-4);border-bottom:1px solid var(--glass-border)}.profile-mini{align-items:center;gap:var(--space-3);display:flex}.avatar{border-radius:var(--radius-full);background:var(--gradient-primary);width:40px;height:40px;font-weight:700;font-size:var(--text-sm);color:#fff;justify-content:center;align-items:center;display:flex}.profile-info{flex-direction:column;display:flex}.profile-info .name{font-weight:600;font-size:var(--text-sm)}.profile-info .status{font-size:var(--text-xs);color:var(--text-secondary)}.profile-info .status.online{color:var(--accent-green)}.nav-drives{padding:var(--space-2);flex:1;overflow-y:auto}.drive-section{margin-bottom:var(--space-1)}.drive-header{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);transition:all var(--transition-fast);font-weight:500;display:flex}.drive-header:hover{background:var(--glass-bg-hover)}.drive-icon{font-size:var(--text-base)}.drive-name{text-align:left;flex:1}.drive-arrow{color:var(--text-tertiary);transition:transform var(--transition-fast)}.drive-section.collapsed .drive-arrow{transform:rotate(90deg)}.drive-items{margin-left:var(--space-6);max-height:500px;transition:max-height var(--transition-normal);overflow:hidden}.drive-section.collapsed .drive-items{max-height:0}.nav-item{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-secondary);transition:all var(--transition-fast);display:flex}.nav-item:hover{background:var(--glass-bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--accent-blue);color:#fff}.nav-icon{font-size:var(--text-base)}.content{padding:var(--space-6);flex:1;overflow:hidden auto}.loading-container{justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;min-height:400px;display:flex}.loading-spinner{border:3px solid var(--glass-border);border-top-color:var(--accent-blue);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-container{text-align:center;padding:var(--space-8)}.error-container h2{margin-bottom:var(--space-4);color:var(--accent-red)}.error-container button{margin-top:var(--space-4);padding:var(--space-2) var(--space-4);background:var(--accent-blue);color:#fff;border-radius:var(--radius-md)}.dock{height:var(--dock-height);padding:var(--space-2);z-index:100;justify-content:center;align-items:center;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.dock-container{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--blur-lg));border:1px solid var(--glass-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);display:flex}.dock-item{border-radius:var(--radius-lg);background:var(--glass-bg);width:52px;height:52px;font-size:var(--text-2xl);transition:all var(--transition-bounce);justify-content:center;align-items:center;display:flex;position:relative}.dock-item:hover{background:var(--glass-bg-hover);transform:translateY(-8px)scale(1.2)}.dock-item.active:after{content:"";background:var(--accent-blue);border-radius:50%;width:4px;height:4px;position:absolute;bottom:-4px}.dock-icon{font-size:inherit}.modal{z-index:200;opacity:0;visibility:hidden;transition:all var(--transition-normal);justify-content:center;align-items:flex-start;padding-top:15vh;display:flex;position:fixed;inset:0}.modal.open{opacity:1;visibility:visible}.modal-backdrop{backdrop-filter:blur(var(--blur-sm));background:#00000080;position:absolute;inset:0}.modal-content{z-index:1;background:var(--bg-elevated);-webkit-backdrop-filter:blur(var(--blur-xl));border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);transition:transform var(--transition-normal);position:relative;transform:translateY(-20px)}.modal.open .modal-content{transform:translateY(0)}.search-content{width:600px;max-width:90vw;overflow:hidden}.search-input{width:100%;padding:var(--space-4);border:none;border-bottom:1px solid var(--glass-border);font-size:var(--text-lg);color:var(--text-primary);background:0 0;outline:none}.search-input::placeholder{color:var(--text-tertiary)}.search-results{max-height:400px;padding:var(--space-2);overflow-y:auto}.search-result{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);transition:background var(--transition-fast);display:flex}.search-result:hover{background:var(--glass-bg-hover)}.result-icon{font-size:var(--text-xl)}.result-info{flex-direction:column;flex:1;display:flex}.result-name{color:var(--text-primary);font-weight:500}.result-path{font-size:var(--text-xs);color:var(--text-tertiary);font-family:var(--font-mono)}.result-drive{font-size:var(--text-xs);padding:var(--space-1) var(--space-2);background:var(--glass-bg);border-radius:var(--radius-sm);color:var(--text-secondary)}.search-footer{gap:var(--space-4);padding:var(--space-3);border-top:1px solid var(--glass-border);font-size:var(--text-xs);color:var(--text-tertiary);display:flex}.search-hint,.no-results{padding:var(--space-4);text-align:center;color:var(--text-tertiary)}.ai-content{flex-direction:column;width:500px;max-width:90vw;max-height:70vh;display:flex}.ai-header{padding:var(--space-4);border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;display:flex}.ai-header h3{font-size:var(--text-lg);font-weight:600}.close-btn{border-radius:var(--radius-full);background:var(--glass-bg);width:28px;height:28px;font-size:var(--text-lg);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.close-btn:hover{background:var(--accent-red);color:#fff}.ai-messages{padding:var(--space-4);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.ai-message{max-width:85%;padding:var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-sm)}.ai-message.bot{background:var(--glass-bg);border:1px solid var(--glass-border);align-self:flex-start}.ai-message.user{background:var(--accent-blue);color:#fff;align-self:flex-end}.ai-message.loading{animation:1s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.ai-message.error{border-color:var(--accent-red);background:#ff3b3033}.ai-input-form{gap:var(--space-2);padding:var(--space-4);border-top:1px solid var(--glass-border);display:flex}.ai-input-form input{padding:var(--space-3);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--text-sm);outline:none;flex:1}.ai-input-form input:focus{border-color:var(--accent-blue)}.ai-input-form button{padding:var(--space-3) var(--space-5);background:var(--accent-blue);color:#fff;border-radius:var(--radius-lg);transition:all var(--transition-fast);font-weight:500}.ai-input-form button:hover{background:var(--accent-purple)}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--blur-lg));border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--glass-shadow)}.glass-panel:hover{border-color:var(--glass-border-hover)}.bento-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.bento-item{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--blur-lg));border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-5);transition:all var(--transition-normal);overflow:hidden}.bento-item:hover{border-color:var(--glass-border-hover);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.bento-item.span-2{grid-column:span 2}.bento-item.span-3{grid-column:span 3}.bento-item.row-2{grid-row:span 2}.page-header{margin-bottom:var(--space-8)}.page-title{font-size:var(--text-4xl);background:var(--gradient-primary);-webkit-text-fill-color:transparent;margin-bottom:var(--space-2);background-clip:text;font-weight:700}.page-subtitle{font-size:var(--text-lg);color:var(--text-secondary)}.section{margin-bottom:var(--space-8)}.section-title{font-size:var(--text-xl);margin-bottom:var(--space-4);align-items:center;gap:var(--space-2);font-weight:600;display:flex}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-lg);font-size:var(--text-sm);transition:all var(--transition-fast);cursor:pointer;font-weight:500;display:inline-flex}.btn-primary{background:var(--gradient-primary);color:#fff}.btn-primary:hover{box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn-secondary{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-primary)}.btn-secondary:hover{background:var(--glass-bg-hover)}.btn-ghost{color:var(--accent-blue);background:0 0}.btn-ghost:hover{background:var(--glass-bg)}.tag{padding:var(--space-1) var(--space-3);background:var(--glass-bg);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--text-secondary);align-items:center;font-weight:500;display:inline-flex}.tag.primary{color:var(--accent-blue);background:#007aff33}.tag.success{color:var(--accent-green);background:#34c75933}.tag.warning{color:var(--accent-orange);background:#ff950033}.tag.error{color:var(--accent-red);background:#ff3b3033}.stat-card{gap:var(--space-1);flex-direction:column;display:flex}.stat-value{font-size:var(--text-3xl);font-weight:700;font-family:var(--font-mono);background:var(--gradient-primary);-webkit-text-fill-color:transparent;background-clip:text}.stat-label{font-size:var(--text-sm);color:var(--text-secondary)}.timeline{padding-left:var(--space-8);position:relative}.timeline:before{content:"";background:var(--glass-border);width:2px;position:absolute;top:0;bottom:0;left:0}.timeline-item{margin-bottom:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--glass-border);position:relative}.timeline-item:last-child{border-bottom:none}.timeline-item:before{content:"";left:calc(-1 * var(--space-8) - 5px);background:var(--accent-blue);border:2px solid var(--bg-primary);border-radius:50%;width:12px;height:12px;position:absolute;top:0}.skill-bar{margin-bottom:var(--space-3)}.skill-bar-header{margin-bottom:var(--space-1);font-size:var(--text-sm);justify-content:space-between;display:flex}.skill-bar-track{background:var(--glass-bg);border-radius:var(--radius-full);height:8px;overflow:hidden}.skill-bar-fill{background:var(--gradient-primary);border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow)}.card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);transition:all var(--transition-normal);overflow:hidden}.card:hover{box-shadow:var(--shadow-lg);border-color:var(--glass-border-hover);transform:translateY(-4px)}.card-image{aspect-ratio:16/9;background:var(--bg-tertiary);overflow:hidden}.card-image img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-normal)}.card:hover .card-image img{transform:scale(1.05)}.card-body{padding:var(--space-4)}.card-title{font-size:var(--text-lg);margin-bottom:var(--space-2);font-weight:600}.card-description{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-3)}.card-footer{gap:var(--space-2);flex-wrap:wrap;display:flex}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@media (width<=1024px){.sidebar{left:-100%;top:var(--topbar-height);height:calc(100vh - var(--topbar-height));z-index:90;transition:left var(--transition-normal);position:fixed}.sidebar.open{left:0}.main-container{display:block}.search-trigger{min-width:auto}.search-trigger span:last-child{display:none}.bento-item.span-2,.bento-item.span-3{grid-column:span 1}}@media (width<=768px){:root{--sidebar-width:100%;--dock-height:70px}.top-bar-center{display:none}.dock-container{gap:var(--space-1);padding:var(--space-2)}.dock-item{width:44px;height:44px;font-size:var(--text-xl)}.page-title{font-size:var(--text-2xl)}.content{padding:var(--space-4)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fadeIn var(--transition-normal) ease-out}.animate-slide-up{animation:slideUp var(--transition-normal) ease-out}.animate-slide-down{animation:slideDown var(--transition-normal) ease-out}.animate-scale-in{animation:scaleIn var(--transition-normal) ease-out}.bento-grid>*{animation:slideUp var(--transition-slow) ease-out backwards}.bento-grid>:first-child{animation-delay:0s}.bento-grid>:nth-child(2){animation-delay:50ms}.bento-grid>:nth-child(3){animation-delay:.1s}.bento-grid>:nth-child(4){animation-delay:.15s}.bento-grid>:nth-child(5){animation-delay:.2s}.bento-grid>:nth-child(6){animation-delay:.25s}.bento-grid>:nth-child(7){animation-delay:.3s}.bento-grid>:nth-child(8){animation-delay:.35s}
