@import "https://fonts.googleapis.com/css2?family=Geist+Mono:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600;700;800;900&display=swap";:root,body.theme-liquid,body.theme-dark{--bg-primary:#0b0e14;--bg-secondary:#ffffff0a;--bg-glass:#121722a6;--bg-glass-card:#13192694;--bg-glass-card-hover:#1c2436b8;--glass-specular:#ffffff26;--glass-specular-hover:#ffffff52;--border-color:#ffffff1a;--border-hover:#ffffff40;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--accent-color:#38bdf8;--accent-rgb:56, 189, 248;--accent-dim:#38bdf824;--glass-blur:blur(24px) saturate(190%);--glass-shadow:0 10px 32px 0 #0000005c;--glass-shadow-hover:0 16px 48px 0 #0000007a;--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro", "Inter", system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro", "Inter", system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro", "Inter", system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--card-shadow:none;--transition-speed:.28s}body.theme-slate,body.theme-void{--bg-primary:#12161f;--bg-secondary:#ffffff0d;--bg-glass:#181e2ca6;--bg-glass-card:#19203099;--bg-glass-card-hover:#222c42bf;--glass-specular:#ffffff2e;--glass-specular-hover:#ffffff59;--border-color:#ffffff1f;--border-hover:#ffffff47;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--accent-color:#60a5fa;--accent-rgb:96, 165, 250;--accent-dim:#60a5fa24}body.theme-frost,body.theme-light{--bg-primary:#e6ebf2;--bg-secondary:#fff9;--bg-glass:#ffffffb3;--bg-glass-card:#ffffffa6;--bg-glass-card-hover:#ffffffe0;--glass-specular:#ffffffe6;--glass-specular-hover:#fff;--border-color:#ffffffa6;--border-hover:#38bdf880;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--accent-color:#0284c7;--accent-rgb:2, 132, 199;--accent-dim:#0284c71a;--glass-blur:blur(28px) saturate(200%);--glass-shadow:0 10px 32px 0 #0f172a14;--glass-shadow-hover:0 16px 44px 0 #0f172a24}body.accent-cyan,body.accent-blue,body.accent-mono{--accent-color:#38bdf8;--accent-rgb:56, 189, 248;--accent-dim:#38bdf824}body.accent-purple{--accent-color:#c084fc;--accent-rgb:192, 132, 252;--accent-dim:#c084fc24}body.accent-orange{--accent-color:#fb923c;--accent-rgb:251, 146, 60;--accent-dim:#fb923c24}body.accent-emerald{--accent-color:#34d399;--accent-rgb:52, 211, 153;--accent-dim:#34d39924}body.accent-white{--accent-color:#fff;--accent-rgb:255, 255, 255;--accent-dim:#ffffff26}body.theme-frost.accent-white,body.theme-light.accent-white{--accent-color:#0f172a;--accent-rgb:15, 23, 42;--accent-dim:#0f172a1a}body.theme-frost.accent-white .control-btn.active,body.theme-light.accent-white .control-btn.active{background:#0f172a;box-shadow:0 2px 10px #0f172a59;color:#fff!important}body.accent-white .control-btn.active{background:#fff;box-shadow:0 0 0 1px #00000026,0 2px 10px #ffffff73;color:#0b0f17!important}body.accent-red{--accent-color:#f43f5e;--accent-rgb:244, 63, 94;--accent-dim:#f43f5e24}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;max-width:100vw;overflow-x:hidden}body{background-color:var(--bg-primary);max-width:100vw;color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-synthesis:none;transition:background-color var(--transition-speed) ease, color var(--transition-speed) ease, border-color var(--transition-speed) ease;line-height:1.5;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--accent-color)}.portfolio-liquid-root{width:100%;min-height:100vh;position:relative;overflow-x:hidden}.liquid-ambient-backdrop{pointer-events:none;z-index:0;background-color:var(--bg-primary);width:100vw;height:100vh;transition:background-color var(--transition-speed) ease;position:fixed;top:0;left:0;overflow:hidden}.liquid-orb{filter:blur(100px);opacity:.55;will-change:transform;border-radius:50%;animation:24s cubic-bezier(.4,0,.2,1) infinite alternate liquidFloat;position:absolute}.liquid-orb-1{background:radial-gradient(circle, rgba(var(--accent-rgb), .38) 0%, rgba(var(--accent-rgb), .08) 60%, transparent 80%);width:550px;height:550px;animation-duration:22s;top:-120px;left:10%}.liquid-orb-2{background:radial-gradient(circle,#8b5cf64d 0%,#6366f114 60%,#0000 80%);width:500px;height:500px;animation-duration:28s;animation-delay:-6s;top:35%;right:-60px}.liquid-orb-3{background:radial-gradient(circle,#0ea5e942 0%,#38bdf80f 60%,#0000 80%);width:580px;height:580px;animation-duration:26s;animation-delay:-12s;bottom:-80px;left:5%}.liquid-orb-4{background:radial-gradient(circle,#ec489933 0%,#0000 70%);width:420px;height:420px;animation-duration:32s;animation-delay:-18s;top:70%;right:15%}@keyframes liquidFloat{0%{transform:translate(0,0)scale(1)}50%{transform:translate(45px,-60px)scale(1.12)}to{transform:translate(-35px,40px)scale(.92)}}.liquid-noise-layer{opacity:.025;background-image:radial-gradient(#fffc 1px,#0000 0);background-size:24px 24px;width:100%;height:100%;position:absolute;top:0;left:0}.app-container{z-index:1;max-width:1000px;margin:0 auto;padding:80px 24px 140px;position:relative}@media (width<=768px){.app-container{padding:40px 16px 110px}}h1,h2,h3,h4,h5,h6{letter-spacing:-.025em;font-weight:700;font-family:var(--font-display)}.mono-tag{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-variant-numeric:tabular-nums;color:var(--accent-color);font-size:.72rem;font-weight:600}.technical-grid-x{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.technical-border{border:1px solid var(--border-color)}.editorial-header{border-bottom:1px solid var(--border-color);flex-direction:column;gap:24px;margin-bottom:60px;padding-bottom:40px;display:flex}.editorial-header-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.editorial-title{letter-spacing:-.05em;background:linear-gradient(180deg, var(--text-primary) 0%, rgba(var(--accent-rgb), .85) 130%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:4rem;font-weight:900;line-height:.9}@media (width<=768px){.editorial-title{font-size:2.5rem}}.settings-panel{background:var(--bg-glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);border-radius:16px;flex-direction:column;align-items:flex-end;gap:12px;padding:16px 20px;display:flex}@media (width<=768px){.editorial-title{font-size:2.5rem}.editorial-header{gap:16px;margin-bottom:32px;padding-bottom:24px}.editorial-header-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:relative}.command-icon-desktop{display:none}.command-icon-mobile{display:block}.command-trigger-btn{background:var(--bg-glass);border:1px solid var(--border-color);width:36px;min-width:36px;height:36px;box-shadow:var(--glass-shadow);color:var(--text-primary);justify-content:center;align-items:center;border-radius:50%!important;padding:0!important;display:inline-flex!important}.command-trigger-btn span{display:none!important}.command-trigger-btn:hover{border-color:var(--accent-color);background:rgba(var(--accent-rgb), .18);color:var(--text-primary)}.settings-toggle-btn{background:var(--bg-glass);border:1px solid var(--border-color);width:36px;min-width:36px;height:36px;box-shadow:var(--glass-shadow);color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;transition:all .2s;border-radius:50%!important;padding:0!important;display:inline-flex!important}.settings-toggle-btn .settings-toggle-label{display:none}.settings-toggle-btn:hover,.settings-toggle-btn.active{border-color:var(--accent-color);background:rgba(var(--accent-rgb), .2);color:var(--text-primary)}.settings-panel{width:auto;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:none;align-items:flex-end;margin-top:0;padding:0;position:relative}.header-actions-group{flex-wrap:nowrap;align-items:center;gap:8px;margin-top:0;display:flex}.desktop-only{display:none!important}.settings-backdrop-overlay{-webkit-backdrop-filter:blur(10px);z-index:99998;background:#04070dbf;width:100vw;height:100vh;animation:.2s ease-out fadeInOverlay;position:fixed;inset:0}.settings-controls-group{z-index:99999;box-sizing:border-box;background:var(--bg-glass-card);-webkit-backdrop-filter:blur(28px)saturate(180%);border:1px solid var(--border-color);width:100%;max-width:520px;padding:18px 20px calc(84px + env(safe-area-inset-bottom,16px)) 20px;box-shadow:0 -12px 40px #000000a6, 0 0 0 1px var(--glass-specular);background-color:#0e1420f5;border-bottom:none;border-radius:24px 24px 0 0;flex-direction:column;align-items:stretch;gap:16px;margin:0 auto;animation:.28s cubic-bezier(.16,1,.3,1) slideUpModal;position:fixed;bottom:0;left:0;right:0;display:none!important}body.theme-frost .settings-controls-group,body.theme-light .settings-controls-group{background-color:#f8fafcf7;box-shadow:0 -12px 40px #0000002e,0 0 0 1px #00000014}.settings-panel.mobile-expanded .settings-controls-group{display:flex!important}.settings-modal-header{border-bottom:1px solid var(--border-color);flex-direction:column;gap:10px;padding-bottom:12px;display:flex}.settings-modal-handle{background:#ffffff40;border-radius:9999px;width:40px;height:4px;margin:0 auto 4px}body.theme-frost .settings-modal-handle,body.theme-light .settings-modal-handle{background:#0003}.settings-modal-title-row{justify-content:space-between;align-items:center;width:100%;display:flex}.settings-modal-title{font-family:var(--font-mono);letter-spacing:.05em;color:var(--text-primary);align-items:center;gap:8px;font-size:.78rem;font-weight:800;display:inline-flex}.settings-modal-close-btn{border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.settings-modal-close-btn:hover{color:var(--text-primary);background:#ffffff26}.settings-controls-group .control-row{flex-direction:column;align-items:flex-start;gap:8px;width:100%;display:flex}.settings-controls-group .control-label{width:auto;font-size:.68rem;font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.06em;font-weight:700}.settings-controls-group .control-options-theme{box-sizing:border-box;width:100%;background:#0000004d!important;border-radius:12px!important;grid-template-columns:repeat(3,1fr)!important;gap:6px!important;padding:4px!important;display:grid!important}.settings-controls-group .control-options-theme .control-btn{text-align:center;border-radius:8px;justify-content:center;width:100%;padding:8px 4px;font-size:.7rem}.settings-controls-group .control-options-accent .control-btn-accent{box-sizing:border-box;letter-spacing:.02em;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:100%;min-width:0;padding:8px 2px;font-size:.6rem;display:flex}.settings-controls-group .control-options-accent .accent-btn-indicator{flex-shrink:0;width:14px;height:14px;margin:0;box-shadow:0 0 6px #0006}.settings-controls-group .control-options-accent .control-btn-accent.active .accent-btn-indicator{box-shadow:0 0 0 2px #fff,0 0 8px}.settings-controls-group .control-options-accent .accent-btn-label{text-overflow:ellipsis;white-space:nowrap;text-align:center;width:100%;overflow:hidden}.settings-controls-group .control-options-accent{box-sizing:border-box;width:100%;background:#0000004d!important;border-radius:14px!important;grid-template-columns:repeat(5,1fr)!important;gap:6px!important;padding:8px 6px!important;display:grid!important}.settings-controls-group .control-row:last-of-type{margin-bottom:6px}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpModal{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}@media (width<=580px){.editorial-title{word-break:break-word;font-size:2.35rem;line-height:.95}}.control-row{font-family:var(--font-mono);color:var(--text-secondary);align-items:center;gap:8px;font-size:.75rem;display:flex}.control-label{text-transform:uppercase;letter-spacing:.05em;width:70px;font-weight:700}.control-options{border:1px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000040;border-radius:9999px;gap:4px;padding:3px 4px;display:flex}.control-btn{color:var(--text-secondary);font-family:var(--font-mono);cursor:pointer;text-transform:uppercase;background:0 0;border:none;border-radius:9999px;padding:4px 10px;font-size:.7rem;font-weight:600;transition:all .2s}.control-btn:hover{color:var(--text-primary);background:#ffffff14}.control-btn.active{background:var(--accent-color);box-shadow:0 2px 10px rgba(var(--accent-rgb), .45);font-weight:800;color:#0b0f17!important}.accent-btn-indicator{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.accent-btn-indicator.cyan{background-color:#38bdf8}.accent-btn-indicator.purple{background-color:#c084fc}.accent-btn-indicator.orange{background-color:#fb923c}.accent-btn-indicator.emerald{background-color:#34d399}.accent-btn-indicator.white{background-color:#fff;border:1px solid #fff9;box-shadow:0 0 0 1px #00000059}body.theme-frost .accent-btn-indicator.white,body.theme-light .accent-btn-indicator.white{border:1px solid #0f172a66;box-shadow:0 0 0 1px #00000026}.accent-btn-indicator.blue{background-color:#38bdf8}.accent-btn-indicator.red{background-color:#f43f5e}.accent-btn-indicator.mono{background-color:#38bdf8}.command-icon-mobile{display:none}.command-icon-desktop{display:inline-block}.settings-toggle-btn,.settings-modal-header{display:none}.settings-backdrop-overlay{display:none!important}.control-btn-accent{align-items:center;gap:4px;display:inline-flex}@media (width>=769px){.settings-controls-group{flex-direction:column;align-items:flex-end;gap:12px;display:flex}}.header-actions-group{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.header-share-btn{border:1px solid var(--border-color);background:var(--bg-glass);-webkit-backdrop-filter:blur(8px);align-items:center;gap:6px;width:fit-content;padding:6px 14px;display:flex}.header-cv-btn{border:1px solid rgba(var(--accent-rgb), .5);background:linear-gradient(135deg, rgba(var(--accent-rgb), .28), rgba(var(--accent-rgb), .12));-webkit-backdrop-filter:blur(8px);width:fit-content;color:var(--text-primary);align-items:center;gap:6px;padding:6px 14px;font-weight:700;text-decoration:none;display:flex}.header-nav-bar{background:var(--bg-glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 18px;display:flex}.header-nav-btn{color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-speed) ease;background:#ffffff0a;border:1px solid #ffffff14;border-radius:9px;align-items:center;gap:7px;padding:8px 14px;font-size:.78rem;font-weight:600;display:inline-flex}.header-nav-btn:hover{background:rgba(var(--accent-rgb), .14);border-color:rgba(var(--accent-rgb), .35);color:var(--text-primary);transform:translateY(-1px)}@media (width<=768px){.header-nav-bar{-webkit-overflow-scrolling:touch;scrollbar-width:none;border-radius:12px;flex-wrap:nowrap;gap:6px;padding:8px 10px;overflow-x:auto}.header-nav-bar::-webkit-scrollbar{display:none}.header-nav-btn{white-space:nowrap;flex-shrink:0;padding:7px 12px;font-size:.74rem}}.metadata-spec-grid{background:var(--bg-glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);font-family:var(--font-mono);border-radius:18px;grid-template-columns:repeat(4,1fr);gap:20px;padding:22px 28px;font-size:.78rem;display:grid}@media (width<=768px){.metadata-spec-grid{grid-template-columns:repeat(2,1fr);gap:14px;padding:18px 20px}}@media (width<=480px){.metadata-spec-grid{grid-template-columns:1fr;gap:12px;padding:16px}.spec-value{word-break:break-all}}.spec-item{flex-direction:column;gap:4px;display:flex}.spec-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.68rem}.spec-value{color:var(--text-primary);align-items:center;gap:6px;font-weight:600;display:flex}.spec-value.spec-link{transition:color var(--transition-speed) ease;text-decoration:none}.spec-value.spec-link:hover{color:var(--accent-color)}.status-dot-pulse{background-color:var(--accent-color);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite technicalPulse;display:inline-block}@keyframes technicalPulse{0%{opacity:.5;transform:scale(.9)}50%{opacity:1;box-shadow:0 0 8px var(--accent-color);transform:scale(1.2)}to{opacity:.5;transform:scale(.9)}}.section-header-editorial{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:baseline;margin-bottom:24px;padding-bottom:12px;display:flex}.section-title-editorial{letter-spacing:-.02em;color:var(--text-primary);font-size:1.25rem;font-weight:700;font-family:var(--font-display);align-items:center;gap:8px;display:flex}.section-subtitle-editorial{color:var(--text-secondary);letter-spacing:-.01em;margin-top:4px;font-size:.84rem;font-weight:400;line-height:1.4;display:block}.section-index{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.04em;font-size:.76rem;font-weight:600}@media (width<=520px){.section-header-editorial{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:20px}.section-index{align-self:flex-start;font-size:.68rem}}.project-sheet{border:1px solid var(--border-color);background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow), inset 0 1px 1px 0 var(--glass-specular);transition:all var(--transition-speed) cubic-bezier(.16, 1, .3, 1);border-radius:20px;grid-template-columns:4fr 5fr;margin-bottom:40px;display:grid;overflow:hidden}@media (width<=768px){.project-sheet{border-radius:16px;grid-template-columns:1fr;margin-bottom:28px}}.project-sheet:hover{background:var(--bg-glass-card-hover);border-color:rgba(var(--accent-rgb), .45);box-shadow:var(--glass-shadow-hover), 0 0 28px rgba(var(--accent-rgb), .16), inset 0 1px 1px 0 var(--glass-specular-hover);transform:translateY(-4px)}.project-render-container{-webkit-backdrop-filter:blur(12px);border-right:1px solid var(--border-color);aspect-ratio:4/3;background:#00000038;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}@media (width<=768px){.project-render-container{border-right:none;border-bottom:1px solid var(--border-color);aspect-ratio:16/10}}.blueprint-overlay{background-image:linear-gradient(rgba(var(--accent-rgb), .04) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--accent-rgb), .04) 1px, transparent 1px);pointer-events:none;z-index:1;background-size:20px 20px;width:100%;height:100%;position:absolute;top:0;left:0}.blueprint-axis-x{border-top:1px dashed rgba(var(--accent-rgb), .2);pointer-events:none;z-index:1;width:100%;height:1px;position:absolute;top:50%;left:0}.blueprint-axis-y{border-left:1px dashed rgba(var(--accent-rgb), .2);pointer-events:none;z-index:1;width:1px;height:100%;position:absolute;top:0;left:50%}.blueprint-cropmark{border:1px solid var(--text-muted);opacity:.5;z-index:1;width:12px;height:12px;position:absolute}.crop-tl{border-bottom:none;border-right:none;top:12px;left:12px}.crop-tr{border-bottom:none;border-left:none;top:12px;right:12px}.crop-bl{border-top:none;border-right:none;bottom:12px;left:12px}.crop-br{border-top:none;border-left:none;bottom:12px;right:12px}.project-render-card{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);width:82%;height:72%;box-shadow:0 10px 28px #00000059, inset 0 1px 0 var(--glass-specular);z-index:2;transition:transform .4s cubic-bezier(.16, 1, .3, 1), border-color var(--transition-speed) ease;border-radius:14px;flex-direction:column;justify-content:space-between;padding:18px;display:flex;position:relative}.project-sheet:hover .project-render-card{border-color:rgba(var(--accent-rgb), .5);box-shadow:0 14px 36px #00000073, 0 0 20px rgba(var(--accent-rgb), .2), inset 0 1px 1px var(--glass-specular-hover);transform:scale(1.03)translateY(-3px)}.project-render-header{font-family:var(--font-mono);color:var(--text-muted);justify-content:space-between;align-items:flex-start;font-size:.65rem;display:flex}.project-render-logo-wrap{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:2px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.project-render-logo{object-fit:contain;filter:grayscale();width:18px;height:18px}.project-sheet:hover .project-render-logo{filter:grayscale(0)}.project-render-title{letter-spacing:-.04em;color:var(--text-primary);margin-top:10px;font-size:1.5rem;font-weight:900}.project-render-footer{font-family:var(--font-mono);color:var(--accent-color);border-top:1px solid var(--border-color);justify-content:space-between;align-items:flex-end;padding-top:8px;font-size:.65rem;display:flex}.project-spec-container{flex-direction:column;justify-content:space-between;gap:20px;padding:30px;display:flex}@media (width<=768px){.project-spec-container{gap:16px;padding:18px 16px}.project-spec-title{font-size:1.45rem}}@media (width<=480px){.project-spec-title{font-size:1.3rem}.spec-data-table td.label{width:85px;font-size:.68rem}}.project-spec-meta{flex-direction:column;gap:12px;display:flex}.project-spec-title{letter-spacing:-.03em;color:var(--text-primary);font-size:1.75rem;font-weight:800;line-height:1.1}.project-spec-description{color:var(--text-secondary);font-size:.88rem;line-height:1.6}.spec-data-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);margin-top:8px;font-size:.72rem}.spec-data-table tr{border-bottom:1px solid var(--border-color)}.spec-data-table tr:last-child{border-bottom:none}.spec-data-table td{vertical-align:top;padding:8px 0}.spec-data-table td.label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;width:100px;font-weight:700}.spec-data-table td.value{color:var(--text-primary)}.technical-link-btn{color:#0b0f17;background:linear-gradient(135deg, rgba(var(--accent-rgb), .95), rgba(var(--accent-rgb), .78));box-shadow:0 4px 18px rgba(var(--accent-rgb), .35), inset 0 1px 0 #fff6;font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;border-radius:10px;align-items:center;gap:8px;width:fit-content;padding:10px 18px;font-size:.75rem;font-weight:800;text-decoration:none;transition:all .2s;display:inline-flex}.technical-link-btn:hover{opacity:.92;box-shadow:0 8px 25px rgba(var(--accent-rgb), .45), inset 0 1px 0 #ffffff80;transform:translateY(-2px)}.technical-link-btn:active{transform:translateY(0)}.tag-tech{-webkit-backdrop-filter:blur(6px);border:1px solid var(--border-color);color:var(--text-secondary);background:#ffffff0d;border-radius:6px;margin-bottom:6px;margin-right:6px;padding:3px 8px;font-size:.68rem;font-weight:500;display:inline-block}.editorial-double-column{grid-template-columns:1fr 1fr;gap:40px;margin-bottom:60px;display:grid}@media (width<=768px){.editorial-double-column{grid-template-columns:1fr;gap:32px}}.column-editorial{flex-direction:column;gap:20px;display:flex}.editorial-about-title{color:var(--text-primary);font-size:1.35rem;font-weight:700;line-height:1.4}.editorial-about-paragraph{color:var(--text-secondary);background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);border-radius:16px;padding:22px 26px;font-size:.95rem;line-height:1.75}.technical-timeline{flex-direction:column;gap:14px;display:flex}.timeline-editorial-item{background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);transition:all var(--transition-speed) ease;border-radius:14px;grid-template-columns:110px 1fr;gap:16px;padding:18px 22px;display:grid}.timeline-editorial-item:hover{border-color:rgba(var(--accent-rgb), .4);background:var(--bg-glass-card-hover);transform:translateY(-2px)}@media (width<=600px){.editorial-about-paragraph{padding:16px 18px;font-size:.88rem;line-height:1.6}.timeline-editorial-item{grid-template-columns:1fr;gap:6px;padding:14px 16px}}.timeline-date-mono{font-family:var(--font-mono);color:var(--accent-color);font-size:.76rem;font-weight:700}.timeline-detail-wrap{flex-direction:column;gap:4px;display:flex}.timeline-title-editorial{color:var(--text-primary);font-size:.98rem;font-weight:800}.timeline-subtitle-editorial{font-family:var(--font-mono);color:var(--text-muted);text-transform:uppercase;font-size:.72rem}.timeline-desc-editorial{color:var(--text-secondary);white-space:pre-wrap;margin-top:4px;font-size:.84rem;line-height:1.55}.certifications-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;display:grid}.certification-card{background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);transition:all var(--transition-speed) ease;border-radius:16px;flex-direction:column;padding:22px 24px;display:flex;position:relative;overflow:hidden}.certification-card:before{content:"";background:linear-gradient(90deg, transparent, rgba(var(--accent-rgb), .4), transparent);opacity:0;height:2px;transition:opacity var(--transition-speed) ease;position:absolute;top:0;left:0;right:0}.certification-card:hover{border-color:rgba(var(--accent-rgb), .4);background:var(--bg-glass-card-hover);box-shadow:0 16px 36px #00000059, inset 0 1px 0 var(--glass-specular);transform:translateY(-3px)}.certification-card:hover:before{opacity:1}.cert-card-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.cert-vendor-tag{font-family:var(--font-mono);color:var(--accent-color);background:rgba(var(--accent-rgb), .08);border:1px solid rgba(var(--accent-rgb), .22);letter-spacing:.06em;text-transform:uppercase;border-radius:6px;padding:3px 9px;font-size:.68rem;font-weight:800}.cert-type-pill{font-family:var(--font-mono);color:var(--text-muted);align-items:center;gap:5px;font-size:.68rem;font-weight:600;display:inline-flex}.cert-title{color:var(--text-primary);margin-bottom:8px;font-size:1.02rem;font-weight:800;line-height:1.35}.cert-issuer-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.cert-issuer-name{font-family:var(--font-mono);color:var(--text-secondary);font-size:.74rem;font-weight:600}.cert-category-badge{font-family:var(--font-mono);color:var(--text-muted);border:1px solid var(--border-color);background:#ffffff0a;border-radius:6px;padding:2px 7px;font-size:.65rem}.cert-description{color:var(--text-secondary);margin-top:auto;font-size:.83rem;line-height:1.55}@media (width<=600px){.certifications-grid{grid-template-columns:1fr;gap:14px}.certification-card{padding:18px 20px}}.skills-spec-table{border-collapse:separate;border-spacing:0;border:1px solid var(--border-color);background:var(--bg-glass-card);width:100%;-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);border-radius:18px;margin-bottom:60px;overflow:hidden}.skills-spec-table th{border-bottom:1px solid var(--border-color);font-family:var(--font-mono);text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:#00000038;padding:14px 20px;font-size:.7rem;font-weight:700}.skills-spec-table td{border-bottom:1px solid var(--border-color);padding:16px 20px;font-size:.88rem}.skills-spec-table tr:last-child td{border-bottom:none}.skill-category-name{color:var(--text-primary);font-weight:700}.skill-list-mono{font-family:var(--font-mono);color:var(--accent-color);flex-wrap:wrap;gap:8px;font-size:.78rem;display:flex}.skill-list-item{-webkit-backdrop-filter:blur(6px);border:1px solid var(--border-color);background:#ffffff0d;border-radius:6px;padding:3px 10px}@media (width<=640px){.skills-spec-table,.skills-spec-table tbody,.skills-spec-table tr,.skills-spec-table td{display:block;width:100%!important}.skills-spec-table thead{display:none}.skills-spec-table tr{border-bottom:1px solid var(--border-color);padding:14px 16px}.skills-spec-table tr:last-child{border-bottom:none}.skills-spec-table td{border:none;padding:0}.skills-spec-table td.skill-category-name{color:var(--accent-color);margin-bottom:8px;font-size:.82rem}.skill-list-mono{gap:6px}.skill-list-item{padding:3px 8px;font-size:.72rem}}.technical-contact-form{border:1px solid var(--border-color);background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);border-radius:20px;flex-direction:column;gap:20px;padding:32px;display:flex}.contact-form-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=768px){.contact-form-grid{grid-template-columns:1fr}}.form-group-technical{flex-direction:column;gap:6px;display:flex}.form-label-technical{font-family:var(--font-mono);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.68rem;font-weight:700}.form-input-technical{border:1px solid var(--border-color);color:var(--text-primary);font-family:var(--font-sans);transition:all var(--transition-speed) ease;background:#00000038;border-radius:10px;padding:12px 16px;font-size:.88rem;box-shadow:inset 0 1px 2px #00000040}.form-input-technical:focus{border-color:var(--accent-color);box-shadow:0 0 15px rgba(var(--accent-rgb), .25), inset 0 1px 2px #0000004d;background:#00000059;outline:none}.form-textarea-technical{resize:vertical;min-height:110px}.form-submit-technical-btn{background:linear-gradient(135deg, rgba(var(--accent-rgb), .95), rgba(var(--accent-rgb), .78));color:#0b0f17;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;width:fit-content;box-shadow:0 4px 18px rgba(var(--accent-rgb), .35), inset 0 1px 0 #fff6;border:none;border-radius:10px;align-self:flex-start;padding:14px 26px;font-size:.75rem;font-weight:800;transition:all .2s}.form-submit-technical-btn:hover{opacity:.92;box-shadow:0 8px 26px rgba(var(--accent-rgb), .48), inset 0 1px 0 #ffffff80;transform:translateY(-2px)}.form-submit-technical-btn:active{transform:translateY(0)}@media (width<=600px){.technical-contact-form{border-radius:16px;gap:16px;padding:18px 16px}.form-submit-technical-btn{justify-content:center;width:100%;padding:12px 20px;display:flex}}.dashboard-mail-bar{border:1px solid var(--border-color);font-family:var(--font-mono);background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);cursor:pointer;border-radius:16px;justify-content:space-between;align-items:center;margin-top:16px;padding:18px 24px;font-size:.78rem;transition:all .2s;display:flex}.dashboard-mail-bar:hover{background:var(--bg-glass-card-hover);border-color:rgba(var(--accent-rgb), .4);transform:translateY(-2px)}.mail-bar-details{align-items:center;gap:16px;display:flex}.mail-bar-icon-wrap{border:1px solid var(--border-color);width:36px;height:36px;color:var(--accent-color);background:#ffffff0f;border-radius:10px;justify-content:center;align-items:center;display:flex}@media (width<=600px){.dashboard-mail-bar{border-radius:14px;padding:14px 16px}.mail-bar-details{gap:12px}}.editorial-footer{border-top:1px solid var(--border-color);font-family:var(--font-mono);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:60px;padding-top:24px;font-size:.68rem;display:flex}@media (width<=600px){.editorial-footer{text-align:center;flex-direction:column;align-items:center;gap:12px;margin-top:40px}}.footer-bullet{color:var(--accent-color);margin:0 4px}.toast{background:var(--bg-glass);-webkit-backdrop-filter:var(--glass-blur);color:var(--text-primary);border:1px solid var(--accent-color);box-shadow:0 12px 36px #0006, 0 0 20px rgba(var(--accent-rgb), .2), inset 0 1px 0 var(--glass-specular);font-family:var(--font-mono);letter-spacing:.02em;z-index:100;pointer-events:none;opacity:0;border-radius:10px;align-items:center;gap:10px;padding:12px 22px;font-size:.75rem;font-weight:700;transition:transform .4s cubic-bezier(.25,1,.5,1),opacity .3s;display:flex;position:fixed;bottom:28px;right:28px;transform:translateY(20px)}.toast.show{opacity:1;transform:translateY(0)}@media (width<=640px){.toast{top:calc(16px + env(safe-area-inset-top,0px));justify-content:center;width:calc(100% - 32px);max-width:360px;padding:10px 16px;font-size:.72rem;bottom:auto;left:50%;right:auto;transform:translate(-50%,-24px)}.toast.show{transform:translate(-50%)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.project-animate-entrance{animation:.6s cubic-bezier(.215,.61,.355,1) both fadeInUp;animation-delay:calc(var(--index,0) * 80ms)}.projects-control-bar{border:1px solid var(--border-color);background:var(--bg-glass);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);font-family:var(--font-mono);transition:border-color var(--transition-speed) ease;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:-10px;margin-bottom:60px;padding:16px 24px;font-size:.75rem;display:flex}.projects-control-bar:hover{border-color:rgba(var(--accent-rgb), .4)}.projects-status-indicator{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:8px;font-weight:500;display:flex}.projects-status-indicator .indicator-number{color:var(--accent-color);font-weight:700}.projects-actions{flex-wrap:wrap;gap:10px;display:flex}.control-action-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-color);color:var(--text-primary);font-family:var(--font-mono);cursor:pointer;text-transform:uppercase;background:#ffffff0d;border-radius:9999px;align-items:center;gap:4px;padding:8px 16px;font-size:.72rem;font-weight:700;transition:all .2s;display:inline-flex}.control-action-btn:hover{border-color:var(--accent-color);color:var(--accent-color);background:#ffffff1a;transform:translateY(-1px)}.control-action-btn:active{transform:translateY(1px)}@media (width<=600px){.projects-control-bar{flex-direction:column;align-items:stretch;padding:16px}.projects-status-indicator{border-bottom:1px dashed var(--border-color);justify-content:center;padding-bottom:12px}.projects-actions{justify-content:center}.control-action-btn{text-align:center;flex:1;justify-content:center}}.socials-grid-technical{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (width<=860px){.socials-grid-technical{grid-template-columns:1fr}}.social-card-technical{border:1px solid var(--border-color);background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);color:inherit;transition:all var(--transition-speed) cubic-bezier(.16, 1, .3, 1);border-radius:18px;flex-direction:column;justify-content:space-between;gap:20px;padding:26px;text-decoration:none;display:flex;position:relative}.social-card-technical:hover{border-color:rgba(var(--accent-rgb), .45);background:var(--bg-glass-card-hover);box-shadow:var(--glass-shadow-hover), 0 0 25px rgba(var(--accent-rgb), .15), inset 0 1px 1px var(--glass-specular-hover);transform:translateY(-4px)}.social-card-header{justify-content:space-between;align-items:center;display:flex}.social-card-icon-wrap{border:1px solid var(--border-color);width:40px;height:40px;color:var(--accent-color);transition:all var(--transition-speed) ease;background:#ffffff0d;border-radius:10px;justify-content:center;align-items:center;display:flex}.social-card-technical:hover .social-card-icon-wrap{border-color:var(--accent-color);background:rgba(var(--accent-rgb), .15)}.social-card-body{flex-direction:column;display:flex}.social-card-title{font-family:var(--font-sans);color:var(--text-primary);letter-spacing:-.01em;margin:0 0 4px;font-size:1.15rem;font-weight:700}.social-card-handle{font-family:var(--font-mono);color:var(--accent-color);margin-bottom:12px;font-size:.72rem;display:block}.social-card-description{color:var(--text-muted);margin:0;font-size:.8rem;line-height:1.5}.social-card-action{border-top:1px dashed var(--border-color);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);transition:color var(--transition-speed) ease;justify-content:space-between;align-items:center;padding-top:14px;font-size:.7rem;font-weight:700;display:flex}.social-card-technical:hover .social-card-action{color:var(--accent-color)}.cv-dossier-card{background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);transition:all var(--transition-speed) cubic-bezier(.16, 1, .3, 1);border-radius:20px;flex-direction:column;gap:24px;padding:36px;display:flex;position:relative;overflow:hidden}.cv-dossier-card:hover{background:var(--bg-glass-card-hover);border-color:rgba(var(--accent-rgb), .45);box-shadow:var(--glass-shadow-hover), 0 0 30px rgba(var(--accent-rgb), .16), inset 0 1px 1px var(--glass-specular-hover);transform:translateY(-3px)}@media (width<=640px){.cv-dossier-card{border-radius:16px;gap:16px;padding:20px 16px}.cv-dossier-header-left{min-width:0}.cv-dossier-title{font-size:1.18rem}.cv-actions-bar{flex-direction:column;gap:8px}.cv-download-primary-btn,.cv-view-secondary-btn{justify-content:center;width:100%;padding:11px 16px}}.cv-dossier-header{z-index:2;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex;position:relative}.cv-dossier-header-left{flex:1;min-width:280px}.cv-dossier-title{letter-spacing:-.02em;color:var(--text-primary);margin-top:8px;margin-bottom:8px;font-size:1.35rem;font-weight:800}.cv-dossier-summary{color:var(--text-secondary);max-width:680px;font-size:.84rem;line-height:1.6}.cv-dossier-meta-badge{font-family:var(--font-mono);flex-direction:column;align-items:flex-end;gap:6px;display:flex}@media (width<=640px){.cv-dossier-meta-badge{align-items:flex-start}}.cv-file-badge{border:1px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.05em;background:#00000040;border-radius:8px;align-items:center;font-size:.72rem;font-weight:700;display:flex;overflow:hidden}.cv-file-ext{background:var(--accent-color);color:#0b0f17;padding:4px 10px}.cv-file-size{color:var(--text-primary);padding:4px 10px}.cv-file-version{color:var(--text-muted);letter-spacing:.05em;font-size:.65rem}.cv-badges-row{z-index:2;border-top:1px dashed var(--border-color);border-bottom:1px dashed var(--border-color);flex-wrap:wrap;gap:8px;padding:14px 0;display:flex;position:relative}.cv-badge-item{font-family:var(--font-mono);color:var(--text-secondary);-webkit-backdrop-filter:blur(6px);border:1px solid var(--border-color);letter-spacing:.04em;background:#ffffff0d;border-radius:9999px;align-items:center;gap:6px;padding:4px 12px;font-size:.68rem;display:flex}.cv-badge-dot{background-color:var(--accent-color);border-radius:50%;width:5px;height:5px}.cv-highlights-grid{z-index:2;grid-template-columns:1fr;gap:10px;display:grid;position:relative}.cv-highlight-row{font-family:var(--font-mono);-webkit-backdrop-filter:blur(6px);border-left:3px solid var(--accent-color);border-top:1px solid var(--border-color);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:#ffffff08;border-radius:10px;grid-template-columns:200px 1fr;align-items:baseline;gap:16px;padding:12px 16px;font-size:.76rem;display:grid}@media (width<=720px){.cv-highlight-row{grid-template-columns:1fr;gap:4px}}.cv-highlight-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.68rem;font-weight:700}.cv-highlight-value{color:var(--text-primary);font-family:var(--font-sans);font-size:.84rem;line-height:1.45}.cv-actions-bar{z-index:2;flex-wrap:wrap;gap:12px;margin-top:8px;display:flex;position:relative}.cv-download-primary-btn{background:linear-gradient(135deg, rgba(var(--accent-rgb), .95), rgba(var(--accent-rgb), .78));color:#0b0f17;font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;box-shadow:0 4px 20px rgba(var(--accent-rgb), .35), inset 0 1px 0 #fff6;border-radius:10px;align-items:center;gap:10px;padding:12px 24px;font-size:.76rem;font-weight:800;text-decoration:none;transition:all .2s;display:inline-flex}.cv-download-primary-btn:hover{opacity:.92;box-shadow:0 8px 28px rgba(var(--accent-rgb), .5), inset 0 1px 0 #ffffff80;transform:translateY(-2px)}.cv-download-primary-btn:active{transform:translateY(0)}.cv-btn-kbd{opacity:.85;font-size:.66rem;font-weight:600}.cv-view-secondary-btn{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);color:var(--text-primary);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--border-color);box-shadow:inset 0 1px 0 var(--glass-specular);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:12px 22px;font-size:.76rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.cv-view-secondary-btn:hover{border-color:var(--accent-color);color:var(--accent-color);background:var(--bg-glass-card-hover);transform:translateY(-2px)}.cv-view-secondary-btn:active{transform:translateY(0)}.stats-impact-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-top:24px;display:grid}@media (width<=900px){.stats-impact-grid{grid-template-columns:repeat(2,1fr);gap:12px}}@media (width<=520px){.stats-impact-grid{grid-template-columns:1fr;gap:10px}}.stat-impact-card{background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);border-radius:14px;flex-direction:column;padding:18px 20px;transition:all .3s cubic-bezier(.2,.8,.2,1);display:flex;position:relative;overflow:hidden}.stat-impact-card:hover{border-color:rgba(var(--accent-rgb), .45);box-shadow:var(--glass-shadow-hover), 0 0 24px rgba(var(--accent-rgb), .15), inset 0 1px 0 var(--glass-specular-hover);transform:translateY(-3px)}.stat-card-glow{background:radial-gradient(circle, rgba(var(--accent-rgb), .25) 0%, transparent 70%);pointer-events:none;filter:blur(12px);width:90px;height:90px;position:absolute;top:-30px;right:-30px}.stat-card-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.stat-card-badge{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.06em;font-size:.64rem}.stat-card-dot{background:var(--accent-color);width:6px;height:6px;box-shadow:0 0 8px var(--accent-color);border-radius:50%}.stat-impact-value{font-family:var(--font-sans);color:var(--text-primary);background:linear-gradient(135deg, var(--text-primary) 30%, var(--accent-color) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:4px;font-size:2.2rem;font-weight:900;line-height:1.1}.stat-impact-label{font-family:var(--font-mono);color:var(--text-primary);letter-spacing:.05em;margin-bottom:2px;font-size:.72rem;font-weight:700}.stat-impact-detail{font-family:var(--font-sans);color:var(--text-muted);font-size:.74rem;line-height:1.35}.project-filter-bar{background:var(--bg-glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);box-shadow:inset 0 1px 0 var(--glass-specular);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;padding:12px 18px;display:flex}.filter-label{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.05em;align-items:center;gap:8px;font-size:.72rem;font-weight:700;display:flex}.filter-buttons-wrap{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-pill-btn{color:var(--text-secondary);border:1px solid var(--border-color);font-family:var(--font-mono);cursor:pointer;background:#ffffff0a;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.7rem;font-weight:600;transition:all .2s;display:inline-flex}.filter-pill-btn:hover{color:var(--text-primary);border-color:rgba(var(--accent-rgb), .4);background:rgba(var(--accent-rgb), .08)}.filter-pill-btn.active{background:linear-gradient(135deg, rgba(var(--accent-rgb), .22), rgba(var(--accent-rgb), .1));border-color:var(--accent-color);color:var(--text-primary);box-shadow:0 0 16px rgba(var(--accent-rgb), .25), inset 0 1px 0 #fff3}.filter-pill-count{color:var(--accent-color);font-size:.64rem;font-weight:700}@media (width<=640px){.project-filter-bar{box-sizing:border-box;flex-direction:column;align-items:stretch;gap:12px;width:100%;padding:12px 14px}.filter-label{justify-content:flex-start}.filter-buttons-wrap{box-sizing:border-box;width:100%;grid-template-columns:repeat(2,1fr)!important;gap:8px!important;display:grid!important}.filter-pill-btn{text-align:center;min-width:0;box-sizing:border-box!important;justify-content:center!important;width:100%!important;padding:9px 6px!important;font-size:.68rem!important}.filter-pill-btn span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}}.project-preview-frame{background:#0a0e16a6;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 36px #00000073}.project-preview-browser-bar{-webkit-backdrop-filter:blur(10px);z-index:2;background:#101622d9;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;display:flex}.traffic-lights{align-items:center;gap:6px;display:flex}.traffic-dot{border-radius:50%;width:8px;height:8px}.traffic-dot.red{background:#ff5f56;box-shadow:0 0 6px #ff5f5699}.traffic-dot.yellow{background:#ffbd2e;box-shadow:0 0 6px #ffbd2e99}.traffic-dot.green{background:#27c93f;box-shadow:0 0 6px #27c93f99}.browser-url-text{font-family:var(--font-mono);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;letter-spacing:.03em;text-align:center;flex:1;min-width:0;font-size:.64rem;overflow:hidden}.browser-cat-badge{font-family:var(--font-mono);color:var(--accent-color);letter-spacing:.05em;white-space:nowrap;font-size:.6rem;font-weight:700}.project-preview-img-wrap{background:#06090e;flex:1;justify-content:center;align-items:center;width:100%;min-height:220px;display:flex;position:relative;overflow:hidden}.project-preview-img{object-fit:cover;object-position:center top;filter:saturate(105%)contrast(102%);width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1),filter .4s}.project-sheet:hover .project-preview-img{filter:saturate(115%)contrast(105%);transform:scale(1.05)}.project-preview-glaze{pointer-events:none;background:linear-gradient(#ffffff0f 0%,#0000 40%,#0006 100%);position:absolute;inset:0}.project-preview-overlay-info{pointer-events:none;z-index:2;justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:10px;left:12px;right:12px}.project-preview-badge-scale{font-family:var(--font-mono);-webkit-backdrop-filter:blur(8px);color:var(--text-secondary);background:#000000b3;border:1px solid #ffffff26;border-radius:4px;padding:3px 8px;font-size:.62rem}.project-preview-badge-tech{font-family:var(--font-mono);background:rgba(var(--accent-rgb), .25);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(var(--accent-rgb), .4);color:var(--text-primary);border-radius:4px;padding:3px 8px;font-size:.62rem;font-weight:700}.project-actions-row{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.technical-demo-btn{background:linear-gradient(135deg, rgba(var(--accent-rgb), .25), rgba(var(--accent-rgb), .1));border:1px solid rgba(var(--accent-rgb), .45);min-width:140px;font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--text-primary);cursor:pointer;box-shadow:0 4px 16px rgba(var(--accent-rgb), .15), inset 0 1px 0 #fff3;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.72rem;font-weight:700;text-decoration:none;transition:all .25s;display:inline-flex}.technical-demo-btn:hover{background:linear-gradient(135deg, rgba(var(--accent-rgb), .4), rgba(var(--accent-rgb), .2));border-color:var(--accent-color);box-shadow:0 6px 22px rgba(var(--accent-rgb), .3), inset 0 1px 0 #ffffff59;transform:translateY(-2px)}@media (width<=640px){.project-actions-row{flex-direction:row;gap:8px;display:flex}.technical-link-btn,.technical-demo-btn{flex:1;justify-content:center;gap:6px;min-width:0;padding:10px;font-size:.7rem}}@media (width<=380px){.project-actions-row{flex-direction:column}.technical-link-btn,.technical-demo-btn{width:100%}}.contact-quick-actions-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}@media (width<=720px){.contact-quick-actions-grid{grid-template-columns:1fr;gap:12px}}.dashboard-whatsapp-bar{background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);color:var(--text-primary);cursor:pointer;box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-specular);border:1px solid #25d3664d;border-radius:12px;justify-content:space-between;align-items:center;padding:16px 20px;text-decoration:none;transition:all .25s;display:flex}.dashboard-whatsapp-bar:hover{background:#25d36614;border-color:#25d366;transform:translateY(-2px);box-shadow:0 8px 24px #25d36640,inset 0 1px #ffffff4d}.whatsapp-bar-icon-wrap{color:#25d366;background:#25d36626;border:1px solid #25d36659;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.contact-bar-sub{color:var(--text-muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;font-size:.62rem}.contact-bar-main{color:var(--text-primary);font-family:var(--font-sans);font-size:.88rem;font-weight:700}.contact-online-badge{font-family:var(--font-mono);letter-spacing:.05em;color:#25d366;background:#25d3661f;border:1px solid #25d36640;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:.64rem;font-weight:700;display:flex}.online-dot{background:#25d366;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse-dot;box-shadow:0 0 8px #25d366}.command-trigger-btn{border:1px solid rgba(var(--accent-rgb), .4);background:rgba(var(--accent-rgb), .1);-webkit-backdrop-filter:blur(8px);width:fit-content;color:var(--text-primary);align-items:center;gap:6px;padding:6px 14px;font-weight:700;transition:all .2s;display:flex}.command-trigger-btn:hover{background:rgba(var(--accent-rgb), .2);border-color:var(--accent-color);box-shadow:0 0 16px rgba(var(--accent-rgb), .25)}.footer-command-hint{font-family:var(--font-mono);color:var(--accent-color);cursor:pointer;letter-spacing:.05em;background:0 0;border:none;font-size:.72rem;transition:opacity .2s}.footer-command-hint:hover{opacity:.85;text-decoration:underline}.command-palette-backdrop{-webkit-backdrop-filter:blur(16px);z-index:9999;background:#06090ebf;justify-content:center;align-items:flex-start;padding:100px 20px 40px;animation:.2s cubic-bezier(.16,1,.3,1) modal-fade-in;display:flex;position:fixed;inset:0}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.command-palette-modal{background:var(--bg-glass-card);-webkit-backdrop-filter:blur(32px)saturate(200%);border:1px solid #ffffff29;border-radius:16px;width:100%;max-width:640px;animation:.24s cubic-bezier(.16,1,.3,1) modal-slide-down;position:relative;overflow:hidden;box-shadow:0 24px 64px #0009,inset 0 1px #ffffff40}@keyframes modal-slide-down{0%{opacity:0;transform:translateY(-20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.command-input-wrap{border-bottom:1px solid var(--border-color);background:#ffffff05;align-items:center;gap:12px;padding:16px 20px;display:flex}.command-search-icon{color:var(--accent-color);flex-shrink:0}.command-search-input{font-family:var(--font-sans);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:.98rem}.command-search-input::placeholder{color:var(--text-muted)}.command-close-btn{border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;background:#ffffff0f;border-radius:6px;align-items:center;gap:6px;padding:4px 8px;transition:all .2s;display:flex}.command-close-btn:hover{color:var(--text-primary);border-color:var(--text-secondary)}.command-kbd-esc{font-family:var(--font-mono);font-size:.62rem;font-weight:700}.command-results-list{max-height:380px;padding:12px 14px;overflow-y:auto}.command-empty-state{text-align:center;color:var(--text-muted);font-family:var(--font-mono);padding:32px 16px;font-size:.78rem}.command-group-block{margin-bottom:14px}.command-group-block:last-child{margin-bottom:4px}.command-group-title{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;padding:4px 10px;font-size:.64rem}.command-group-items{flex-direction:column;gap:4px;display:flex}.command-item-btn{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:9px 12px;transition:all .15s;display:flex}.command-item-btn:hover{background:rgba(var(--accent-rgb), .12);border-color:rgba(var(--accent-rgb), .25)}.command-item-left{align-items:center;gap:10px;display:flex}.command-item-icon{color:var(--accent-color);align-items:center;display:flex}.command-item-label{font-family:var(--font-sans);color:var(--text-primary);font-size:.86rem;font-weight:500}.command-item-tag{font-family:var(--font-mono);color:var(--accent-color);background:rgba(var(--accent-rgb), .12);border:1px solid rgba(var(--accent-rgb), .25);border-radius:4px;padding:2px 6px;font-size:.62rem;font-weight:700}.command-palette-footer{border-top:1px solid var(--border-color);background:#00000026;align-items:center;gap:16px;padding:10px 20px;display:flex}.command-footer-tip{font-family:var(--font-mono);color:var(--text-muted);align-items:center;gap:6px;font-size:.65rem;display:flex}.command-kbd{border:1px solid var(--border-color);color:var(--text-primary);background:#ffffff14;border-radius:4px;padding:2px 5px;font-size:.62rem;font-weight:700}@media (width<=640px){.command-palette-backdrop{padding:12px 10px 20px;padding-top:calc(12px + env(safe-area-inset-top,0px));align-items:flex-start}.command-palette-modal{border-radius:14px;max-height:calc(100vh - 24px)}.command-input-wrap{gap:8px;padding:12px 14px}.command-search-input{font-size:.9rem}.command-results-list{max-height:52vh;padding:8px 10px}.command-item-btn{padding:8px 10px}.command-item-label{font-size:.8rem}.command-palette-footer{justify-content:center;padding:8px 12px}.command-footer-tip{font-size:.58rem}}.floating-dock-container{opacity:1;pointer-events:auto;z-index:999;transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .35s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(0)}.floating-dock-glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(28px)saturate(200%);border:1px solid var(--border-hover);box-shadow:0 20px 48px #0000006b, inset 0 1px 1px var(--glass-specular);transition:all var(--transition-speed) ease;border-radius:9999px;align-items:center;gap:6px;padding:8px 12px;display:flex;position:relative;overflow:hidden}.dock-progress-track{background:#ffffff0f;width:100%;height:2px;position:absolute;top:0;left:0}.dock-progress-fill{background:linear-gradient(90deg, var(--accent-color), rgba(var(--accent-rgb), .6));height:100%;box-shadow:0 0 8px var(--accent-color);transition:width .12s ease-out}.floating-dock-glass:hover{border-color:rgba(var(--accent-rgb), .45);box-shadow:0 24px 54px #00000080, inset 0 1px 1px var(--glass-specular-hover)}.dock-separator{background:var(--border-color);width:1px;height:20px;margin:0 4px}.dock-nav-items{align-items:center;gap:4px;display:flex}.dock-item{color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:9999px;align-items:center;gap:6px;padding:7px 12px;font-size:.76rem;font-weight:500;transition:transform .22s cubic-bezier(.16,1,.3,1),background .2s,color .2s;display:flex;position:relative}.dock-item:hover{color:var(--text-primary);background:#ffffff1a;transform:scale(1.1)translateY(-2px);box-shadow:0 4px 14px #00000040}.dock-item:hover .dock-icon{color:var(--accent-color);transform:scale(1.16)}.dock-icon{transition:transform .2s cubic-bezier(.16,1,.3,1),color .2s}.dock-item:active{transform:scale(.96)translateY(0)}.dock-item.active{color:var(--text-primary);background:rgba(var(--accent-rgb), .16);border-color:rgba(var(--accent-rgb), .3);font-weight:600}.dock-key-badge{color:var(--text-muted);background:#ffffff14;border:1px solid #ffffff1f;border-radius:4px;padding:1px 4px;font-size:.58rem;font-weight:700;line-height:1;transition:all .2s}.dock-item:hover .dock-key-badge{color:var(--accent-color);border-color:rgba(var(--accent-rgb), .4);background:rgba(var(--accent-rgb), .15)}.dock-active-dot{background:var(--accent-color);width:4px;height:4px;box-shadow:0 0 6px var(--accent-color);border-radius:50%;margin-left:2px}.dock-item-icon-only{color:var(--accent-color);padding:7px 9px}.dock-item-cmd{background:rgba(var(--accent-rgb), .1);border-color:rgba(var(--accent-rgb), .22);gap:5px;padding:6px 10px}.dock-cmd-kbd{color:var(--text-primary);opacity:.8;font-size:.65rem;font-weight:700}.dock-item-lang{border-color:var(--border-color);background:#ffffff0f;gap:5px;padding:6px 10px}.dock-lang-code{color:var(--accent-color);font-size:.68rem;font-weight:700}@media (width<=860px){.dock-label,.dock-key-badge{display:none}.floating-dock-container{bottom:calc(12px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 16px)}.floating-dock-glass{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:3px;max-width:100%;padding:6px 8px;overflow-x:auto}.floating-dock-glass::-webkit-scrollbar{display:none}.dock-item{flex-shrink:0;justify-content:center;min-width:34px;min-height:34px;padding:7px 8px}.dock-nav-items{gap:2px}.dock-separator{flex-shrink:0;height:16px;margin:0 2px}}@media (width<=440px){.floating-dock-glass{gap:2px;padding:5px 6px}.dock-item{min-width:30px;min-height:30px;padding:6px}.dock-item-icon-only{padding:6px}.dock-item-cmd,.dock-item-lang{gap:3px;padding:6px}.dock-cmd-kbd{font-size:.6rem}.dock-lang-code{font-size:.62rem}}@media (hover:none) and (pointer:coarse){.dock-item:hover{box-shadow:none;background:0 0;transform:none}.dock-item:hover .dock-icon{transform:none}.dock-item:active{background:rgba(var(--accent-rgb), .22);transform:scale(.92)}.dock-item.active{background:rgba(var(--accent-rgb), .2)}}.github-activity-root{flex-direction:column;gap:20px;display:flex}.github-stats-bar{background:var(--bg-glass);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);box-shadow:var(--glass-shadow);border-radius:16px;grid-template-columns:repeat(3,auto) 1fr;align-items:center;gap:24px;padding:18px 26px;display:grid}.github-stat-box{flex-direction:column;gap:3px;display:flex}.github-stat-number{color:var(--text-primary);align-items:center;gap:8px;font-size:1.45rem;font-weight:800;line-height:1;display:flex}.live-status-pip{background:#22c55e;border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite livePipPulse;box-shadow:0 0 10px #22c55e}@keyframes livePipPulse{0%{opacity:.6;transform:scale(.9)}50%{opacity:1;transform:scale(1.3)}to{opacity:.6;transform:scale(.9)}}.github-stat-name{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:600}.github-stat-divider{background:var(--border-color);width:1px;height:36px}.github-profile-link-btn{background:rgba(var(--accent-rgb), .12);border:1px solid rgba(var(--accent-rgb), .3);color:var(--text-primary);transition:all var(--transition-speed) ease;border-radius:10px;justify-self:end;align-items:center;gap:8px;padding:9px 18px;font-size:.8rem;font-weight:600;text-decoration:none;display:inline-flex}.github-profile-link-btn:hover{background:rgba(var(--accent-rgb), .22);border-color:var(--accent-color);transform:translateY(-1px)}.github-repos-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}@media (width<=768px){.github-stats-bar{grid-template-columns:repeat(3,1fr);gap:10px;padding:14px 16px}.github-stat-divider{display:none}.github-stat-number{font-size:1.22rem}.github-stat-name{font-size:.64rem}.github-profile-link-btn{grid-column:1/-1;justify-content:center;justify-self:stretch;padding:10px 14px;font-size:.8rem}.github-repos-grid{grid-template-columns:1fr;gap:12px}.github-repo-card{padding:16px 14px}}@media (width<=440px){.github-stats-bar{gap:6px;padding:12px 10px}.github-stat-number{gap:4px;font-size:1.02rem}.github-stat-name{font-size:.56rem}}.github-repo-card{background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-color);color:inherit;transition:all var(--transition-speed) cubic-bezier(.16, 1, .3, 1);border-radius:14px;flex-direction:column;justify-content:space-between;padding:20px;text-decoration:none;display:flex;position:relative;overflow:hidden}.github-repo-card:hover{background:var(--bg-glass-card-hover);border-color:rgba(var(--accent-rgb), .4);transform:translateY(-2px);box-shadow:0 12px 28px #0000004d}.repo-card-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.repo-title-wrap{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.repo-name{color:var(--text-primary);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:700;overflow:hidden}.repo-meta-right{color:var(--text-muted);align-items:center;gap:10px;display:flex}.repo-stars{color:#fbbf24;align-items:center;gap:4px;font-size:.75rem;font-weight:600;display:inline-flex}.repo-external-icon{opacity:.5;transition:opacity var(--transition-speed) ease}.github-repo-card:hover .repo-external-icon{opacity:1;color:var(--accent-color)}.repo-desc{color:var(--text-secondary);margin-bottom:14px;font-size:.8rem;line-height:1.45}.repo-card-footer{color:var(--text-muted);border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding-top:10px;font-size:.72rem;display:flex}.repo-lang-badge{color:var(--text-primary);align-items:center;gap:6px;font-weight:600;display:inline-flex}.lang-color-circle{border-radius:50%;width:8px;height:8px}.project-challenge-btn{background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .25);color:var(--accent-color);cursor:pointer;transition:all var(--transition-speed) ease;border-radius:8px;align-items:center;gap:7px;width:fit-content;margin-top:12px;padding:8px 14px;font-size:.76rem;font-weight:600;display:inline-flex}.project-challenge-btn:hover{background:rgba(var(--accent-rgb), .2);border-color:var(--accent-color);transform:translateY(-1px)}.project-challenge-btn.expanded{background:var(--accent-color);color:#0b0e14;border-color:var(--accent-color)}@media (width<=640px){.project-challenge-btn{justify-content:center;width:100%;padding:10px 14px;font-size:.74rem}.project-challenge-drawer{padding:14px}}.project-challenge-drawer{border:1px solid rgba(var(--accent-rgb), .22);background:#00000047;border-radius:12px;flex-direction:column;gap:12px;margin-top:14px;padding:16px 18px;animation:.28s cubic-bezier(.16,1,.3,1) drawerSlideDown;display:flex}@keyframes drawerSlideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.challenge-block{flex-direction:column;gap:4px;display:flex}.challenge-header-title{color:var(--accent-color);letter-spacing:.02em;align-items:center;gap:6px;font-size:.75rem;font-weight:700;display:flex}.challenge-body-text{color:var(--text-secondary);font-size:.8rem;line-height:1.45}.architecture-points-list{flex-direction:column;gap:5px;margin-top:4px;list-style:none;display:flex}.architecture-points-list li{color:var(--text-primary);align-items:flex-start;gap:8px;font-size:.78rem;line-height:1.35;display:flex}.architecture-points-list li:before{content:"▸";color:var(--accent-color);font-weight:700}
