@import url('/tokens/fonts.css');

:root{color-scheme:dark;--bg:#0a0a0b;--panel:#141416;--line:#ffffff1f;--text:#ededed;--muted:#a0a0a4;--mono:"Geist Mono",ui-monospace,monospace}
*{box-sizing:border-box}html{background:var(--bg);color:var(--text);font-family:Geist,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-height:100vh}body.viewing{overflow:hidden}button,input,textarea{font:inherit}button,a,input{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid #ededed;outline-offset:4px}[hidden]{display:none!important}
.top{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:20px;min-height:72px;padding:12px max(24px,calc((100vw - 1360px)/2));background:rgba(10,10,11,.97);border-bottom:1px solid var(--line)}.brand{color:var(--text);text-decoration:none;font-weight:700;font-size:17px;white-space:nowrap}.brand small{display:block;color:var(--muted);font:10px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-top:3px}.search{margin-left:auto;width:min(360px,34vw);min-height:44px;background:var(--panel);border:1px solid var(--line);border-radius:5px;color:var(--text);padding:10px 13px;font-size:15px}.search::placeholder{color:#929299}.toplink{display:flex;align-items:center;justify-content:center;min-height:44px;color:var(--text);text-decoration:none;border:1px solid var(--line);border-radius:5px;padding:10px 14px;font-size:13px;white-space:nowrap}.toplink:hover{background:#242427}
.hero,.explainer,.brief-disclosure,.catalog-bar,.grid,.more{max-width:1360px;margin-left:auto;margin-right:auto}.hero{padding:52px 24px 22px}.hero h1{font-size:clamp(40px,5.3vw,72px);line-height:1.02;letter-spacing:-.045em;margin:0;max-width:980px}.hero h1 br{display:none}.hero p{font-size:17px;line-height:1.55;color:var(--muted);max-width:790px;margin:18px 0 0}.sub{display:flex;justify-content:space-between;gap:20px;margin-top:24px;color:var(--muted);font:11px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.045em}.brief-disclosure{margin-top:0;margin-bottom:34px;padding:0 24px}.brief-disclosure>summary{display:flex;align-items:center;gap:16px;min-height:64px;padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:5px;cursor:pointer;list-style:none}.brief-disclosure>summary::-webkit-details-marker{display:none}.brief-disclosure>summary:after{content:'+';font:24px/1 var(--mono);margin-left:auto}.brief-disclosure[open]>summary:after{content:'−'}.summary-label{display:block;font-size:15px;font-weight:600}.summary-note{display:block;margin-top:4px;font-size:13px;color:var(--muted)}.summary-swatches{display:flex;flex:none;height:30px;width:76px;border:1px solid #707077;border-radius:3px;overflow:hidden}.summary-swatches i{flex:1}.summary-swatches i:nth-child(1){background:#fff}.summary-swatches i:nth-child(2){background:#f8fafc}.summary-swatches i:nth-child(3){background:#0f172a}.summary-swatches i:nth-child(4){background:#3b82f6}
.explainer{display:grid;grid-template-columns:.7fr 1.3fr;gap:32px;align-items:center;padding:28px 0 0}.explainer-copy .kicker{font:10px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.explainer-copy h2{font-size:clamp(28px,3vw,42px);line-height:1.08;letter-spacing:-.035em;margin:12px 0}.explainer-copy p{margin:0;color:var(--muted);font-size:15px;line-height:1.6}.brief-preview{background:#f8fafc;color:#0f172a;border:1px solid #45454b;border-radius:5px;overflow:hidden}.brief-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px;border-bottom:1px solid #d9dde4}.brief-kicker,.brief-state,.brief-title,.brief-meta,.brief-output-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.035em}.brief-kicker{font-size:10px;color:#475569}.brief-head h3{margin:6px 0 0;font-size:24px;letter-spacing:-.035em}.brief-state{font-size:9px;line-height:1.4;color:#fff;background:#0f172a;padding:6px 8px}.brief-choices{display:flex;flex-wrap:wrap;gap:6px;padding:12px 20px;border-bottom:1px solid #d9dde4;background:#fff}.brief-choices span{font:10px/1.2 var(--mono);color:#475569;border:1px solid #d9dde4;padding:5px 6px}.brief-grid{display:grid;grid-template-columns:1fr 1fr}.brief-block{min-width:0;padding:20px;border-bottom:1px solid #d9dde4}.brief-block:nth-child(odd){border-right:1px solid #d9dde4}.brief-title{font-size:10px;color:#475569;margin-bottom:14px}.brief-swatches{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.brief-swatch-color{display:block;height:42px;border:1px solid rgba(15,23,42,.14)}.brief-meta{display:block;font-size:9px;line-height:1.5;color:#475569;margin-top:5px;overflow-wrap:anywhere}.brief-type-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end}.brief-display{font-size:30px;line-height:1.02;letter-spacing:-.045em;font-weight:650}.brief-body{font-size:12px;line-height:1.55;color:#475569}.brief-mono{grid-column:1/-1;font:10px/1.4 var(--mono);color:#475569;border-top:1px solid #d9dde4;padding-top:10px}.rulers{display:grid;gap:16px}.ruler{display:grid;grid-template-columns:58px 1fr 34px;gap:8px;align-items:center;font:10px/1.3 var(--mono);color:#475569}.ruler-bar{height:8px;background:#0f172a}.ruler:nth-child(2) .ruler-bar{width:56%}.ruler:nth-child(3) .ruler-bar{width:34%;background:#3b82f6}.component-demo{display:grid;gap:9px}.demo-card{background:#fff;border:1px solid #d9dde4;padding:12px}.demo-card strong{font-size:13px}.demo-card p{font-size:11px;line-height:1.4;color:#475569;margin:5px 0 0}.demo-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px}.demo-button{border:0;background:#3b82f6;color:#fff;padding:10px;font-size:11px;min-height:44px}.demo-input{min-width:0;border:1px solid #cbd5e1;background:#fff;color:#475569;padding:9px;font-size:12px}.brief-output{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px;background:#0f172a;color:#fff}.brief-output-label{font-size:10px;color:#cbd5e1}.brief-files{font:10px/1.5 var(--mono);text-align:right}
.catalog-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:0 24px 16px}.catalog-bar h2{margin:0;font-size:22px;letter-spacing:-.025em}.catalog-bar>span{font:11px/1.4 var(--mono);color:var(--muted);text-align:right}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0 24px}.card{min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden}.card:hover{border-color:#ffffff55}.preview{display:block;position:relative;width:100%;aspect-ratio:16/10;padding:0;background:#1c1c1e;border:0;border-bottom:1px solid var(--line);overflow:hidden;text-align:left;color:var(--text)}.preview img{display:block;width:100%;height:100%;object-fit:cover}.preview-label{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:7px 10px;border:1px solid #ffffff55;border-radius:4px;background:#0a0a0bdd;color:#fff;font:11px/1.2 var(--mono);backdrop-filter:blur(6px)}.info{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px}.info-text{min-width:0}.name{font-size:18px;font-weight:650;letter-spacing:-.025em;line-height:1.3}.category{color:var(--muted);font:10px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.025em;margin-top:5px;overflow-wrap:anywhere}.open{display:grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--text);font-size:20px}.open:hover{background:#242427}.image-error{position:absolute;inset:0;display:grid;place-content:center;padding:20px;background:#1c1c1e;text-align:center;gap:8px}.image-error strong{font-size:22px}.image-error span{font-size:13px;color:var(--muted)}.more{padding:24px 24px 64px;text-align:center}.more button{min-height:48px;background:var(--text);color:var(--bg);border:0;border-radius:5px;padding:12px 24px;font-size:14px;font-weight:600}.empty{display:none;text-align:center;padding:48px 20px 80px;color:var(--muted);font-size:16px}.empty button{display:block;margin:16px auto;min-height:44px;padding:10px 20px;background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:5px}
.modal{position:fixed;inset:0;z-index:80;background:var(--bg);display:none;grid-template-rows:auto minmax(0,1fr);height:100dvh}.modal.on{display:grid}.modalbar{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--line);min-width:0}.back,.brief-toggle,.device,.tab{border:1px solid var(--line);border-radius:4px;background:var(--panel);color:var(--text);min-height:44px;padding:10px 14px;white-space:nowrap;font-size:13px}.back{flex:none}.modal-heading{min-width:0}.modal-title{font-size:16px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-category{font:10px/1.4 var(--mono);color:var(--muted);margin-top:4px}.brief-toggle{display:none}.tabs{display:flex;gap:5px;margin-left:auto;overflow-x:auto;scrollbar-width:none;min-width:0}.tabs::-webkit-scrollbar{display:none}.tab{color:var(--muted)}.tab.on,.device.on{background:var(--text);border-color:var(--text);color:var(--bg)}.devices{display:flex;gap:5px}.device{padding:10px;font-size:11px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;min-height:0;overflow:hidden}.stage{position:relative;min-width:0;min-height:0;overflow:hidden;background:#1c1c1e}.stage iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0;background:#fff;transform-origin:top left}.stage-loading{position:absolute;z-index:2;inset:0;display:grid;place-content:center;background:var(--panel);font-size:15px;color:var(--muted)}.stage-loading:after{content:'';height:3px;width:160px;margin-top:14px;background:linear-gradient(90deg,#44444a,#ededed,#44444a);background-size:200% 100%;animation:loading 1.4s linear infinite}.stage-error{position:absolute;inset:0;z-index:3;display:grid;place-content:center;gap:12px;background:var(--panel);padding:24px;text-align:center}.stage-error p{color:var(--muted)}.stage-error button,.stage-error a{display:block;min-height:44px;padding:12px;border:1px solid var(--line);background:#242427;color:var(--text);text-decoration:none;border-radius:4px}.rail{border-left:1px solid var(--line);padding:24px 20px;overflow:auto;background:#101012;overscroll-behavior:contain}.rail h2{font-size:28px;line-height:1.1;letter-spacing:-.035em;margin:0 0 12px;overflow-wrap:anywhere}.rail p{color:var(--muted);font-size:14px;line-height:1.6}.source{display:grid;margin:20px 0}.source a{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--text);text-decoration:none;border-top:1px solid var(--line);padding:13px 0;min-height:44px;font:11px/1.4 var(--mono)}.copy{width:100%;min-height:48px;border:0;border-radius:4px;background:var(--text);color:var(--bg);padding:12px;font-size:13px;font-weight:600}.hint{font-size:12px!important}.rail textarea{width:100%;min-height:240px;background:var(--bg);border:1px solid var(--line);padding:12px;color:var(--text);font:12px/1.5 var(--mono);resize:vertical}.notice{position:fixed;left:50%;bottom:max(20px,env(safe-area-inset-bottom));z-index:100;max-width:calc(100% - 32px);background:var(--text);color:var(--bg);padding:12px 16px;border-radius:5px;font-size:13px;opacity:0;transform:translate(-50%,15px);transition:.2s;pointer-events:none}.notice.on{opacity:1;transform:translate(-50%,0)}
@keyframes loading{to{background-position:-200% 0}}
@media(min-width:1700px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.explainer{grid-template-columns:1fr;gap:24px}.explainer-copy{max-width:650px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modalbar{flex-wrap:wrap}.tabs{order:3;width:100%;margin:0}.devices{margin-left:auto}.layout{grid-template-columns:minmax(0,1fr) 260px}}
@media(max-width:760px){.top{flex-wrap:wrap;gap:10px;padding:10px 16px}.brand{font-size:16px}.brand small{font-size:9px}.toplink{margin-left:auto;min-height:44px;font-size:12px;padding:10px}.search{order:3;width:100%;margin:0;font-size:16px;min-height:44px}.hero{padding:28px 16px 20px}.hero h1{font-size:39px;line-height:1.04;letter-spacing:-.04em}.hero p{font-size:15px;line-height:1.5;margin-top:12px}.sub{margin-top:16px;font-size:10px;gap:8px}.brief-disclosure{padding:0 16px;margin-bottom:24px}.brief-disclosure>summary{padding:12px;gap:12px;min-height:66px}.summary-swatches{width:58px;height:28px}.summary-label{font-size:14px}.summary-note{font-size:12px;line-height:1.4}.explainer{padding-top:20px}.explainer-copy h2{font-size:28px}.brief-head{padding:16px;gap:10px}.brief-head h3{font-size:22px}.brief-state{max-width:92px}.brief-choices{padding:12px 16px}.brief-grid{grid-template-columns:1fr}.brief-block{padding:18px 16px}.brief-block:nth-child(odd){border-right:0}.brief-output{align-items:flex-start;flex-direction:column;padding:16px}.brief-files{text-align:left}.catalog-bar{padding:0 16px 12px;gap:12px}.catalog-bar h2{font-size:19px}.catalog-bar>span{font-size:10px}.grid{grid-template-columns:1fr;gap:18px;padding:0 16px}.preview{aspect-ratio:16/10}.info{padding:14px}.name{font-size:18px}.category{font-size:10px}.more{padding:22px 16px 48px}.more button{width:100%}.modalbar{padding:8px 10px;gap:8px}.back{padding:9px 12px}.modal-heading{flex:1}.modal-title{font-size:15px}.modal-category{display:none}.brief-toggle{display:block;font-size:12px;padding:9px 10px}.tabs{order:3;flex:1;width:auto;margin:0}.tab{font-size:12px;padding:10px 12px}.devices{order:4;width:100%;margin:0;justify-content:flex-end}.device{min-height:36px;padding:6px 10px;font-size:11px}.layout{position:relative;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);overflow:hidden}.rail{display:none;position:absolute;z-index:4;inset:0;border:0;padding:24px 20px 32px}.modal.show-brief .rail{display:block}.modal.show-brief .brief-toggle{background:var(--text);color:var(--bg)}.stage{height:100%}.stage iframe{max-width:none}.source a{font-size:12px}.rail h2{font-size:28px}}
/* Keep the desktop headline compact and all phone preview choices visible. */
.hero h1{max-width:1280px}
@media(max-width:760px){.tabs{flex:1 0 100%;width:100%;gap:4px}.tab{flex:1 0 auto;text-align:center;font-size:11px;padding:10px 8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.stage-loading:after{animation:none}.notice{transition:none}}
