:root{color-scheme:dark;--bg:#080b12;--surface:#111723;--line:#ffffff17;--text:#f7f9ff;--muted:#9ba7bb;--blue:#3478ff;--blue-light:#86b2ff;--ok:#72d9ab;--danger:#ff8e9a;--radius:22px;font-family:Inter,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{min-width:320px;scrollbar-color:#354058 transparent}body{margin:0;background:radial-gradient(ellipse 700px 500px at 50% -240px,#153363 0%,transparent 80%),var(--bg);color:var(--text);font-size:15px;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:var(--blue-light)}:focus-visible{outline:2px solid #9bc0ff;outline-offset:3px}
.app-shell{width:min(100%,560px);min-height:100dvh;margin:auto;display:flex;flex-direction:column;background:#090d15cc;border-inline:1px solid #ffffff09}.topbar{height:68px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:sticky;top:0;z-index:30;background:#0c111be8;backdrop-filter:blur(24px);border-bottom:1px solid #ffffff10}.brand{display:flex;align-items:center;gap:10px;font-weight:850;letter-spacing:-.9px;font-size:19px;white-space:nowrap}.brand-mark{height:34px;width:34px;display:grid;place-items:center;background:#3278ff;border-radius:12px;color:white;font-size:15px;letter-spacing:-1.3px;box-shadow:0 4px 18px #226dff65}.brand-name span{color:var(--blue-light)}.icon-btn{width:44px;height:44px;display:grid;place-items:center;border:1px solid #ffffff1e;border-radius:14px;background:#ffffff08;color:#d9e5f9;transition:background .18s,border-color .18s}.icon-btn svg{width:21px;height:21px}.icon-btn:hover,.icon-btn.active{background:#2466dc33;border-color:#6a9eff}main{flex:1;padding:24px 20px 132px}
.page-intro{margin-bottom:25px}.intro-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.eyebrow,.step-count,.section-kicker{font-size:11px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--blue-light)}.step-count{color:#72829d;letter-spacing:1.2px;font-variant-numeric:tabular-nums}.steps{display:flex;gap:5px;margin:0 0 22px}.step{height:3px;flex:1;border-radius:8px;background:#374253}.step.done{background:#3278ff}.step.current{background:#93beff}.heading{font-size:32px;line-height:1.07;letter-spacing:-1.25px;margin:0 0 8px;font-weight:820}.subheading{font-size:14px;line-height:1.55;color:var(--muted);margin:0;max-width:34em}.section-label{font-size:12px;color:#a8b9d1;font-weight:750;margin:28px 0 10px}
.card{background:linear-gradient(160deg,#ffffff07,transparent 62%),var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin:0 0 14px;box-shadow:0 16px 38px #00000024}.choice-stack{display:grid;gap:10px}.choice{display:flex;align-items:center;text-align:left;width:100%;min-height:88px;color:var(--text);gap:14px;margin:0;transition:transform .18s,border-color .18s,background .18s}.choice:hover{border-color:#5979a9}.choice:active,.tile-select:active{transform:scale(.985)}.choice.selected{border-color:#4b8aff;background:#142441;box-shadow:inset 0 0 0 1px #508dff66,0 12px 34px #0c347344}.choice-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:#28446c;color:#d8e7ff;font-size:24px;flex:none}.choice strong{display:block;font-size:15px;line-height:1.3}.choice small{display:block;margin-top:5px;color:var(--muted);font-size:12px}.checkmark{margin-left:auto;color:#a8c7ff;font-size:20px}.field-label{display:block;color:#aebbd0;font-weight:700;font-size:12px;margin:24px 0 9px}.field,.select{width:100%;min-height:52px;border:1px solid #46526a;background:#0d1420;color:var(--text);border-radius:14px;padding:12px 14px;outline:0}.field:focus,.select:focus,.search:focus-within{border-color:#6ba2ff;box-shadow:0 0 0 3px #357cff2d}.hint{color:var(--muted);font-size:12px;line-height:1.5}.saved{font-size:11px;color:var(--ok);font-weight:700}
.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px}.search{display:flex;align-items:center;gap:10px;min-width:0;flex:1;background:#141b28;border:1px solid #ffffff20;border-radius:15px;padding:0 14px;height:49px;color:#93a5c0}.search svg{width:19px;height:19px;flex:none}.search input{width:100%;min-width:0;height:100%;background:transparent;border:0;outline:0;color:var(--text);font-size:14px}.search input::placeholder{color:#8d9bb0}.chips{display:flex;gap:8px;overflow:auto;scrollbar-width:none;padding:0 1px 19px}.chips::-webkit-scrollbar{display:none}.chip{flex:none;border:1px solid #ffffff1c;background:#141a25;color:#aab7ca;padding:9px 15px;border-radius:100px;font-size:13px;font-weight:650;min-height:40px;transition:background .18s,border-color .18s,color .18s}.chip:hover{border-color:#6381b2;color:#fff}.chip.active{background:#3478ff;border-color:#3478ff;color:#fff;box-shadow:0 5px 19px #3478ff41}.catalog-meta{display:flex;align-items:center;justify-content:space-between;color:#8392ab;font-size:12px;margin:0 0 12px}.catalog-meta strong{color:#d4e4ff;font-size:12px;background:#214d8f;border-radius:100px;padding:5px 10px}
.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tile{min-width:0;position:relative;border-radius:19px;background:#111824;border:1px solid #ffffff17;overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}.tile:hover{border-color:#698dc6;transform:translateY(-2px)}.tile.selected{border-color:#5a98ff;box-shadow:0 0 0 2px #3478ff6b,0 14px 32px #0c367568}.tile-select{width:100%;padding:0;text-align:left;border:0;background:transparent;color:var(--text);display:block}.tile-media{display:block;position:relative;aspect-ratio:1;background:radial-gradient(circle at 50% 35%,#2b3c55,#131b29 70%);overflow:hidden}.tile-media .tile-preview{position:absolute;inset:7px;width:calc(100% - 14px);height:calc(100% - 14px)}.tile-copy{display:flex;flex-direction:column;gap:1px;padding:10px 12px 12px;min-height:55px}.tile-copy strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-weight:750}.tile-copy small{font-size:11px;color:#899bb5}.selected-dot{position:absolute;top:10px;left:10px;width:27px;height:27px;border-radius:9px;background:#3478ff;display:grid;place-items:center;color:#fff;font-size:15px;font-weight:850;opacity:0;box-shadow:0 3px 10px #0c244a9e}.tile.selected .selected-dot{opacity:1}.favorite{position:absolute;top:9px;right:9px;border:1px solid #ffffff22;background:#0c1420c9;color:#dee6f2;backdrop-filter:blur(12px);border-radius:10px;width:35px;height:35px;display:grid;place-items:center;font-size:22px;line-height:1}.favorite.on{color:#ff97b0}.empty{padding:55px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:18px}
.sticky{position:fixed;bottom:0;left:0;right:0;z-index:35;padding:13px 16px max(15px,env(safe-area-inset-bottom));background:#0c111be8;backdrop-filter:blur(24px);border-top:1px solid #ffffff1c}.sticky-inner{max-width:520px;margin:auto;display:flex;gap:10px}.primary,.secondary{height:54px;border-radius:15px;border:0;font-weight:800;transition:transform .18s,filter .18s,background .18s}.primary{flex:1;color:white;background:#3478ff;box-shadow:0 10px 28px #1c5cdd58}.primary:hover:not(:disabled){filter:brightness(1.12)}.primary:active:not(:disabled),.secondary:active{transform:scale(.98)}.secondary{width:54px;flex:none;display:grid;place-items:center;color:#dce7f8;background:#202c3e;border:1px solid #ffffff1c}.secondary svg{width:22px;height:22px}
.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.row.wrap{flex-wrap:wrap}.badge{background:#263b60;color:#c6dfff;font-size:11px;font-weight:750;border-radius:9px;padding:6px 9px;white-space:nowrap}.badge.ok{background:#1d4939;color:#a8ebc8}.badge.warn{background:#4a3a26;color:#f2ce97}.editor-card{padding:18px}.editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.editor-head h2,.palette-card h2{font-size:20px;line-height:1.15;letter-spacing:-.5px;margin:3px 0 0}.editor-head .saved{white-space:nowrap;margin-top:4px}.preview-stage{aspect-ratio:1;height:auto;max-height:390px;display:grid;place-items:center;margin:15px 0 12px;background:radial-gradient(circle at 50% 38%,#2d3d54,#101825 72%);border:1px solid #ffffff10;border-radius:19px;overflow:hidden}.preview-stage>div{width:94%;height:94%}.preview-stage .tile-preview{width:100%;height:100%}.compare-tabs{display:flex;padding:4px;background:#0b111b;border:1px solid #ffffff1a;border-radius:12px}.compare-tabs button{flex:1;height:38px;background:transparent;border:0;border-radius:9px;color:#9aabc4;font-size:12px;font-weight:750}.compare-tabs button.active{background:#293f64;color:#fff}.editor-section-label{margin:22px 0 10px;color:#c4cfe0;font-size:12px;font-weight:750}.editor-list{display:flex;gap:8px;overflow:auto;padding:1px 1px 7px;scrollbar-width:thin}.editor-tab{width:72px;height:72px;flex:none;border-radius:13px;background:radial-gradient(circle,#29374d,#121c29);border:1px solid #ffffff22;padding:5px;overflow:hidden}.editor-tab.active{border-color:#74a4ff;box-shadow:0 0 0 2px #387fff58}.editor-tab .tile-preview{width:100%;height:100%}.editor-note{font-size:11px;line-height:1.5;color:#94a3b8;margin:12px 0 0}
.palette-card{margin-top:14px}.palette-card .row{margin-bottom:11px}.text-button{border:0;background:transparent;color:#9dc1ff;font-weight:750;font-size:12px;min-height:40px;padding:8px}.text-button:hover{text-decoration:underline}.color-row{display:flex;align-items:center;gap:9px;min-height:62px;border-top:1px solid #ffffff10}.source-swatch{height:22px;width:22px;border-radius:8px;flex:none;background:var(--swatch);border:1px solid #ffffff55;box-shadow:0 2px 8px #0005}.color-label{min-width:0;flex:1;display:flex;flex-direction:column}.color-label strong{font-size:12px;line-height:1.25}.color-label small{font-size:10px;color:#8190a8;font-family:ui-monospace,Consolas,monospace}.color-arrow{color:#7d8ba2;font-size:16px}input[type=color]{appearance:none;width:44px;height:44px;flex:none;padding:3px;background:#111c2b;border:1px solid #ffffff42;border-radius:12px;overflow:hidden}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:0;border-radius:8px}.color-row .subtle{font-size:10px;font-family:ui-monospace,Consolas,monospace;color:#aebbd0;width:58px;text-align:right;flex:none}.adjust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.adjust-grid input{width:100%}.upload-box{border:1px dashed #60789e;border-radius:17px;padding:18px;background:#132035}.upload-box input{width:100%;font-size:12px}.upload-box .success{margin-bottom:0}.mode-tabs{display:flex;gap:4px;padding:4px;background:#0b111b;border-radius:12px;margin:14px 0}.mode-tabs button{flex:1;border:0;background:transparent;color:#9eacc1;min-height:42px;border-radius:9px}.mode-tabs button.active{background:#304569;color:white}
.split-line{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid #ffffff14}.split-line:last-child{border:0}.split-line strong{font-size:14px}.total{font-size:23px;font-weight:850;letter-spacing:-.5px}.warning,.success{border:1px solid #61513c;background:#382c1e8a;border-radius:17px;padding:16px;color:#f7d8a6;font-size:13px;line-height:1.5;margin:14px 0}.warning p{margin:7px 0}.success{border-color:#2a7458;background:#19453375;color:#a8f3cf}.review-line{border-top:1px solid #ffffff1a;padding:9px 0;color:#e9ca9d;font-size:11px}.order-line{display:flex;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid #ffffff15}.order-line:last-child{border:0}details{border-top:1px solid #ffffff14;padding:12px 0 0;margin-top:12px}summary{cursor:pointer;color:#acbad0;font-size:12px;font-weight:700}summary span{color:#7e8fa8}.layer-list{max-height:230px;overflow:auto;padding:8px 0;font-size:11px;color:#899bb2}.layer-list div{padding:6px 0;border-bottom:1px solid #ffffff0e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.loading-view{height:45vh;display:grid;place-content:center;justify-items:center;color:var(--muted)}.spinner{width:28px;height:28px;border:3px solid #4f7aca55;border-top-color:#7fb0ff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;left:50%;transform:translateX(-50%) translateY(20px);bottom:90px;background:#273650;border:1px solid #6d8ab1;color:#fff;border-radius:12px;padding:11px 15px;opacity:0;pointer-events:none;transition:.2s;z-index:40;max-width:90vw}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.error-text{color:var(--danger);font-size:12px}.subtle{color:var(--muted);font-size:12px}
.welcome-card{padding:30px 24px;margin-top:32px}.welcome-card h1{font-size:30px;line-height:1.12;letter-spacing:-1px;margin:14px 0}.welcome-card p{color:var(--muted);margin:0 0 22px}.welcome-card .primary{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 22px;text-decoration:none}.welcome-card .hint{margin:18px 0 0}
@media(min-width:520px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:370px){main{padding-inline:16px}.topbar{padding-inline:16px}.heading{font-size:29px}.tile-copy{padding-inline:9px}.color-row{gap:6px}.color-row .subtle{width:53px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Atelier: a quiet violet workspace with a separate preview and paint controls. */
:root{--bg:#0c0b12;--surface:#181620;--line:#ffffff16;--blue:#2563eb;--blue-light:#bcd7ff;--muted:#a6a1b4;--radius:20px}
body{background:radial-gradient(ellipse 900px 700px at 50% -350px,#143451,transparent 80%),var(--bg)}
.app-shell{width:100%;max-width:1320px;background:#100e17b8}.topbar{background:#17131fe8}.brand-mark{background:#2563eb;box-shadow:0 4px 18px #2563eb44}.brand-mark img{width:29px;height:29px}.brand-name span{color:#bcd7ff}
.icon-btn.active,.icon-btn:hover{background:#2563eb25;border-color:#76abff}.primary,.chip.active{background:#2563eb;box-shadow:0 8px 25px #2563eb3b;border-color:#2563eb}.secondary{background:#292432}.sticky{background:#17131feb}.choice.selected{background:#172c46;border-color:#76abff;box-shadow:inset 0 0 0 1px #2563eb55}.choice-icon{background:#39304e;color:#e0d7ff}.field,.select{background:#131018;border-color:#4d435e}.field:focus,.select:focus,.search:focus-within{border-color:#76abff;box-shadow:0 0 0 3px #2563eb25}.step.done{background:#2563eb}.step.current{background:#bcd7ff}.steps .step{height:4px}.search,.chip{background:#1d1926}.catalog-meta strong{background:#17365e}.badge{background:#17365e;color:#d6e6ff}
.step-nav{display:none}.heading{font-size:30px}.page-intro{margin-bottom:24px}.eyebrow,.section-kicker{letter-spacing:.5px}.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.tile{border-radius:16px;background:#1b1723}.tile.selected{border-color:#76abff;box-shadow:0 0 0 2px #2563eb66}.tile-media{background:radial-gradient(circle at 50% 35%,#203247,#1b1723 75%)}.tile-copy{padding:7px 7px 9px;min-height:35px}.tile-copy strong{font-size:11px}.tile-copy small{display:none}.favorite{width:44px;height:44px;top:0;right:0;border:0;background:transparent;backdrop-filter:none;font-size:20px}.selected-dot{width:20px;height:20px;top:8px;left:8px;background:#2563eb;border-radius:6px;font-size:12px}.tile-media .tile-preview{inset:5px;width:calc(100% - 10px);height:calc(100% - 10px)}
.editor-workspace{display:grid;gap:24px}.editor-card{padding:20px}.editor-head{align-items:center}.editor-head h2{margin:0;font-size:19px}.preview-stage{max-height:520px;background:radial-gradient(circle at 50% 35%,#152739,#17131f 80%);margin:20px 0 16px;border-radius:18px}.preview-stage .tile-preview{width:100%;height:100%}.preview-caption{display:flex;justify-content:center;gap:7px;align-items:center;color:#a89dbb;font-size:12px}.preview-caption img{width:17px;height:17px;opacity:.7}.editor-tab{background:#221a30;border-color:#ffffff1b;width:80px;height:80px}.editor-tab.active{border-color:#76abff;box-shadow:0 0 0 2px #2563eb55}.editor-section-label{margin-top:16px}.settings-column{min-width:0}.palette-card{margin-top:0;padding:20px}.palette-card h2{font-size:20px}.role-section{border-top:1px solid #ffffff12}.role-heading{display:flex;gap:12px;align-items:center;width:100%;min-height:74px;border:0;background:transparent;color:var(--text);padding:12px 0;text-align:left}.role-name{min-width:85px;font-size:14px;font-weight:650}.role-name small{display:block;margin-top:3px;color:#a29aad;font-size:11px;font-weight:450}.role-bar{height:9px;flex:1;max-width:100px;border-radius:99px;background:linear-gradient(90deg,var(--color),var(--second))}.role-swatch{width:31px;height:31px;border-radius:50%;background:var(--swatch);border:2px solid #ffffff40;box-shadow:0 0 0 4px #ffffff05;margin-left:auto}.role-chevron{width:18px;text-align:center;color:#c1b4db;font-size:19px}.role-options{padding-bottom:20px}.color-square{height:150px;border-radius:12px;position:relative;touch-action:none;background:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,transparent),hsl(var(--hue),100%,50%);cursor:crosshair;border:1px solid #ffffff20}.color-cursor{position:absolute;width:17px;height:17px;border:2px solid white;border-radius:50%;box-shadow:0 0 0 1px #0009;transform:translate(-50%,-50%);pointer-events:none}.hue-label{display:block;font-size:12px;color:#b7acc8;margin-top:14px}.hue-slider{width:100%;margin:8px 0 0;appearance:none;height:10px;border-radius:10px;background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.hue-slider::-webkit-slider-thumb{appearance:none;width:18px;height:18px;border:2px solid white;border-radius:50%;background:transparent;box-shadow:0 1px 3px #0008}.picker-values{display:flex;align-items:end;gap:12px;margin-top:13px}.picker-values label{font-size:11px;color:#b5aac6;flex:1}.hex-field{display:block;width:100%;background:#100d16;color:white;border:1px solid #524362;border-radius:10px;height:42px;padding:8px 10px;margin-top:5px;font:inherit;font-size:14px}.native-color{display:flex;align-items:center;justify-content:space-between;gap:8px}.native-color input[type=color]{border-radius:50%;border:0;width:44px;height:44px;padding:4px;background:#31283f}.color-presets{display:flex;gap:8px;flex-wrap:wrap;margin:14px -4px 4px}.color-presets button{width:34px;height:34px;border-radius:50%;border:4px solid #181620;background:var(--swatch);outline:1px solid #ffffff18}.color-presets button:hover{outline-color:#bcd7ff}.paint-modes{display:flex;gap:4px;background:#100d16;padding:4px;border-radius:11px;margin:16px 0}.paint-modes button{flex:1;border:0;border-radius:8px;color:#b4a9c5;background:transparent;min-height:40px;font-size:12px}.paint-modes button.active{background:#214674;color:white}.gradient-controls{display:flex;gap:14px;align-items:center;margin:12px 0}.gradient-controls label{display:flex;align-items:center;gap:12px;font-size:12px}.gradient-sample{height:32px;flex:1;border-radius:10px;border:1px solid #ffffff22}.range-field{position:relative;display:block;color:#c5bdd2;font-size:12px;margin:20px 0}.range-field output{float:right;color:#eee7ff;font-variant-numeric:tabular-nums}.range-field input{display:block;width:100%;height:26px;accent-color:#76abff;margin-top:7px;cursor:pointer}.position-controls{border-top:1px solid #ffffff14;padding-top:20px;margin-top:8px}.position-controls h3{font-size:14px;margin:0}.position-controls .text-button{padding-left:0;color:#bcd7ff}.identity-sample{display:flex;gap:12px;align-items:center;color:#bcd7ff;margin-top:14px;font-size:14px}.identity-sample img{width:42px;height:42px;background:#2563eb;padding:5px;border-radius:13px}.mode-tabs{background:#100d16}.mode-tabs button.active{background:#214674}.text-button{color:#bcd7ff}.color-row input[type=color]{background:#251c33}.toast{background:#39284e;border-color:#8561ab}
@media(min-width:700px){.catalog-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.tile-copy strong{font-size:13px}.tile-copy small{display:block}.tile-copy{padding:10px 12px}.tile-media .tile-preview{inset:8px;width:calc(100% - 16px);height:calc(100% - 16px)}}
@media(min-width:1000px){.studio .app-shell{display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:72px 1fr}.topbar{grid-column:1/-1;height:72px;padding-inline:30px}.step-nav{display:flex;flex-direction:column;align-self:start;position:sticky;top:98px;padding:28px 18px;gap:8px;grid-column:1;grid-row:2}.step-nav button{display:flex;gap:12px;align-items:center;border:0;color:#aba0bc;background:transparent;padding:13px 12px;border-radius:12px;text-align:left;font-size:14px;min-height:50px}.step-nav button span{width:25px;height:25px;display:grid;place-items:center;border:1px solid #544460;border-radius:8px;font-size:11px}.step-nav button.active{background:#172c46;color:#eee6ff}.step-nav button.active span{background:#2563eb;border-color:#2563eb}.nav-selection{margin:25px 12px;color:#a28dae;font-size:12px}.studio .app-shell>main{grid-column:2;grid-row:2;padding:34px 30px 140px;min-width:0;border-left:1px solid #ffffff0a}.sticky{padding-left:max(236px,calc((100vw - 1320px)/2 + 236px));padding-right:max(30px,calc((100vw - 1320px)/2 + 30px))}.sticky-inner{max-width:none}.sticky .primary{flex:initial;min-width:240px;margin-left:auto;padding-inline:25px}.heading{font-size:34px}.editor-workspace{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:22px;align-items:start}.preview-column{position:sticky;top:96px}.preview-stage{margin-top:20px}.studio .app-shell>main[data-step="1"],.studio .app-shell>main[data-step="4"],.studio .app-shell>main[data-step="5"]{max-width:740px;width:100%;margin:auto}.studio .app-shell>main[data-step="1"] .choice-stack{gap:14px}.studio .app-shell>main[data-step="1"] .choice{min-height:104px}}
@media(max-width:370px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.role-bar{max-width:60px}.role-heading{gap:8px}.palette-card,.editor-card{padding:16px}}@media(max-width:999px){.editor-workspace{gap:20px}.editor-card{margin-bottom:0}.preview-stage{max-height:380px}.color-presets button{width:36px;height:36px}.palette-card{margin-bottom:0}}
.preview-stage{width:min(100%,480px);margin-left:auto;margin-right:auto}.color-presets button{width:44px;height:44px}.paint-modes button:disabled{opacity:.35;cursor:not-allowed}

:root{--bg:#0b1017;--surface:#141c27;--text:#f1f5fa;--accent:#2563eb}.brand-mark{background:#2563eb}.role-bar{max-width:100px}.app-shell{background:#0d141c}.topbar,.sticky{background:#111b28eb}.tile{background:#141d2a}.preview-stage{background:radial-gradient(circle at 50% 35%,#253c53,#121a25 80%)}
@media(max-width:999px){.editor-workspace{grid-template-columns:minmax(0,1fr)}.preview-column{min-width:0}.editor-list{max-width:100%}}
html{min-width:0}
.shared-brand{margin-bottom:24px}.shared-brand h2{margin:0;font-size:20px}.shared-brand .mode-tabs{max-width:460px}.shared-brand .upload-box{display:flex;flex-direction:column;gap:12px;cursor:pointer}.batch-color{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.batch-color label{font-size:14px}.batch-color input{width:44px;height:44px;background:transparent;border:0}.batch-color .secondary{min-height:44px;margin-left:auto;padding:10px 18px}.shared-brand .field,.shared-brand .select{max-width:460px}@media(max-width:480px){.batch-color .secondary{width:100%;margin:0}.shared-brand{padding:18px}}
@media(max-width:999px){.editor-workspace{display:flex;flex-direction:column}.settings-column{display:contents}.shared-brand{order:0;margin:0}.preview-column{order:1}.palette-card{order:2}.batch-color .secondary{width:100%;margin-left:0}}
.upload-box{position:relative}.upload-box input[type=file]{position:absolute;width:1px;height:1px;opacity:0}.upload-box strong{display:inline-flex;align-self:flex-start;padding:10px 16px;background:#2563eb;border-radius:10px;color:white}.upload-box:focus-within{outline:2px solid #76abff;outline-offset:3px}@media(min-width:1000px){.batch-color .secondary{width:auto;max-width:100%;white-space:nowrap}}
/* Editor audit: preview first, compact common actions, optional precision controls. */
.editor-page .page-intro{margin-bottom:18px}.editor-page .heading{font-size:26px;letter-spacing:-.6px}.editor-page .subheading{margin-bottom:0}.editor-card{padding:16px;background:#14203080;backdrop-filter:blur(20px)}.editor-card .preview-stage{width:min(100%,340px);margin:10px auto;max-height:none}.preview-caption{display:none}.editor-head .saved{font-size:12px;padding:6px;min-height:32px}.editor-list{gap:8px}.editor-tab{width:64px;height:64px;flex-shrink:0}.editor-section-label{margin:12px 0 6px}.shared-brand{padding:18px;margin-bottom:16px;background:#14203080;backdrop-filter:blur(20px)}.shared-brand h2,.palette-card h2{font-size:17px}.shared-brand .hint{font-size:12px;margin:8px 0}.logo-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.shared-brand .upload-box{display:block;border:0;background:transparent;padding:0;margin:0;flex:1}.upload-box strong{white-space:nowrap;padding:11px 14px;font-size:13px}.logo-actions .text-button{font-size:12px;padding:10px 4px;min-height:44px}.logo-actions [aria-pressed=true]{color:white;text-decoration:underline;text-underline-offset:4px}.batch-color{margin-top:12px;padding-top:12px;gap:10px}.batch-color label{font-size:13px}.batch-color .hint{margin-left:auto}.brand-presets{display:flex;gap:8px;margin-top:8px}.brand-presets button{background:var(--swatch);width:44px;height:44px;border-radius:50%;border:6px solid #172231;outline:1px solid #ffffff20}.brand-presets button:hover{outline-color:#86b2ff}.shared-brand .select{margin-top:8px}.role-heading{min-height:60px}.position-controls{padding-top:0;margin-top:12px}.palette-card details{margin-top:12px}.palette-card summary{min-height:44px;display:list-item;padding:10px 0}.palette-card .row{gap:12px}.editor-tab.active{border-color:#99bfff;box-shadow:0 0 0 2px #2563eb80}.tile-copy small{display:block;font-size:10px}.brand-name{letter-spacing:-.5px;font-weight:700}.brand-name span{margin-left:4px}button:active,.upload-box:active{transform:translateY(1px)}
@media(max-width:999px){.editor-workspace{gap:16px}.preview-column{order:0}.shared-brand{order:1;margin:0}.palette-card{order:2}.editor-card .preview-stage{width:190px;height:190px}.editor-page main{padding-top:18px}.editor-page .page-intro .eyebrow{display:none}.editor-page .page-intro .intro-top{justify-content:flex-end}.editor-page .subheading{font-size:13px}.editor-page .editor-card{margin:0}.shared-brand .upload-box{flex:none}.editor-head h2{font-size:16px}.editor-list{padding-bottom:4px}.editor-page .heading{font-size:24px}.tile-copy small{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}button,.toast{transition:none}}
.tile-preview{display:block}
