@font-face{font-family:Inter;src:url(/fonts/inter-variable-latin.woff2) format("woff2");font-weight:400 600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-variable-latin.woff2) format("woff2");font-weight:400 500;font-style:normal;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/space-grotesk-variable-latin.woff2) format("woff2");font-weight:500 700;font-style:normal;font-display:swap}:root{--bg: #060a13;--bg-raised: #0a1120;--surface: rgba(255, 255, 255, .03);--surface-hover: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--text: #e6edf7;--muted: #8b97ab;--accent: #22d3ee;--accent-2: #8b5cf6;--gradient: linear-gradient(120deg, #22d3ee, #60a5fa 45%, #8b5cf6);--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--radius: 16px;--nav-height: 72px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + 12px)}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.04 0'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E")}main{position:relative;z-index:2}::selection{background:#22d3ee59}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:#1c2740;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#2a3a5f}h1,h2,h3{font-family:var(--font-display);line-height:1.15;margin:0}p{margin:0}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}button{font:inherit}.container{width:min(1120px,100% - 48px);margin-inline:auto}.mono{font-family:var(--font-mono);font-size:.82rem;color:var(--muted)}.gradient-text{background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.boot{min-height:100vh;display:grid;place-content:center;gap:18px;justify-items:center}.boot-mark{font-family:var(--font-mono);font-size:2rem;font-weight:700;background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.boot-bar{width:160px;height:3px;border-radius:3px;background:var(--border);overflow:hidden}.boot-bar span{display:block;height:100%;width:40%;background:var(--gradient);animation:boot-slide 1s ease-in-out infinite}@keyframes boot-slide{0%{transform:translate(-100%)}to{transform:translate(400%)}}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:999px;font-weight:600;font-size:.92rem;border:1px solid transparent;cursor:pointer;transition:transform .2s ease,box-shadow .25s ease,border-color .2s ease,background .2s ease}.btn:active{transform:translateY(1px) scale(.99)}.btn-primary{background:var(--gradient);color:#04121a;box-shadow:0 8px 28px #22d3ee38}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 34px #6366f159}.btn-primary:disabled{opacity:.6;cursor:wait;transform:none}.btn-ghost{border-color:var(--border-strong);color:var(--text);background:transparent}.btn-ghost:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.chip-list{display:flex;flex-wrap:wrap;gap:8px}.chip{font-family:var(--font-mono);font-size:.74rem;padding:5px 11px;border-radius:999px;border:1px solid rgba(34,211,238,.25);background:#22d3ee12;color:#9fe8f5;white-space:nowrap}.chip--ghost{border-color:var(--border);background:var(--surface);color:var(--muted)}.badge{font-family:var(--font-mono);font-size:.7rem;padding:4px 10px;border-radius:999px;border:1px solid rgba(139,92,246,.35);background:#8b5cf61a;color:#c4b5fd;white-space:nowrap}.card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:26px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .25s ease,background .25s ease,transform .25s ease,box-shadow .3s ease}.card:hover{border-color:var(--border-strong);background:var(--surface-hover)}.arch-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.arch-card{display:flex;flex-direction:column;padding:0;overflow:hidden}.arch-media{display:block;background:#94a3b80a;border-bottom:1px solid var(--border);transition:background .25s ease}.arch-media:hover{background:#22d3ee0d}.arch-media img{width:100%;height:auto;display:block;aspect-ratio:960 / 540}.arch-body{padding:22px 26px 26px;display:flex;flex-direction:column;gap:10px;flex-grow:1}.arch-title{font-size:1.15rem}.arch-subtitle{color:var(--accent-2);font-size:.84rem;color:#a78bfa}.arch-description{color:var(--muted);font-size:.9rem;flex-grow:1}@media (max-width: 900px){.arch-grid{grid-template-columns:1fr}}.nav{position:fixed;inset:0 0 auto 0;z-index:50;padding-top:env(safe-area-inset-top,0px);height:calc(var(--nav-height) + env(safe-area-inset-top,0px));transition:background .3s ease,border-color .3s ease,backdrop-filter .3s ease;border-bottom:1px solid transparent}.nav--scrolled{background:#060a13f7;border-bottom-color:var(--border)}@supports (backdrop-filter: blur(14px)) or (-webkit-backdrop-filter: blur(14px)){.nav--scrolled{background:#060a13bf;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}}.nav--scrolled:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:120px;background:var(--bg)}.nav-progress{position:absolute;top:0;left:0;right:0;height:2px;background:var(--gradient);transform-origin:left}.nav-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.nav-logo{font-family:var(--font-mono);font-weight:700;font-size:1.25rem;letter-spacing:.02em}.nav-logo-dot{color:var(--accent)}.nav-links{display:flex;align-items:center;gap:26px}.nav-link{font-size:.9rem;color:var(--muted);position:relative;padding:6px 0;transition:color .2s ease}.nav-link:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--gradient);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.nav-link:hover,.nav-link--active{color:var(--text)}.nav-link--active:after{transform:scaleX(1)}.nav-cta{padding:9px 18px;font-size:.85rem}.nav-burger{display:none;flex-direction:column;gap:6px;background:none;border:none;cursor:pointer;padding:8px}.nav-burger span{width:22px;height:2px;background:var(--text);border-radius:2px;transition:transform .25s ease}.nav-burger--open span:first-child{transform:translateY(4px) rotate(45deg)}.nav-burger--open span:last-child{transform:translateY(-4px) rotate(-45deg)}.hero{position:relative;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:calc(var(--nav-height) + 40px) 0 80px}.network-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;pointer-events:none}.hero-orb{position:absolute;border-radius:50%;filter:blur(110px);opacity:.35;pointer-events:none;animation:orb-drift 14s ease-in-out infinite alternate}.hero-orb--cyan{width:480px;height:480px;background:#0e7490;top:-140px;right:-120px}.hero-orb--violet{width:420px;height:420px;background:#5b21b6;bottom:-160px;left:-140px;animation-delay:-7s}@keyframes orb-drift{0%{transform:translate(0) scale(1)}to{transform:translate(-40px,40px) scale(1.12)}}.hero--paused .hero-orb{animation-play-state:paused}@media (max-width: 720px){.hero-orb{filter:blur(56px)}.hero-orb--cyan{width:260px;height:260px}.hero-orb--violet{width:220px;height:220px}}.hero-inner{position:relative}.hero-enter{animation:hero-rise .6s cubic-bezier(.22,1,.36,1) both}.hero-enter--fade{animation-name:hero-fade;animation-duration:.4s}@keyframes hero-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes hero-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.hero-enter,.hero-enter--fade{animation:none}}.eyebrow{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:.95rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--accent);text-shadow:0 0 22px rgba(34,211,238,.45)}.eyebrow:before{content:"";width:34px;height:2px;border-radius:1px;background:var(--gradient);flex-shrink:0}.hero-eyebrow{margin-bottom:18px}.hero-title{font-size:clamp(3rem,8.5vw,5.6rem);font-weight:700;letter-spacing:-.02em;margin-bottom:22px}.hero-sub{font-size:clamp(1.05rem,2vw,1.3rem);color:var(--muted);max-width:640px;margin-bottom:34px}.hero-rotating{color:var(--text);font-weight:600;border-bottom:2px solid rgba(34,211,238,.4)}.hero-rotating--fade{transition:opacity .26s ease}.hero-rotating--fade.is-faded{opacity:0}.caret{display:inline-block;width:2px;height:1.05em;margin-left:2px;background:var(--accent);vertical-align:text-bottom;animation:caret-blink 1s step-end infinite}@keyframes caret-blink{50%{opacity:0}}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:58px}.hero-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;max-width:760px}.stat{display:flex;flex-direction:column;border-left:2px solid rgba(34,211,238,.35);padding-left:16px}.stat dd{margin:auto 0 0}.stat-value{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.1rem);font-weight:700;background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.stat-label{font-size:.78rem;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px}.hero-scroll{position:absolute;bottom:26px;left:50%;transform:translate(-50%);color:var(--muted);animation:bob 2.2s ease-in-out infinite}.hero-scroll:hover{color:var(--accent)}@keyframes bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,8px)}}.section{padding:110px 0;position:relative}.section{content-visibility:auto}#about{contain-intrinsic-size:auto 730px}#skills{contain-intrinsic-size:auto 770px}#experience{contain-intrinsic-size:auto 2100px}#projects{contain-intrinsic-size:auto 3400px}#architecture{contain-intrinsic-size:auto 1400px}#contact{contain-intrinsic-size:auto 650px}@media (max-width: 720px){#about{contain-intrinsic-size:auto 1750px}#skills{contain-intrinsic-size:auto 2100px}#experience{contain-intrinsic-size:auto 5200px}#projects{contain-intrinsic-size:auto 9200px}#architecture{contain-intrinsic-size:auto 2750px}#contact{contain-intrinsic-size:auto 1350px}}.section-head{margin-bottom:48px}.section-head .eyebrow{margin-bottom:12px}.section-title{font-size:clamp(1.8rem,4vw,2.6rem);font-weight:700;letter-spacing:-.015em;margin-top:10px}.about-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:44px;align-items:start}.about-copy{display:flow-root}.about-photo{float:left;width:250px;margin:5px 30px 16px 0;position:relative;border-radius:var(--radius);padding:3px;background:var(--gradient);box-shadow:0 18px 44px #22d3ee24}.about-photo img{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:calc(var(--radius) - 3px)}.about-lead{font-size:1.06rem;color:#b9c4d6}.about-meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:26px}.about-meta-item{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.85rem;color:var(--muted);transition:color .2s ease}.about-meta-item:hover{color:var(--accent)}.about-pillars{display:grid;gap:16px}.pillar h3{font-size:1.05rem;margin:14px 0 6px}.pillar p{color:var(--muted);font-size:.92rem}.pillar-icon,.skill-icon,.channel-icon{display:inline-grid;place-content:center;width:42px;height:42px;border-radius:12px;color:var(--accent);background:#22d3ee14;border:1px solid rgba(34,211,238,.2)}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.skill-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px #00000059}.skill-card-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.skill-card-head h3{font-size:1rem}.timeline{position:relative;padding-left:34px}.timeline-track{position:absolute;left:8px;top:6px;bottom:6px;width:2px;background:var(--border);border-radius:2px;overflow:hidden}.timeline-track-fill{width:100%;height:100%;background:var(--gradient);transform-origin:top}.timeline-list{display:grid;gap:26px}.timeline-item{position:relative}.timeline-dot{position:absolute;left:-30px;top:32px;width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #22d3ee26,0 0 14px #22d3ee99}.timeline-card:hover{transform:translate(4px)}.timeline-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:10px}.timeline-company{font-size:1.25rem}.timeline-role{color:var(--accent);font-size:.92rem;margin-top:3px}.timeline-when{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.timeline-summary{color:var(--muted);font-size:.95rem;margin-bottom:14px}.timeline-highlights{display:grid;gap:8px;margin-bottom:18px}.timeline-highlights li{position:relative;padding-left:20px;font-size:.93rem;color:#b9c4d6}.timeline-highlights li:before{content:"▹";position:absolute;left:0;color:var(--accent)}.filter-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px}.filter-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:.86rem;cursor:pointer;transition:all .2s ease}.filter-btn:hover{border-color:var(--border-strong);color:var(--text)}.filter-btn--active{border-color:transparent;background:var(--gradient);color:#04121a;font-weight:600}.filter-count{font-family:var(--font-mono);font-size:.7rem;opacity:.75}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;grid-auto-flow:dense}.project-cell{display:flex}.project-cell--featured .project-card{border-color:#22d3ee38}.project-cell--featured .project-card:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(34,211,238,.5),transparent 40%,rgba(139,92,246,.45));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.project-card{display:flex;flex-direction:column;width:100%;will-change:transform;transition:transform .15s ease-out,border-color .25s ease,background .25s ease}.project-card:hover{box-shadow:0 24px 50px #00000073}.project-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.project-category{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.project-star{color:#fbbf24;display:inline-flex}.project-name{font-size:1.2rem;margin-bottom:4px}.project-name a{display:inline-flex;align-items:center;gap:7px}.project-name a:hover{color:var(--accent)}.project-subtitle{color:var(--accent-2);font-size:.85rem;margin-bottom:12px}.project-subtitle{color:#a78bfa}.project-description{color:var(--muted);font-size:.92rem;margin-bottom:14px}.project-highlights{display:grid;gap:6px;margin-bottom:16px}.project-tech{margin-top:auto}.project-highlights li{position:relative;padding-left:18px;font-size:.85rem;color:#b9c4d6}.project-highlights li:before{content:"▹";position:absolute;left:0;color:var(--accent)}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:44px;align-items:start}.contact-lead{color:#b9c4d6;font-size:1.02rem;margin-bottom:28px}.contact-channels{display:grid;gap:14px}.contact-channels a{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;border:1px solid var(--border);background:var(--surface);transition:border-color .2s ease,transform .2s ease}.contact-channels a:hover{border-color:#22d3ee66;transform:translate(4px)}.contact-channels strong{display:block;font-size:.86rem}.contact-channels em{font-style:normal;font-family:var(--font-mono);font-size:.8rem;color:var(--muted)}.contact-note{margin-top:20px;font-size:.85rem;color:#fbbf24;border:1px dashed rgba(251,191,36,.35);border-radius:10px;padding:12px 14px}.contact-form{padding:30px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field label{font-size:.83rem;font-weight:600}.optional{color:var(--muted);font-weight:400}.field input,.field textarea{background:#ffffff0a;border:1px solid var(--border);border-radius:10px;padding:12px 14px;color:var(--text);font:inherit;font-size:.93rem;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #22d3ee26}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#f87171}.field-error{color:#f87171;font-size:.78rem}.form-error{color:#fca5a5;font-size:.86rem;margin-bottom:16px}.form-error a{color:var(--accent);text-decoration:underline}.btn-submit{width:100%;justify-content:center}.form-success{text-align:center;padding:30px 10px;display:grid;gap:10px;justify-items:center}.form-success-icon{display:inline-grid;place-content:center;width:60px;height:60px;border-radius:50%;color:#34d399;background:#34d3991a;border:1px solid rgba(52,211,153,.35)}.form-success p{color:var(--muted)}.footer{border-top:1px solid var(--border);padding:26px 0;position:relative;z-index:2}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--muted);font-size:.85rem}.footer-mode{color:#fbbf24}.footer-top{display:inline-grid;place-content:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--border);color:var(--muted);transition:all .2s ease}.footer-top:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-3px)}@media (max-width: 900px){.about-grid,.contact-grid{grid-template-columns:1fr}.hero-stats{grid-template-columns:repeat(2,1fr);gap:22px}}@media (max-width: 560px){.about-photo{float:none;width:100%;max-width:260px;margin:0 0 22px}}@media (max-width: 720px){.nav-links{position:fixed;top:calc(var(--nav-height) + env(safe-area-inset-top,0px));left:0;right:0;flex-direction:column;align-items:flex-start;gap:4px;padding:18px 24px 24px;background:#060a13f7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}.nav-links--open{opacity:1;transform:translateY(0);pointer-events:auto}.nav-link{padding:10px 0;font-size:1rem}.nav-cta{margin-top:10px}.nav-burger{display:flex}.section{padding:80px 0}.form-row{grid-template-columns:1fr}.timeline{padding-left:26px}.timeline-dot{left:-24px}}.project-card-link{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border-radius:inherit}.project-card .project-name a,.project-card .project-tech{position:relative;z-index:2}.project-more{position:relative;display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);opacity:0;transform:translateY(4px);transition:opacity .25s ease,transform .25s ease}.project-card:hover .project-more{opacity:1;transform:translateY(0)}.detail-page{min-height:100vh}.detail-topbar{position:sticky;top:0;z-index:50;height:var(--nav-height);background:#060a13f7;border-bottom:1px solid var(--border)}@supports (backdrop-filter: blur(14px)) or (-webkit-backdrop-filter: blur(14px)){.detail-topbar{background:#060a13bf;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}}.detail-topbar-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.detail-back{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.82rem;color:var(--muted);transition:color .2s ease}.detail-back:hover{color:var(--accent)}.detail-main{padding:72px 24px 110px}.detail-header{margin-bottom:58px;max-width:860px}.detail-category{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.detail-title{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.2rem);line-height:1.08;display:flex;align-items:center;gap:16px}.detail-external{color:var(--muted);transition:color .2s ease}.detail-external:hover{color:var(--accent)}.detail-subtitle{color:#a78bfa;font-size:1.05rem;margin-top:12px}.detail-facts{display:flex;flex-wrap:wrap;gap:14px 40px;margin:30px 0 0;padding-top:24px;border-top:1px solid var(--border)}.detail-fact dt{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.detail-fact dd{margin:0;color:#e6edf7;font-size:.95rem;font-weight:600}.detail-section{margin-bottom:58px;max-width:940px}.detail-eyebrow{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:.92rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}.detail-eyebrow:before{content:"";width:34px;height:2px;border-radius:1px;background:var(--gradient);flex-shrink:0}.detail-para{color:#b9c4d6;font-size:.98rem;margin-bottom:14px;max-width:76ch}.detail-repos{display:grid;gap:8px;margin-top:18px}.detail-repos li{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.detail-repo-name{font-family:var(--font-mono);font-size:.84rem;color:#9fe8f5}.detail-repo-note{font-size:.82rem;color:var(--muted)}.detail-stack{display:flex;flex-wrap:wrap;gap:26px 44px}.detail-stack-group h3{font-size:.85rem;color:#d7e1ef;margin-bottom:10px}.detail-tree{padding:0;overflow:hidden}.detail-tree-title{font-family:var(--font-mono);font-size:.8rem;color:#9fe8f5;padding:12px 18px;border-bottom:1px solid var(--border);background:#94a3b80a}.detail-tree pre{margin:0;padding:18px;font-family:var(--font-mono);font-size:.8rem;line-height:1.65;color:#b9c4d6;overflow-x:auto}.detail-patterns{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-pattern h3{font-size:.95rem;margin-bottom:8px;color:#9fe8f5}.detail-pattern p{font-size:.88rem;color:var(--muted)}.detail-diagram{padding:18px;background:#060a13}.detail-diagram img{width:100%;height:auto;display:block;aspect-ratio:960 / 540}.detail-footer-nav{margin-top:70px}.stats-login{max-width:420px;margin:40px auto 0}.stats-login-card{display:grid;gap:16px;margin-top:22px}.stats-login .detail-para{margin-top:10px}.stats-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin:26px 0 30px}.stats-tile dt{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.stats-tile dd{margin:0;font-family:var(--font-display);font-size:1.9rem;font-weight:700;color:#e6edf7}.chart-card{margin-bottom:24px}.chart-card h2{font-size:1.05rem;margin-bottom:18px}.chart-legend{display:flex;gap:22px;margin-bottom:12px}.legend-item{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:var(--muted)}.legend-item i{width:12px;height:12px;border-radius:3px;display:inline-block}.legend-item .legend-line{height:3px;border-radius:2px;width:16px}.dailychart-plot{position:relative}.dailychart-plot svg{width:100%;height:auto;display:block}.chart-tick{font-family:var(--font-mono);font-size:10px;fill:#64748b}.chart-tooltip{position:absolute;top:0;transform:translate(-50%);background:#101a2e;border:1px solid var(--border-strong);border-radius:10px;padding:8px 12px;display:grid;gap:4px;font-size:.78rem;color:#d7e1ef;pointer-events:none;white-space:nowrap;z-index:3}.chart-tooltip i{width:9px;height:9px;border-radius:2px;display:inline-block;margin-right:6px}.chart-tooltip span{display:flex;align-items:center}.stats-table{margin-top:14px}.stats-table summary{cursor:pointer;font-family:var(--font-mono);font-size:.76rem;color:var(--muted)}.stats-table table{margin-top:10px;border-collapse:collapse;font-size:.82rem}.stats-table th,.stats-table td{text-align:left;padding:4px 18px 4px 0;color:#b9c4d6;border-bottom:1px solid var(--border)}.stats-table th{color:var(--muted);font-weight:600}.stats-split{display:grid;grid-template-columns:1fr 1fr;gap:24px}.stats-split .chart-card{margin-bottom:24px}@media (max-width: 760px){.stats-split{grid-template-columns:1fr;gap:0}}.pagebars{display:grid;gap:10px}.pagebar-row{display:grid;grid-template-columns:130px 1fr 56px;align-items:center;gap:12px}.pagebar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pagebar-label{font-family:var(--font-mono);font-size:.8rem;color:#b9c4d6}.pagebar-track{background:#ffffff0a;border-radius:4px;height:14px}.pagebar-fill{height:100%;border-radius:3px 4px 4px 3px;min-width:3px}.pagebar-value{font-family:var(--font-mono);font-size:.8rem;color:#d7e1ef;text-align:right}.stats-empty{color:var(--muted)}.stats-note{margin-top:8px;font-size:.8rem;color:var(--muted);display:flex;align-items:center;gap:6px}.detail-topbar button.detail-back{background:none;border:none;cursor:pointer;font:inherit}.stats-tabs{display:inline-flex;gap:4px;margin-top:22px;padding:4px;border:1px solid var(--border);border-radius:12px;background:#ffffff05}.stats-tab{border:none;background:none;cursor:pointer;padding:8px 20px;border-radius:9px;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);transition:color .2s,background .2s}.stats-tab:hover{color:#d7e1ef}.stats-tab.is-active{color:#9fe8f5;background:#0891b229}.msg-list{display:grid;gap:16px;margin-bottom:24px}.msg-card{padding:20px 22px}.msg-head{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap}.msg-who{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.msg-who strong{color:#e6edf7;font-size:.98rem}.msg-email{font-family:var(--font-mono);font-size:.78rem;color:#9fe8f5;text-decoration:none}.msg-email:hover{text-decoration:underline}.msg-when{font-family:var(--font-mono);font-size:.74rem;color:var(--muted);white-space:nowrap}.msg-subject{margin-top:10px;font-weight:600;font-size:.9rem;color:#b9c4d6}.msg-body{margin-top:8px;font-size:.9rem;line-height:1.65;color:#b9c4d6;white-space:pre-wrap;overflow-wrap:anywhere}@media (max-width: 560px){.pagebar-row{grid-template-columns:84px 1fr 48px}}@media (max-width: 720px){.detail-patterns{grid-template-columns:1fr}.detail-main{padding:48px 18px 80px}.detail-facts{gap:12px 26px}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
