
:root{color-scheme:dark;--bg:#0a0e1b;--panel:#151b30;--edge:#303958;--ink:#f4f6ff;--muted:#b9c3df;--a:#6ed8fa;--b:#b996ff;--c:#ffad75}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 15% 0%,#2c1b58 0%,transparent 38%),radial-gradient(ellipse at 95% 25%,#123c54 0%,transparent 37%),var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,Arial,sans-serif}a{color:var(--a)}.wrap{max-width:1250px;margin:auto;padding:24px}.top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.logo{font-size:22px;font-weight:900;letter-spacing:-.04em;text-decoration:none;color:white}.logo span{color:var(--a)}h1{font-size:clamp(35px,6vw,76px);line-height:1.05;letter-spacing:-.055em;margin:60px 0 20px}h2{font-size:clamp(23px,3vw,33px);line-height:1.18;margin:0 0 12px}h3{margin:12px 0 5px}.lede{color:var(--muted);max-width:750px;font-size:19px}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#a5c6ff;font-weight:800}.pill{display:inline-flex;padding:7px 13px;border:1px solid #6371a3;border-radius:99px;background:#1d2541;font-size:13px}.tabs{display:flex;gap:9px;flex-wrap:wrap;margin:30px 0 22px}.tab,.btn{cursor:pointer;border:1px solid #57648e;border-radius:12px;background:#202945;color:white;padding:11px 16px;font:inherit;font-weight:650}.tab.active,.btn.primary{background:linear-gradient(110deg,#7b4fe8,#1688c4);border-color:#9d98ff}.tab:hover,.btn:hover{filter:brightness(1.2)}.panel{display:none;border:1px solid var(--edge);border-radius:23px;padding:clamp(20px,3vw,38px);background:linear-gradient(145deg,#1b2240e8,#0f1829f0);box-shadow:0 24px 75px #0004}.panel.active{display:block}.cols{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:grid;gap:6px;margin:12px 0}.field label{font-size:14px;color:#d8e3ff}input,select,textarea{width:100%;padding:12px 13px;border:1px solid #526080;background:#0e1729;color:white;border-radius:10px;font:inherit}input[type=checkbox]{width:auto;accent-color:#8b7cf9}.check{display:flex;gap:12px;align-items:center;margin:10px 0}.preview{border:1px solid #62739b;background:linear-gradient(145deg,#1d3c55,#24143b);border-radius:16px;padding:20px;min-height:280px;overflow:hidden}.preview .hero{padding:35px 12px;text-align:center;border-radius:12px;background:linear-gradient(120deg,#004e73,#7d36ac)}.preview .hero h3{font-size:clamp(24px,3vw,38px)}.mini{display:flex;gap:10px;flex-wrap:wrap}.mini>*{flex:1;min-width:100px;background:#ffffff13;padding:12px;border-radius:10px}.muted,.note{color:var(--muted)}.note{font-size:13px}.metric{font-size:36px;font-weight:900;color:#8de6ff}.result{background:#0b1529;border:1px solid #394868;padding:17px;border-radius:14px;margin:14px 0;white-space:pre-wrap;overflow-wrap:anywhere}.timeline{display:grid;gap:10px}.step{padding:16px;border-left:4px solid #6c83ad;background:#18243a;border-radius:7px}.step.done{border-color:#51d4b0}.mapgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.city{padding:15px;background:#16243d;border:1px solid #435474;border-radius:12px;text-align:center;cursor:pointer}.city.sel{background:#44326f;border-color:#c4a2ff}.sliderwrap{position:relative;overflow:hidden;border-radius:16px;border:1px solid #6d7fa3;min-height:240px}.before,.after{padding:38px 22px;min-height:240px}.before{background:#d6d6d6;color:#333;font-family:Georgia,serif}.after{position:absolute;inset:0;background:linear-gradient(125deg,#122c50,#693cb4);clip-path:inset(0 50% 0 0)}.range{accent-color:#9d91ff}.bubble{padding:12px 16px;border-radius:12px;background:#283456;margin:8px 0;max-width:90%}.bubble.you{background:#3d2e66;margin-left:auto}.gridcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px}.project{padding:20px;background:linear-gradient(140deg,#163c54,#3b235b);border:1px solid #50678b;border-radius:15px}.project a{display:block;margin-top:12px}.footer{margin:70px 0 20px;color:#b8c5e0;text-align:center}.status{color:#9beac6}.warn{color:#ffd2a2}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9deaff;outline-offset:3px}@media(max-width:740px){.cols{grid-template-columns:1fr}.wrap{padding:16px}.mapgrid{grid-template-columns:repeat(2,1fr)}.panel{padding:18px}h1{margin-top:35px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* V45: iOS/Safari-compatible color control, with accessible fallback */
.color-picker-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.color-picker-row input[type=color]{appearance:auto;-webkit-appearance:auto;display:block;flex:none;width:72px;height:52px;min-width:72px;padding:4px;border:2px solid #8295c6;border-radius:12px;background:#16243d;cursor:pointer;touch-action:manipulation}
.color-picker-row input[type=color]::-webkit-color-swatch-wrapper{padding:2px}
.color-picker-row input[type=color]::-webkit-color-swatch{border:0;border-radius:7px}
.color-picker-row input[type=text]{width:140px;flex:none;text-transform:uppercase}
#color-swatch{width:48px;height:48px;border:2px solid #fff9;border-radius:12px;background:#0879ae}
.color-presets{display:flex;flex-wrap:wrap;gap:11px;margin-top:12px}
.color-presets button{width:43px;height:43px;border-radius:50%;border:3px solid #e8eeff;background:var(--chip);cursor:pointer;box-shadow:0 0 0 2px #101827;touch-action:manipulation}
.color-presets button:focus-visible{outline:3px solid #a7f0ff;outline-offset:3px}

/* V49: PRISM chromatic redesign of the entire interactive studio */
:root{--bg:#080817;--panel:#15132d;--edge:#564b8b;--ink:#fffaff;--muted:#d0c8ec;--a:#77f7ff;--b:#c18cff;--c:#ffb78a;color-scheme:dark}
body{background:radial-gradient(ellipse at 7% 8%,#5e1e9e88 0%,transparent 36%),radial-gradient(ellipse at 92% 4%,#007ba88c 0%,transparent 35%),radial-gradient(ellipse at 50% 60%,#d53b8440 0%,transparent 40%),linear-gradient(140deg,#07081b,#151034 50%,#091b2d);background-attachment:fixed}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:repeating-linear-gradient(90deg,transparent 0 90px,#ffffff05 91px 92px);mask-image:linear-gradient(#0006,transparent 75%)}
h1{background:linear-gradient(110deg,#fff 4%,#91f4ff 30%,#e3a0ff 60%,#ffbe91 95%);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none}
h1 span{color:inherit!important}
.eyebrow{color:#a8f7ff}
.pill{border:1px solid #e6a8ff77;background:linear-gradient(110deg,#a24cff2e,#00dcff21);box-shadow:0 0 18px #8c46e52b}
.panel{border:1px solid #bd89ff72;background:linear-gradient(140deg,#26164eeb,#0d2343e8 60%,#1c1238ed);box-shadow:0 20px 70px #0009,0 0 45px #9a54ef1a}
.tab{border:1px solid #a489d077;background:#241c45;color:#e9e4ff}
.tab.active,.btn.primary{border:1px solid #b7f8ff;background:linear-gradient(110deg,#7636e8,#ce399d 46%,#007fae 85%);box-shadow:0 4px 18px #aa49f25c}
.btn:not(.primary){background:linear-gradient(110deg,#37225d,#1a4c6e)}
.preview,.result{border-color:#8673bc;background:linear-gradient(135deg,#13152f,#151e38)}
.metric{color:#80f6ff;text-shadow:0 0 24px #29d9ff6b}
.project{background:linear-gradient(140deg,#42237e,#173d60 55%,#5c205b);border-color:#b18bde}
.step{background:#1e1b43}.step.done{border-color:#65f9d4;background:#183c49}
.city{background:#1e2349;border-color:#7b6aaf}.city.sel{background:linear-gradient(120deg,#6e30b2,#1b7ba1);border-color:#e2b6ff}
input,select,textarea{background:#151532;border-color:#8d7aaf}
.color-presets button{box-shadow:0 0 0 2px #8b74cb,0 0 13px #ffffff20}
@media(prefers-reduced-motion:reduce){body{background-attachment:scroll}}

/* V55 Studio refinement: accessible focus, project handoff, feature identity */
[hidden]{display:none!important}
.tab:focus-visible,.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.panel:focus-visible{outline:3px solid #9efbff!important;outline-offset:3px!important}
.tabs{scroll-margin-top:24px}.tab{min-height:44px}.tab[data-tab="generator"]{border-color:#80efff;box-shadow:inset 0 0 0 1px #78ddf544}
.panel[role="tabpanel"]{scroll-margin-top:20px}
.studio-handoff{margin:20px 0 12px;padding:20px;border-radius:20px;background:linear-gradient(125deg,#321d69,#203b65 58%,#2b1c53);border:1px solid #a4c7ff;box-shadow:0 0 30px #8853ef30}
.studio-handoff h3{font-size:clamp(19px,2.4vw,25px);margin:8px 0}.studio-handoff p{color:#e4e8ff}.handoff-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.studio-handoff .btn.primary{background:linear-gradient(110deg,#9446ee,#d945aa 45%,#098cbb);border:1px solid #aaf5ff;box-shadow:0 0 22px #c95bec65}
#scanner.active{border-top:3px solid #ffbf83}#pricing.active{border-top:3px solid #82f3dc}#automation.active{border-top:3px solid #cf94ff}#generator.active{border-top:3px solid #77edff}
@media(max-width:550px){.studio-handoff{padding:15px}.handoff-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.studio-handoff *{animation:none!important;transition:none!important}}
