/* CMPLUS local visual system — purple / black / white */
:root{color-scheme:dark;--bg:#09080c;--card:#141117;--text:#faf9fc;--muted:#aaa3b3;--blue:#a855f7;--line:#ffffff12;--accent:#a855f7}
html{scroll-behavior:smooth}body{background:#09080c!important;color:#faf9fc!important;font-family:Inter,"Segoe UI",sans-serif!important;line-height:1.55}a,button,input,select,textarea{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #c084fc!important;outline-offset:4px}button,.btn{background:#9333ea!important;border:1px solid #b16bf0!important;color:#fff!important;border-radius:12px!important;min-height:44px;transition:background .18s,transform .18s;box-shadow:0 5px 20px #9333ea18}button:hover,.btn:hover{background:#a855f7!important;transform:translateY(-1px)}.btn.ghost,.btn.secondary,.ghost,.out{background:#1b1621!important;border-color:#ffffff20!important;color:#eae4f0!important;box-shadow:none}.card,.lic,.empty,.plan,.tile,.inc,.console,.product-card,.quick-card{background:#141117!important;border-color:#ffffff14!important;box-shadow:none!important;border-radius:18px!important}.card:hover,.tile:hover,.lic:hover{border-color:#a855f755!important}.muted,.sub,.lead,.card p,.empty p,.tile span,.inc span{color:#aaa3b3!important}.brand span,.eyebrow,.kicker,.price-label,.product-top span,.tag,.bigicon,.tile em,.links a{color:#c084fc!important}input,select,textarea{background:#0d0b10!important;color:#faf9fc!important;border-color:#ffffff22!important;border-radius:10px!important;min-height:44px}th{color:#b9afc4!important;font-size:12px;text-transform:uppercase;letter-spacing:.07em;background:#19151f}td,th{border-color:#ffffff12!important}table{font-size:14px}aside:not(.stage),.sidebar{background:#0e0b12!important;border-color:#ffffff12!important}nav a.on,nav a.active{background:#a855f71c!important;color:#e4c5ff!important;border-left:2px solid #a855f7}.avatar{background:#a855f7!important;color:white!important}.note{background:linear-gradient(115deg,#251432,#151019)!important;border-color:#a855f74d!important}.screen{background:#130d1c!important;border-color:#a855f744!important}.screen i.s,.bar i,.track em,.bars i.on{background:#a855f7!important}.chip,.pill{border-color:#a855f730!important}.quick-icon{background:#a855f712!important;border-color:#a855f738!important;color:#c084fc!important}.quick-card:before,.product-card:before{background:#a855f71a!important}.quick-card:after,.product-card:after{background:none!important}.price-strip{background:#ffffff04!important}.extra-note{background:#7e22ce!important}.wrap{max-width:1200px}.top{gap:20px}.app main{padding:32px!important}.note h2,.card h2,.empty h2{font-size:22px!important;letter-spacing:-.04em}h1,h2,h3{text-wrap:balance}p{overflow-wrap:break-word}
/* Public site */
header{background:#09080ced!important;padding:0!important;border-bottom:1px solid #ffffff10;backdrop-filter:blur(20px)}header .bar{background:none!important;border:0!important;border-radius:0;height:86px;padding:0;box-shadow:none}header .brand{font-size:20px;letter-spacing:-.05em;line-height:1}header .brand span{color:#fff!important}header nav{gap:24px;font-size:13px}header nav .btn{height:42px}.hero{padding:90px 0 60px!important;gap:64px!important;grid-template-columns:1.15fr .85fr!important}.hero h1{font-size:clamp(48px,5.9vw,80px)!important;line-height:1.04!important;letter-spacing:-.065em!important}.grad{background:linear-gradient(110deg,#faf5ff,#c084fc 80%)!important;background-clip:text!important;-webkit-background-clip:text!important}.hero .lead{font-size:17px;max-width:490px;margin:24px 0 30px}.hero .kicker{font-size:11px;letter-spacing:.18em}.hero .pills{margin-top:28px}.hero .pill{font-size:11px;background:none;height:28px;padding:0 10px}.hero .stage{height:390px!important;background:radial-gradient(ellipse at 80% 0,#9333ea20,transparent 65%),#141117!important;border:1px solid #a855f738!important;box-shadow:0 28px 90px #0005!important;border-radius:24px;padding:28px;transform:rotate(1deg)}.stage h2{font-size:16px}.stage .count{font-size:88px;margin:24px 0 18px;letter-spacing:-.07em}.stage .bars{gap:5px}.stage .bars i{height:42px;background:#ffffff08;border-radius:5px}.stage .track{height:7px;margin-top:24px}.stage .labs{font-size:11px}.stage p{font-size:12px;line-height:1.7}.shelf{gap:12px;padding:16px 0 65px;border-bottom:1px solid #ffffff12}.tile{min-height:138px;padding:22px!important}.tile strong{font-size:17px}.tile span{font-size:12px}.tile em{font-size:12px}section{padding:58px 0!important}.eyebrow{font-size:10px;letter-spacing:.19em}h3.sec{font-size:clamp(28px,3.4vw,42px);letter-spacing:-.05em}.sub{font-size:15px}.plan{padding:28px}.plan.pop{border-color:#a855f77a!important;background:#1b1224!important}.plan h4{font-size:23px}.plan .chip{background:#0e0b12!important;border-color:#ffffff14!important;margin:28px auto}.plan li{font-size:14px}.plan li:before,.checks li:before{color:#c084fc!important}.inc{padding:24px}.inc b{font-size:16px}.inc span{font-size:14px}.close h3{font-size:clamp(32px,4vw,48px);letter-spacing:-.05em}footer{border-color:#ffffff12!important;font-size:13px}.dot{background:#c084fc!important}.ok{color:#d8b4fe!important}.local-preview-label{color:#b8a7c9;font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px}
@media(max-width:900px){.hero{grid-template-columns:1fr!important;padding:48px 0!important;gap:36px!important}.hero .stage{transform:none;height:auto!important;min-height:330px}header .bar{height:auto;min-height:76px;gap:14px;flex-wrap:wrap;padding:14px 0}header nav{gap:12px;flex-wrap:wrap}header nav .hide,header nav .dl{display:none}.app main{padding:20px 14px!important}.shelf{grid-template-columns:1fr 1fr!important;padding-bottom:32px}.tile{min-height:120px}.wrap{width:calc(100% - 32px)}section{padding:32px 0!important}.grid,.lics{grid-template-columns:1fr!important}table{display:block;overflow-x:auto;max-width:100%}.actions{flex-wrap:wrap}header .brand-mark{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Admin access: orbital composition, scoped to the actual login form. */
body:has(form[action='/admin/login']){min-height:100vh;background:radial-gradient(ellipse at 50% 30%,#48176d45 0,transparent 45%),radial-gradient(ellipse at 95% 90%,#29103b30,transparent 45%),#08060c!important;position:relative;isolation:isolate}
body:has(form[action='/admin/login']):before{content:'';position:fixed;inset:0;z-index:-1;background-image:radial-gradient(#d2abff45 .7px,transparent .7px);background-size:64px 64px;mask-image:linear-gradient(transparent,#0008,transparent);pointer-events:none}
body:has(form[action='/admin/login'])>.top{padding:28px 40px!important;border-bottom:1px solid #ffffff09;justify-content:flex-start!important}
body:has(form[action='/admin/login']) .brand{font-size:21px!important;gap:12px}.brand .brand-mark{object-fit:contain}
body:has(form[action='/admin/login'])>main{position:relative;box-sizing:border-box;width:min(460px,calc(100% - 40px))!important;margin:145px auto 60px!important;padding:42px!important;border-radius:26px!important;border:1px solid #bf83ff40!important;background:linear-gradient(145deg,#1c1425f2,#100c16f5)!important;box-shadow:0 30px 100px #0007,inset 0 1px #ffffff08!important}
body:has(form[action='/admin/login'])>main:before{content:'';display:block;position:absolute;width:170px;height:90px;border:1px solid #bc7afc66;border-radius:50%;top:-112px;left:calc(50% - 85px);transform:rotate(-25deg);box-shadow:0 0 30px #a855f712;pointer-events:none}
body:has(form[action='/admin/login'])>main:after{content:'';position:absolute;width:58px;height:58px;top:-98px;left:calc(50% - 29px);border-radius:15px;border:1px solid #dbb7ff99;background:linear-gradient(135deg,#c996ff,#8c3de1 50%,#391958);box-shadow:0 0 50px #a855f766,inset -9px -9px 0 #0002;transform:rotate(30deg);pointer-events:none}
body:has(form[action='/admin/login']) h1{text-align:center;font-size:38px!important;letter-spacing:-.05em;margin:0!important;font-weight:800}
body:has(form[action='/admin/login']) .lead{text-align:center!important;color:#ada1bc!important;margin:10px 0 30px!important;font-size:15px}
body:has(form[action='/admin/login']) label{font-size:13px!important;font-weight:600;color:#ddd0eb;display:block;margin-top:20px}
body:has(form[action='/admin/login']) input{box-sizing:border-box;width:100%!important;height:52px!important;margin:9px 0 0!important;border:1px solid #c298ec26!important;border-radius:12px!important;background:#0c0811!important;padding:0 16px!important;color:#fff!important;font-size:15px}
body:has(form[action='/admin/login']) input:focus{outline:2px solid #a958f2!important;outline-offset:2px;box-shadow:0 0 0 5px #a855f70d}
body:has(form[action='/admin/login']) button{margin:28px 0 0!important;width:100%;height:52px!important;border:1px solid #d0a0ff55!important;border-radius:12px!important;background:linear-gradient(110deg,#973aeb,#7531cd)!important;box-shadow:0 8px 24px #8b2be22b!important;font-size:15px!important;font-weight:700;cursor:pointer}
body:has(form[action='/admin/login']) button:hover{filter:brightness(1.14);transform:translateY(-1px)}
body:has(form[action='/admin/login']) .bad{color:#ffb3c0!important;border:1px solid #fa759b33;padding:12px;background:#ed4b7510;border-radius:10px;font-size:13px}
.access-orbit{display:none}.access-eyebrow{display:block;text-align:center;color:#c28df0;font-size:10px;font-weight:700;letter-spacing:.2em;margin-bottom:12px}
@media(max-width:600px){body:has(form[action='/admin/login'])>.top{padding:20px!important}body:has(form[action='/admin/login'])>main{margin-top:125px!important;padding:30px 26px!important}body:has(form[action='/admin/login']) h1{font-size:32px!important}}
body:has(form[action='/admin/login'])>main{margin-top:120px!important;padding:32px 38px!important}body:has(form[action='/admin/login']) .lead{margin-bottom:22px!important}body:has(form[action='/admin/login']) label{margin-top:16px}body:has(form[action='/admin/login']) button{margin-top:24px!important}@media(max-width:600px){body:has(form[action='/admin/login'])>main{padding:28px!important}}
