@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-ext-wght-normal-d45eAU9y.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-wght-normal-BAAhND-U.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-greek-wght-normal-CmyJS8uq.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-vietnamese-wght-normal-Dg1JeJN0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-ext-wght-normal-CIII54If.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-wght-normal-IvpUvPa2.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--color-background: #0d0d0d;--color-surface: #161616;--color-surface-raised: #1e1e1e;--color-chrome: #0b0b0b;--color-foreground: #f4f4f5;--color-secondary: #a1a1aa;--color-tertiary: #71717a;--color-brand-primary: #2563eb;--color-brand-primary-ink: #60a5fa;--color-brand-hover: #f97316;--color-brand-hover-ink: #f97316;--color-on-brand-primary: #f8fafc;--color-on-brand-hover: #171717;--color-card: #171b23;--color-card-hover: #261d16;--color-card-border: rgb(96 165 250 / 34%);--color-card-border-hover: rgb(249 115 22 / 58%);--color-card-accent: var(--color-brand-primary-ink);--color-card-accent-hover: var(--color-brand-hover-ink);--color-accent-fill: var(--color-brand-primary);--color-accent-fill-hover: var(--color-brand-hover);--color-accent-ink: var(--color-brand-primary-ink);--color-accent-ink-hover: var(--color-brand-hover-ink);--color-on-accent: var(--color-on-brand-primary);--color-on-accent-hover: var(--color-on-brand-hover);--color-border: #27272a;--color-border-strong: #3f3f46;--color-danger: #f05252;--color-danger-hover: #7f1d1d;--color-danger-text: #fecaca;--color-danger-surface: #210d0d;--color-danger-border: #7f1d1d;--color-success: #22c55e;--color-success-text: #bbf7d0;--color-success-surface: #062510;--color-success-border: #166534;--color-warning: #f6c344;--color-warning-surface: #2b1d05;--color-focus: #7dd3fc;--color-overlay: rgb(0 0 0 / 82%);--color-code: #111111;--color-code-raised: #1e1e1e;--color-code-foreground: #f4f4f5;--color-code-secondary: #a1a1aa;--color-code-border: #3f3f46;--color-code-accent: #f97316;--color-code-keyword: #ff82c8;--font-sans: "IBM Plex Sans Variable", "IBM Plex Sans", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono: "JetBrains Mono Variable", "JetBrains Mono", "SFMono-Regular", Consolas, monospace;--header-height: 72px;--radius-control: 4px;--radius-panel: 6px;--content-width: 1120px;--transition-fast: .18s ease-out}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;color-scheme:dark;background:var(--color-background);scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 24px)}body{min-width:320px;min-height:100vh;margin:0;color:var(--color-foreground);background:var(--color-background);font-family:var(--font-sans);font-size:16px;line-height:1.65;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}button,input,textarea,select{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}a{color:inherit;text-underline-offset:4px}img,svg{display:block}img{max-width:100%}h1,h2,h3,p,figure,dl,dd,pre{margin-top:0}h1,h2,h3{color:var(--color-foreground);line-height:1.12;letter-spacing:-.035em;text-wrap:balance}p{text-wrap:pretty}h1{font-size:clamp(2.75rem,5vw,4rem);font-weight:720}h2{font-size:clamp(2rem,3vw,2.5rem);font-weight:700}h3{font-size:1.25rem;font-weight:680}::selection{color:var(--color-on-accent);background:var(--color-accent-fill)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}#main-content{min-height:calc(100vh - var(--header-height))}#main-content:focus-visible{outline-offset:-2px}.shell{width:min(calc(100% - 64px),var(--content-width));margin-inline:auto}.skip-link{position:fixed;z-index:1000;top:8px;left:8px;padding:10px 16px;color:var(--color-on-accent);background:var(--color-accent-fill);border-radius:var(--radius-control);transform:translateY(-160%);transition:transform var(--transition-fast)}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow,.index,.section-number,.tabular,.status-badge,.tag,code,pre{font-family:var(--font-mono)}.eyebrow,.index,.section-number{margin-bottom:10px;color:var(--color-accent-ink);font-size:.75rem;font-weight:700;line-height:1.35;letter-spacing:.06em;text-transform:uppercase}.muted{color:var(--color-secondary)}.button,.icon-button,.text-action,.text-link,.back-link,.explicit-link{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:9px;font-weight:680}.button{min-height:48px;padding:11px 22px;border:1px solid transparent;border-radius:var(--radius-control);text-decoration:none;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.button:hover:not(:disabled){transform:translateY(-1px)}.button-primary{color:var(--color-on-accent);background:var(--color-accent-fill);border-color:var(--color-accent-fill)}.button-primary:hover:not(:disabled),.button-primary:active:not(:disabled){color:var(--color-on-accent-hover);background:var(--color-accent-fill-hover);border-color:var(--color-accent-fill-hover)}.button-secondary{color:var(--color-accent-ink);background:transparent;border-color:var(--color-card-border)}.button-secondary:hover:not(:disabled),.button-secondary:active:not(:disabled){color:var(--color-accent-ink-hover);background:var(--color-card-hover);border-color:var(--color-accent-ink-hover)}.button-danger{color:#fff;background:var(--color-danger);border-color:var(--color-danger)}.button-danger:hover:not(:disabled),.button-danger:active:not(:disabled){color:#fff;background:var(--color-danger-hover);border-color:var(--color-danger)}.button-full{width:100%}.button-row{display:flex;flex-wrap:wrap;gap:12px}.text-action,.text-link,.back-link,.explicit-link{padding:0;color:var(--color-accent-ink);background:transparent;border:0;text-decoration:none}.text-action:hover,.text-link:hover,.back-link:hover,.explicit-link:hover,.text-action:active,.text-link:active,.back-link:active,.explicit-link:active{color:var(--color-accent-ink-hover)}.danger,.text-action.danger{color:var(--color-danger)}.icon-button{width:44px;min-width:44px;height:44px;padding:0;color:var(--color-accent-ink);background:transparent;border:1px solid var(--color-card-border);border-radius:var(--radius-control);transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}.icon-button:hover:not(:disabled),.icon-button:active:not(:disabled){color:var(--color-on-accent-hover);background:var(--color-accent-fill-hover);border-color:var(--color-accent-fill-hover)}.icon-button.danger{color:var(--color-danger);border-color:var(--color-danger-border)}.icon-button.danger:hover:not(:disabled),.icon-button.danger:active:not(:disabled){color:#fff;background:var(--color-danger-hover);border-color:var(--color-danger)}.state-panel{display:flex;min-height:136px;align-items:flex-start;gap:16px;padding:28px;color:var(--color-secondary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-panel)}.state-panel strong{display:block;margin-bottom:4px;color:var(--color-foreground);font-size:1.1rem}.state-panel p:last-child{margin-bottom:0}.state-copy{min-width:0;overflow-wrap:anywhere}.state-error,.form-alert{color:var(--color-danger-text);background:var(--color-danger-surface);border-color:var(--color-danger-border)}.form-alert,.form-success{padding:12px 16px;border:1px solid;border-left-width:3px;border-radius:var(--radius-control)}.form-success{color:var(--color-success-text);background:var(--color-success-surface);border-color:var(--color-success-border)}.status-badge,.tag{display:inline-flex;min-height:28px;align-items:center;gap:6px;padding:3px 8px;border:1px solid currentColor;border-radius:3px;font-size:.75rem;font-weight:650;letter-spacing:.02em;white-space:nowrap}.status-success{color:var(--color-success)}.status-warning{color:var(--color-warning)}.status-neutral{color:var(--color-secondary)}.tag-list{display:flex;flex-wrap:wrap;gap:6px}.tag{color:var(--color-secondary);background:var(--color-surface-raised);border-color:var(--color-border-strong)}.empty-copy{padding:24px 0;color:var(--color-secondary);border-block:1px solid var(--color-border)}.markdown{color:var(--color-secondary);line-height:1.75;overflow-wrap:anywhere}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown h2,.markdown h3,.markdown h4{margin:1.8em 0 .65em;color:var(--color-foreground);line-height:1.25}.markdown p,.markdown ul,.markdown ol,.markdown blockquote,.markdown pre,.markdown table{margin:0 0 1.15em}.markdown ul,.markdown ol{padding-left:1.4em}.markdown li+li{margin-top:.4em}.markdown a{color:var(--color-accent-ink);text-underline-offset:3px}.markdown a:hover,.markdown a:active{color:var(--color-accent-ink-hover)}.markdown code{font-family:var(--font-mono);font-size:.88em}.markdown :not(pre)>code{padding:.16em .4em;color:var(--color-foreground);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:3px}.markdown pre{max-width:100%;padding:20px;overflow-x:auto;color:var(--color-foreground);color:var(--color-code-foreground);background:var(--color-code);border:1px solid var(--color-code-border);border-radius:var(--radius-panel)}.markdown blockquote{padding:4px 0 4px 18px;color:var(--color-secondary);border-left:2px solid var(--color-accent-ink)}.markdown table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.markdown th,.markdown td{padding:10px 12px;border:1px solid var(--color-border);text-align:left}.markdown th{color:var(--color-foreground);background:var(--color-surface-raised)}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.route-enter-active,.route-leave-active{transition:opacity .18s ease,transform .18s ease}.route-enter-from,.route-leave-to{opacity:0;transform:translateY(8px)}@media(max-width:767px){:root{--header-height: 64px}.shell{width:calc(100% - 32px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.site-header,.site-footer,.resume-actions{display:none!important}body{color:#111;background:#fff}}html.public-developer-theme{color-scheme:dark;--color-background: #0b0b10;--color-section-surface: transparent;--color-section-divider: transparent;--color-divider-content: rgb(148 163 184 / 7%);--color-home-section-surface: rgb(255 255 255 / 3%);--color-resume-ambient-cool-core: rgb(37 99 235 / 22%);--color-resume-ambient-cool-halo: rgb(37 99 235 / 7%);--color-resume-ambient-warm-core: rgb(234 88 12 / 14%);--color-resume-ambient-warm-halo: rgb(234 88 12 / 5%);--header-height: 96px;--public-header-panel-height: 64px;--public-header-width: 1120px;--color-header-panel: rgb(27 37 61 / 94%);--color-header-panel-glass: rgb(18 27 46 / 72%);--color-header-menu: rgb(27 37 61 / 94%);--color-header-border: rgb(148 163 184 / 20%);--header-panel-backdrop: blur(18px) saturate(1.25);--public-card-radius: 18px;--color-card: #17171c;--color-card-hover: #242428;--color-card-border: #2f2f34;--color-card-border-hover: #505053;--color-card-accent: #2563eb;--color-card-accent-hover: #f97316;--color-card-copy: #94a3b8;--color-card-tag-ink: #2563eb;--color-card-tag-surface: #192645;--color-card-tag-surface-hover: #24314f;--color-project-completed-ink: #fb923c;--color-project-completed-surface: #482712;--card-shadow-hover: 0 18px 32px -22px rgb(37 99 235 / 42%);--color-stack-node: #3b82f6;--color-stack-node-copy: #7b7b85;--stack-node-glow: rgb(37 99 235 / 34%);--color-button-fill-hover: #1d4ed8;--color-button-fill-active: #1e40af;--color-button-ink-hover: #93c5fd;--color-button-surface-hover: rgb(37 99 235 / 16%);--color-button-surface-active: rgb(37 99 235 / 24%);--color-button-border-hover: #3b82f6;--color-button-border-active: #2563eb;--color-button-on-fill: #f8fafc;--color-button-glow: rgb(48 114 240 / 52%);--color-button-glow-hover: rgb(48 114 240 / 72%);--color-button-glow-active: rgb(48 114 240 / 48%);--color-paired-secondary-surface: rgb(255 255 255 / 5%);--color-paired-secondary-surface-hover: rgb(255 255 255 / 11%);--color-paired-secondary-surface-active: rgb(255 255 255 / 8%);--color-paired-secondary-border: rgb(255 255 255 / 16%);--color-paired-secondary-border-hover: rgb(255 255 255 / 30%);--color-paired-secondary-border-active: rgb(255 255 255 / 38%);--hero-spectrum: linear-gradient( 96deg, #2e70ee 0%, #3a80f5 35%, #6f80c8 55%, #b77972 70%, #f97316 88%, #f97316 100% );background:var(--color-background)}html.public-developer-theme[data-public-theme=light]{color-scheme:light;--color-background: #f3f1ea;--color-section-surface: transparent;--color-section-divider: transparent;--color-divider-content: rgb(15 23 42 / 6%);--color-home-section-surface: rgb(15 23 42 / 4%);--color-resume-ambient-cool-core: rgb(37 99 235 / 14%);--color-resume-ambient-cool-halo: rgb(37 99 235 / 5%);--color-resume-ambient-warm-core: rgb(249 115 22 / 10%);--color-resume-ambient-warm-halo: rgb(249 115 22 / 4%);--color-surface: #fbfaf6;--color-surface-raised: #e9e6dd;--color-chrome: #f7f5ef;--color-foreground: #171717;--color-secondary: #4f514b;--color-tertiary: #6a6d66;--color-border: #d8d4c8;--color-border-strong: #89867e;--color-brand-primary: #2563eb;--color-brand-primary-ink: #1d4ed8;--color-brand-hover: #c2410c;--color-brand-hover-ink: #c2410c;--color-on-brand-primary: #ffffff;--color-on-brand-hover: #ffffff;--color-card: #f2f3f5;--color-card-hover: #e7e7e9;--color-card-border: #d4d4d8;--color-card-border-hover: #a1a1aa;--color-card-accent: #1d4ed8;--color-card-accent-hover: #c2410c;--color-card-copy: #4f514b;--color-card-tag-ink: #1d4ed8;--color-card-tag-surface: #dfe7fa;--color-card-tag-surface-hover: #d3def8;--color-project-completed-ink: #9a3412;--color-project-completed-surface: #ffedd5;--card-shadow-hover: 0 18px 32px -22px rgb(37 99 235 / 20%);--color-stack-node: #1d4ed8;--color-stack-node-copy: #6a6d66;--stack-node-glow: rgb(37 99 235 / 16%);--color-header-panel: rgb(251 250 246 / 96%);--color-header-panel-glass: rgb(251 250 246 / 70%);--color-header-menu: rgb(251 250 246 / 96%);--color-header-border: rgb(106 109 102 / 18%);--color-button-fill-hover: #1d4ed8;--color-button-fill-active: #1e40af;--color-button-ink-hover: #1e40af;--color-button-surface-hover: rgb(37 99 235 / 10%);--color-button-surface-active: rgb(37 99 235 / 16%);--color-button-border-hover: #2563eb;--color-button-border-active: #1d4ed8;--color-button-on-fill: #ffffff;--color-button-glow: rgb(37 99 235 / 24%);--color-button-glow-hover: rgb(37 99 235 / 34%);--color-button-glow-active: rgb(37 99 235 / 28%);--color-paired-secondary-surface: rgb(15 23 42 / 4%);--color-paired-secondary-surface-hover: rgb(15 23 42 / 9%);--color-paired-secondary-surface-active: rgb(15 23 42 / 7%);--color-paired-secondary-border: rgb(15 23 42 / 14%);--color-paired-secondary-border-hover: rgb(15 23 42 / 26%);--color-paired-secondary-border-active: rgb(15 23 42 / 34%);--color-focus: #006ea8;--color-danger: #b42318;--color-danger-hover: #8f1c13;--color-danger-text: #b42318;--color-danger-surface: #fdecea;--color-danger-border: #d92d20;--color-success: #177a00;--color-success-text: #177a00;--color-success-surface: #eaf7e8;--color-success-border: #4c9f38;--color-warning: #8a5200;--color-warning-surface: #fff4d6;--color-overlay: rgb(23 23 23 / 54%);--color-code: #111111;--color-code-raised: #1e1e1e;--color-code-foreground: #f4f4f5;--color-code-secondary: #a1a1aa;--color-code-border: #3f3f46;--color-code-accent: #f97316;--color-code-keyword: #ff82c8;--hero-spectrum: linear-gradient( 96deg, #1f5fcf 0%, #2e6fdc 35%, #716f99 55%, #a45e5b 70%, #c55312 88%, #c55312 100% )}html.public-developer-theme body{color:var(--color-foreground);background:var(--color-background)}html.public-developer-theme .public-page{min-width:0;overflow:clip}html.public-developer-theme .public-page h2 strong{color:var(--color-accent-ink)}html.public-developer-theme .developer-header{position:sticky;z-index:100;top:0;height:var(--header-height);padding-block:16px;background:transparent}html.public-developer-theme .developer-header .header-inner{position:relative;display:grid;width:min(calc(100% - 32px),var(--public-header-width));height:var(--public-header-panel-height);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;padding-inline:40px;background:var(--color-header-panel);background-clip:padding-box;border:1px solid var(--color-header-border);border-radius:20px}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){html.public-developer-theme .developer-header .header-inner{background:var(--color-header-panel-glass);-webkit-backdrop-filter:var(--header-panel-backdrop);backdrop-filter:var(--header-panel-backdrop)}}html.public-developer-theme .developer-wordmark,html.public-developer-theme .developer-footer-brand{display:inline-flex;min-height:44px;align-items:center;gap:12px;color:var(--color-foreground);font-size:.95rem;font-weight:720;text-decoration:none;white-space:nowrap}html.public-developer-theme .developer-header .developer-wordmark{grid-column:1;justify-self:start}html.public-developer-theme .developer-header .developer-brand-mark{width:40px;min-width:40px;height:40px;border-radius:50%}html.public-developer-theme .developer-brand-mark{display:inline-flex;width:36px;min-width:36px;height:36px;align-items:center;justify-content:center;overflow:hidden;border-radius:50%}html.public-developer-theme .developer-brand-icon{display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover}html.public-developer-theme .primary-nav{display:flex;height:100%;align-items:center;grid-column:2;gap:clamp(22px,2.4vw,38px);justify-self:center}html.public-developer-theme .developer-header-tab{display:inline-flex;min-height:44px;align-items:center;color:var(--color-tertiary);font-size:.9rem;font-weight:600;text-decoration:none;transition:color var(--transition-fast)}html.public-developer-theme .developer-header-tab:hover{color:var(--color-secondary)}html.public-developer-theme .developer-header-tab:active,html.public-developer-theme .developer-header-tab.router-link-active,html.public-developer-theme .developer-header-tab.router-link-active:hover{color:var(--color-foreground)}html.public-developer-theme .theme-toggle{display:inline-grid;width:44px;min-width:44px;height:44px;padding:0;place-items:center;color:var(--color-accent-ink);background:transparent;border:1px solid var(--color-card-border);border-radius:var(--radius-control);transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}html.public-developer-theme .developer-header .theme-toggle{border-color:transparent;border-radius:12px}html.public-developer-theme .theme-toggle:hover,html.public-developer-theme .theme-toggle:active{color:var(--color-button-ink-hover);background:var(--color-button-surface-hover);border-color:var(--color-button-border-hover)}html.public-developer-theme .theme-toggle:active{background:var(--color-button-surface-active);border-color:var(--color-button-border-active)}html.public-developer-theme .developer-header .theme-toggle:hover,html.public-developer-theme .developer-header .theme-toggle:active{background:transparent;border-color:transparent}html.public-developer-theme .developer-header .theme-toggle-desktop{grid-column:3;justify-self:end}html.public-developer-theme .public-page .button:is(.button-primary,.button-secondary):not(.danger):not(.button-danger):not(:disabled):not([aria-disabled=true]){min-height:48px;padding:11px 24px;color:var(--color-button-on-fill);background:var(--color-accent-fill);border-color:var(--color-accent-fill);border-radius:12px;box-shadow:0 5px 12px -10px var(--color-button-glow);transform:none;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}@media(hover:hover)and (pointer:fine){html.public-developer-theme .public-page .button:is(.button-primary,.button-secondary):not(.danger):not(.button-danger):hover:not(:disabled):not([aria-disabled=true]){color:var(--color-button-on-fill);background:var(--color-accent-fill);border-color:var(--color-accent-fill);box-shadow:0 11px 22px -10px var(--color-button-glow-hover);transform:translateY(-1px)}}html.public-developer-theme .public-page .button:is(.button-primary,.button-secondary):not(.danger):not(.button-danger):active:not(:disabled):not([aria-disabled=true]){color:var(--color-button-on-fill);background:var(--color-button-fill-active);border-color:var(--color-button-fill-active);box-shadow:0 5px 12px -9px var(--color-button-glow-active);transform:translateY(0)}html.public-developer-theme .public-page .button.button-primary+.button.button-secondary:not(.danger):not(.button-danger):not(:disabled):not([aria-disabled=true]){color:var(--color-foreground);background:var(--color-paired-secondary-surface);border-color:var(--color-paired-secondary-border);box-shadow:none;transform:none}@media(hover:hover)and (pointer:fine){html.public-developer-theme .public-page .button.button-primary+.button.button-secondary:not(.danger):not(.button-danger):hover:not(:disabled):not([aria-disabled=true]){color:var(--color-foreground);background:var(--color-paired-secondary-surface-hover);border-color:var(--color-paired-secondary-border-hover);box-shadow:none;transform:none}}html.public-developer-theme .public-page .button.button-primary+.button.button-secondary:not(.danger):not(.button-danger):active:not(:disabled):not([aria-disabled=true]){color:var(--color-foreground);background:var(--color-paired-secondary-surface-active);border-color:var(--color-paired-secondary-border-active);box-shadow:none;transform:none}html.public-developer-theme .icon-button:not(.danger):hover:not(:disabled),html.public-developer-theme .icon-button:not(.danger):active:not(:disabled){color:var(--color-button-ink-hover);background:var(--color-button-surface-hover);border-color:var(--color-button-border-hover)}html.public-developer-theme .icon-button:not(.danger):active:not(:disabled){background:var(--color-button-surface-active);border-color:var(--color-button-border-active)}html.public-developer-theme button.text-action:not(.danger):hover:not(:disabled),html.public-developer-theme button.text-action:not(.danger):active:not(:disabled){color:var(--color-button-ink-hover)}html.public-developer-theme .button[aria-disabled=true],html.public-developer-theme .button[aria-disabled=true]:hover,html.public-developer-theme .button[aria-disabled=true]:active{color:var(--color-tertiary);background:transparent;border-color:var(--color-border);box-shadow:none;transform:none}html.public-developer-theme .theme-toggle-mobile,html.public-developer-theme .nav-toggle{display:none}html.public-developer-theme .devkit-section{padding-block:96px;border-bottom:1px solid var(--color-section-divider)}html.public-developer-theme .devkit-section-raised{background:var(--color-section-surface)}html.public-developer-theme .devkit-page-cta,html.public-developer-theme .archive-empty-state,html.public-developer-theme .archive-filter-empty-state,html.public-developer-theme .project-archive-cta,html.public-developer-theme .devkit-empty-evidence,html.public-developer-theme .devkit-resume-sheet,html.public-developer-theme .devkit-final-cta{background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--public-card-radius)}html.public-developer-theme .public-page .state-panel{border-radius:var(--public-card-radius)}html.public-developer-theme .public-page .state-panel:not(.state-error){background:var(--color-card);border-color:var(--color-card-border)}html.public-developer-theme .devkit-section-heading{margin-bottom:46px}html.public-developer-theme .devkit-section-heading-centered{text-align:center}html.public-developer-theme .devkit-section-heading h2{margin-bottom:10px;font-size:clamp(2rem,3vw,2.5rem)}html.public-developer-theme .devkit-section-heading>p:last-child{max-width:62ch;margin:0 auto;color:var(--color-secondary)}html.public-developer-theme .home-content-section{position:relative}html.public-developer-theme .home-skills-section,html.public-developer-theme .home-resume-section{background:var(--color-home-section-surface)}html.public-developer-theme .home-resume-section{isolation:isolate;overflow:clip}html.public-developer-theme .home-resume-section:before{position:absolute;z-index:0;inset:0;background:radial-gradient(ellipse clamp(280px,40vw,680px) clamp(280px,34vw,520px) at 36% 14%,var(--color-resume-ambient-cool-core) 0%,var(--color-resume-ambient-cool-core) 8%,var(--color-resume-ambient-cool-halo) 46%,transparent 76%),radial-gradient(ellipse clamp(280px,40vw,680px) clamp(280px,34vw,520px) at 64% 14%,var(--color-resume-ambient-warm-core) 0%,var(--color-resume-ambient-warm-core) 8%,var(--color-resume-ambient-warm-halo) 46%,transparent 76%);content:"";pointer-events:none}html.public-developer-theme .home-resume-section>.shell{position:relative;z-index:1}html.public-developer-theme .home-content-section:focus{outline:none}html.public-developer-theme .home-section-heading{max-width:720px;margin-inline:auto}html.public-developer-theme .home-section-heading h2{width:fit-content;max-width:100%;margin-inline:auto;color:transparent;background:var(--hero-spectrum);background-clip:text;font-size:clamp(1.9rem,3vw,2.55rem);letter-spacing:-.03em;-webkit-background-clip:text;-webkit-text-fill-color:transparent}html.public-developer-theme .home-projects-section .project-filter-panel{display:grid;gap:20px;margin:0 0 40px;padding:0;border:0}html.public-developer-theme .home-projects-section .project-filter-group{min-inline-size:0;margin:0;padding:0;border:0}html.public-developer-theme .home-projects-section .project-filter-group legend{margin-bottom:12px;color:var(--color-card-copy);font-size:.875rem;font-weight:500}html.public-developer-theme .home-projects-section .archive-filter-bar{width:100%}html.public-developer-theme .home-projects-section .archive-filter-option{position:relative;min-height:40px;padding:7px 14px;color:var(--color-card-copy);font-size:.875rem;font-weight:500;line-height:1.25rem}html.public-developer-theme .home-projects-section .archive-filter-option:before{position:absolute;inset:-2px 0;content:""}html.public-developer-theme .home-projects-section .project-technology-filter-group .archive-filter-option{font-family:var(--font-mono);letter-spacing:-.015em}html.public-developer-theme .home-projects-section .archive-empty-state,html.public-developer-theme .home-projects-section .archive-filter-empty-state{min-height:280px;padding-inline:0;background:transparent;border:0;border-radius:0}html.public-developer-theme .home-skills-section .devkit-empty-evidence{margin-block:34px 0}html.public-developer-theme .home-about-profile{display:grid;grid-template-columns:minmax(0,.85fr) minmax(360px,1.15fr);gap:54px;align-items:center;margin-bottom:28px;padding:38px;background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--public-card-radius)}html.public-developer-theme .home-about-copy h3{margin-bottom:12px;font-size:clamp(1.65rem,3vw,2.25rem)}html.public-developer-theme .home-about-profile .about-direction{margin-top:0}html.public-developer-theme .home-about-manifesto{position:relative;min-width:0;margin:0;padding:10px 0 10px clamp(24px,3.5vw,46px);border-left:1px solid var(--color-divider-content)}html.public-developer-theme .home-about-manifesto:before{position:absolute;top:10px;left:-1px;width:2px;height:58px;background:var(--hero-spectrum);border-radius:999px;content:""}html.public-developer-theme .home-about-manifesto-lines{display:grid;gap:20px;margin:0;padding:0;list-style:none}html.public-developer-theme .home-about-manifesto-lines>li{--manifesto-shift: 0px;display:grid;width:calc(100% - var(--manifesto-shift));grid-template-areas:"statement label";grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:baseline;margin-left:var(--manifesto-shift)}html.public-developer-theme .home-about-manifesto-lines>li:nth-child(2){--manifesto-shift: clamp(28px, 5vw, 64px)}html.public-developer-theme .home-about-manifesto-lines>li:nth-child(3){--manifesto-shift: clamp(10px, 2vw, 26px)}html.public-developer-theme .home-about-manifesto-label{grid-area:label;color:var(--color-tertiary);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.06em}html.public-developer-theme .home-about-manifesto-statement{grid-area:statement;margin:0;color:var(--color-foreground);font-size:clamp(1.55rem,2.8vw,2.2rem);font-weight:620;letter-spacing:-.035em;line-height:1.16;white-space:nowrap}html.public-developer-theme .home-about-manifesto-lines strong{color:var(--color-card-accent);font-weight:760}html.public-developer-theme .home-about-manifesto-lines>li:last-child strong{color:var(--color-card-accent-hover)}html.public-developer-theme .home-about-principles{margin-top:28px}html.public-developer-theme .home-resume-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:36px;margin-bottom:32px;padding:24px 28px;background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--public-card-radius);box-shadow:0 22px 48px -40px var(--stack-node-glow)}html.public-developer-theme .resume-file-identity{display:grid;grid-template-columns:84px minmax(0,1fr);align-items:center;gap:28px;min-width:0}html.public-developer-theme .resume-file-icon{display:grid;width:84px;height:84px;color:var(--color-stack-node);background:var(--color-card-tag-surface);border:1px solid var(--color-card-border);border-radius:12px;place-items:center}html.public-developer-theme .resume-file-copy{min-width:0}html.public-developer-theme .resume-file-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}html.public-developer-theme .resume-file-title-row h3{margin:0;font-size:clamp(1.25rem,2vw,1.55rem);letter-spacing:-.025em}html.public-developer-theme .resume-file-copy>p{max-width:560px;margin:10px 0 0;color:var(--color-secondary)}html.public-developer-theme .home-resume-summary .resume-actions{display:flex;min-height:76px;align-items:center;flex-wrap:wrap;gap:12px;padding-left:36px;border-left:1px solid var(--color-divider-content)}html.public-developer-theme .resume-file-action{min-width:184px;justify-content:center}html.public-developer-theme .resume-download-action:disabled{color:var(--color-tertiary);background:transparent;border-color:var(--color-border);box-shadow:none;opacity:1}html.public-developer-theme .resume-pdf-dialog-backdrop{position:fixed;z-index:1200;inset:0;display:grid;padding:clamp(16px,3vw,40px);background:#0b0b10e0;place-items:center}html.public-developer-theme .resume-pdf-dialog{position:relative;display:grid;width:min(1180px,100%);max-width:100%;height:min(900px,calc(100dvh - clamp(32px,6vw,80px)));max-height:100%;min-height:0;grid-template-rows:auto minmax(0,1fr);overflow:hidden;color:var(--color-foreground);background:var(--color-card);border:1px solid var(--color-card-border);border-radius:16px;box-shadow:0 36px 100px #0000007a}html.public-developer-theme .resume-pdf-dialog:before{position:absolute;z-index:1;top:0;right:0;left:0;height:3px;background:var(--color-brand-primary);content:""}html.public-developer-theme .resume-pdf-dialog-header{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;align-items:center;gap:24px;padding:20px 22px;border-bottom:1px solid var(--color-divider-content)}html.public-developer-theme .resume-pdf-dialog-copy{min-width:0}html.public-developer-theme .resume-pdf-dialog-copy h2{margin:0;font-size:clamp(1.15rem,2vw,1.4rem);letter-spacing:-.025em}html.public-developer-theme .resume-pdf-dialog-copy p{margin:6px 0 0;color:var(--color-secondary);font-size:.88rem}html.public-developer-theme .resume-pdf-dialog-fallback{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}html.public-developer-theme .resume-pdf-dialog-fallback .text-link{display:inline-flex;min-height:44px;align-items:center;gap:7px;padding:8px 12px;color:var(--color-foreground);background:var(--color-paired-secondary-surface);border:1px solid var(--color-paired-secondary-border);border-radius:10px;font-size:.86rem;white-space:nowrap}html.public-developer-theme .resume-pdf-dialog-fallback .text-link:hover,html.public-developer-theme .resume-pdf-dialog-fallback .text-link:active{color:var(--color-foreground);background:var(--color-paired-secondary-surface-hover);border-color:var(--color-paired-secondary-border-hover)}html.public-developer-theme .resume-pdf-dialog-close{display:inline-grid;width:44px;height:44px;color:var(--color-foreground);background:transparent;border:1px solid var(--color-border);border-radius:10px;place-items:center}html.public-developer-theme .resume-pdf-dialog-frame-shell{min-width:0;min-height:0;padding:12px;background:var(--color-code)}html.public-developer-theme .resume-pdf-dialog-frame{display:block;width:100%;height:100%;background:#fff;border:0}html.public-developer-theme .devkit-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:80px;align-items:center}html.public-developer-theme .devkit-page-hero{display:flex;min-height:470px;flex-direction:column;align-items:center;justify-content:center;padding-block:64px 72px;text-align:center}html.public-developer-theme .devkit-page-hero h1{margin-bottom:22px;font-size:clamp(3rem,5vw,4rem)}html.public-developer-theme .devkit-page-hero h1 span{color:var(--color-accent-ink)}html.public-developer-theme .devkit-page-hero>p{max-width:680px;margin-bottom:28px;color:var(--color-secondary)}html.public-developer-theme .devkit-fact-strip{display:grid;width:min(100%,640px);grid-template-columns:repeat(3,minmax(0,1fr));margin:34px 0 0;padding-top:22px;border-top:1px solid var(--color-divider-content)}html.public-developer-theme .devkit-fact-strip>div{padding-inline:20px;border-right:1px solid var(--color-divider-content)}html.public-developer-theme .devkit-fact-strip>div:last-child{border-right:0}html.public-developer-theme .devkit-fact-strip dt{color:var(--color-tertiary);font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase}html.public-developer-theme .devkit-fact-strip dd{color:var(--color-foreground);font-weight:650}html.public-developer-theme .devkit-three-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}html.public-developer-theme .devkit-evidence-card{min-height:220px;padding:28px;background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--public-card-radius);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}html.public-developer-theme .devkit-evidence-card>svg,html.public-developer-theme .devkit-evidence-card>.section-number{margin-bottom:28px;color:var(--color-card-accent);transition:color var(--transition-fast)}html.public-developer-theme .devkit-evidence-card h3{margin-bottom:10px}html.public-developer-theme .devkit-evidence-card>p:last-child{margin-bottom:0;color:var(--color-card-copy)}html.public-developer-theme .tag{padding-inline:12px;color:var(--color-card-tag-ink);background:var(--color-card-tag-surface);border-color:transparent;border-radius:999px;transition:background-color var(--transition-fast)}html.public-developer-theme .devkit-code-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px;align-items:center}html.public-developer-theme .devkit-code-copy>p{max-width:48ch;color:var(--color-secondary)}html.public-developer-theme .devkit-code-titlebar{display:flex;min-height:52px;align-items:center;gap:8px;padding-inline:20px;color:var(--color-code-secondary);background:var(--color-code-raised);border-bottom:1px solid var(--color-code-border)}html.public-developer-theme .devkit-code-titlebar>span{width:11px;height:11px;background:#fb5454;border-radius:50%}html.public-developer-theme .devkit-code-titlebar>span:nth-child(2){background:#f7c948}html.public-developer-theme .devkit-code-titlebar>span:nth-child(3){margin-right:10px;background:#2fd679}html.public-developer-theme .devkit-page-cta{width:min(100%,820px);margin:28px auto 0;padding:46px;text-align:center}html.public-developer-theme .devkit-page-cta h2{margin-bottom:24px}html.public-developer-theme .devkit-page-cta .button-row{justify-content:center}html.public-developer-theme .projects-archive-hero{border-bottom:1px solid var(--color-section-divider)}html.public-developer-theme .projects-archive-hero-inner{display:flex;min-height:510px;flex-direction:column;align-items:center;justify-content:center;padding-block:64px;text-align:center}html.public-developer-theme .projects-archive-hero h1{margin-bottom:22px;font-size:clamp(3rem,5vw,4rem)}html.public-developer-theme .projects-archive-hero h1 span,html.public-developer-theme .projects-archive-hero h1 strong{display:block}html.public-developer-theme .projects-archive-intro{max-width:680px;margin-bottom:32px;color:var(--color-secondary)}html.public-developer-theme .archive-filter-bar{display:flex;flex-wrap:wrap;gap:10px;overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}html.public-developer-theme .archive-filter-option{min-height:44px;padding:9px 18px;color:var(--color-accent-ink);background:var(--color-surface-raised);border:1px solid transparent;border-radius:10px;font-weight:650;white-space:nowrap}html.public-developer-theme .archive-filter-option.active{color:var(--color-on-accent);background:var(--color-accent-fill)}html.public-developer-theme .archive-filter-option:active{color:var(--color-button-on-fill);background:var(--color-button-fill-active)}html.public-developer-theme .project-archive-section,html.public-developer-theme .project-verification-section{padding-block:90px;border-bottom:1px solid var(--color-section-divider)}html.public-developer-theme .project-archive-section{background:var(--color-section-surface)}html.public-developer-theme .project-archive-heading,html.public-developer-theme .project-verification-heading{margin-bottom:38px;text-align:center}html.public-developer-theme .archive-empty-state,html.public-developer-theme .archive-filter-empty-state{display:flex;min-height:430px;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center}html.public-developer-theme .archive-empty-state>svg,html.public-developer-theme .archive-filter-empty-state>svg{margin-bottom:24px;color:var(--color-accent-ink)}html.public-developer-theme .archive-empty-copy p,html.public-developer-theme .archive-filter-empty-state p{color:var(--color-secondary)}html.public-developer-theme .project-verification-heading h2 strong{color:var(--color-accent-ink)}html.public-developer-theme .project-verification-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}html.public-developer-theme .project-verification-card{min-height:220px;padding:30px;background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--public-card-radius);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}html.public-developer-theme .project-verification-card svg{margin-bottom:32px;color:var(--color-card-accent);transition:color var(--transition-fast)}html.public-developer-theme .project-verification-card p{color:var(--color-card-copy)}html.public-developer-theme .project-archive-cta-section{padding-block:56px}html.public-developer-theme .project-archive-cta{display:flex;width:min(calc(100% - 64px),820px);align-items:center;justify-content:space-between;gap:30px;padding:34px 42px}html.public-developer-theme .project-archive-cta h2{margin-bottom:8px}html.public-developer-theme .project-archive-cta p{margin-bottom:0;color:var(--color-secondary)}html.public-developer-theme .devkit-unpublished-project .devkit-back-link{margin-bottom:-44px}html.public-developer-theme .devkit-unpublished-hero{min-height:520px}html.public-developer-theme .devkit-unpublished-hero .devkit-command,html.public-developer-theme .devkit-resume-hero .devkit-command{margin:12px 0 0}html.public-developer-theme .public-skills-page .devkit-capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}html.public-developer-theme .public-skills-page .devkit-capability-grid.is-masonry-ready{grid-auto-rows:1px;column-gap:20px;row-gap:0}html.public-developer-theme .public-skills-page .devkit-capability-grid.is-masonry-ready>.devkit-capability-card{align-self:start;grid-row-end:span var(--skill-masonry-span, 1)}html.public-developer-theme .devkit-capability-card{display:block;padding:0;overflow:hidden;background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--public-card-radius);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}html.public-developer-theme .devkit-capability-card>header{display:grid;min-height:118px;grid-template-columns:34px minmax(0,1fr);gap:14px;align-items:start;padding:24px 28px}html.public-developer-theme .devkit-capability-card>header svg{color:var(--color-card-accent);transition:color var(--transition-fast)}html.public-developer-theme .devkit-capability-card>header h3{margin-bottom:8px}html.public-developer-theme .devkit-capability-card>header p:last-child,html.public-developer-theme .skill-description{color:var(--color-card-copy)}html.public-developer-theme .public-page .empty-copy{border-block-color:var(--color-divider-content)}html.public-developer-theme .devkit-capability-card>.empty-copy{margin:0;padding:18px 28px;border-bottom:0}html.public-developer-theme .skill-list article{display:grid;grid-template-columns:minmax(140px,.48fr) minmax(0,1fr);gap:24px;align-items:start;padding:20px 28px;border-top:1px solid var(--color-divider-content)}html.public-developer-theme .skill-item>h4{margin:1px 0 0;color:var(--color-foreground);font-size:.96rem;line-height:1.45}html.public-developer-theme .skill-item-body,html.public-developer-theme .skill-description-block{min-width:0}html.public-developer-theme .skill-description{display:-webkit-box;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}html.public-developer-theme .skill-description.is-expanded{display:block;overflow:visible;-webkit-line-clamp:unset;line-clamp:unset}html.public-developer-theme .skill-disclosure{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 8px;color:var(--color-accent-ink);font:inherit;font-size:.76rem;font-weight:680;line-height:1.35;background:transparent;border:0;border-radius:8px;cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast)}html.public-developer-theme .skill-disclosure:hover,html.public-developer-theme .skill-disclosure:active{color:var(--color-accent-ink);background:var(--color-card-tag-surface-hover)}html.public-developer-theme .skill-description-toggle{margin:0 0 -8px -8px}html.public-developer-theme .skill-projects{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:4px 7px;margin-top:8px}html.public-developer-theme .skill-evidence-label{color:var(--color-tertiary);font-size:.72rem;font-weight:650;letter-spacing:.03em}html.public-developer-theme .skill-evidence-separator{color:var(--color-tertiary)}html.public-developer-theme .skill-project-primary,html.public-developer-theme .skill-project-more-list a{display:inline-flex;min-height:44px;align-items:center;color:var(--color-accent-ink);font-size:.85rem;font-weight:620;text-decoration:none}html.public-developer-theme .skill-project-primary{min-width:0}html.public-developer-theme .skill-project-toggle{white-space:nowrap;font-family:var(--font-mono);font-size:.72rem}html.public-developer-theme .skill-project-more-list{display:grid;flex:0 0 100%;gap:0;margin:-2px 0 0;padding:0 0 0 14px;list-style:none;border-left:1px solid var(--color-divider-content)}html.public-developer-theme .skill-group-toggle{width:100%;min-height:50px;justify-content:flex-start;padding-inline:28px;border-top:1px solid var(--color-divider-content);border-radius:0}html.public-developer-theme .devkit-empty-evidence{display:flex;width:min(100%,760px);min-height:260px;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 90px;padding:36px;text-align:center}html.public-developer-theme .devkit-empty-evidence>svg{margin-bottom:18px;color:var(--color-tertiary)}html.public-developer-theme .devkit-empty-evidence>p{color:var(--color-secondary)}html.public-developer-theme .about-direction{margin-top:28px;color:var(--color-foreground)!important;font-weight:650}html.public-developer-theme .about-bio{color:var(--color-secondary)}html.public-developer-theme .contact-lines{display:flex;flex-direction:column;gap:8px;margin-top:24px}html.public-developer-theme .contact-lines a{display:inline-flex;min-height:44px;align-items:center;gap:10px;color:var(--color-accent-ink)}html.public-developer-theme .contact-lines a:hover,html.public-developer-theme .contact-lines a:active,html.public-developer-theme .devkit-resume-contact a:hover,html.public-developer-theme .devkit-resume-contact a:active,html.public-developer-theme .skill-projects a:hover,html.public-developer-theme .skill-projects a:active,html.public-developer-theme .contents-rail a:not([aria-current=page]):hover,html.public-developer-theme .contents-rail a:not([aria-current=page]):active{color:var(--color-accent-ink-hover)}html.public-developer-theme .devkit-resume-hero .resume-identity p{color:var(--color-secondary)}html.public-developer-theme .devkit-resume-hero .resume-actions{justify-content:center}html.public-developer-theme .devkit-resume-sheet{display:grid;grid-template-columns:minmax(230px,.35fr) minmax(0,1fr);gap:20px;padding:32px}html.public-developer-theme .devkit-resume-contact{padding:28px;background:var(--color-surface-raised);border:1px solid var(--color-card-border);border-radius:var(--public-card-radius)}html.public-developer-theme .devkit-resume-contact a{display:flex;min-height:44px;align-items:center;gap:9px;color:var(--color-accent-ink)}html.public-developer-theme .devkit-copy-block h2{margin-bottom:18px}html.public-developer-theme .devkit-copy-block>p{max-width:46ch;color:var(--color-secondary)}html.public-developer-theme .devkit-home-hero{border-bottom:1px solid var(--color-section-divider)}html.public-developer-theme .devkit-home-hero-inner{display:flex;min-height:640px;flex-direction:column;align-items:center;justify-content:center;padding-block:72px 44px;text-align:center}html.public-developer-theme .devkit-home-hero h1{width:fit-content;max-width:100%;margin:0 auto 28px;font-size:clamp(2.75rem,4vw,3.5rem);font-weight:700;line-height:1.05;letter-spacing:-.025em;overflow-wrap:normal;white-space:nowrap;word-break:keep-all}html.public-developer-theme .devkit-home-hero h1>span{display:inline-block;font-weight:700}html.public-developer-theme .devkit-home-hero h1>span,html.public-developer-theme .devkit-page-hero h1 span,html.public-developer-theme .projects-archive-hero h1>span{color:transparent;background:var(--hero-spectrum);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}html.public-developer-theme .projects-archive-hero h1>strong{color:var(--color-foreground)}html.public-developer-theme .devkit-home-lead{max-width:650px;margin-bottom:30px;color:var(--color-secondary);font-size:1rem;line-height:1.75}html.public-developer-theme .devkit-hero-actions{justify-content:center;margin-bottom:34px}html.public-developer-theme .devkit-hero-actions .button{min-width:168px}html.public-developer-theme .devkit-command{display:inline-grid;min-height:44px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-bottom:38px;padding:10px 16px;color:var(--color-code-foreground);background:var(--color-code);border:1px solid var(--color-code-border);border-radius:var(--radius-panel);font-size:.86rem}html.public-developer-theme .devkit-command>span{color:var(--color-code-accent);font-family:var(--font-mono)}html.public-developer-theme .devkit-stack-facts{display:grid;width:min(100%,600px);grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(28px,4vw,56px);margin:0}html.public-developer-theme .devkit-stack-facts>div{position:relative;display:grid;min-width:0;justify-items:center;padding-inline:8px;isolation:isolate;cursor:default}html.public-developer-theme .devkit-stack-facts>div:after{position:absolute;z-index:0;bottom:-10px;left:50%;width:64px;height:18px;background:radial-gradient(ellipse at center,var(--stack-node-glow) 0%,transparent 72%);content:"";filter:blur(5px);opacity:0;pointer-events:none;transform:translate(-50%);transition:opacity var(--transition-fast)}html.public-developer-theme .devkit-stack-facts dt{position:relative;z-index:1;display:grid;justify-items:center;gap:8px;color:var(--color-stack-node);font-family:var(--font-mono);font-size:1.15rem;font-weight:800;line-height:1.15;transition:color var(--transition-fast)}html.public-developer-theme .devkit-stack-facts dt span{white-space:nowrap}html.public-developer-theme .devkit-stack-fact-icon{width:20px;height:20px;stroke-width:1.9}html.public-developer-theme .devkit-stack-facts dd{position:relative;z-index:1;margin:5px 0 0;color:var(--color-stack-node-copy);font-size:.82rem}html.public-developer-theme .devkit-capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}html.public-developer-theme .devkit-capability-grid>article{min-height:150px;padding:24px;background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--public-card-radius);transition:border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast)}html.public-developer-theme .devkit-capability-grid>article>svg{margin-bottom:18px;color:var(--color-card-accent);transition:color var(--transition-fast)}html.public-developer-theme .devkit-capability-grid>article>h3{margin-bottom:8px}html.public-developer-theme .devkit-capability-grid>article>p{margin-bottom:0;color:var(--color-card-copy);font-size:.9rem}html.public-developer-theme .devkit-code-proof{background:var(--color-section-surface)}html.public-developer-theme .devkit-check-list{display:grid;gap:12px;margin:30px 0 0;padding:0;color:var(--color-secondary);list-style:none}html.public-developer-theme .devkit-check-list li{display:flex;align-items:center;gap:12px}html.public-developer-theme .devkit-check-list svg{flex:0 0 auto;color:var(--color-accent-ink)}html.public-developer-theme .devkit-code-window{min-width:0;margin:0;overflow:hidden;background:var(--color-code);border:1px solid var(--color-code-border);border-radius:var(--radius-panel)}html.public-developer-theme .devkit-code-window figcaption{display:flex;min-height:52px;align-items:center;gap:18px;padding-inline:20px;color:var(--color-code-secondary);background:var(--color-code-raised);border-bottom:1px solid var(--color-code-border);font-family:var(--font-mono);font-size:.8rem}html.public-developer-theme .devkit-code-window figcaption>span{display:flex;gap:7px}html.public-developer-theme .devkit-code-window figcaption i{width:11px;height:11px;background:#fb5454;border-radius:50%}html.public-developer-theme .devkit-code-window figcaption i:nth-child(2){background:#f7c948}html.public-developer-theme .devkit-code-window figcaption i:nth-child(3){background:#2fd679}html.public-developer-theme .devkit-code-window pre{min-height:220px;margin:0;padding:30px;overflow-x:auto;color:var(--color-code-foreground);font-size:.9rem;line-height:1.8}html.public-developer-theme .devkit-code-window code span{color:var(--color-code-keyword)}html.public-developer-theme .devkit-code-window code b{color:var(--color-code-accent);font-weight:600}html.public-developer-theme .devkit-tech-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}html.public-developer-theme .devkit-tech-grid article{display:flex;min-height:76px;align-items:center;gap:15px;padding:18px 22px;background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--public-card-radius);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}html.public-developer-theme .devkit-tech-grid svg{color:var(--color-card-accent);transition:color var(--transition-fast)}html.public-developer-theme .devkit-tech-grid span{font-weight:650}html.public-developer-theme .devkit-final-cta-section{padding-block:52px;background:var(--color-section-surface)}html.public-developer-theme .devkit-final-cta{width:min(100%,820px);margin-inline:auto;padding:36px 48px 24px;text-align:center}html.public-developer-theme .devkit-final-cta h2{margin-bottom:10px;font-size:clamp(1.8rem,3vw,2.4rem)}html.public-developer-theme .devkit-final-cta>p{margin-bottom:24px;color:var(--color-secondary)}html.public-developer-theme .devkit-final-cta .button-row{justify-content:center}html.public-developer-theme .devkit-final-cta .button{min-width:160px}html.public-developer-theme .devkit-final-cta>ul{display:flex;justify-content:center;gap:38px;margin:24px 0 0;padding:18px 0 0;color:var(--color-secondary);border-top:1px solid var(--color-divider-content);font-size:.82rem;list-style:none}html.public-developer-theme .devkit-final-cta>ul li{display:flex;align-items:center;gap:8px}html.public-developer-theme .devkit-final-cta>ul svg{color:var(--color-accent-ink)}html.public-developer-theme .project-ledger{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}html.public-developer-theme .ledger-row{display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden;padding:0;background:var(--color-card);border:1px solid var(--color-card-border);border-radius:var(--public-card-radius);transition:background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}html.public-developer-theme .ledger-media-link{position:relative;display:grid;width:100%;height:100%;place-items:stretch;overflow:hidden;color:inherit;text-decoration:none}html.public-developer-theme .ledger-media-link:focus{outline:2px solid var(--color-focus);outline-offset:-3px}html.public-developer-theme .ledger-media-link:focus .ledger-project-link{opacity:1}html.public-developer-theme .ledger-media-window{overflow:hidden;background:var(--color-surface-raised);border-bottom:1px solid var(--color-divider-content)}html.public-developer-theme .ledger-cover-frame{position:relative;display:grid;aspect-ratio:16 / 9;place-items:stretch;overflow:hidden;background:var(--color-surface-raised)}html.public-developer-theme .ledger-cover-image{display:block;width:100%;height:100%;object-fit:cover;transform:none;transform-origin:center;transition:transform .42s cubic-bezier(.22,1,.36,1);backface-visibility:hidden;will-change:transform}html.public-developer-theme .ledger-cover-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;min-height:100%;padding:24px;color:var(--color-secondary);text-align:center}html.public-developer-theme .ledger-cover-placeholder svg{margin-bottom:3px;color:var(--color-card-accent)}html.public-developer-theme .ledger-cover-placeholder strong{color:var(--color-foreground);font-size:.9rem}html.public-developer-theme .ledger-cover-placeholder span{max-width:26ch;font-size:.75rem;line-height:1.55}html.public-developer-theme .project-card-content{display:flex;min-width:0;flex:1;flex-direction:column;padding:26px 28px 28px}html.public-developer-theme .project-card-header{margin-bottom:0}html.public-developer-theme .project-card-status-line{display:flex;width:100%;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:12px;row-gap:8px;margin-bottom:16px}html.public-developer-theme .ledger-completed-status,html.public-developer-theme .project-detail-completed-status{min-height:26px;gap:0;margin-bottom:0;padding:4px 10px;color:var(--color-project-completed-ink);background:var(--color-project-completed-surface);border:0;border-radius:5px;font-size:.72rem;line-height:1}html.public-developer-theme .ledger-completed-status svg,html.public-developer-theme .project-detail-completed-status svg{display:none}html.public-developer-theme .ledger-status-badge:not(.ledger-completed-status){margin-bottom:0}html.public-developer-theme .ledger-title h3{margin-bottom:10px;font-size:1.35rem}html.public-developer-theme .ledger-title p{display:-webkit-box;overflow:hidden;color:var(--color-secondary);font-size:.92rem;line-height:1.65;text-wrap:pretty;-webkit-box-orient:vertical;-webkit-line-clamp:3}html.public-developer-theme .ledger-project-meta{display:grid;gap:12px;margin-top:22px}html.public-developer-theme .ledger-meta-row{display:grid;min-width:0;grid-template-columns:44px minmax(0,1fr);align-items:start;column-gap:14px}html.public-developer-theme .ledger-meta-label{padding-top:5px;color:var(--color-tertiary);font-family:var(--font-sans);font-size:.72rem;font-weight:600;letter-spacing:.04em;line-height:1.5}html.public-developer-theme .ledger-skill-list{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:9px;margin:0}html.public-developer-theme .ledger-skill-more{min-width:38px;justify-content:center;text-decoration:none}html.public-developer-theme .ledger-project-role{min-width:0;margin:0;padding-block:3px;color:var(--color-secondary);font-family:var(--font-sans);font-size:.84rem;line-height:1.6;overflow-wrap:anywhere}html.public-developer-theme .ledger-skill-list .tag{color:var(--color-card-tag-ink);background:var(--color-card-tag-surface)}html.public-developer-theme .ledger-verified{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:flex-end;margin-inline-start:auto;color:var(--color-secondary);font-size:.76rem;white-space:nowrap}html.public-developer-theme .ledger-project-link{position:absolute;z-index:2;inset:0;display:inline-flex;width:max-content;height:max-content;min-height:44px;align-items:center;justify-content:center;overflow:hidden;margin:auto;padding-inline:20px;color:var(--color-button-on-fill);background:var(--color-accent-fill);border:1px solid var(--color-accent-fill);border-radius:12px;box-shadow:0 5px 12px -10px var(--color-button-glow);font-size:.82rem;font-weight:700;text-decoration:none;opacity:0;pointer-events:none;transform:none;transition:opacity var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);white-space:nowrap}html.public-developer-theme .ledger-media-link:active .ledger-project-link{color:var(--color-button-on-fill);background:var(--color-button-fill-active);border-color:var(--color-button-fill-active);box-shadow:0 5px 12px -9px var(--color-button-glow-active)}@media(hover:hover)and (pointer:fine){html.public-developer-theme .devkit-stack-facts>div:hover dt{color:var(--color-card-accent-hover)}html.public-developer-theme .devkit-stack-facts>div:hover:after{opacity:1}html.public-developer-theme .archive-filter-option:hover:not(:active){color:var(--color-button-on-fill);background:var(--color-button-fill-hover)}html.public-developer-theme .devkit-evidence-card:hover,html.public-developer-theme .project-verification-card:hover,html.public-developer-theme .devkit-capability-card:hover,html.public-developer-theme .devkit-capability-grid>article:hover,html.public-developer-theme .devkit-tech-grid article:hover{background:var(--color-card-hover);border-color:var(--color-card-border-hover);box-shadow:var(--card-shadow-hover)}html.public-developer-theme .ledger-row:hover{background:var(--color-card-hover);border-color:var(--color-card-border-hover);box-shadow:var(--card-shadow-hover);transform:none}html.public-developer-theme .ledger-media-link:hover .ledger-project-link{opacity:1}html.public-developer-theme .ledger-media-link:hover .ledger-cover-image{transform:scale(1.025)}html.public-developer-theme .ledger-media-link:hover:not(:active) .ledger-project-link{color:var(--color-button-on-fill);background:var(--color-button-fill-hover);border-color:var(--color-button-fill-hover);box-shadow:0 11px 22px -10px var(--color-button-glow-hover)}html.public-developer-theme .ledger-skill-more:hover{color:var(--color-foreground);background:var(--color-card-border)}html.public-developer-theme .ledger-row:hover .ledger-skill-list .tag:not(.ledger-skill-more){background:var(--color-card-tag-surface-hover)}html.public-developer-theme .devkit-evidence-card:hover>svg,html.public-developer-theme .devkit-evidence-card:hover>.section-number,html.public-developer-theme .project-verification-card:hover svg,html.public-developer-theme .devkit-capability-card:hover>header svg,html.public-developer-theme .devkit-capability-grid>article:hover>svg,html.public-developer-theme .devkit-tech-grid article:hover svg{color:var(--color-card-accent-hover)}html.public-developer-theme .devkit-evidence-card:hover .tag,html.public-developer-theme .project-verification-card:hover .tag,html.public-developer-theme .devkit-capability-card:hover .tag,html.public-developer-theme .devkit-capability-grid>article:hover .tag,html.public-developer-theme .devkit-tech-grid article:hover .tag{background:var(--color-card-tag-surface-hover)}}html.public-developer-theme .page,html.public-developer-theme .project-detail-page{min-height:calc(100vh - var(--header-height));padding-block:72px 96px}html.public-developer-theme .project-detail-page{overflow-clip-margin:6px}html.public-developer-theme .grid-12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}html.public-developer-theme .project-back-link{width:fit-content;min-height:44px;gap:10px;padding:5px 16px 5px 5px;color:var(--color-foreground);background:var(--color-paired-secondary-surface);border:1px solid var(--color-paired-secondary-border);border-radius:12px;box-shadow:0 10px 24px -20px var(--color-button-glow);font-size:.82rem;font-weight:700;text-decoration:none;transform:none;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}html.public-developer-theme .project-back-link-icon{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;color:var(--color-button-on-fill);background:var(--color-accent-fill);border-radius:8px;box-shadow:0 5px 12px -10px var(--color-button-glow);transition:background-color var(--transition-fast),box-shadow var(--transition-fast)}html.public-developer-theme .project-back-link:focus{outline:2px solid var(--color-focus);outline-offset:3px}html.public-developer-theme .project-back-link:active{color:var(--color-foreground);background:var(--color-paired-secondary-surface-active);border-color:var(--color-paired-secondary-border-active);box-shadow:none;transform:none}html.public-developer-theme .project-back-link:active .project-back-link-icon{background:var(--color-button-fill-active);box-shadow:0 5px 12px -9px var(--color-button-glow-active)}@media(hover:hover)and (pointer:fine){html.public-developer-theme .project-back-link:hover:not(:active){color:var(--color-foreground);background:var(--color-paired-secondary-surface-hover);border-color:var(--color-paired-secondary-border-hover);box-shadow:0 14px 30px -22px var(--color-button-glow-hover);transform:none}html.public-developer-theme .project-back-link:hover:not(:active) .project-back-link-icon{background:var(--color-button-fill-hover);box-shadow:0 8px 16px -10px var(--color-button-glow-hover)}}html.public-developer-theme .project-detail-header{align-items:end;padding-block:36px 52px;border-bottom:1px solid var(--color-section-divider)}html.public-developer-theme .project-meta{grid-column:1 / span 3}html.public-developer-theme .project-meta dl{margin-top:28px}html.public-developer-theme .project-meta dl>div{padding-block:11px;border-bottom:1px solid var(--color-divider-content)}html.public-developer-theme .project-meta dt{color:var(--color-tertiary);font-size:.75rem}html.public-developer-theme .project-title{grid-column:5 / span 8}html.public-developer-theme .project-title>p{max-width:64ch;color:var(--color-secondary)}html.public-developer-theme .project-body{align-items:start;padding-top:48px}html.public-developer-theme .project-chapter-mobile{display:none}html.public-developer-theme .project-chapter-sidebar{position:sticky;top:calc(var(--header-height) + 24px);grid-column:1 / span 3;max-height:calc(100dvh - var(--header-height) - 48px);overflow-y:auto;padding-right:24px;scrollbar-color:var(--color-border-strong) transparent;scrollbar-width:thin}html.public-developer-theme .project-chapter-sidebar-title{margin:0 0 16px 16px;color:var(--color-foreground);font-family:var(--font-sans);font-size:1.125rem;font-weight:700;line-height:1.35;letter-spacing:-.015em}html.public-developer-theme .project-chapter-nav{display:flex;flex-direction:column;gap:4px}html.public-developer-theme .project-chapter-nav a{position:relative;display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px 10px 16px;color:var(--color-secondary);background:transparent;border:1px solid transparent;border-radius:10px;text-decoration:none;transition:color .16s ease,background-color .16s ease,border-color .16s ease}html.public-developer-theme .project-chapter-nav a>span{min-width:0;overflow-wrap:anywhere}html.public-developer-theme .project-chapter-nav a:before{position:absolute;top:50%;left:0;width:3px;height:20px;background:var(--color-card-accent);border-radius:999px;content:"";opacity:0;transform:translateY(-50%)}html.public-developer-theme .project-chapter-nav a svg{flex:0 0 auto;color:var(--color-card-accent);opacity:0;transform:translate(-4px);transition:opacity .16s ease,transform .16s ease}html.public-developer-theme .project-chapter-nav a[aria-current=page]{color:var(--color-card-accent);background:var(--color-card-tag-surface);border-color:color-mix(in srgb,var(--color-card-accent) 28%,transparent);font-weight:700}html.public-developer-theme .project-chapter-nav a[aria-current=page]:before,html.public-developer-theme .project-chapter-nav a[aria-current=page] svg{opacity:1}html.public-developer-theme .project-chapter-nav a[aria-current=page] svg{transform:translate(0)}@media(hover:hover)and (pointer:fine){html.public-developer-theme .project-chapter-nav a:not([aria-current=page]):hover{color:var(--color-card-accent-hover);background:var(--color-paired-secondary-surface-hover)}}html.public-developer-theme .project-narrative{grid-column:5 / span 8}html.public-developer-theme .project-chapter-stage{min-width:0;padding-left:48px;border-left:1px solid var(--color-section-divider)}html.public-developer-theme .project-body.has-no-chapters .project-chapter-stage{grid-column:1 / -1;padding-left:0;border-left:0}html.public-developer-theme .project-chapter-panel{min-height:clamp(480px,58vh,720px);scroll-margin-top:calc(var(--header-height) + 24px);padding-bottom:44px}html.public-developer-theme .project-chapter-panel[hidden]{display:none}html.public-developer-theme .project-chapter-panel.is-active{animation:project-chapter-forward .18s cubic-bezier(.22,1,.36,1) both}html.public-developer-theme .project-chapter-stage[data-direction=backward] .project-chapter-panel.is-active{animation-name:project-chapter-backward}@keyframes project-chapter-forward{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes project-chapter-backward{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}html.public-developer-theme .project-chapter-heading{position:relative;max-width:760px;margin-bottom:34px;padding-bottom:26px;border-bottom:1px solid var(--color-divider-content)}html.public-developer-theme .project-chapter-heading:after{position:absolute;bottom:-1px;left:0;width:72px;height:2px;background:var(--color-card-accent);content:""}html.public-developer-theme .project-chapter-heading h2{min-width:0;max-width:16ch;margin:0;font-size:clamp(2.15rem,4.2vw,3.35rem);line-height:1.05;letter-spacing:-.045em;text-wrap:balance;overflow-wrap:anywhere}html.public-developer-theme .project-chapter-heading p{max-width:62ch;margin:16px 0 0;color:var(--color-secondary);font-size:.9rem;line-height:1.7}html.public-developer-theme .project-chapter-panel:focus{outline:none}html.public-developer-theme .project-chapter-panel:focus-visible .project-chapter-heading{outline:2px solid var(--color-focus);outline-offset:8px;border-radius:2px}html.public-developer-theme .project-chapter-subsection-list{display:grid;gap:clamp(40px,5vw,60px)}html.public-developer-theme .project-chapter-subsection{min-width:0;scroll-margin-top:calc(var(--header-height) + 24px)}html.public-developer-theme .project-chapter-subsection:focus{outline:none}html.public-developer-theme .project-chapter-subsection:focus-visible>h3{outline:2px solid var(--color-focus);outline-offset:8px;border-radius:2px}html.public-developer-theme .project-chapter-subsection>h3{max-width:32ch;margin:0 0 18px;font-size:clamp(1.2rem,2.2vw,1.55rem);line-height:1.25;letter-spacing:-.025em;overflow-wrap:anywhere}html.public-developer-theme .project-chapter-subsection>.feature-status-summary{display:flex;width:fit-content;max-width:100%;min-height:24px;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:14px;color:var(--color-secondary);font-family:var(--font-mono);font-size:.76rem;font-weight:700;line-height:1.2;letter-spacing:.035em}html.public-developer-theme .feature-status-summary.is-delivered{color:var(--color-success)}html.public-developer-theme .feature-status-summary.is-planned{color:var(--color-secondary)}html.public-developer-theme .feature-status-marker{width:6px;height:6px;flex:0 0 6px;background:currentColor;border-radius:50%}html.public-developer-theme .feature-status-label{color:inherit}html.public-developer-theme .feature-status-separator{color:var(--color-secondary)}html.public-developer-theme .feature-status-count{color:var(--color-secondary);font-size:.7rem;font-weight:650;letter-spacing:.025em;white-space:nowrap}html.public-developer-theme .project-chapter-subsection-note{max-width:62ch;margin:-4px 0 24px;color:var(--color-secondary);font-size:.88rem;line-height:1.7}html.public-developer-theme .project-chapter-subsection .feature-list{margin-top:0}html.public-developer-theme .project-chapter-subsection .feature-list h4{margin:0 0 8px;font-size:1rem}html.public-developer-theme .project-skill-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}html.public-developer-theme .project-skill-item{display:flex;min-width:0;min-height:52px;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--color-surface-raised);border:1px solid var(--color-divider-content);border-radius:12px}html.public-developer-theme .project-skill-item>span{overflow-wrap:anywhere;font-weight:650}html.public-developer-theme .project-skill-item>small{flex:0 0 auto;font-family:var(--font-mono);font-size:.66rem}html.public-developer-theme .project-skill-item.is-featured{background:var(--color-card-tag-surface);border-color:var(--color-card-accent)}html.public-developer-theme .project-skill-priority{color:var(--color-card-accent)}html.public-developer-theme .project-skill-category{color:var(--color-tertiary)}html.public-developer-theme .section-note{color:var(--color-secondary)}html.public-developer-theme .feature-list,html.public-developer-theme .timeline{margin:28px 0 0;padding:0;list-style:none;border-top:1px solid var(--color-divider-content)}html.public-developer-theme .feature-list li,html.public-developer-theme .timeline li{padding-block:24px;border-bottom:1px solid var(--color-divider-content)}html.public-developer-theme .feature-list li{display:block;min-width:0}html.public-developer-theme .feature-list h4{margin:0;color:var(--color-foreground);font-size:1rem;font-weight:680;line-height:1.45;letter-spacing:-.015em;overflow-wrap:anywhere}html.public-developer-theme .feature-list p{margin:8px 0 0;color:var(--color-secondary);line-height:1.75;overflow-wrap:anywhere}html.public-developer-theme .timeline li.resume-experience-item{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:24px}html.public-developer-theme .resume-experience-period{margin:0;white-space:nowrap}html.public-developer-theme .resume-experience-entry{min-width:0}html.public-developer-theme .resume-experience-heading{display:grid;min-width:0;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:baseline;gap:20px}html.public-developer-theme .resume-experience-heading h4,html.public-developer-theme .resume-experience-heading .organization{min-width:0;margin:0;overflow-wrap:anywhere}html.public-developer-theme .timeline .organization{color:var(--color-accent-ink);font-weight:650}html.public-developer-theme .resume-experience-description{margin:10px 0 0;color:var(--color-secondary);line-height:1.7;overflow-wrap:anywhere;white-space:pre-line}html.public-developer-theme .project-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}html.public-developer-theme .project-evidence-grid figure{min-width:0;margin:0}html.public-developer-theme .project-evidence-grid figure:first-child:nth-last-child(n+2){grid-column:1 / -1}html.public-developer-theme .project-evidence-grid img{display:block;width:100%;height:auto;border:1px solid var(--color-border);border-radius:var(--radius-panel)}html.public-developer-theme .project-evidence-grid figcaption{margin-top:10px;color:var(--color-secondary);font-size:.82rem}html.public-developer-theme .project-chapter-pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:28px;border-top:1px solid var(--color-section-divider)}html.public-developer-theme .project-chapter-page-link{display:flex;min-width:0;min-height:68px;align-items:center;gap:14px;padding:12px 16px;border:1px solid var(--color-paired-secondary-border);border-radius:12px;text-decoration:none;transition:color .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease}html.public-developer-theme .project-chapter-page-link span{display:flex;min-width:0;flex-direction:column;gap:3px}html.public-developer-theme .project-chapter-page-link small{color:inherit;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.08em}html.public-developer-theme .project-chapter-page-link strong{overflow:hidden;font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}html.public-developer-theme .project-chapter-page-link.is-previous{color:var(--color-foreground);background:var(--color-paired-secondary-surface)}html.public-developer-theme .project-chapter-page-link.is-next{grid-column:2;justify-content:flex-end;color:var(--color-button-on-fill);background:var(--color-accent-fill);border-color:var(--color-accent-fill);box-shadow:0 8px 20px -14px var(--color-button-glow);text-align:right}html.public-developer-theme .project-chapter-page-link:active{background:var(--color-paired-secondary-surface-active);border-color:var(--color-paired-secondary-border-active)}html.public-developer-theme .project-chapter-page-link.is-next:active{background:var(--color-button-fill-active);border-color:var(--color-button-fill-active)}@media(hover:hover)and (pointer:fine){html.public-developer-theme .project-chapter-page-link.is-previous:hover:not(:active){color:var(--color-card-accent-hover);background:var(--color-paired-secondary-surface-hover);border-color:var(--color-paired-secondary-border-hover)}html.public-developer-theme .project-chapter-page-link.is-next:hover:not(:active){color:var(--color-button-on-fill);background:var(--color-button-fill-hover);border-color:var(--color-button-fill-hover);box-shadow:0 12px 26px -14px var(--color-button-glow-hover)}}html.public-developer-theme .project-chapter-empty{display:grid;min-height:360px;place-content:center;padding:48px 24px;border-block:1px solid var(--color-section-divider);text-align:center}html.public-developer-theme .project-chapter-empty h2{margin:0;font-size:clamp(1.65rem,4vw,2.4rem)}html.public-developer-theme .project-chapter-empty p{max-width:42ch;margin:14px auto 0;color:var(--color-secondary)}html.public-developer-theme .not-found-page{display:grid;min-height:calc(100vh - var(--header-height));grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:center;gap:72px;padding-block:96px}html.public-developer-theme .display-code{margin:0;color:transparent;font-family:var(--font-mono);font-size:clamp(8rem,19vw,16rem);font-weight:750;line-height:.8;letter-spacing:-.09em;-webkit-text-stroke:1px var(--color-border-strong);-webkit-user-select:none;user-select:none}html.public-developer-theme .not-found-page h1{max-width:11ch;margin:12px 0 20px;font-size:clamp(2.6rem,5vw,4.5rem);line-height:1.08}html.public-developer-theme .not-found-page>div>p{max-width:48ch;margin-bottom:30px;color:var(--color-secondary)}html.public-developer-theme .developer-footer{padding-block:58px 22px;color:var(--color-secondary);background:var(--color-chrome);border-top:1px solid var(--color-section-divider)}html.public-developer-theme .developer-footer-grid{display:grid;grid-template-columns:minmax(260px,1.8fr) repeat(3,minmax(100px,.7fr));gap:48px}html.public-developer-theme .developer-footer-intro p{max-width:34ch;margin:16px 0 0;color:var(--color-tertiary);font-size:.9rem}html.public-developer-theme .developer-footer nav,html.public-developer-theme .developer-footer-principles{display:flex;flex-direction:column;align-items:flex-start;gap:9px}html.public-developer-theme .developer-footer strong{margin-bottom:5px;color:var(--color-foreground);font-size:.9rem}html.public-developer-theme .developer-footer nav a,html.public-developer-theme .developer-footer-principles span{color:var(--color-tertiary);font-size:.86rem;text-decoration:none}html.public-developer-theme .developer-footer nav a:hover,html.public-developer-theme .developer-footer nav a:active{color:var(--color-accent-ink-hover)}html.public-developer-theme .developer-footer-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:42px;padding-top:18px;color:var(--color-tertiary);border-top:1px solid var(--color-divider-content);font-size:.78rem}html.public-developer-theme .developer-footer-bottom a{text-decoration:none}html.public-developer-theme .developer-footer-bottom a:hover,html.public-developer-theme .developer-footer-bottom a:active{color:var(--color-accent-ink-hover)}@media(max-width:1100px){html.public-developer-theme .shell{width:min(calc(100% - 48px),var(--content-width))}html.public-developer-theme .devkit-split{gap:48px}html.public-developer-theme .devkit-resume-sheet{grid-template-columns:1fr}}@media(max-width:1200px){html.public-developer-theme .developer-header .header-inner{padding-inline:24px}}@media(max-width:900px){html.public-developer-theme{--header-height: 80px;--public-header-panel-height: 64px}html.public-developer-theme .developer-header{padding-block:8px}html.public-developer-theme .developer-header .header-inner{display:flex;width:calc(100% - 24px);gap:12px;padding-inline:12px;border-radius:16px}html.public-developer-theme .developer-header .developer-brand-mark{width:36px;min-width:36px;height:36px}html.public-developer-theme .theme-toggle-mobile{display:inline-grid;margin-left:auto}html.public-developer-theme .theme-toggle-desktop{display:none}html.public-developer-theme .nav-toggle{display:inline-flex}html.public-developer-theme .primary-nav{position:absolute;z-index:2;top:calc(100% + 8px);right:0;left:0;display:none;width:auto;height:auto;align-items:stretch;flex-direction:column;gap:0;justify-self:stretch;padding:8px;background:var(--color-header-menu);background-clip:padding-box;border:1px solid var(--color-header-border);border-radius:16px}html.public-developer-theme .primary-nav.open{display:flex}html.public-developer-theme .developer-header-tab{min-height:48px;padding-inline:16px;border-bottom:1px solid var(--color-divider-content)}html.public-developer-theme .developer-header-tab:last-child{border-bottom:0}html.public-developer-theme .not-found-page{grid-template-columns:1fr;gap:32px;padding-block:72px}html.public-developer-theme .display-code{font-size:clamp(7rem,32vw,12rem)}html.public-developer-theme .devkit-home-hero-inner{min-height:590px}html.public-developer-theme .devkit-capability-grid,html.public-developer-theme .devkit-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html.public-developer-theme .devkit-split{grid-template-columns:1fr}html.public-developer-theme .devkit-code-split{grid-template-columns:1fr;gap:42px}html.public-developer-theme .home-about-profile{grid-template-columns:1fr;gap:34px}html.public-developer-theme .home-about-manifesto{padding:30px 0 0;border-top:1px solid var(--color-divider-content);border-left:0}html.public-developer-theme .home-about-manifesto:before{top:-1px;left:0;width:64px;height:2px}html.public-developer-theme .home-resume-summary{grid-template-columns:1fr;gap:22px;padding:24px}html.public-developer-theme .home-resume-summary .resume-actions{min-height:0;justify-content:flex-start;padding:20px 0 0;border-top:1px solid var(--color-divider-content);border-left:0}html.public-developer-theme .devkit-three-card-grid,html.public-developer-theme .project-verification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html.public-developer-theme .project-ledger{grid-template-columns:1fr}html.public-developer-theme .developer-footer-grid{grid-template-columns:1.5fr repeat(3,.7fr);gap:28px}html.public-developer-theme .grid-12{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}html.public-developer-theme .project-meta,html.public-developer-theme .project-chapter-sidebar{grid-column:1 / span 2}html.public-developer-theme .project-title,html.public-developer-theme .project-chapter-stage{grid-column:3 / span 4}html.public-developer-theme .project-chapter-stage{padding-left:32px}}@media(max-width:767px){html.public-developer-theme .home-resume-section:before{opacity:.72}html.public-developer-theme .devkit-section{padding-block:68px}html.public-developer-theme .home-section-heading h2{font-size:clamp(1.85rem,8.5vw,2.35rem)}html.public-developer-theme .home-about-profile{padding:26px 22px}html.public-developer-theme .home-about-manifesto{padding-top:24px}html.public-developer-theme .home-about-manifesto-lines{gap:18px}html.public-developer-theme .home-about-manifesto-lines>li{gap:12px}html.public-developer-theme .home-about-manifesto-lines>li:nth-child(2){--manifesto-shift: 18px}html.public-developer-theme .home-about-manifesto-lines>li:nth-child(3){--manifesto-shift: 8px}html.public-developer-theme .home-about-manifesto-label{font-size:.62rem}html.public-developer-theme .home-about-manifesto-statement{font-size:clamp(1.35rem,7vw,1.8rem)}html.public-developer-theme .home-resume-summary{padding:20px}html.public-developer-theme .resume-file-identity{grid-template-columns:64px minmax(0,1fr);gap:16px}html.public-developer-theme .resume-file-icon{width:64px;height:64px;border-radius:10px}html.public-developer-theme .resume-file-title-row{align-items:flex-start;flex-direction:column;gap:8px}html.public-developer-theme .home-resume-summary .resume-actions,html.public-developer-theme .resume-file-action{width:100%}html.public-developer-theme .home-resume-summary .resume-actions{align-items:stretch;flex-direction:column}html.public-developer-theme .resume-pdf-dialog-backdrop{padding:0}html.public-developer-theme .resume-pdf-dialog{width:100%;height:100dvh;max-height:none;border-width:0;border-radius:0}html.public-developer-theme .resume-pdf-dialog-header{grid-template-columns:minmax(0,1fr) 44px;gap:14px;padding:18px 16px 14px}html.public-developer-theme .resume-pdf-dialog-copy{grid-row:1;grid-column:1}html.public-developer-theme .resume-pdf-dialog-fallback{grid-row:2;grid-column:1 / -1;justify-content:flex-start}html.public-developer-theme .resume-pdf-dialog-close{grid-row:1;grid-column:2}html.public-developer-theme .resume-pdf-dialog-frame-shell{padding:6px}html.public-developer-theme .devkit-page-hero{min-height:auto;padding-block:56px}html.public-developer-theme .devkit-page-hero h1,html.public-developer-theme .projects-archive-hero h1{font-size:clamp(2.55rem,13vw,3.4rem)}html.public-developer-theme .devkit-home-hero-inner{min-height:auto;padding-block:58px 38px}html.public-developer-theme .devkit-home-hero h1{font-size:clamp(2.15rem,9.6vw,2.75rem)}html.public-developer-theme .devkit-hero-actions,html.public-developer-theme .devkit-hero-actions .button{width:100%}html.public-developer-theme .devkit-hero-actions{flex-direction:column}html.public-developer-theme .devkit-command{max-width:100%}html.public-developer-theme .devkit-command code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html.public-developer-theme .devkit-code-window pre{scrollbar-color:var(--color-border-strong) transparent}html.public-developer-theme .devkit-stack-facts>div{padding-inline:8px}html.public-developer-theme .devkit-stack-facts{width:100%;column-gap:12px}html.public-developer-theme .devkit-stack-facts dt{gap:6px;font-size:.88rem}html.public-developer-theme .devkit-stack-fact-icon{width:18px;height:18px}html.public-developer-theme .devkit-stack-facts dd{margin-top:4px;font-size:.72rem}html.public-developer-theme .devkit-capability-grid,html.public-developer-theme .devkit-tech-grid,html.public-developer-theme .devkit-three-card-grid,html.public-developer-theme .project-verification-grid,html.public-developer-theme .public-skills-page .devkit-capability-grid{grid-template-columns:1fr}html.public-developer-theme .public-skills-page .devkit-capability-grid.is-masonry-ready{grid-auto-rows:auto;row-gap:20px}html.public-developer-theme .public-skills-page .devkit-capability-grid.is-masonry-ready>.devkit-capability-card{grid-row-end:auto}html.public-developer-theme .devkit-evidence-card,html.public-developer-theme .project-verification-card{min-height:auto}html.public-developer-theme .devkit-page-cta{padding:34px 20px}html.public-developer-theme .devkit-page-cta .button-row,html.public-developer-theme .devkit-page-cta .button{width:100%}html.public-developer-theme .devkit-page-cta .button-row{flex-direction:column}html.public-developer-theme .devkit-fact-strip>div{padding-inline:6px}html.public-developer-theme .devkit-fact-strip dt{font-size:.62rem}html.public-developer-theme .devkit-fact-strip dd{font-size:.78rem;line-height:1.35}html.public-developer-theme .projects-archive-hero-inner{min-height:auto;padding-block:56px}html.public-developer-theme .archive-filter-bar{width:100%;gap:8px}html.public-developer-theme .archive-filter-option{padding-inline:14px}html.public-developer-theme .project-archive-section,html.public-developer-theme .project-verification-section{padding-block:68px}html.public-developer-theme .archive-empty-state,html.public-developer-theme .archive-filter-empty-state{min-height:340px;padding:28px 18px}html.public-developer-theme .project-archive-cta{width:calc(100% - 32px);align-items:stretch;flex-direction:column;padding:30px 22px;text-align:center}html.public-developer-theme .project-archive-cta .button{width:100%}html.public-developer-theme .devkit-unpublished-project .devkit-back-link{margin-bottom:0}html.public-developer-theme .devkit-capability-card>header{min-height:0;grid-template-columns:30px minmax(0,1fr);padding:22px}html.public-developer-theme .skill-list article{grid-template-columns:1fr;gap:10px;padding-inline:22px}html.public-developer-theme .skill-item>h4{margin-top:0}html.public-developer-theme .skill-projects{margin-top:10px}html.public-developer-theme .skill-group-toggle{padding-inline:22px}html.public-developer-theme .devkit-final-cta{padding:30px 20px 20px}html.public-developer-theme .devkit-final-cta .button-row,html.public-developer-theme .devkit-final-cta .button{width:100%}html.public-developer-theme .devkit-final-cta .button-row{flex-direction:column}html.public-developer-theme .devkit-final-cta>ul{align-items:flex-start;flex-direction:column;gap:10px}html.public-developer-theme .ledger-row{min-height:0;padding:0}html.public-developer-theme .project-card-content{padding:22px}html.public-developer-theme .ledger-project-link{max-width:calc(100% - 32px)}html.public-developer-theme .developer-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html.public-developer-theme .developer-footer-intro{grid-column:1 / -1}html.public-developer-theme .developer-footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}html.public-developer-theme .grid-12{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}html.public-developer-theme .project-meta,html.public-developer-theme .project-title,html.public-developer-theme .project-chapter-stage{grid-column:1 / -1}html.public-developer-theme .project-meta{position:static;margin-bottom:32px}html.public-developer-theme .project-detail-header{padding-block:30px 40px}html.public-developer-theme .project-body{padding-top:20px}html.public-developer-theme .project-chapter-sidebar{display:none}html.public-developer-theme .project-chapter-mobile{position:sticky;z-index:90;top:calc(var(--header-height) + 8px);display:block;margin-top:24px;padding-block:8px;background:var(--color-background)}html.public-developer-theme .project-chapter-toggle{display:flex;width:100%;min-height:58px;align-items:center;justify-content:space-between;gap:18px;padding:10px 14px 10px 16px;color:var(--color-foreground);background:var(--color-card-tag-surface);border:1px solid color-mix(in srgb,var(--color-card-accent) 34%,transparent);border-radius:12px;text-align:left}html.public-developer-theme .project-chapter-toggle>span{display:flex;min-width:0;flex-direction:column;gap:2px}html.public-developer-theme .project-chapter-toggle small{color:var(--color-card-accent);font-family:var(--font-mono);font-size:.65rem;letter-spacing:.08em}html.public-developer-theme .project-chapter-toggle strong{overflow:hidden;font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}html.public-developer-theme .project-chapter-toggle svg{flex:0 0 auto;color:var(--color-card-accent);transition:transform .16s ease}html.public-developer-theme .project-chapter-toggle svg.is-open{transform:rotate(180deg)}html.public-developer-theme .project-chapter-mobile nav{display:flex;max-height:min(52dvh,420px);flex-direction:column;gap:4px;margin-top:8px;overflow-y:auto;padding:8px;background:var(--color-card);border:1px solid var(--color-card-border);border-radius:12px;box-shadow:0 22px 40px -30px #000000b3}html.public-developer-theme .project-chapter-mobile nav a{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;color:var(--color-secondary);background:transparent;border:1px solid transparent;border-radius:8px;text-decoration:none}html.public-developer-theme .project-chapter-mobile nav a[aria-current=page]{color:var(--color-card-accent);background:var(--color-card-tag-surface);border-color:color-mix(in srgb,var(--color-card-accent) 28%,transparent);font-weight:700}html.public-developer-theme .project-chapter-stage{padding-left:0;border-left:0}html.public-developer-theme .project-chapter-panel{min-height:420px;padding-bottom:34px}html.public-developer-theme .project-chapter-heading{margin-bottom:26px;padding-bottom:22px}html.public-developer-theme .project-chapter-heading h2{font-size:clamp(2rem,10vw,2.8rem)}html.public-developer-theme .timeline li{grid-template-columns:1fr;gap:12px}html.public-developer-theme .resume-experience-heading{grid-template-columns:1fr;gap:6px}html.public-developer-theme .project-skill-list,html.public-developer-theme .project-evidence-grid{grid-template-columns:1fr}html.public-developer-theme .project-evidence-grid figure:first-child:nth-last-child(n+2){grid-column:auto}html.public-developer-theme .project-chapter-pager{grid-template-columns:1fr}html.public-developer-theme .project-chapter-page-link.is-next{grid-column:1}}@media(max-width:359px){html.public-developer-theme .developer-header .developer-wordmark>span:last-child{display:none}html.public-developer-theme .devkit-stack-facts{column-gap:6px}html.public-developer-theme .devkit-stack-facts>div{padding-inline:0}html.public-developer-theme .devkit-stack-facts dt{font-size:.8rem}}@media(prefers-reduced-motion:reduce){html.public-developer-theme .public-page .button:is(.button-primary,.button-secondary):not(.danger):not(.button-danger):hover:not(:disabled):not([aria-disabled=true]){transform:none}html.public-developer-theme .devkit-evidence-card:hover,html.public-developer-theme .project-verification-card:hover,html.public-developer-theme .devkit-capability-card:hover,html.public-developer-theme .devkit-capability-grid>article:hover,html.public-developer-theme .devkit-tech-grid article:hover,html.public-developer-theme .ledger-row:hover{transform:none}html.public-developer-theme .ledger-project-link,html.public-developer-theme .ledger-cover-image,html.public-developer-theme .project-chapter-nav a,html.public-developer-theme .project-chapter-page-link,html.public-developer-theme .project-chapter-toggle svg{transition-duration:.01ms}html.public-developer-theme .ledger-media-link:hover .ledger-cover-image{transform:none}html.public-developer-theme .project-chapter-panel.is-active{animation:none}}@media(forced-colors:active){html.public-developer-theme{--color-divider-content: CanvasText}html.public-developer-theme .developer-header .header-inner,html.public-developer-theme .developer-header .primary-nav{background:Canvas;border-color:CanvasText;-webkit-backdrop-filter:none;backdrop-filter:none}html.public-developer-theme .devkit-stack-facts>div:after{display:none}html.public-developer-theme .home-skills-section,html.public-developer-theme .home-resume-section{background:transparent}html.public-developer-theme .home-resume-section:before{display:none}html.public-developer-theme .resume-pdf-dialog-backdrop,html.public-developer-theme .resume-pdf-dialog{background:Canvas;-webkit-backdrop-filter:none;backdrop-filter:none}html.public-developer-theme .resume-pdf-dialog{border-color:CanvasText;box-shadow:none}html.public-developer-theme .resume-pdf-dialog:before{background:Highlight}html.public-developer-theme .resume-pdf-dialog-fallback .text-link,html.public-developer-theme .resume-pdf-dialog-close{color:ButtonText;background:ButtonFace;border-color:ButtonText}html.public-developer-theme .ledger-completed-status,html.public-developer-theme .project-detail-completed-status{color:CanvasText;background:Canvas;border:1px solid CanvasText}html.public-developer-theme .feature-status-summary,html.public-developer-theme .feature-status-separator,html.public-developer-theme .feature-status-count{color:CanvasText}html.public-developer-theme .feature-status-marker{background:CanvasText}html.public-developer-theme .project-back-link,html.public-developer-theme .project-back-link-icon{color:LinkText;background:Canvas;border-color:LinkText;box-shadow:none}html.public-developer-theme .project-chapter-nav a,html.public-developer-theme .project-chapter-toggle,html.public-developer-theme .project-chapter-page-link{color:CanvasText;background:Canvas;border-color:ButtonBorder;box-shadow:none}html.public-developer-theme .project-chapter-nav a[aria-current=page]{color:HighlightText;background:Highlight;border-color:Highlight}html.public-developer-theme .project-chapter-nav a[aria-current=page]:before{background:HighlightText}html.public-developer-theme .project-chapter-page-link.is-next{color:HighlightText;background:Highlight;border-color:Highlight}}@media print{html.public-developer-theme,html.public-developer-theme[data-public-theme=light]{color-scheme:light;--color-background: #fff;--color-surface: #fff;--color-surface-raised: #fff;--color-chrome: #fff;--color-foreground: #111;--color-secondary: #222;--color-tertiary: #444;--color-border: #aaa;--color-border-strong: #555;--color-section-surface: #fff;--color-section-divider: transparent;--color-divider-content: #aaa;--color-card: #fff;--color-card-hover: #fff;--color-card-border: #555;--color-card-border-hover: #555;--color-card-accent: #111;--color-card-accent-hover: #111;--color-card-copy: #222;--color-card-tag-ink: #111;--color-card-tag-surface: #fff;--color-card-tag-surface-hover: #fff;--card-shadow-hover: none;--color-accent-ink: #111;--color-accent-ink-hover: #111;--color-code: #fff;--color-code-raised: #fff;--color-code-foreground: #111;--color-code-secondary: #222;--color-code-border: #555;--color-code-accent: #111;--color-code-keyword: #111}html.public-developer-theme .site-header,html.public-developer-theme .site-footer,html.public-developer-theme .theme-toggle,html.public-developer-theme .ambient-light,html.public-developer-theme .ambient-light-field,html.public-developer-theme .resume-actions,html.public-developer-theme .resume-pdf-dialog-backdrop,html.public-developer-theme .project-chapter-mobile,html.public-developer-theme .project-chapter-sidebar,html.public-developer-theme .project-chapter-pager{display:none!important}html.public-developer-theme .project-body{display:block;padding-top:32px}html.public-developer-theme .project-chapter-stage{display:block;padding-left:0;border-left:0}html.public-developer-theme .project-chapter-panel,html.public-developer-theme .project-chapter-panel[hidden]{display:block!important;min-height:0;padding-block:28px;border-bottom:1px solid #aaa;animation:none!important;break-inside:auto}html.public-developer-theme .project-chapter-panel:focus-visible .project-chapter-heading{outline:none}html.public-developer-theme .project-evidence-grid figure{break-inside:avoid}html.public-developer-theme .project-chapter-subsection>h3{break-after:avoid}html.public-developer-theme .project-chapter-subsection .feature-list li{break-inside:avoid}html.public-developer-theme .feature-status-summary{color:#111!important;break-after:avoid}html.public-developer-theme .feature-status-marker{color:#666;background:#666!important;border:1px solid #666;-webkit-print-color-adjust:exact;print-color-adjust:exact}html.public-developer-theme .feature-status-separator,html.public-developer-theme .feature-status-count{color:#111}html.public-developer-theme body,html.public-developer-theme .public-page,html.public-developer-theme .devkit-code-proof,html.public-developer-theme .devkit-final-cta-section{color:#111;background:#fff!important}html.public-developer-theme .home-skills-section,html.public-developer-theme .home-resume-section{background:transparent!important}html.public-developer-theme .home-resume-section:before{display:none!important}html.public-developer-theme .devkit-code-window,html.public-developer-theme .devkit-code-window figcaption,html.public-developer-theme .devkit-code-window pre,html.public-developer-theme .devkit-command,html.public-developer-theme .markdown pre{color:#111!important;background:#fff!important;border-color:#555!important}html.public-developer-theme .devkit-code-window code *,html.public-developer-theme .devkit-command *,html.public-developer-theme .markdown pre *{color:#111!important}html.public-developer-theme .devkit-home-hero h1>span,html.public-developer-theme .devkit-page-hero h1 span,html.public-developer-theme .projects-archive-hero h1>span,html.public-developer-theme .home-section-heading>h2{color:#111!important;background:none!important;-webkit-text-fill-color:#111!important}}@media(forced-colors:active){html.public-developer-theme .devkit-home-hero h1>span,html.public-developer-theme .devkit-page-hero h1 span,html.public-developer-theme .projects-archive-hero h1>span,html.public-developer-theme .home-section-heading>h2{color:CanvasText;background:none;-webkit-text-fill-color:CanvasText}}html.public-developer-theme #app{position:relative;isolation:isolate}html.public-developer-theme #main-content,html.public-developer-theme .developer-footer{position:relative;z-index:1}html.public-developer-theme .ambient-light-field{--ambient-strength: 1;--ambient-mobile-strength: .7;--ambient-field-height: 560px;--ambient-base-color: #0f1525;--ambient-cool-color: rgb(37 99 235 / 36%);--ambient-cool-halo-color: rgb(37 99 235 / 12%);--ambient-warm-color: rgb(234 88 12 / 24%);--ambient-warm-halo-color: rgb(234 88 12 / 9%);--ambient-cool-center-x: 36%;--ambient-warm-center-x: 64%;--ambient-center-y: 50%;--ambient-beam-width: clamp(520px, 44vw, 840px);--ambient-beam-height: clamp(480px, 38vw, 600px);--ambient-core-stop: 7%;--ambient-halo-stop: 48%;--ambient-fade-stop: 78%;position:absolute;z-index:0;top:0;right:0;left:0;height:calc(var(--ambient-field-height) + var(--header-height, 72px));overflow:hidden;contain:layout paint;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 88%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 88%,transparent 100%);opacity:var(--ambient-strength);pointer-events:none}html.public-developer-theme[data-public-theme=light] .ambient-light-field{--ambient-base-color: transparent;--ambient-cool-color: rgb(37 99 235 / 30%);--ambient-cool-halo-color: rgb(37 99 235 / 10%);--ambient-warm-color: rgb(249 115 22 / 20%);--ambient-warm-halo-color: rgb(249 115 22 / 7%);--ambient-core-stop: 10%;--ambient-halo-stop: 46%;--ambient-fade-stop: 76%}html.public-developer-theme .ambient-light-field--home{--ambient-field-height: 660px;--ambient-strength: 1}html.public-developer-theme .ambient-light-field--projects{--ambient-strength: .92}html.public-developer-theme .ambient-light-field--project-detail{--ambient-strength: .72}html.public-developer-theme .ambient-light-field--skills{--ambient-strength: .76}html.public-developer-theme .ambient-light-field--about{--ambient-strength: .84}html.public-developer-theme .ambient-light-field--resume{--ambient-strength: .66}html.public-developer-theme .ambient-light-field--not-found{--ambient-strength: .9}html.public-developer-theme .ambient-light-field__beam{position:absolute;top:var(--ambient-center-y);width:var(--ambient-beam-width);height:var(--ambient-beam-height);transform:translate(-50%,-50%)}html.public-developer-theme .ambient-light-field:before{position:absolute;inset:0;background:var(--ambient-base-color);content:""}html.public-developer-theme .ambient-light-field__beam--cool{left:var(--ambient-cool-center-x)}html.public-developer-theme .ambient-light-field__beam--warm{left:var(--ambient-warm-center-x)}html.public-developer-theme .ambient-light-field__orb{position:absolute;inset:0;display:block}html.public-developer-theme .ambient-light-field__beam--cool .ambient-light-field__orb{background:radial-gradient(ellipse 50% 64% at 50% 50%,var(--ambient-cool-color) 0%,var(--ambient-cool-color) var(--ambient-core-stop),var(--ambient-cool-halo-color) var(--ambient-halo-stop),transparent var(--ambient-fade-stop))}html.public-developer-theme .ambient-light-field__beam--warm .ambient-light-field__orb{background:radial-gradient(ellipse 50% 66% at 50% 50%,var(--ambient-warm-color) 0%,var(--ambient-warm-color) var(--ambient-core-stop),var(--ambient-warm-halo-color) var(--ambient-halo-stop),transparent var(--ambient-fade-stop))}@media(max-width:767px){html.public-developer-theme .ambient-light-field{--ambient-cool-center-x: 34%;--ambient-warm-center-x: 66%;--ambient-center-y: 46%;--ambient-beam-width: min(72vw, 520px);--ambient-beam-height: min(104vw, 500px)}}@media(max-width:767px),(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){html.public-developer-theme .ambient-light-field{opacity:calc(var(--ambient-strength) * var(--ambient-mobile-strength))}}@media print,(forced-colors:active){html.public-developer-theme .ambient-light-field{display:none!important}}.admin-layout,.login-page{--admin-bg: #f7f8fb;--admin-surface: #ffffff;--admin-subtle: #f3f5f8;--admin-sidebar: #05080d;--admin-sidebar-active: #121b24;--admin-border: #d9dee8;--admin-border-strong: #b7c0ce;--admin-text: #101318;--admin-muted: #667085;--admin-faint: #98a2b3;--admin-primary: #2563eb;--admin-primary-hover: #1d4ed8;--admin-primary-active: #1e40af;--admin-primary-soft: #eff6ff;--admin-primary-border: #bfdbfe;--admin-success: #168a4f;--admin-success-soft: #ecfdf3;--admin-warning: #a15c00;--admin-warning-soft: #fff8e6;--admin-danger: #dc2626;--admin-danger-hover: #b91c1c;--admin-danger-soft: #fff1f2;--admin-focus: #2563eb;--admin-radius-button: 14px;--admin-radius-icon: 12px;--admin-radius-action-group: 16px;--admin-radius-dialog: 22px;--admin-radius-status: 10px;--admin-radius-session-state: 12px;--admin-radius-resource-status: 8px;--admin-status-success-text: #0f7a43;--admin-status-success-surface: #ecfdf3;--admin-status-success-border: #86d7aa;--admin-status-warning-text: #8a4b00;--admin-status-warning-surface: #fff7e0;--admin-status-warning-border: #e9c46a;--admin-status-neutral-text: #475467;--admin-status-neutral-surface: #f2f4f7;--admin-status-neutral-border: #c7ced8;--admin-status-inner-highlight: rgb(255 255 255 / 78%);--admin-mono: var(--font-mono, "JetBrains Mono Variable", "JetBrains Mono", Consolas, monospace);color:var(--admin-text);color-scheme:light}.admin-layout *,.login-page *{min-width:0}.admin-layout ::selection,.login-page ::selection,.admin-confirm-dialog ::selection{color:#fff;background:#2563eb}.admin-layout :focus-visible,.login-page :focus-visible,.admin-confirm-dialog :focus-visible{outline:2px solid var(--admin-focus, #2563eb);outline-offset:3px}.admin-layout{display:grid;min-height:100vh;min-height:100dvh;grid-template-columns:184px minmax(0,1fr);overflow:clip;background:var(--admin-bg)}.admin-sidebar{position:sticky;z-index:30;top:0;display:flex;height:100vh;height:100dvh;flex-direction:column;color:#f8fafc;color-scheme:dark;background:var(--admin-sidebar);border-right:1px solid #1f2937}.admin-brand{display:flex;min-height:116px;align-items:center;gap:12px;padding:20px 14px;color:#f8fafc;border-bottom:1px solid #1f2937;text-decoration:none}.admin-brand-icon,.login-brand-icon,.admin-header-identity img{flex:0 0 auto;object-fit:contain}.admin-brand-icon{width:42px;height:42px}.admin-brand>span:last-child,.admin-session-state span{display:flex;flex-direction:column}.admin-brand strong{color:#fff;font-size:.94rem;line-height:1.35}.admin-brand small,.admin-session-state small{color:#94a3b8;font-family:var(--admin-mono);font-size:.62rem;line-height:1.45;letter-spacing:.04em}.admin-sidebar nav{display:flex;flex-direction:column;gap:4px;padding:14px 0}.admin-sidebar nav a{position:relative;display:grid;min-height:62px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:12px;padding:10px 18px;color:#cbd5e1;border-left:4px solid transparent;text-decoration:none;transition:color .15s ease-out,background-color .15s ease-out,border-color .15s ease-out}.admin-sidebar nav a:hover{color:#fff;background:#0d141d}.admin-sidebar nav a.router-link-active{color:#fff;background:var(--admin-sidebar-active);border-left-color:#2583ff}.admin-sidebar nav a.router-link-active svg{color:#60a5fa}.admin-sidebar-foot{display:flex;flex-direction:column;gap:4px;margin-top:auto;padding:0 12px 20px}.admin-session-state{display:flex;min-height:96px;align-items:center;gap:10px;padding:14px 12px;color:#4ade80;background:#22c55e14;border:1px solid rgb(74 222 128 / 24%);border-radius:var(--admin-radius-session-state, 12px);box-shadow:inset 0 1px #ffffff0d}.admin-session-state strong{color:#f8fafc;font-size:.78rem;line-height:1.4}.admin-sidebar-foot>a,.admin-sidebar-foot>button{display:flex;min-height:48px;align-items:center;gap:10px;padding:8px;color:#38a7ff;background:transparent;border:0;border-radius:var(--admin-radius-button, 14px);font-size:.82rem;font-weight:680;text-align:left;text-decoration:none;transition:color .15s ease-out,background-color .15s ease-out}.admin-sidebar-foot>a:hover,.admin-sidebar-foot>button:hover{color:#93c5fd;background:#101923}.admin-workspace,.admin-content{min-width:0;min-height:100vh;min-height:100dvh}.admin-content{color:var(--admin-text);background:var(--admin-bg)}.admin-layout button,.admin-layout a,.login-page button,.login-page a,.admin-confirm-dialog button{touch-action:manipulation}.admin-workbench{display:grid;min-height:100vh;min-height:100dvh;grid-template-rows:66px minmax(0,1fr);color:var(--admin-text);background:var(--admin-bg)}.admin-workbench-header{position:sticky;z-index:20;top:0;display:flex;min-height:66px;align-items:center;justify-content:space-between;gap:24px;padding:10px 28px;background:var(--admin-surface);border-bottom:1px solid var(--admin-border)}.admin-workbench-header h1{margin:0;color:var(--admin-text);font-size:clamp(1.35rem,2.1vw,1.7rem);font-weight:720;letter-spacing:-.035em}.admin-workbench-header p{margin:4px 0 0;color:var(--admin-muted);font-size:.83rem;line-height:1.45}.admin-workbench-body{display:grid;min-height:calc(100vh - 66px);min-height:calc(100dvh - 66px);grid-template-columns:396px minmax(0,1fr);background:var(--admin-surface)}.admin-header-identity{display:flex;align-items:center;gap:11px;color:var(--admin-text);font-size:.82rem;font-weight:650}.admin-header-divider{width:1px;height:26px;margin-inline:6px;background:var(--admin-border)}.admin-auth-state{display:inline-flex;width:fit-content;min-height:30px;align-items:center;flex:0 0 auto;gap:8px;padding:4px 10px;color:var(--admin-status-success-text);background:var(--admin-status-success-surface);border:1px solid var(--admin-status-success-border);border-radius:var(--admin-radius-status, 10px);box-shadow:inset 0 1px 0 var(--admin-status-inner-highlight);font-family:var(--admin-mono);font-size:.72rem;font-weight:700;line-height:1;letter-spacing:.04em}.admin-auth-state i{width:8px;height:8px;background:currentcolor;border-radius:50%}.admin-index-pane,.admin-section-pane{min-width:0;background:var(--admin-subtle);border-right:1px solid var(--admin-border)}.admin-index-pane{overflow-y:auto}.admin-detail-pane,.admin-form-workspace,.admin-editor-canvas{min-width:0;background:var(--admin-surface)}.admin-layout .button,.login-page .button,.admin-confirm-dialog .button{min-height:44px;padding:9px 18px;border-radius:var(--admin-radius-button, 14px);font-size:.86rem;font-weight:700;transition:color .15s ease-out,background-color .15s ease-out,border-color .15s ease-out}.admin-layout .button:hover:not(:disabled),.login-page .button:hover:not(:disabled),.admin-confirm-dialog .button:hover:not(:disabled){transform:none}.admin-layout .button-primary,.login-page .button-primary,.admin-confirm-dialog .button-primary{color:#fff;background:var(--admin-primary, #2563eb);border-color:var(--admin-primary, #2563eb)}.admin-layout .button-primary:hover:not(:disabled),.login-page .button-primary:hover:not(:disabled),.admin-confirm-dialog .button-primary:hover:not(:disabled){color:#fff;background:var(--admin-primary-hover, #1d4ed8);border-color:var(--admin-primary-hover, #1d4ed8)}.admin-layout .button-primary:active:not(:disabled),.login-page .button-primary:active:not(:disabled),.admin-confirm-dialog .button-primary:active:not(:disabled){color:#fff;background:var(--admin-primary-active, #1e40af);border-color:var(--admin-primary-active, #1e40af)}.admin-layout .button-secondary,.login-page .button-secondary,.admin-confirm-dialog .button-secondary{color:var(--admin-text, #101318);background:#fff;border-color:var(--admin-border-strong, #b7c0ce)}.admin-layout .button-secondary:hover:not(:disabled),.login-page .button-secondary:hover:not(:disabled),.admin-confirm-dialog .button-secondary:hover:not(:disabled){color:var(--admin-primary-hover, #1d4ed8);background:var(--admin-primary-soft, #eff6ff);border-color:var(--admin-primary, #2563eb)}.admin-layout .button-secondary:active:not(:disabled),.login-page .button-secondary:active:not(:disabled),.admin-confirm-dialog .button-secondary:active:not(:disabled){color:var(--admin-primary-active, #1e40af);background:#dbeafe;border-color:var(--admin-primary-active, #1e40af)}.admin-layout .button.danger,.admin-confirm-dialog .button-danger{color:var(--admin-danger, #dc2626);background:#fff;border-color:#fca5a5}.admin-layout .button.danger:hover:not(:disabled),.admin-confirm-dialog .button-danger:hover:not(:disabled){color:#fff;background:var(--admin-danger, #dc2626);border-color:var(--admin-danger, #dc2626)}.admin-confirm-dialog .button-danger{color:#fff;background:#dc2626;border-color:#dc2626}.admin-confirm-dialog .button-danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.admin-layout .icon-button,.admin-confirm-dialog .icon-button{width:44px;min-width:44px;height:44px;color:var(--admin-primary, #2563eb);background:#fff;border-color:var(--admin-border, #d9dee8);border-radius:var(--admin-radius-icon, 12px)}.admin-layout .icon-button:hover:not(:disabled),.admin-confirm-dialog .icon-button:hover:not(:disabled){color:#fff;background:var(--admin-primary-hover, #1d4ed8);border-color:var(--admin-primary-hover, #1d4ed8)}.admin-layout .icon-button.danger,.admin-confirm-dialog .icon-button.danger{color:var(--admin-danger, #dc2626);border-color:#fecaca}.admin-layout .icon-button.danger:hover:not(:disabled),.admin-confirm-dialog .icon-button.danger:hover:not(:disabled){color:#fff;background:var(--admin-danger, #dc2626);border-color:var(--admin-danger, #dc2626)}.admin-layout .text-action,.admin-layout .back-link,.admin-layout .detail-back-button{color:var(--admin-primary);font-size:.82rem;text-decoration:none}.admin-layout .text-action:hover,.admin-layout .back-link:hover,.admin-layout .detail-back-button:hover{color:var(--admin-primary-hover)}.admin-layout .text-action.danger{color:var(--admin-danger)}.admin-layout button:disabled,.admin-layout input:disabled,.admin-layout select:disabled,.login-page button:disabled{cursor:not-allowed;opacity:.5}.admin-layout .status-badge{width:fit-content;max-width:100%;min-height:30px;align-self:flex-start;flex:0 0 auto;padding:4px 10px;color:var(--admin-status-neutral-text);background:var(--admin-status-neutral-surface);border:1px solid var(--admin-status-neutral-border);border-radius:var(--admin-radius-status, 10px);box-shadow:inset 0 1px 0 var(--admin-status-inner-highlight);font-family:var(--admin-mono);font-size:.72rem;font-weight:700;line-height:1}.admin-layout .status-success{color:var(--admin-status-success-text);background:var(--admin-status-success-surface);border-color:var(--admin-status-success-border)}.admin-layout .status-warning{color:var(--admin-status-warning-text);background:var(--admin-status-warning-surface);border-color:var(--admin-status-warning-border)}.admin-layout .status-neutral{color:var(--admin-status-neutral-text);background:var(--admin-status-neutral-surface);border-color:var(--admin-status-neutral-border)}.admin-layout .form-alert,.admin-layout .form-success,.login-page .form-alert{margin:0 0 18px;padding:11px 14px;border:0;border-left:3px solid;border-radius:0;font-size:.82rem}.admin-layout .form-alert,.login-page .form-alert{color:#991b1b;background:var(--admin-danger-soft);border-left-color:var(--admin-danger)}.admin-layout .form-success{color:#166534;background:var(--admin-success-soft);border-left-color:var(--admin-success)}.index-pane-toolbar>.form-alert,.index-pane-toolbar>.form-success,.admin-index-pane>.form-alert,.admin-index-pane>.form-success{margin:12px 16px}.detail-state,.detail-empty-state,.index-state,.index-empty-state,.document-empty-state{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--admin-muted)}.detail-state,.detail-empty-state{min-height:calc(100vh - 66px);min-height:calc(100dvh - 66px)}.detail-empty-state,.index-empty-state,.document-empty-state{flex-direction:column;text-align:center}.detail-empty-state strong,.index-empty-state strong{color:var(--admin-text);font-size:1.1rem}.detail-empty-state p,.index-empty-state p,.document-empty-state p{max-width:32ch;margin:0}.index-pane-toolbar{padding:22px 16px 12px}.index-count{margin:14px 0 0;color:var(--admin-muted);font-size:.82rem}.index-state{min-height:240px;padding:32px 20px}.index-empty-state{min-height:360px;padding:40px 24px}.index-empty-state>svg,.detail-empty-state>svg,.document-empty-state>svg{color:#9ca3af}.project-index-list{border-top:1px solid var(--admin-border)}.project-index-item{position:relative;display:grid;width:100%;min-height:146px;grid-template-columns:minmax(0,1fr) 20px;align-items:center;gap:8px;padding:18px 18px 16px 22px;color:var(--admin-text);background:transparent;border:0;border-bottom:1px solid var(--admin-border);text-align:left;transition:color .15s ease-out,background-color .15s ease-out}.project-index-item:before{position:absolute;inset:0 auto 0 0;width:3px;content:"";background:transparent}.project-index-item:hover{background:#eef2f7}.project-index-item.active{background:var(--admin-primary-soft);box-shadow:inset 0 0 0 1px #93c5fd}.project-index-item.active:before{background:var(--admin-primary)}.project-index-copy{display:flex;flex-direction:column;gap:7px}.project-index-copy strong{font-size:.94rem;line-height:1.35}.project-index-copy small,.project-detail-slug{overflow:hidden;color:var(--admin-muted);font-family:var(--admin-mono);font-size:.72rem;line-height:1.5;text-overflow:ellipsis;white-space:nowrap}.project-index-statuses,.project-detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.project-index-copy time{color:var(--admin-muted);font-size:.7rem}.project-detail-workspace{padding:28px 34px 72px}.detail-back-button{display:inline-flex;min-height:44px;align-items:center;gap:7px;padding:0;background:transparent;border:0}.project-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;padding:16px 0 36px;border-bottom:1px solid var(--admin-border)}.project-detail-hero h2{margin:0 0 14px;color:var(--admin-text);font-size:clamp(1.8rem,3vw,2.35rem);letter-spacing:-.045em}.project-detail-slug{margin-bottom:14px}.project-detail-meta>span:last-child{color:var(--admin-muted);font-size:.74rem}.project-primary-actions{flex:0 0 auto;justify-content:flex-end}.project-detail-summary{max-width:68ch;margin:26px 0 0;color:var(--admin-muted)}.project-detail-columns{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:34px;margin-top:24px}.readiness-panel{padding-right:34px;border-right:1px solid var(--admin-border)}.readiness-panel h3{margin-bottom:10px;color:var(--admin-text);font-size:1.08rem}.readiness-panel>p{margin-bottom:22px;color:var(--admin-muted);font-size:.86rem}.readiness-list{margin:0;border:1px solid var(--admin-border);border-radius:4px}.readiness-list>div{display:flex;min-height:62px;align-items:center;justify-content:space-between;gap:20px;padding:10px 16px;border-bottom:1px solid var(--admin-border)}.readiness-list>div:last-child{border-bottom:0}.readiness-list dt{display:flex;align-items:center;gap:10px;color:var(--admin-text);font-weight:620}.readiness-list dd{color:var(--admin-muted);font-family:var(--admin-mono);font-size:.78rem}.project-danger-zone{align-self:start;border:1px solid var(--admin-border);border-radius:var(--admin-radius-action-group, 16px)}.project-danger-zone button{display:grid;width:100%;min-height:58px;grid-template-columns:22px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:10px 16px;color:var(--admin-text);background:#fff;border:0;border-bottom:1px solid var(--admin-border);text-align:left}.project-danger-zone button:last-child{border-bottom:0;border-radius:0 0 calc(var(--admin-radius-action-group, 16px) - 1px) calc(var(--admin-radius-action-group, 16px) - 1px)}.project-danger-zone button:first-child{border-radius:calc(var(--admin-radius-action-group, 16px) - 1px) calc(var(--admin-radius-action-group, 16px) - 1px) 0 0}.project-danger-zone button:hover{color:var(--admin-primary);background:var(--admin-primary-soft)}.project-danger-zone button.danger{color:var(--admin-danger)}.project-danger-zone button.danger:hover{color:var(--admin-danger-hover);background:var(--admin-danger-soft)}.section-workbench-body{grid-template-columns:288px minmax(0,1fr)}.editor-workbench-body{grid-template-columns:286px minmax(0,1fr)}.admin-section-pane{padding:24px 0}.admin-section-pane nav{display:flex;flex-direction:column}.admin-section-pane nav a{position:relative;display:grid;min-height:62px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:12px;padding:10px 24px;color:var(--admin-text);text-decoration:none;transition:color .15s ease-out,background-color .15s ease-out}.admin-section-pane nav a:before{position:absolute;inset:0 auto 0 0;width:3px;content:"";background:transparent}.admin-section-pane nav a:hover{color:var(--admin-primary-hover);background:#eef2f7}.admin-section-pane nav a.active,.admin-section-pane nav a[aria-current=true]{color:var(--admin-primary);background:var(--admin-primary-soft)}.admin-section-pane nav a.active:before,.admin-section-pane nav a[aria-current=true]:before{background:var(--admin-primary)}.admin-section-pane nav a>span{display:flex;flex-direction:column}.admin-section-pane nav a strong{color:inherit;font-size:.88rem;line-height:1.4}.admin-section-pane nav a small{color:var(--admin-muted);font-size:.73rem;line-height:1.45}.section-pane-note{display:flex;align-items:flex-start;gap:10px;margin:36px 20px 0;padding:18px 4px 0;color:var(--admin-muted);border-top:1px solid var(--admin-border);font-size:.74rem;line-height:1.6}.section-pane-note svg{flex:0 0 auto;color:var(--admin-success)}.admin-form-workspace,.admin-editor-canvas{padding:30px 36px 80px}.admin-form-workspace>.detail-state,.admin-editor-canvas>.detail-state{min-height:55vh}.admin-form-workspace .admin-form,.admin-editor-canvas>div>.form-alert,.admin-editor-canvas>div>.form-success,.admin-editor-canvas .editor-layout{width:min(100%,1040px);margin-inline:auto}.admin-layout .admin-form{display:flex;flex-direction:column;gap:0}.admin-layout .admin-form fieldset{min-width:0;margin:0;padding:0 0 32px;color:var(--admin-text);background:transparent;border:0;border-bottom:1px solid var(--admin-border);border-radius:0;scroll-margin-top:90px}.admin-layout .admin-form fieldset+fieldset{padding-top:30px}.admin-layout .admin-form legend{margin:0 0 22px;padding:0;color:var(--admin-text);font-size:1.18rem;font-weight:720}.admin-layout .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}.admin-layout .span-2{grid-column:span 2}.admin-layout .field{display:flex;min-width:0;flex-direction:column;gap:7px}.admin-layout .field>span,.admin-layout .check-field>span,.login-page .field>span{color:#344054;font-size:.78rem;font-weight:680;line-height:1.4}.admin-layout .field input,.admin-layout .field textarea,.admin-layout .field select,.login-page .field input{width:100%;min-height:46px;padding:10px 12px;color:var(--admin-text);background:#fff;border:1px solid var(--admin-border-strong);border-radius:4px;caret-color:var(--admin-primary);font-size:.88rem;transition:border-color .15s ease-out,box-shadow .15s ease-out}.admin-layout .field textarea{min-height:92px;line-height:1.6;resize:vertical}.admin-layout .field input:hover,.admin-layout .field textarea:hover,.admin-layout .field select:hover,.login-page .field input:hover{border-color:#8993a4}.admin-layout .field input:focus,.admin-layout .field textarea:focus,.admin-layout .field select:focus,.login-page .field input:focus{border-color:var(--admin-primary);outline:0;box-shadow:0 0 0 3px #2563eb1f}.admin-layout .field input[aria-invalid=true],.admin-layout .field textarea[aria-invalid=true],.login-page .field input[aria-invalid=true]{border-color:var(--admin-danger)}.admin-layout .field-error,.login-page .field-error{color:var(--admin-danger);font-size:.74rem}.admin-layout .check-field{display:inline-flex;min-height:44px;align-items:center;gap:10px}.admin-layout .check-field input{width:18px;height:18px;flex:0 0 18px;accent-color:var(--admin-primary)}.admin-layout .checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 16px;padding-top:4px}.admin-layout .skill-association-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.admin-layout .skill-association-heading small{color:var(--admin-muted);font-size:.76rem;font-weight:500}.admin-layout .skill-association-grid{gap:10px;margin-top:8px}.admin-layout .skill-association-card{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:6px;padding:3px 4px 3px 12px;background:#fff;border:1px solid var(--admin-border);border-radius:12px;transition:background-color .15s ease-out,border-color .15s ease-out}.admin-layout .skill-association-card.selected{background:var(--admin-primary-soft);border-color:#93c5fd}.admin-layout .skill-association-card.featured{border-color:var(--admin-primary)}.admin-layout .skill-association-card .check-field{min-width:0;flex:1}.admin-layout .skill-association-card .check-field span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-layout .skill-feature-toggle{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:6px;padding:7px 10px;color:var(--admin-muted);background:transparent;border:0;border-radius:9px;font-size:.74rem;font-weight:700;white-space:nowrap}.admin-layout .skill-feature-toggle:hover:not(:disabled),.admin-layout .skill-feature-toggle.active{color:var(--admin-primary-hover);background:#dbeafe}.admin-layout .skill-feature-toggle.active svg{fill:currentColor}.admin-layout .featured-skills-editor{margin-top:22px;padding:18px;background:var(--admin-subtle);border:1px solid var(--admin-border);border-radius:4px}.admin-layout .featured-skills-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.admin-layout .featured-skills-heading h3,.admin-layout .featured-skills-heading p{margin:0}.admin-layout .featured-skills-heading h3{color:var(--admin-text);font-size:.9rem}.admin-layout .featured-skills-heading p,.admin-layout .featured-skills-empty{margin-top:5px;color:var(--admin-muted);font-size:.76rem}.admin-layout .featured-skills-heading>span{padding:5px 8px;color:var(--admin-primary);background:#fff;border:1px solid #bfdbfe;border-radius:999px;font-family:var(--admin-mono);font-size:.72rem;font-weight:700;white-space:nowrap}.admin-layout .featured-skills-error{display:block;margin-top:12px}.admin-layout .featured-skill-list{display:grid;gap:8px;margin:16px 0 0;padding:0;list-style:none}.admin-layout .featured-skill-list li{display:grid;min-height:62px;align-items:center;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;padding:8px 10px;background:#fff;border:1px solid var(--admin-border);border-radius:3px}.admin-layout .featured-skill-order{display:grid;width:30px;height:30px;place-items:center;color:var(--admin-primary);background:var(--admin-primary-soft);border-radius:50%;font-family:var(--admin-mono);font-size:.72rem;font-weight:700}.admin-layout .featured-skill-name{display:flex;min-width:0;flex-direction:column;gap:2px}.admin-layout .featured-skill-name strong{overflow:hidden;color:var(--admin-text);font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.admin-layout .featured-skill-name small{color:var(--admin-muted);font-family:var(--admin-mono);font-size:.66rem}.admin-layout .featured-skill-actions{display:flex;gap:6px}.admin-layout .featured-skill-remove{color:var(--admin-muted)}.admin-layout .featured-skills-empty{margin-bottom:0;padding:16px 0 2px}.admin-layout .fieldset-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.admin-layout .fieldset-head legend{margin:0}.admin-layout .fieldset-head>div{display:flex;flex-wrap:wrap;gap:16px}.admin-layout .repeat-list,.admin-layout .section-editor-list{border-top:1px solid var(--admin-border)}.admin-layout .repeat-row{display:flex;align-items:flex-end;gap:14px;padding:18px 0;border-bottom:1px solid var(--admin-border)}.admin-layout .repeat-row .grow{flex:1}.admin-layout .section-editor{display:grid;grid-template-columns:62px minmax(0,1fr);gap:22px;padding:22px 0;border-bottom:1px solid var(--admin-border)}.admin-layout .section-editor-head{display:flex;align-items:center;flex-direction:column;gap:12px}.admin-layout .section-editor .index{margin:0;color:var(--admin-primary);font-family:var(--admin-mono);font-size:.78rem}.admin-layout .empty-copy{display:grid;min-height:140px;place-items:center;margin:0;color:var(--admin-muted);text-align:center}.admin-layout .media-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-layout .media-editor-grid article{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--admin-border);border-radius:4px}.admin-layout .media-card-head,.admin-layout .media-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-layout .media-card-head>span:first-child{color:var(--admin-muted);font-family:var(--admin-mono);font-size:.72rem}.admin-layout .media-cover-badge{display:inline-flex;min-height:30px;align-items:center;gap:5px;padding:5px 9px;color:var(--admin-primary-hover);background:var(--admin-primary-soft);border:1px solid #bfdbfe;border-radius:999px;font-size:.72rem;font-weight:750}.admin-layout .media-cover-badge svg{fill:currentColor}.admin-layout .media-card-actions .text-action{display:inline-flex;min-height:44px;align-items:center;gap:7px;padding:7px 4px}.admin-layout .media-cover-note{color:var(--admin-muted);font-size:.74rem}.admin-layout .media-editor-grid img{width:100%;height:180px;object-fit:cover;background:var(--admin-subtle);border:1px solid var(--admin-border)}.file-button{position:relative;overflow:hidden}.file-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.editor-workbench-header{padding-left:28px}.editor-workbench-header>div:first-child{display:flex;align-items:center;gap:18px}.editor-route-line{display:flex;align-items:center;gap:12px;margin:0}.admin-layout .back-link{gap:8px;color:var(--admin-text)}.editor-workbench-header h1{padding-left:18px;border-left:1px solid var(--admin-border)}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.editor-layout.with-preview{width:100%;max-width:none;grid-template-columns:minmax(0,1fr) minmax(340px,420px)}.draft-preview{padding-left:26px;border-left:1px solid var(--admin-border)}.draft-preview-sticky{position:sticky;top:90px;max-height:calc(100vh - 120px);padding:24px;overflow-y:auto;color:var(--admin-text);background:#fff;border:1px solid var(--admin-border);border-radius:4px}.draft-preview h2{margin:18px 0 12px;color:var(--admin-text);font-size:1.55rem}.draft-preview h3{color:var(--admin-text);font-size:1rem}.draft-preview p,.draft-preview li{color:var(--admin-muted)}.draft-preview section,.preview-features{margin-top:26px;padding-top:22px;border-top:1px solid var(--admin-border)}.skills-workbench-body{grid-template-columns:385px minmax(0,1fr)}.skills-index-head{display:flex;min-height:88px;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--admin-border)}.skills-index-head strong{font-size:.9rem}.skills-empty-state{min-height:calc(100vh - 155px)}.skill-index-groups section{border-bottom:1px solid var(--admin-border)}.skill-index-groups h2{display:flex;align-items:center;gap:8px;margin:0;padding:14px 20px 8px;color:var(--admin-muted);font-size:.72rem;letter-spacing:.04em}.skill-index-item{position:relative;display:block;width:100%;min-height:66px;padding:10px 20px 10px 24px;color:var(--admin-text);background:transparent;border:0;text-align:left}.skill-index-item:before{position:absolute;inset:0 auto 0 0;width:3px;content:"";background:transparent}.skill-index-item:hover{background:#eef2f7}.skill-index-item.active{color:var(--admin-primary);background:var(--admin-primary-soft)}.skill-index-item.active:before{background:var(--admin-primary)}.skill-index-item>span{display:flex;flex-direction:column;gap:3px}.skill-index-item small{color:var(--admin-muted);font-size:.72rem}.skill-editor-form,.skill-detail-workspace{min-height:calc(100vh - 66px);min-height:calc(100dvh - 66px);padding:32px 38px 84px}.skill-editor-form{display:flex;flex-direction:column}.detail-heading{margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid var(--admin-border)}.detail-heading h2{margin:0 0 8px;color:var(--admin-text);font-size:clamp(1.65rem,3vw,2rem)}.detail-heading p{max-width:66ch;margin:0;color:var(--admin-muted)}.skill-editor-form .detail-back-button{align-self:flex-start;margin-bottom:10px}.skill-editor-fields{display:grid;grid-template-columns:148px minmax(0,1fr);gap:18px 24px}.skill-editor-fields .field{display:grid;grid-column:1 / -1;grid-template-columns:148px minmax(0,1fr);align-items:center;gap:24px}.skill-editor-fields .skill-description-field{align-items:start}.skill-editor-fields .skill-sort-field input{max-width:260px}.skill-category-choices{display:flex;grid-column:2;flex-wrap:wrap;gap:10px;margin-top:-8px}.skill-category-choices button{display:inline-flex;min-height:44px;align-items:center;gap:7px;padding:7px 14px;color:var(--admin-text);background:#fff;border:1px solid var(--admin-border);border-radius:var(--admin-radius-button, 14px)}.skill-category-choices button:hover,.skill-category-choices button.active{color:var(--admin-primary);background:var(--admin-primary-soft);border-color:var(--admin-primary)}.skill-editor-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:auto;padding-top:34px;border-top:1px solid var(--admin-border)}.detail-category{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--admin-primary);font-size:.78rem;font-weight:700}.skill-facts{display:grid;max-width:620px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 30px;border:1px solid var(--admin-border)}.skill-facts>div{padding:18px;border-right:1px solid var(--admin-border)}.skill-facts>div:last-child{border-right:0}.skill-facts dt{color:var(--admin-muted);font-size:.74rem}.skill-facts dd{margin-top:5px;color:var(--admin-text);font-family:var(--admin-mono);font-weight:700}.resume-section-pane nav a{min-height:96px}.resume-resource-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.resume-resource-status{display:inline-flex;width:fit-content;min-height:24px;align-items:center;flex:0 0 auto;padding:3px 8px;border:1px solid;border-radius:var(--admin-radius-resource-status, 8px);box-shadow:inset 0 1px 0 var(--admin-status-inner-highlight);font-family:var(--admin-mono);font-size:.66rem;font-weight:700;line-height:1;letter-spacing:.02em}.resume-form-workspace{padding-top:30px}.upload-row{display:grid;min-height:126px;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:20px;padding:18px;border:1px solid var(--admin-border);border-radius:4px}.upload-file-icon{display:grid;width:64px;height:64px;place-items:center;color:var(--admin-primary);background:var(--admin-primary-soft);border-radius:4px}.upload-file-copy strong{color:var(--admin-text)}.upload-file-copy p{margin:5px 0 0;font-size:.78rem;line-height:1.6}.upload-row-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px}.document-empty-state{min-height:260px;padding:40px 20px}.admin-confirm-backdrop{position:fixed;z-index:500;inset:0;display:grid;place-items:center;padding:24px;background:#0f172a94}.admin-confirm-dialog{--admin-primary: #2563eb;--admin-primary-hover: #1d4ed8;--admin-primary-active: #1e40af;--admin-primary-soft: #eff6ff;--admin-border: #d9dee8;--admin-border-strong: #b7c0ce;--admin-text: #101318;--admin-muted: #667085;--admin-danger: #dc2626;--admin-focus: #2563eb;--admin-radius-button: 14px;--admin-radius-icon: 12px;--admin-radius-dialog: 22px;width:min(100%,520px);max-height:calc(100vh - 48px);padding:30px;overflow-y:auto;color:var(--admin-text);color-scheme:light;background:#fff;border:1px solid var(--admin-border);border-radius:var(--admin-radius-dialog, 22px);box-shadow:0 2px 6px #0f172a0f,0 24px 60px #0f172a29;overscroll-behavior:contain}.admin-confirm-dialog .dialog-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--admin-border)}.admin-confirm-dialog .dialog-head>svg{color:#d97706}.admin-confirm-dialog .dialog-head .icon-button{border-radius:50%}.admin-confirm-dialog .dialog-head h2{flex:1;margin:0;color:var(--admin-text);font-size:1.35rem}.admin-confirm-dialog>p{color:var(--admin-muted)}.admin-confirm-dialog .dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:26px}.login-page{display:grid;width:100%;min-height:100vh;min-height:100dvh;place-items:center;overflow-x:hidden;padding:clamp(24px,5vw,64px);background-color:#020817;background-image:radial-gradient(circle at 12% 8%,rgb(37 99 235 / 52%) 0,rgb(37 99 235 / 14%) 22%,transparent 43%),radial-gradient(circle at 90% 90%,rgb(249 115 22 / 44%) 0,rgb(249 115 22 / 12%) 22%,transparent 42%),linear-gradient(rgb(148 163 184 / 5%) 1px,transparent 1px),linear-gradient(90deg,rgb(148 163 184 / 5%) 1px,transparent 1px);background-position:center;background-size:auto,auto,28px 28px,28px 28px}.login-panel{position:relative;display:block;box-sizing:border-box;width:min(100%,460px);overflow:hidden;padding:34px 36px 32px;color:var(--admin-text);background:#f8fafc;border:1px solid rgb(203 213 225 / 80%);border-radius:22px;box-shadow:0 32px 90px #00112f94,0 12px 30px #0f172a52}.login-panel:before{position:absolute;top:0;right:0;left:0;height:4px;background:linear-gradient(90deg,#2563eb 0% 42%,#f97316);content:""}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:28px}.login-brand-icon{width:64px;height:64px}.login-brand>div{display:flex;flex-direction:column}.login-brand strong{color:#1d4ed8;font-size:1.08rem;line-height:1.35}.login-brand small{color:#64748b;font-family:var(--admin-mono);font-size:.67rem;letter-spacing:.08em}.login-panel form{display:flex;width:100%;flex-direction:column;gap:18px}.login-panel h1{margin:0 0 8px;color:var(--admin-text);font-size:clamp(1.9rem,5vw,2.2rem);line-height:1.15;letter-spacing:-.035em}.login-heading>p:last-child{margin:0;color:var(--admin-muted);font-size:.88rem;line-height:1.6}.login-page .field{display:flex;flex-direction:column;gap:8px}.login-page .field input{min-height:52px;background:#fff;font-size:.95rem}.login-panel .button-full{min-height:52px;margin-top:2px}.login-security-note{display:flex;align-items:flex-start;gap:9px;margin:8px 0 0;padding-top:18px;color:var(--admin-muted);border-top:1px solid var(--admin-border);font-size:.78rem;line-height:1.55}.login-security-note svg{flex:0 0 auto;margin-top:2px;color:var(--admin-success)}@media(max-width:1280px){.admin-layout{grid-template-columns:176px minmax(0,1fr)}.admin-workbench-body{grid-template-columns:340px minmax(0,1fr)}.section-workbench-body,.editor-workbench-body{grid-template-columns:260px minmax(0,1fr)}.skills-workbench-body{grid-template-columns:320px minmax(0,1fr)}.project-detail-columns{grid-template-columns:minmax(0,1fr)}.readiness-panel{padding-right:0;border-right:0}.project-danger-zone{max-width:560px}.editor-layout.with-preview{grid-template-columns:minmax(0,1fr)}.draft-preview{padding:24px 0 0;border-top:1px solid var(--admin-border);border-left:0}.draft-preview-sticky{position:static;max-height:none}}@media(max-width:900px){.admin-layout{display:block;overflow:visible}.admin-sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid #1f2937}.admin-brand{min-height:70px;padding:12px 18px}.admin-brand-icon{width:40px;height:40px}.admin-sidebar nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:8px 10px}.admin-sidebar nav a{min-height:52px;justify-content:center;padding:8px 10px;border:1px solid transparent;border-bottom:3px solid transparent}.admin-sidebar nav a.router-link-active{border-left-color:transparent;border-bottom-color:#2583ff}.admin-sidebar-foot{display:grid;grid-template-columns:auto 1fr 1fr;margin:0;padding:6px 10px 10px}.admin-session-state{min-height:52px;padding:8px 10px}.admin-workspace,.admin-content,.admin-workbench{min-height:auto}.admin-workbench-body,.section-workbench-body,.editor-workbench-body,.skills-workbench-body{min-height:0;grid-template-columns:minmax(0,1fr)}.admin-index-pane,.admin-section-pane{border-right:0;border-bottom:1px solid var(--admin-border)}.admin-index-pane{max-height:none;overflow:visible}.admin-section-pane{padding:0}.admin-section-pane nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.editor-section-pane nav{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-section-pane nav a{min-height:68px;padding:10px 12px;border-bottom:3px solid transparent}.admin-section-pane nav a:before{content:none}.admin-section-pane nav a.active,.admin-section-pane nav a[aria-current=true]{border-bottom-color:var(--admin-primary)}.admin-section-pane nav a small,.section-pane-note{display:none}.project-index-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.project-index-item{border-right:1px solid var(--admin-border)}.detail-state,.detail-empty-state,.skill-editor-form,.skill-detail-workspace{min-height:420px}}@media(max-width:767px){.admin-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-sidebar-foot{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-session-state{display:none}.admin-sidebar-foot>a,.admin-sidebar-foot>button{justify-content:center}.admin-workbench{grid-template-rows:auto minmax(0,1fr)}.admin-workbench-header{position:static;min-height:0;align-items:flex-start;flex-direction:column;padding:18px 16px}.admin-workbench-header>.button,.admin-workbench-header>.button-row,.editor-workbench-header>.button-row{width:100%}.admin-workbench-header .button-row .button,.admin-workbench-header>.button{flex:1 1 auto}.admin-header-identity{width:100%}.admin-header-divider,.admin-header-identity img,.admin-header-identity>span:last-child{display:none}.project-index-list{grid-template-columns:minmax(0,1fr)}.project-index-item{min-height:134px;border-right:0}.project-detail-workspace,.skill-editor-form,.skill-detail-workspace,.admin-form-workspace,.admin-editor-canvas{padding:24px 16px 64px}.project-detail-hero{flex-direction:column}.project-primary-actions,.project-primary-actions .button{width:100%}.project-detail-columns{gap:24px}.admin-section-pane nav,.editor-section-pane nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-section-pane nav a{grid-template-columns:20px minmax(0,1fr)}.admin-layout .form-grid,.admin-layout .checkbox-grid,.admin-layout .media-editor-grid{grid-template-columns:minmax(0,1fr)}.admin-layout .skill-association-heading,.admin-layout .featured-skills-heading{align-items:flex-start;flex-direction:column}.admin-layout .featured-skills-editor{padding:14px}.admin-layout .featured-skill-list li{grid-template-columns:32px minmax(0,1fr)}.admin-layout .featured-skill-actions{grid-column:2}.admin-layout .media-card-actions{align-items:stretch;flex-direction:column}.admin-layout .media-card-actions .text-action{justify-content:center}.admin-layout .span-2{grid-column:span 1}.admin-layout .fieldset-head,.admin-layout .repeat-row,.upload-row{align-items:stretch;flex-direction:column}.admin-layout .fieldset-head{display:flex}.admin-layout .section-editor{grid-template-columns:minmax(0,1fr)}.admin-layout .section-editor-head{align-items:center;flex-direction:row;justify-content:space-between}.upload-row{display:flex}.upload-row-actions,.upload-row-actions .button{width:100%}.upload-row-actions{justify-content:stretch}.skill-editor-fields,.skill-editor-fields .field{grid-template-columns:minmax(0,1fr)}.skill-category-choices{grid-column:1}.skill-editor-actions,.admin-confirm-dialog .dialog-actions{flex-direction:column-reverse}.skill-editor-actions .button,.admin-confirm-dialog .dialog-actions .button{width:100%}.editor-workbench-header>div:first-child{flex-wrap:wrap}.editor-workbench-header h1{width:100%;padding:0;border-left:0}.login-brand-icon{width:56px;height:56px}.login-page{padding:20px 16px}.login-panel{padding:28px 22px 24px}}@media(prefers-reduced-motion:reduce){.admin-layout *,.admin-layout *:before,.admin-layout *:after,.login-page *,.login-page *:before,.login-page *:after,.admin-confirm-dialog *,.admin-confirm-dialog *:before,.admin-confirm-dialog *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(forced-colors:active){.admin-layout .status-badge,.admin-auth-state,.admin-session-state,.resume-resource-status{color:CanvasText;background:Canvas;border-color:CanvasText;box-shadow:none}.admin-session-state strong,.admin-session-state small{color:CanvasText}.admin-sidebar nav a.router-link-active,.admin-section-pane nav a.active,.admin-section-pane nav a[aria-current=true],.project-index-item.active,.skill-index-item.active,.skill-association-card.featured{outline:2px solid Highlight;outline-offset:-2px}}
