
:root{color-scheme:dark;--bg:#0a0e15;--panel:#111823;--line:#26303f;--text:#edf2fa;--muted:#9daabd;--blue:#82b0ff;--accent:#4588f6;--mono:Consolas,'Courier New',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 'Segoe UI',Arial,sans-serif}button,input{font:inherit}a{color:inherit;text-decoration:none}button,a,input{touch-action:manipulation}a,button{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button{color:inherit}button:disabled{opacity:.7;cursor:default}[hidden]{display:none!important}.wrap{max-width:1240px;margin:auto;padding-inline:44px}.header{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 44px;max-width:1440px;margin:auto;gap:24px}.brand{font-weight:800;font-size:22px;letter-spacing:-.6px;display:flex;align-items:center}.brand-icon{display:inline-flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:22px;color:var(--blue);background:#17243a;border:1px solid #294570;border-radius:8px;width:39px;height:39px;margin-right:12px}.brand-icon span{font-size:15px}.brand-dot{color:var(--blue)}nav{display:flex;gap:32px;font-size:14px;color:#bbc6d6}nav a:hover,.text-link:hover{color:var(--blue)}.header-cta{font-size:14px;border:1px solid #394a63;padding:9px 16px;border-radius:6px}.header-cta span{margin-left:20px}.hero{display:grid;grid-template-columns:1.13fr 1fr;gap:60px;align-items:center;padding-block:83px 70px}.eyebrow{font:12px/1.5 var(--mono);letter-spacing:1.8px;color:var(--blue);margin:0 0 20px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(40px,4.45vw,64px);line-height:1.08;letter-spacing:-2.6px;font-weight:700;margin-bottom:26px}h1 span{color:var(--blue)}.intro{font-size:18px;color:var(--muted);line-height:1.8;max-width:510px;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:12px 19px;border-radius:6px;font-size:14px;font-weight:600;border:1px solid transparent}.primary{background:var(--accent);color:white}.primary:hover{background:#609bfa}.secondary{border-color:#3c506e;background:#182235}.text-link{font-size:14px;font-weight:600;display:inline-block}.hero .text-link{margin-left:22px}.hero-foot{margin-top:44px;display:flex;gap:24px;color:#9eacc0;font:12px var(--mono)}.terminal{border:1px solid #34425a;border-radius:12px;background:#111a28;box-shadow:0 30px 90px #0004;transform:rotate(-1deg);overflow:hidden}.terminal-top{background:#1b2534;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:14px;font:12px var(--mono);color:#a9b7ca}.terminal-dots{color:#647286;white-space:nowrap;letter-spacing:3px}.terminal-body{padding:28px 24px 20px}.terminal-comment{font:13px/1.6 var(--mono);color:#a0afc4}.terminal pre{font:14px/1.9 var(--mono);margin:27px 0 32px;overflow:auto}.prompt,.code-blue{color:#84b5ff}.code-green{color:#8bd2b2}.muted{color:#9dacc1}.cursor{color:var(--blue)}.terminal-label{display:flex;justify-content:space-between;color:#96a9c2;font:12px var(--mono);letter-spacing:1px}.terminal-bottom{background:#162337;border-top:1px solid #2c405d;padding:15px 24px;display:flex;flex-direction:column;font-size:14px}.terminal-bottom span{color:#9fb1ca}.terminal-bottom strong{font-weight:500}.tech-strip{border-block:1px solid var(--line);background:#101620}.tech-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:22px;flex-wrap:wrap}.tech-strip span{font:12px var(--mono);color:#93a3ba;letter-spacing:1px}.tech-strip strong{font-size:15px;color:#c2ccdb;font-weight:600}.section{padding-top:74px;padding-bottom:74px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:32px}.section-heading .eyebrow{margin-bottom:12px}h2{font-size:clamp(28px,3vw,37px);line-height:1.2;letter-spacing:-1.1px;margin-bottom:0}.section-heading>p{font-size:15px;color:var(--muted);margin-bottom:0}.catalog-controls{display:flex;align-items:center;gap:24px}.search{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid #354359;border-radius:7px;padding:11px 15px;flex:1}.search span{font-size:25px;color:#a6b8d4;line-height:1}.search input{background:none;border:0;color:var(--text);width:100%;font-size:14px;min-width:0}.search input::placeholder{color:#91a0b6}#result-count{color:var(--muted);font:13px var(--mono);white-space:nowrap}.filters{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0 29px}.filter{border:1px solid #2c3748;background:transparent;color:#adbcd0;font-size:13px;padding:7px 13px;border-radius:5px}.filter[aria-pressed=true]{color:#c4dcff;border-color:#426b9e;background:#172b47}.filter:hover{border-color:var(--blue)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{display:flex;flex-direction:column;min-height:305px;padding:25px;background:linear-gradient(125deg,#141d2b,#101620);border:1px solid #2c384b;border-radius:9px;transition:transform .18s,border-color .18s}.card:hover{transform:translateY(-3px);border-color:#5b7caa}.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:26px}.card-icon{display:grid;place-items:center;width:43px;height:43px;border:1px solid #345379;border-radius:8px;background:#1a2c46;color:#9cc5ff;font:15px var(--mono)}.card-category{font-size:12px;color:#b0bed2}.card h3{font-size:20px;line-height:1.4;letter-spacing:-.35px;margin-bottom:10px}.card>p{font-size:15px;line-height:1.7;color:#a5b3c7;margin-bottom:25px}.card-bottom{margin-top:auto;display:flex;justify-content:space-between;border-top:1px solid #293548;padding-top:16px;gap:12px;font:12px var(--mono);color:#a2b4cf}.card-bottom a{font:600 14px 'Segoe UI',sans-serif;color:var(--blue)}.catalog-note{color:#9aabc1;font-size:13px;margin:23px 0 0}.empty{text-align:center;border:1px dashed var(--line);padding:40px;color:var(--muted)}.projects{background:#101620;border-block:1px solid var(--line)}.project-list{margin-top:42px}.project-list>a{display:grid;grid-template-columns:40px 1fr 215px 25px;gap:20px;align-items:center;border-top:1px solid #2c3645;padding:28px 0}.project-list>a:last-child{border-bottom:1px solid #2c3645}.project-list>a:hover h3{color:var(--blue)}.project-number{font:14px var(--mono);color:#8396b2}.project-list .eyebrow{font-size:12px;letter-spacing:1px;display:block;margin-bottom:8px}.project-list h3{font-size:22px;line-height:1.3;margin-bottom:8px;font-weight:600}.project-list p{font-size:15px;color:#a1afc3;margin-bottom:0}.project-tech{font:12px/1.7 var(--mono);color:#a5b5cd}.project-arrow{font-size:24px;color:var(--blue)}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px}.about p:not(.eyebrow){color:#b0bed0;font-size:17px}.about .text-link{color:var(--blue)}.footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);gap:25px;padding-block:30px}.footer p,.footer>a:last-child{font-size:13px;color:#9baac0;margin:0}.footer .brand{font-size:18px}.detail{padding-block:45px 75px;min-height:75vh}.back{color:var(--blue);font-size:14px;display:inline-block;margin-bottom:34px}.detail-head{max-width:850px;margin-bottom:35px}.detail h1{font-size:clamp(32px,4vw,48px);letter-spacing:-1.5px;line-height:1.15;margin-bottom:18px}.detail .description{font-size:20px;color:#adbcd0}.detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:50px}.detail h2{font-size:24px;margin:30px 0 16px}.detail li{margin-bottom:10px;color:#b7c5d7}.detail ol,.detail ul{padding-left:23px}.notice{border-left:3px solid #bfa167;background:#211e19;padding:17px 20px;color:#e3ceb0;font-size:14px;border-radius:0 5px 5px 0}.detail-aside{border:1px solid var(--line);border-radius:8px;padding:23px;background:var(--panel);height:fit-content}.detail-aside h2{font-size:18px;margin:0 0 17px}.detail-aside p{font-size:14px;color:#aebed3;overflow-wrap:anywhere}.detail-aside strong{display:block;color:#e1e8f2;font-size:14px;margin-bottom:4px}.codebox{border:1px solid #344359;border-radius:7px;overflow:hidden;background:#0c131e;margin-top:20px}.codebar{display:flex;justify-content:space-between;gap:15px;align-items:center;background:#1a2535;padding:11px 15px;font:13px var(--mono);overflow-wrap:anywhere}.copy{background:#273a54;border:1px solid #496587;padding:6px 12px;border-radius:4px;font:13px 'Segoe UI',sans-serif;white-space:nowrap}.codebox pre{overflow:auto;margin:0;padding:22px;font:14px/1.7 var(--mono);max-height:540px;color:#bcd6fb;tab-size:4}.example{display:block;background:#121e2e;padding:15px;border:1px solid #2d3d53;border-radius:5px;overflow:auto;font:14px/1.6 var(--mono)}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#233b5b;color:white;padding:12px 22px;border:1px solid #557bac;border-radius:7px;max-width:90vw;z-index:10;font-size:14px}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:#27466f;z-index:20}.skip:focus{top:10px}
@media(min-width:1450px){.hero{padding-block:100px 88px}}@media(max-width:1050px){.wrap{padding-inline:30px}.header{padding-inline:30px}.hero{gap:30px}h1{font-size:48px}.hero .text-link{display:block;margin:18px 0 0}.cards{grid-template-columns:repeat(2,1fr)}.project-list>a{grid-template-columns:30px 1fr 25px}.project-tech{display:none}.terminal-body{padding:20px 16px}.terminal pre{font-size:13px}}@media(max-width:760px){.wrap{padding-inline:22px}.header{height:auto;min-height:78px;padding:18px 22px;flex-wrap:wrap;gap:16px}.brand{font-size:19px}.brand-icon{width:33px;height:33px}.header-cta{display:none}nav{gap:20px;font-size:14px}.hero{grid-template-columns:1fr;padding-block:45px;gap:35px}h1{font-size:49px;letter-spacing:-2px}.hero .eyebrow{font-size:12px;letter-spacing:1px}.intro{font-size:17px}.hero .text-link{display:inline-block;margin-left:17px}.hero-foot{margin-top:28px;gap:18px}.terminal{transform:none}.terminal pre{font-size:14px}.tech-strip .wrap{gap:15px 24px}.tech-strip span{width:100%}.section{padding-block:48px}.section-heading{display:block}.section-heading>p{margin-top:16px}.section-heading>p br{display:none}h2{font-size:30px}.catalog-controls{flex-wrap:wrap;gap:12px}.search{flex-basis:100%}.cards{grid-template-columns:1fr}.card{min-height:275px}.filters{gap:8px}.filter{font-size:14px}.project-list>a{gap:12px}.project-list h3{font-size:20px}.about{grid-template-columns:1fr;gap:28px}.footer{flex-wrap:wrap;gap:15px}.footer p{width:100%;order:3}.detail-grid{grid-template-columns:1fr;gap:28px}.detail-aside{order:-1}.detail{padding-block:32px 50px}.detail h1{font-size:36px}.codebar{font-size:12px}.codebox pre{font-size:13px}}@media(max-width:380px){nav{width:100%;justify-content:space-between}.hero .text-link{display:block;margin-left:0}h1{font-size:42px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}

.detail-grid>*{min-width:0}.hero>*{min-width:0}.detail p,.detail li{overflow-wrap:anywhere}@media(max-width:760px){.detail-grid{grid-template-columns:minmax(0,1fr)}}
.language-switch{display:flex;align-items:center;gap:3px;border:1px solid #3a4f6d;border-radius:7px;background:#111d2d;padding:3px;flex-shrink:0;width:fit-content}.language-switch button{border:0;border-radius:4px;background:transparent;color:#acbed7;padding:7px 10px;font:600 13px/1.2 'Segoe UI',sans-serif;min-height:32px;min-width:36px}.language-switch button[aria-pressed=true]{background:#345f99;color:white}.language-switch button:hover{color:white}.privacy-content>.language-switch{margin:0 0 24px auto}.header nav{margin-left:auto}.admin-header>.language-switch{margin-left:0}.admin-header>div:not(.language-switch){margin-left:auto}@media(max-width:1000px){.header .header-cta{display:none}}@media(max-width:500px){.header{gap:12px}.header nav{order:3;width:100%;justify-content:space-between;margin:0}.header>.language-switch{margin-left:auto}.admin-header{flex-wrap:wrap}.admin-header>.language-switch{margin-left:auto}}
