@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff")}:root{--bg: #090a09;--surface: #141610;--accent: #ccff00;--text: #e6e7e1;--muted: #95998e;--radius: 0px;--spacing: 96px;--font: "Segoe UI", Arial, sans-serif;--heading: Georgia, "Times New Roman", serif;color-scheme:dark;font-family:var(--font);color:var(--text);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{outline-offset:5px}:focus-visible{outline:2px solid var(--accent)}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a:hover{color:var(--accent)}p{line-height:1.8;color:var(--muted)}h1,h2,h3{font-family:var(--heading);font-weight:400;letter-spacing:-.035em}h1{font-size:clamp(36px,4.5vw,62px);line-height:1.12;margin:24px 0}h2{font-size:clamp(26px,3vw,38px);line-height:1.25;margin:22px 0 0}h3{font-size:24px;margin:12px 0}h4{font-weight:400;color:var(--accent)}.preline{white-space:pre-line}.eyebrow{color:var(--muted);font:10px IBM Plex Mono,monospace;letter-spacing:1px}button{border:1px solid #ffffff25;color:var(--text);background:var(--surface);padding:12px 18px;border-radius:var(--radius);font-size:13px}.primary{background:var(--accent);color:#15200e;border-color:var(--accent)}.primary:hover{color:#15200e;filter:brightness(1.05)}details{margin-top:20px}summary{cursor:pointer;font-size:13px}.loading{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:30px;text-align:center}.loading p{max-width:560px}.skip{position:fixed;top:-100px;left:16px;background:var(--accent);color:#101310;padding:12px;z-index:100}.skip:focus{top:10px}.no-motion{scroll-behavior:auto}.no-motion *,.no-motion *:before,.no-motion *:after{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}:root{--bg: #0a0b09;--surface: #131510;--accent: #ccff00;--text: #e6e7e1;--muted: #92958b;--radius: 0px}html{scroll-padding-top:112px}.portfolio{--line: #ffffff2b}.site-header{position:sticky;top:0;z-index:30;background:var(--bg);border-bottom:1px solid var(--line)}.header-main{max-width:1600px;margin:auto;padding:0 24px;min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-brand{display:flex;align-items:center;gap:13px;font-size:14px;font-weight:600;letter-spacing:-.4px}.logo-box{display:grid;place-items:center;width:32px;height:34px;color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);font:9px IBM Plex Mono,monospace;letter-spacing:0}.site-nav{display:flex;gap:clamp(12px,1.6vw,26px);font:10px IBM Plex Mono,monospace;text-transform:uppercase;color:var(--muted)}.site-nav a{white-space:nowrap;padding:17px 0;border-bottom:1px solid transparent}.site-nav a:last-child{color:inherit}.site-nav a[aria-current],.site-nav a:hover{color:var(--accent);border-bottom-color:var(--accent)}.header-status{display:flex;align-items:center;gap:14px;max-width:1600px;margin:auto;padding:0 24px 8px;min-height:30px;color:var(--muted);font:9px IBM Plex Mono,monospace;text-transform:uppercase}.header-status>span:first-child{display:flex;gap:9px;align-items:center}.header-status i{width:6px;height:6px;background:var(--accent)}.language-label{border:1px solid var(--line);padding:5px 10px;color:var(--accent)}.language-switcher{margin-left:auto;display:flex;gap:0;border:1px solid var(--line)}.language-switcher a{display:grid;place-items:center;min-width:44px;min-height:36px;font:10px IBM Plex Mono,monospace}.language-switcher a[aria-current]{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent)}.draft-indicator{margin-left:auto;font-size:8px;color:var(--muted)}.site-menu-toggle{display:none}.portfolio-main{max-width:1600px;margin:0 auto;padding:0 24px}.intro-hero{position:relative;isolation:isolate;padding:0 0 44px}.intro-hero:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(#000,transparent 75%);mask-image:linear-gradient(#000,transparent 75%)}.hero-coordinates{display:flex;justify-content:space-between;gap:20px;padding-top:20px;font:9px/1.7 IBM Plex Mono,monospace;color:var(--muted)}.hero-coordinates>span:last-child{text-align:right}.hero-title-block{padding-top:clamp(95px,15vh,170px)}.hero-specialties{font:10px/1.8 IBM Plex Mono,monospace;color:var(--accent);margin:0 0 24px;text-transform:uppercase}.intro-hero h1{font-family:var(--font);font-size:clamp(62px,7vw,100px);font-weight:400;line-height:.97;letter-spacing:-.035em;margin:0 0 42px;overflow-wrap:anywhere}.intro-hero h1 span{display:block}.intro-hero h1 span+span{color:var(--muted)}.hero-summary{border-top:1px solid var(--line);padding-top:30px;display:flex;gap:40px;justify-content:space-between;align-items:center;max-width:calc(100% - 140px)}.hero-summary>p{color:var(--text);font-size:24px;line-height:1.55;margin:0;max-width:650px}.hero-buttons{display:flex;gap:12px;flex-shrink:0}.hero-cta{display:flex;gap:20px;justify-content:center;align-items:center;background:var(--accent);color:#11150a;padding:14px 24px;font-size:13px;border:1px solid var(--accent);border-radius:var(--radius)}.hero-cta:hover{color:#11150a;filter:brightness(1.07)}.hero-cta.secondary{color:var(--text);border-color:var(--line);background:transparent}.hero-cta.secondary:hover{color:var(--accent)}.hero-caption{font:9px/1.7 IBM Plex Mono,monospace;color:var(--muted);margin:24px 0 0}.editorial-section{padding:34px 0 var(--spacing);border-top:1px solid var(--line);scroll-margin-top:16px}.editorial-heading{display:grid;grid-template-columns:1fr 2fr;gap:24px;margin-bottom:66px}.section-index{display:flex;align-items:baseline;gap:18px;color:var(--muted);font:10px/1.8 IBM Plex Mono,monospace;text-transform:uppercase;padding-top:2px}.section-index>span{color:var(--accent)}.editorial-heading h2{font-family:var(--heading);font-weight:400;font-size:clamp(38px,4.8vw,68px);line-height:1.01;letter-spacing:-.035em;max-width:850px;margin:0;text-wrap:balance}.section-intro{font-size:16px;line-height:1.8;margin:25px 0 0;max-width:750px}.about-layout{display:grid;grid-template-columns:1fr 2fr;gap:24px}.about-facts{margin:0;font:10px/1.8 IBM Plex Mono,monospace;text-transform:uppercase}.about-facts>div{margin-bottom:34px}.about-facts dt{color:var(--muted);margin-bottom:8px}.about-facts dd{color:var(--text);margin:0;max-width:300px}.about-columns{display:grid;grid-template-columns:1fr 1fr;gap:44px}.about-columns p{color:var(--text);font-size:19px;line-height:1.7;margin:0}.technology-list{border-top:1px solid var(--line)}.technology-row{display:grid;grid-template-columns:60px 1fr 2fr;align-items:start;gap:24px;padding:32px 0;border-bottom:1px solid var(--line)}.row-index,.work-number{color:var(--muted);font:10px/1.8 IBM Plex Mono,monospace}.technology-row h3{font-family:var(--heading);font-size:26px;font-weight:400;margin:0;line-height:1.3}.technology-row ul{display:flex;flex-wrap:wrap;gap:14px 28px;padding:0;margin:0;list-style:none;color:var(--muted);font:11px/1.8 IBM Plex Mono,monospace}.technology-row p{margin-bottom:0;font-size:13px}.work-row{display:grid;grid-template-columns:84px minmax(0,1.5fr) minmax(180px,.85fr) minmax(130px,.85fr);gap:24px;padding:55px 0;border-top:1px solid var(--line);align-items:center}.work-number{align-self:center}.work-category{color:var(--accent);font:10px/1.8 IBM Plex Mono,monospace;text-transform:uppercase}.work-copy h3{font-family:var(--heading);font-size:clamp(30px,3.8vw,50px);line-height:1.15;font-weight:400;margin:20px 0;letter-spacing:-.035em}.work-row.featured h3,.work-row:hover h3{color:var(--accent)}.work-copy p{margin:0;font-size:14px;line-height:1.85}.work-copy details{max-width:540px}.work-copy details p{margin-top:15px}.work-links{display:flex;gap:20px;margin-top:22px;font:9px IBM Plex Mono,monospace;text-transform:uppercase}.work-image img{display:block;width:100%;height:auto;aspect-ratio:1.33;object-fit:cover;border:1px solid var(--line);border-radius:var(--radius)}.project-grid{width:100%;aspect-ratio:1.33;border:1px solid #ffffff20;background-image:linear-gradient(#ffffff06 1px,transparent 1px),linear-gradient(90deg,#ffffff06 1px,transparent 1px);background-size:48px 48px}.work-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.work-tags>span{font:9px/1.5 IBM Plex Mono,monospace;color:var(--muted);border:1px solid var(--line);padding:5px 8px;border-radius:var(--radius)}.indented{margin-left:calc((100% - 48px) / 3 + 24px)}.section-empty{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;margin-top:0;font:10px/1.8 IBM Plex Mono,monospace;text-transform:uppercase;color:var(--muted)}.experience-row{display:grid;grid-template-columns:160px 1fr;gap:28px;padding:30px 0;border-top:1px solid var(--line)}.experience-row>span{font:10px/1.8 IBM Plex Mono,monospace;color:var(--muted)}.experience-row h3{font-size:29px;margin:0}.experience-row h4{font-size:14px;margin:14px 0}.experience-row .work-tags{justify-content:flex-start}.section-contact .editorial-heading{margin-bottom:24px}.contact-layout{margin-left:calc((100% - 48px) / 3 + 24px)}.contact-description{font-size:17px;margin:0 0 64px;max-width:670px}.contact-row{display:grid;grid-template-columns:24px 92px minmax(0,1fr) 18px;gap:24px;align-items:center;padding:24px 0;border-top:1px solid var(--line);font-size:14px}.contact-row:last-child{border-bottom:1px solid var(--line)}.contact-row svg{width:18px;height:18px;color:var(--accent)}.contact-label{text-transform:uppercase;font:9px IBM Plex Mono,monospace;color:var(--muted)}.contact-row>span:nth-last-child(2){overflow-wrap:anywhere}.contact-arrow{color:var(--muted)}.portfolio-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);max-width:1600px;margin:auto;padding:38px 24px}.portfolio-footer>div>span{font-family:var(--heading);font-size:23px}.portfolio-footer p{font-size:12px;margin:3px 0 0}.portfolio-footer>a{font:10px IBM Plex Mono,monospace;color:var(--muted)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1550px){.hero-title-block{padding-top:180px}}@media(max-width:1100px){.hero-summary{max-width:100%}.hero-summary>p{font-size:21px}.about-columns{gap:28px}.about-columns p{font-size:17px}.work-row{grid-template-columns:50px minmax(0,1.4fr) minmax(180px,1fr)}.work-tags{grid-column:2/-1;justify-content:flex-start}.editorial-heading h2{font-size:52px}.site-nav{gap:22px}}@media(max-width:960px){html{scroll-padding-top:100px}.header-main,.header-status{padding-inline:18px}.site-menu-toggle{display:block;background:transparent;border-color:var(--line);font:11px IBM Plex Mono,monospace;padding:8px 12px}.header-main{flex-wrap:wrap;gap:0;min-height:52px}.site-brand{font-size:12px}.logo-box{width:28px;height:30px}.site-nav{display:none;width:100%;gap:0;flex-wrap:wrap;padding:10px 0 4px}.site-nav.is-open{display:flex}.site-nav a{padding:12px 18px 12px 0;margin-right:12px;font-size:10px}.header-status{font-size:8px;min-height:28px;gap:9px}.draft-indicator{font-size:7px}.portfolio-main{padding-inline:18px}.hero-coordinates{font-size:8px;padding-top:20px}.hero-title-block{padding-top:90px}.hero-specialties{font-size:8px;max-width:450px;line-height:2}.intro-hero h1{font-size:clamp(56px,10vw,78px);margin-bottom:30px}.hero-summary{flex-direction:column;align-items:flex-start;gap:26px;padding-top:25px}.hero-summary>p{font-size:19px;line-height:1.6}.hero-caption{font-size:8px}.hero-cta{font-size:12px;padding:12px 22px}.editorial-section{padding-top:26px;padding-bottom:min(var(--spacing),64px);scroll-margin-top:16px}.editorial-heading{grid-template-columns:1fr;gap:24px;margin-bottom:36px}.editorial-heading h2{font-size:clamp(36px,7vw,52px);max-width:650px;line-height:1.08}.section-index{font-size:9px}.section-intro{font-size:15px;margin-top:20px}.about-layout{grid-template-columns:1fr;gap:32px}.about-facts{display:flex;flex-wrap:wrap;gap:22px 35px;font-size:9px}.about-facts>div{margin:0;max-width:200px}.about-columns{gap:24px}.about-columns p{font-size:16px}.technology-row{grid-template-columns:28px 1fr;gap:12px;padding:24px 0}.technology-row h3{font-size:25px}.technology-row>div{grid-column:2}.technology-row ul{font-size:10px;gap:10px 18px}.work-row{grid-template-columns:28px 1fr;gap:14px;padding:32px 0}.work-number{align-self:start;margin-top:3px}.work-copy h3{font-size:36px;margin:16px 0}.work-image{grid-column:2}.project-grid{max-width:400px}.work-tags{grid-column:2;justify-content:flex-start}.indented,.contact-layout{margin-left:0}.experience-row{grid-template-columns:1fr;gap:14px}.contact-description{font-size:16px;margin-bottom:36px}.contact-row{grid-template-columns:20px 65px minmax(0,1fr) 12px;gap:12px;font-size:12px;padding:22px 0}.contact-label{font-size:8px}.portfolio-footer{padding:30px 18px}.portfolio-footer>div>span{font-size:21px}}@media(max-width:480px){.about-columns{grid-template-columns:1fr;gap:24px}.intro-hero h1{font-size:clamp(49px,12vw,60px)}.hero-title-block{padding-top:75px}.hero-specialties{max-width:330px}.contact-row{grid-template-columns:18px 1fr 12px;gap:12px}.contact-label{grid-column:2;grid-row:auto}.contact-row>span:nth-last-child(2){grid-column:2}.contact-arrow{grid-column:3;grid-row:span 2}.contact-row svg{grid-row:span 2}.work-copy h3{font-size:32px}.header-status{flex-wrap:wrap}.editorial-heading h2{font-size:39px}}.portfolio-main>section{overflow-wrap:anywhere}.hero-coordinates{font-size:11px}.hero-specialties{font-size:11px;max-width:760px;letter-spacing:.025em}.header-status{font-size:10px}.site-nav,.section-index,.about-facts,.row-index,.work-number,.work-category,.contact-label,.hero-caption{font-size:11px}.work-links{font-size:11px;gap:16px;flex-wrap:wrap}.work-links a{min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid var(--line)}.work-links a:hover{border-color:var(--accent)}.work-tags>span{font-size:10px}.work-copy summary{min-height:44px;padding-block:12px;color:var(--text)}.project-title-arrow{font-family:var(--font);font-size:.55em;vertical-align:middle;display:inline-block;transition:transform .2s ease}.work-copy h3 a:hover .project-title-arrow{transform:translate(3px,-3px)}.project-visual{min-width:0;aspect-ratio:1.25;display:flex;flex-direction:column;justify-content:space-between;padding:18px;overflow:hidden;border:1px solid var(--line);background:radial-gradient(ellipse at 50% 50%,color-mix(in srgb,var(--accent) 9%,transparent),transparent 75%),linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:auto,30px 30px,30px 30px}.visual-top,.visual-bottom{color:var(--muted);font:10px/1.6 IBM Plex Mono,monospace}.visual-top{display:flex;justify-content:space-between}.visual-top span:last-child{color:var(--accent)}.visual-orbit{width:62%;aspect-ratio:1;margin:6px auto;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 32%,transparent);transform:rotate(-12deg);position:relative}.visual-orbit:before{content:"";position:absolute;inset:12%;border:1px solid var(--line);transform:rotate(24deg)}.visual-orbit span{transform:rotate(12deg);color:var(--accent);font:clamp(20px,2.5vw,34px) "IBM Plex Mono",monospace;letter-spacing:-.06em;max-width:100%;overflow-wrap:anywhere;text-align:center}.visual-bottom{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-return{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:40;display:flex;align-items:center;gap:10px;min-height:46px;padding:12px 18px;color:var(--accent);background:var(--bg);border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);box-shadow:0 6px 32px #0007;font:12px IBM Plex Mono,monospace;border-radius:var(--radius)}.admin-return svg{width:17px;height:17px}.admin-return:hover{background:var(--accent);color:#11150a}.portfolio:has(.admin-return) .portfolio-footer{padding-bottom:96px}.site-menu-toggle{min-height:44px}.hero-cta{min-height:48px;transition:background-color .18s ease,border-color .18s ease}@media(max-width:760px){.hero-coordinates{font-size:9px}.hero-specialties{font-size:10px;line-height:1.9}.hero-caption{font-size:10px}.site-nav a{font-size:12px;min-height:44px}.about-facts{font-size:10px}.technology-row ul{font-size:11px}.contact-row{font-size:14px}.contact-label{font-size:10px}.header-status{font-size:9px}.admin-return{right:16px;bottom:max(16px,env(safe-area-inset-bottom));padding:11px 14px}.visual-orbit{width:44%}.visual-orbit span{font-size:34px}}.admin-shell,.auth-layout{--admin-bg: #0d0e0b;--admin-panel: #090a08;--admin-line: #ffffff25;--admin-accent: #ccff00;--admin-muted: #93978a;--admin-text: #e5e7df;color:var(--admin-text);background:var(--admin-bg);font-family:Segoe UI,Arial,sans-serif;color-scheme:dark}.admin-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.admin-sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;padding:12px 16px 20px;display:flex;flex-direction:column;gap:20px;background:var(--admin-panel);border-right:1px solid var(--admin-line)}.admin-brand{display:flex;align-items:center;gap:12px;padding-bottom:20px;border-bottom:1px solid var(--admin-line);font-size:14px;font-weight:600}.admin-brand small{display:block;font:8px/1.8 IBM Plex Mono,monospace;color:var(--admin-muted);text-transform:uppercase;letter-spacing:.6px}.admin-logo{width:36px;height:36px;display:grid;place-items:center;flex-shrink:0;font:9px IBM Plex Mono,monospace;color:var(--admin-accent);border:1px solid #ccff0060;background:#ccff0012}.admin-sidebar nav{display:flex;flex-direction:column;gap:3px}.admin-menu-toggle{display:none}.record-list .small-label{color:var(--admin-muted);font:10px/1.6 IBM Plex Mono,monospace}.admin-sidebar nav button{display:flex;align-items:center;gap:12px;background:transparent;border:0;border-radius:0;text-align:left;color:var(--admin-muted);font-size:13px;padding:10px 13px}.admin-sidebar svg{width:17px;height:17px;flex-shrink:0}.admin-sidebar nav button[aria-current]{background:#ccff0012;color:var(--admin-text)}.admin-sidebar nav button:hover{color:var(--admin-accent);background:#ffffff05}.admin-sidebar nav .secondary-nav-start{border-top:1px solid var(--admin-line);padding-top:16px;margin-top:12px}.admin-logout{margin-top:auto;display:flex;justify-content:center;align-items:center;gap:9px;border:1px solid var(--admin-line);border-radius:0;background:transparent;padding:9px;font-size:12px;min-height:34px}.admin-main{min-width:0;padding:0 40px 60px}.admin-top{height:55px;margin:0 -40px;padding:0 32px;border-bottom:1px solid var(--admin-line);display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-top strong{font-size:14px;font-weight:600}.admin-top p{font-size:12px;line-height:1.2;margin:3px 0;color:var(--admin-muted)}.admin-top-actions{display:flex;align-items:center;gap:10px}.admin-locale{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--admin-muted)}.admin-locale select{min-height:38px;background:var(--admin-panel);border:1px solid var(--admin-line);padding:6px 8px;color:var(--admin-text);max-width:140px}@media(max-width:700px){.admin-top{height:auto;min-height:60px;gap:10px;flex-wrap:wrap;padding-block:10px}.admin-locale{flex-direction:column;align-items:flex-start;gap:4px}.admin-top-actions{gap:8px}}.admin-back{padding:8px 12px;border:1px solid var(--admin-line);font-size:12px}.admin-language{color:var(--admin-accent);font:9px IBM Plex Mono,monospace;border:1px solid var(--admin-line);background:#ccff000d;padding:6px 10px}.admin-title{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:38px 0 30px;border-bottom:1px solid var(--admin-line);margin:0 0 32px}.admin-title .eyebrow{color:var(--admin-accent);font:9px IBM Plex Mono,monospace}.admin-title h1{font-family:Georgia,Times New Roman,serif;font-size:40px;font-weight:400;letter-spacing:-1px;line-height:1.1;margin:15px 0 10px}.admin-title p{font-size:14px;color:var(--admin-muted);margin:0}.admin-shell .primary{background:var(--admin-accent);border-color:var(--admin-accent);color:#10130a;border-radius:0}.admin-notice{font-size:12px;line-height:1.7;color:var(--admin-muted);padding:14px 16px;border-left:2px solid #ccff0060;background:#ccff0006;margin:20px 0}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:32px}.stat-grid button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:20px;min-height:172px;border:1px solid var(--admin-line);border-radius:0;background:var(--admin-panel)}.stat-icon{display:flex;width:100%;justify-content:space-between;align-items:center;color:var(--admin-muted);margin-bottom:38px}.stat-icon svg{color:var(--admin-accent);width:17px;height:17px}.stat-grid strong{font-family:Georgia,serif;font-size:30px;font-weight:400;line-height:1}.stat-grid .stat-label{color:var(--admin-text);font-size:14px;margin:4px 0}.stat-grid button>span:last-child{font-size:12px;color:var(--admin-muted)}.field{display:flex;flex-direction:column;gap:10px;margin:22px 0;font-size:13px;color:var(--admin-muted, var(--muted))}.field input,.field textarea,.field select{width:100%;border:1px solid #ffffff25;border-radius:0;background:#11120f;color:#e5e7df;padding:11px 13px;font:14px/1.5 Segoe UI,Arial,sans-serif}.field input:focus,.field textarea:focus,.field select:focus{outline:1px solid #ccff0080;outline-offset:0;border-color:#ccff0080}.field textarea{resize:vertical;min-height:90px}.field input[type=color]{padding:3px;height:42px;max-width:150px}.check-field{display:flex;align-items:center;gap:10px;margin:20px 0;font-size:12px;color:#b4b7aa}.check-field input{accent-color:#ccff00;width:16px;height:16px}.editor{max-width:800px}.form-actions{display:flex;gap:12px;margin-top:28px}.form-actions button{border-radius:0}.error{color:#ffaaa2;background:#402020;padding:14px;font-size:13px}.success{color:#c5e7aa;background:#23371c;padding:14px;font-size:13px}.record-list article{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--admin-line);padding:22px 0}.record-list article>div{flex:1;min-width:0}.record-list h3{font-family:Georgia,serif;font-size:25px;overflow-wrap:anywhere;margin:4px 0 10px}.record-list button{background:transparent;border-radius:0;padding:9px 14px;font-size:12px}.danger{color:#ffaaa2;border-color:#ffaaa250}.empty{padding:32px 0}.empty h2{font:30px Georgia,serif}.empty p{font-size:14px}.empty button{border-radius:0}.section-settings{border:1px solid var(--admin-line);padding:18px;margin:20px 0;max-width:860px;background:#ffffff02}.section-settings>summary{font-size:12px;color:var(--admin-text);margin:0;cursor:pointer}.section-settings fieldset{border:0;margin:0;padding:0}.section-fields{display:grid;grid-template-columns:2fr 1fr;gap:20px}.section-toggles{display:flex;flex-wrap:wrap;gap:0 24px}.navigation-section{margin-bottom:30px}.navigation-section>h2{font:25px Georgia,serif;margin:28px 0 12px}.confirm-dialog{color:var(--text);background:#141610;border:1px solid #ffffff25;width:calc(100% - 40px);max-width:460px;padding:30px}.confirm-dialog::backdrop{background:#000b}.confirm-dialog h2{font:30px Georgia,serif}.auth-layout{display:flex;min-height:100vh;justify-content:center;align-items:center;padding:60px 22px;background-image:linear-gradient(#ffffff02 1px,transparent 1px),linear-gradient(90deg,#ffffff02 1px,transparent 1px);background-size:48px 48px}.auth-frame{width:448px;max-width:100%}.auth-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.auth-topline>a{display:flex;gap:12px;align-items:center;color:var(--admin-muted);font:10px IBM Plex Mono,monospace;text-transform:uppercase}.auth-card{background:var(--admin-panel);border:1px solid var(--admin-line);padding:36px}.auth-card-heading{position:relative;border-bottom:1px solid var(--admin-line);padding-bottom:28px;margin-bottom:30px}.auth-card .eyebrow{font:10px IBM Plex Mono,monospace;color:var(--admin-accent);padding-top:3px}.auth-card h1{font:40px/1.1 Georgia,Times New Roman,serif;letter-spacing:-1px;margin:18px 0 7px}.auth-card-heading>p{font-size:14px;color:var(--admin-muted);margin:0;line-height:1.5}.lock-badge{position:absolute;right:0;top:0;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--admin-line);background:#ffffff06;color:var(--admin-accent)}.lock-badge svg{width:19px;height:19px}.auth-card .field{font:9px IBM Plex Mono,monospace;text-transform:uppercase;margin:28px 0;gap:12px}.auth-card .field input{height:42px}.auth-card>button.primary{width:100%;margin:0;padding:14px;font-size:13px;color:#0d1007;background:var(--admin-accent);border:0;border-radius:0}.auth-card .link-button{display:block;border:0;background:transparent;text-align:left;color:var(--admin-muted);font:10px IBM Plex Mono,monospace;text-transform:uppercase;padding:0;margin:28px 0 0}.auth-local-note{font-size:12px;padding:0 4px;margin-top:20px}.auth-local-note p{font-size:12px;line-height:1.65}.auth-local-note button{font:11px IBM Plex Mono,monospace;border-radius:0;background:transparent;padding:10px 14px}.auth-card .error{font-size:12px}.auth-card>p[role=status]{font-size:13px}@media(max-width:1000px){.admin-shell{grid-template-columns:205px minmax(0,1fr)}.admin-main{padding-inline:24px}.admin-top{margin-inline:-24px;padding-inline:24px}.admin-brand{font-size:12px;gap:8px}.admin-sidebar nav button{font-size:12px;padding:9px 10px}.stat-grid{gap:10px}.stat-grid button{padding:16px}.admin-title h1{font-size:36px}}@media(max-width:700px){.admin-shell{display:block}.admin-sidebar{position:static;display:grid;grid-template-columns:1fr auto;height:auto;padding:14px 18px;gap:14px;border-right:0;border-bottom:1px solid var(--admin-line)}.admin-brand{border:0;padding:0}.admin-sidebar nav{display:none;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.admin-menu-toggle{display:block;min-height:44px;padding:8px 12px;background:transparent;font-size:12px}.admin-sidebar.is-open nav{display:grid}.admin-sidebar.is-open .admin-logout{display:flex}.admin-sidebar nav button{font-size:11px;gap:7px;padding:8px}.admin-sidebar nav .secondary-nav-start{border:0;margin:0;padding:8px}.admin-sidebar nav svg{width:14px;height:14px}.admin-logout{display:none;grid-column:1 / -1;align-self:flex-start;margin-top:0;padding:8px 14px;font-size:11px}.admin-main{padding:0 18px 40px}.admin-top{margin-inline:-18px;padding-inline:18px}.admin-top p{font-size:10px}.admin-top strong{font-size:12px}.admin-back{font-size:10px;padding:7px}.admin-title{padding-top:28px;align-items:flex-start}.admin-title h1{font-size:34px}.admin-title p{font-size:12px}.admin-title>button{font-size:11px;padding:10px}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stat-grid button{padding:12px;min-height:145px}.stat-icon{margin-bottom:28px}.stat-grid strong{font-size:27px}.stat-grid .stat-label{font-size:11px}.stat-grid button>span:last-child{font-size:10px}.section-fields{grid-template-columns:1fr;gap:0}.section-toggles{display:block}.section-settings{padding:14px}.section-settings .form-actions{flex-wrap:wrap}.record-list article{gap:10px;flex-wrap:wrap}.record-list article>div{min-width:70%}.record-list h3{font-size:23px}.auth-layout{padding:36px 20px}.auth-card{padding:28px 24px}.auth-card h1{font-size:38px}.auth-topline{margin-bottom:24px}}.password-field{position:relative;display:block}.password-field input{padding-right:74px}.password-toggle{position:absolute;inset:0 0 0 auto;border:0;background:transparent;color:var(--admin-muted);font-size:12px;min-width:66px;padding:8px}.password-toggle:hover{color:var(--admin-accent)}.admin-sidebar nav button,.admin-logout,.record-list button,.admin-back{min-height:44px}.admin-language{display:none}.auth-layout .link-button{min-height:44px}
