:root{--ink:#151515;--bg:#fff;--soft:#F5F5F5;--line:#E4E4E4;--mute:#6b6b6b;--lime:#D6FF4A;--lime2:#c4f02a;--limebg:#F4FFD6;--red:#c62828;--amber:#b26a00;--green:#1b7f3b;--r:14px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:Geist,Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--soft);line-height:1.5;font-size:15px}
a{color:var(--ink)}code{font-family:"Geist Mono",ui-monospace,Menlo,monospace;font-size:.86em;background:var(--soft);padding:1px 5px;border-radius:5px}
.muted{color:var(--mute)}.bad{color:var(--red)}.good{color:var(--green)}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand img{height:26px;width:auto}.brand span{font-weight:700;font-size:15px;border-left:1px solid var(--line);padding-left:10px}
.top nav{display:flex;gap:14px;font-size:14px}.top nav a{text-decoration:none}
.banner{padding:9px 18px;font-size:13.5px;border-bottom:1px solid var(--line)}.banner.demo{background:var(--limebg)}.banner.live{background:var(--ink);color:#fff}.banner.live code{background:#333;color:var(--lime)}
.banner b{background:var(--ink);color:var(--lime);padding:2px 8px;border-radius:6px;margin-right:6px;font-size:12px;letter-spacing:.04em}.banner.live b{background:var(--lime);color:var(--ink)}
.wrap{max-width:1280px;margin:0 auto;padding:18px}
.foot{text-align:center;color:var(--mute);font-size:12px;padding:30px 12px}
h1{font-size:26px;line-height:1.2;margin:.2em 0}h2{font-size:20px;margin:.2em 0}h3{font-size:16px;margin:0 0 10px}h4{font-size:14px;margin:16px 0 6px}
.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--ink);background:#fff;color:var(--ink);border-radius:999px;padding:10px 18px;font-weight:600;font-size:14px;cursor:pointer;text-decoration:none;white-space:nowrap;font-family:inherit}
.btn.lime{background:var(--lime);border-color:var(--lime)}.btn.lime:hover{background:var(--lime2)}.btn.ghost{background:#fff;border-color:var(--line)}.btn.ghost:hover{border-color:var(--ink)}
.btn.sm{padding:6px 12px;font-size:13px}.btn.full{width:100%;justify-content:center}.btn:disabled{opacity:.45;cursor:not-allowed}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:16px;margin:0 0 14px}
.card.collapsible>h3{cursor:pointer}.card.collapsible.closed>*:not(h3){display:none}.card.collapsible>h3::after{content:" ▾";color:var(--mute)}.card.collapsible.closed>h3::after{content:" ▸"}
.login{max-width:380px;margin:9vh auto;background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;text-align:center}
.login-logo{width:220px;max-width:80%}.login input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;font-size:16px;margin:10px 0}
.hero{background:var(--ink);color:#fff;border-radius:20px;padding:26px;margin-bottom:16px}.hero h1{font-size:28px;max-width:760px}.hero p{color:#ddd;max-width:820px}
.pipeline{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.pipeline span{background:#262626;border-radius:999px;padding:4px 12px 4px 4px;font-size:12.5px}.pipeline b{background:var(--lime);color:var(--ink);border-radius:999px;padding:1px 7px;margin-right:6px}
.intake{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;margin-bottom:16px}
.formhead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
fieldset{border:0;border-top:1px solid var(--line);padding:12px 0 4px;margin:0}legend{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--mute);padding-right:8px}
label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}label small{font-weight:400;color:var(--mute)}
input,select,textarea{font:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--lime);border-color:var(--ink)}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px}.g2{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:12px}.span2{grid-column:span 2}
.checks-row{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin:8px 0}.checks-row>span{font-size:13px;font-weight:700;min-width:100px}
.chk{flex-direction:row;align-items:center;gap:6px;font-weight:500;font-size:14px;background:var(--soft);padding:6px 12px;border-radius:999px}.chk input{width:auto}
.submitbar{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;position:sticky;bottom:0;background:#fff;padding:12px 0 2px;border-top:1px solid var(--line);margin-top:8px}
.runlist{padding-left:18px}.row-actions{display:flex;gap:8px;flex-wrap:wrap}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;width:100%;font-size:13.5px}th,td{text-align:left;vertical-align:top;padding:7px 8px;border-bottom:1px solid var(--line)}th{background:var(--soft);font-size:12px;text-transform:uppercase;letter-spacing:.03em}
.tag{display:inline-block;background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:0 6px;font-size:11.5px;font-family:"Geist Mono",ui-monospace,monospace;white-space:nowrap}.tag.demo{background:var(--limebg)}.tag.live{background:var(--ink);color:var(--lime)}.tag.new{background:var(--lime)}.tag.cf{background:var(--limebg)}
.chip{display:inline-block;background:var(--soft);border-radius:999px;padding:2px 10px;margin:2px 4px 2px 0;font-size:12.5px}.chip.warn{background:#fff3cd}.chip.neg{background:#fde8e8}
.dots{display:flex;gap:3px;flex-wrap:wrap}.dot{font-size:10px;font-family:"Geist Mono",monospace;padding:1px 4px;border-radius:4px;background:var(--soft);color:var(--mute)}.dot.done{background:var(--lime);color:var(--ink)}.dot.qafail{background:#ffd6d6}.dot.error{background:var(--red);color:#fff}.dot.running,.dot.queued{background:#fff3cd}
.runhead{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.stepnav{display:flex;gap:6px;overflow-x:auto;padding:4px 0 10px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;position:sticky;top:47px;background:var(--soft);z-index:10}
.schip{flex:0 0 auto;display:flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 10px 6px 6px;text-decoration:none;font-size:13px}
.schip b{background:var(--soft);border-radius:999px;padding:1px 7px;font-family:"Geist Mono",monospace;font-size:12px}.schip.done b{background:var(--lime)}.schip.cur{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.schip.offplan{opacity:.6}
.schip.running b,.schip.queued b{background:#fff3cd}.schip.error b{background:var(--red);color:#fff}.schip i{font-style:normal;font-size:12px}
.jobmsg{background:var(--ink);color:#fff;border-radius:12px;padding:10px 14px;margin-bottom:10px;font-size:14px}
.stephead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:12px 16px;margin-bottom:14px}
.note{background:#fff3cd;border-radius:10px;padding:10px 14px}
.steplayout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:14px;align-items:start}
.qacol{position:sticky;top:110px;max-height:calc(100vh - 120px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:12px}
.qawrap>summary{list-style:none;cursor:pointer}.qawrap>summary h3{display:inline}.qawrap>summary::-webkit-details-marker{display:none}
.raw{background:var(--ink);color:#e8ffe0;border-radius:var(--r);padding:14px;font-size:12px;max-height:70vh;overflow:auto;white-space:pre-wrap;word-break:break-word}
.stepfoot{display:flex;justify-content:space-between;gap:8px;margin:16px 0}
.waiting,.empty{text-align:center;padding:40px}.spinner{width:34px;height:34px;border:4px solid var(--soft);border-top-color:var(--lime);border-radius:50%;margin:0 auto 12px;animation:sp 1s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}
.bottomline{display:grid;gap:6px;margin-bottom:12px}.bl{background:var(--ink);color:#fff;border-radius:12px;padding:10px 14px;font-weight:600}.bl mark{background:#444;color:var(--lime)}
.sme{background:var(--limebg);border:1px solid #e3f5a8;border-radius:12px;padding:12px 14px;margin-bottom:14px}
.kv{display:grid;grid-template-columns:180px 1fr;gap:6px 14px;margin:0}.kv dt{font-weight:600;color:var(--mute);font-size:13px}.kv dd{margin:0}
.tree{display:grid;grid-template-columns:minmax(110px,180px) 1fr;gap:4px 12px;margin:0;font-size:13.5px}.tree dt{color:var(--mute);font-weight:600}.tree dd{margin:0;min-width:0;overflow-wrap:anywhere}.tree .tree{background:var(--soft);border-radius:8px;padding:6px}.tree-list{padding-left:18px}.tree-list>li{margin-bottom:6px}
mark.fl{border-radius:4px;padding:0 3px;font-size:.92em}.fl-assumption{background:#e8eefc}.fl-proof{background:#fff0c2}.fl-owner{background:#ffe0e0}.fl-ask{background:#efe3ff}
.quotes{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}blockquote{margin:0;background:var(--soft);border-left:3px solid var(--lime);padding:8px 12px;border-radius:8px}blockquote cite{display:block;font-size:11.5px;color:var(--mute);font-style:normal;margin-top:4px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pill-card{background:var(--soft);border-radius:12px;padding:12px}.pill-card small{text-transform:uppercase;color:var(--mute);font-size:11px;letter-spacing:.05em}.pill-card b{display:block;font-size:18px}
.bigidea{font-size:18px}.score{background:var(--ink);color:var(--lime);border-radius:8px;padding:2px 8px;font-weight:700}
.bars{display:grid;gap:4px;margin:10px 0}.bar{display:grid;grid-template-columns:150px 1fr 30px;align-items:center;gap:8px;font-size:13px}.bar i{display:block;height:8px;background:var(--lime);border-radius:4px}
.offerbox{background:var(--limebg);border-radius:12px;padding:10px 14px;margin-top:8px}.offerbox small{font-weight:700;text-transform:uppercase;font-size:11px}
.scen{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sc{background:var(--soft);border-radius:12px;padding:10px;display:flex;flex-direction:column}.sc-base{background:var(--limebg);border:1px solid #d7f07a}.sc .big{font-size:26px;font-weight:800}.sc small{color:var(--mute)}
.warnlist li{color:var(--amber)}
.lptabs{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:8px}.lptab,.dev,.ptbtn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 12px;font:inherit;font-size:13px;cursor:pointer}.lptab.on,.dev.on,.ptbtn.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.devices{display:flex;gap:6px;margin-bottom:8px}.lpframe-wrap{background:var(--soft);border-radius:12px;padding:10px;display:flex;justify-content:center;overflow:auto}
.lpframe{width:390px;max-width:100%;height:720px;border:1px solid var(--line);border-radius:14px;background:#fff;transition:width .2s}
.fakebtn{display:inline-block;background:var(--lime);border-radius:999px;padding:4px 12px;font-weight:700;font-size:13px}
.checks{list-style:none;padding:0;margin:0;display:grid;gap:4px}.checks li{padding:6px 10px;border-radius:8px;background:var(--soft)}.checks li.y::before{content:"✅ "}.checks li.n{background:#fde8e8}.checks li.n::before{content:"✖ "}
.revcard{background:#fff;border:1px solid var(--line);border-left:4px solid var(--lime);font-size:15px}
.sections>li{margin-bottom:10px}.ar{background:var(--soft);border-radius:10px;padding:10px 14px;font-size:16px}
.phone{width:280px;max-width:100%;border:10px solid var(--ink);border-radius:30px;background:#fff;overflow:hidden;font-size:13px;margin:0 auto}.phone-top{display:flex;justify-content:space-between;padding:10px 12px;font-weight:700;border-bottom:1px solid var(--line)}
.m-trend{padding:8px 12px;background:var(--soft)}.m-trend small{font-weight:700;text-transform:uppercase;font-size:10px}.m-ti{display:flex;justify-content:space-between;gap:6px;font-size:12px;padding:2px 0}
.m-money{margin:6px 10px;background:var(--lime);border-radius:10px;padding:10px 12px;font-weight:800}.m-money em{font-style:normal;background:var(--ink);color:var(--lime);border-radius:6px;padding:0 6px;font-size:11px}
.m-cat{padding:8px 12px;border-bottom:1px solid var(--line)}.m-cat b{display:block}.m-cat small{color:var(--mute)}.m-quote{margin:8px 10px;background:var(--soft);border-radius:10px;padding:8px 10px;font-style:italic;font-size:12px}
.m-util{padding:5px 12px;font-size:11.5px;color:var(--mute)}.m-search{margin:8px 10px;border:1px solid var(--line);border-radius:10px;padding:8px}
.navmock{display:flex;flex-wrap:wrap;gap:14px;align-items:center;background:var(--soft);border-radius:12px;padding:10px 14px;font-weight:600}
.tags{margin-bottom:8px}.hook{background:var(--soft);border-radius:10px;padding:8px 12px;margin-bottom:6px}.mini{display:block;font-size:11.5px;color:var(--mute);font-family:"Geist Mono",monospace}
.static-mock{position:relative;aspect-ratio:4/5;max-width:300px;background:linear-gradient(160deg,#2b2b2b,#0c0c0c);border-radius:12px;color:#fff;overflow:hidden;margin-bottom:6px}
.st-img{position:absolute;inset:auto 10px 50px 10px;font-size:11px;color:#bbb}.st-text{position:absolute;top:14px;left:14px;right:14px;font-weight:800;font-size:22px;line-height:1.15}.st-cta{position:absolute;right:12px;bottom:12px;background:var(--lime);color:var(--ink);border-radius:999px;padding:4px 10px;font-weight:700;font-size:12px}
.frames{display:flex;gap:8px;overflow-x:auto}.frame{flex:0 0 150px;aspect-ratio:1;background:var(--soft);border-radius:10px;padding:8px;font-size:12px;overflow:auto}.frame small{display:block;font-weight:800}
.briefs{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.brief{background:var(--soft);border-radius:10px;padding:10px;font-size:12.5px}.brief img{width:100%;border-radius:8px}.brief-ph{aspect-ratio:4/5;max-height:160px;border:2px dashed #ccc;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--mute);text-align:center;padding:10px}
.ptswitch{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.fbad{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;max-width:380px}.fb-head{display:flex;gap:8px;align-items:center;padding:10px}.fb-head small{display:block;color:var(--mute);font-size:11px}
.av{width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--lime);display:inline-flex;align-items:center;justify-content:center;font-weight:800;flex:0 0 auto}
.fb-text{padding:0 10px;font-size:14px}.fb-text p{margin:0 0 4px}.pt{display:none}.pt.on{display:block}
.fb-img{aspect-ratio:4/5;max-height:300px;background:linear-gradient(160deg,#2b2b2b,#0c0c0c);color:#999;display:flex;align-items:center;justify-content:center;font-size:12px;margin-top:6px}
.fb-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;background:var(--soft);padding:8px 10px}.fb-foot div{display:flex;flex-direction:column;min-width:0}.fb-foot small{font-size:11px;color:var(--mute);text-transform:uppercase}.fb-foot b{font-size:14px}.fb-foot span{font-size:12px;color:var(--mute)}
.fb-cta{background:#e4e6eb;border-radius:6px;padding:6px 10px;font-weight:700;font-size:13px;color:var(--ink)!important;white-space:nowrap}
.cclist{list-style:none;padding:0;margin:0}.cclist li{display:flex;justify-content:space-between;gap:8px;padding:4px 0;border-bottom:1px dashed var(--line);font-size:13.5px}
.cc{font-family:"Geist Mono",monospace;font-size:11px;border-radius:5px;padding:0 5px;white-space:nowrap;height:fit-content}.cc.ok{background:#e3f7e8;color:var(--green)}.cc.soft{background:#fff3cd;color:var(--amber)}.cc.over{background:#fde0e0;color:var(--red);font-weight:700}
.gad{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;font-family:Arial,sans-serif}.gad small{font-weight:700}.g-url{font-size:13px;color:#202124}.g-h{color:#1a0dab;font-size:19px;line-height:1.3;margin:4px 0}.g-d{color:#4d5156;font-size:14px}.g-sl{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.g-sl span{color:#1a0dab;font-size:13px}
.mixbar{display:flex;border-radius:10px;overflow:hidden;margin-bottom:10px;font-size:12px;font-weight:700}.mixbar span{padding:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--lime)}.mixbar span:nth-child(2){background:#e9ffa3}.mixbar span:nth-child(3){background:#f4ffd6}.mixbar span:nth-child(n+4){background:var(--soft)}
.emailcard{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}.emailcard:first-of-type{border-top:0;margin-top:0;padding-top:0}
.inbox{display:flex;gap:10px;background:var(--soft);border-radius:12px;padding:10px;margin-bottom:10px;max-width:600px}.inbox .subj{font-weight:700}.inbox .prev{color:var(--mute);font-size:13px}
.email600{width:600px;max-width:100%;border:1px solid var(--line);border-radius:6px;background:#fff;margin-bottom:8px;overflow:hidden}
.em-head{background:var(--ink);color:#fff;padding:14px;text-align:center;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.em-sec{background:linear-gradient(160deg,#2b2b2b,#111);color:#bbb;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:14px;max-height:260px;width:100%}.em-sec small{color:var(--lime);font-size:11px}
.em-block{padding:12px 22px}.em-block small{text-transform:uppercase;font-size:10.5px;color:var(--mute);letter-spacing:.06em}.em-block p{margin:2px 0 0;font-size:15px}
.em-cta{text-align:center;padding:14px}.em-cta a{display:inline-block;background:var(--lime);color:var(--ink);font-weight:800;padding:12px 26px;border-radius:999px;text-decoration:none}.em-cta small{display:block;margin-top:4px}
.em-link{display:block;text-align:center;font-size:13px;text-decoration:underline;margin-bottom:10px}.em-foot{background:var(--soft);font-size:11px;color:var(--mute);text-align:center;padding:12px}
.qa .qa-head{border-radius:12px;padding:10px 12px;margin-bottom:10px;display:flex;flex-direction:column}.qa-head.pass{background:#e3f7e8}.qa-head.fail{background:#fde0e0}.qa-head .big{font-weight:800;font-size:17px}.qa-head small{color:var(--mute);font-size:11.5px}
.qa-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}.qa-list li{border-radius:10px;padding:8px 10px;font-size:13px;display:flex;flex-direction:column;gap:2px}.qa-list li.err{background:#fde8e8;border-left:4px solid var(--red)}.qa-list li.warn{background:#fff7e0;border-left:4px solid #f0b400}
.qa-list small{color:var(--mute);font-size:11.5px}.qa-list .val{font-size:12px;color:#444;font-style:italic;overflow-wrap:anywhere}
.flagbox summary{font-weight:700;cursor:pointer;margin-top:12px}.flags{padding-left:16px;font-size:13px}.flags li{margin-bottom:4px}.flags small{display:block;color:var(--mute);font-size:11px}
.prompt{white-space:pre-wrap;word-break:break-word;font-size:12px;background:var(--soft);border-radius:10px;padding:12px;max-height:75vh;overflow:auto}
details>summary{cursor:pointer}details.card>summary h3{display:inline}
@media (max-width:1000px){.steplayout{grid-template-columns:minmax(0,1fr)}.qacol{position:static;max-height:none;order:-1}.qawrap:not([open]) .qa{display:none}}
@media (max-width:720px){.wrap{padding:12px}.g3,.g2,.grid2{grid-template-columns:1fr}.span2{grid-column:auto}.kv{grid-template-columns:1fr}.kv dt{margin-top:6px}.tree{grid-template-columns:1fr}.hero{padding:18px}.hero h1{font-size:22px}
 .top{padding:8px 12px}.brand img{height:20px}.brand span{font-size:13px}.top nav{gap:10px;font-size:13px}.stepnav{top:41px}.scen{grid-template-columns:1fr}.lpframe{height:620px}.bar{grid-template-columns:110px 1fr 26px}h1{font-size:22px}}

.steplayout>*{min-width:0}.output{min-width:0;overflow-wrap:anywhere}pre{max-width:100%;overflow-x:auto}
.brand span,.top nav a{white-space:nowrap}
.qa-mini{display:block;font-size:13px;font-weight:600;margin-top:6px;padding:6px 10px;border-radius:10px}.qa-mini.pass{background:#e3f7e8}.qa-mini.fail{background:#fde0e0}
@media (max-width:440px){.brand span{display:none}.top nav{gap:12px}}
/* 05a Competitor Ad Scout */
.fl-data{background:#ffe7cc}
.exbanner{background:#fff3cd;border:1px solid #f0d58a;border-radius:var(--r);padding:10px 14px;margin:0 0 14px}
.adgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.adcard{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;min-width:0}.adcard.winner{border-color:#9bc53d;box-shadow:0 0 0 2px #e8f5c8 inset}
.adcard p{margin:6px 0}.adtop{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}
.pbadge{display:inline-block;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;margin:4px 0}.pbadge.win{background:var(--lime);color:#151515}.pbadge.no{background:var(--soft);color:var(--mute);font-weight:500}
.tag.ex{background:#fff3cd;border-color:#f0d58a}
blockquote.rival{margin:6px 0;padding:6px 10px;border-left:3px solid #ccc;color:var(--mute);font-size:13px;font-style:italic}
.verdict{display:inline-block;border-radius:6px;padding:1px 8px;font-size:12px;font-weight:700;white-space:nowrap}.v-scale{background:#d8f5c4}.v-keep{background:#e8eefc}.v-kill{background:#fde0e0}.v-data{background:#ffe7cc}
.scoutform label{display:block;font-size:13px;font-weight:600;margin:0 0 10px}.scoutform textarea,.scoutform input[type=text],.scoutform input:not([type]){width:100%;box-sizing:border-box;margin-top:4px;font:inherit;font-size:13px;font-weight:400}
.scoutform .chk{font-weight:400}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.shots{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.shots img{height:90px;border-radius:8px;border:1px solid var(--line)}
.sframes{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-start}.sframe{margin:0;width:238px}.sfwrap{width:238px;overflow:hidden;border-radius:8px;border:1px solid var(--line)}
.sfwrap iframe{border:0;transform:scale(.22);transform-origin:0 0;pointer-events:none}.sframe figcaption{font-size:12px;margin-top:4px}
ol.cd7{margin:6px 0 6px 18px;padding:0;font-size:13px}ol.cd7 li{margin:2px 0}
.photoup{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}
@media (max-width:760px){.grid3{grid-template-columns:minmax(0,1fr)}}
table.wide{min-width:880px}table.wide td:nth-child(n+3){white-space:normal}.adcard .tags{margin:4px 0}
/* ---------- back office ---------- */
.fine{font-size:12.5px}.nowrap{white-space:nowrap}.pagehead h1{font-size:24px;margin:4px 0}.card>h3{margin:0 0 10px;font-size:16px}.card h4{margin:14px 0 6px;font-size:14px}
.mainnav{flex-wrap:wrap;justify-content:flex-end;row-gap:4px}.mainnav .who{border-left:1px solid var(--line);padding-left:12px}
.flash{border-radius:12px;padding:10px 14px;margin:0 0 14px;font-size:14px}.flash.ok{background:var(--limebg);border:1px solid #cfe98a}.flash.bad{background:#fde8e8;border:1px solid #f3c1c1;color:var(--red)}
.flash code.pw{font-size:16px;background:#fff;padding:3px 8px;user-select:all}
.pagehead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:12px}.pagehead p{margin:2px 0 0}
.row-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.crumb{font-size:13px;color:var(--mute);text-decoration:none}.crumb:hover{color:var(--ink)}
.tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:14px}
.tile{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px;text-decoration:none;display:flex;flex-direction:column;gap:2px}
.tile small{color:var(--mute);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.tile b{font-size:28px;line-height:1.15}.tile span{font-size:12.5px;color:var(--mute)}
.tile.warn{border-color:#f0d58a;background:#fffaf0}.tile.bad{border-color:#f3c1c1;background:#fff5f5}.tile.bad b{color:var(--red)}
.grid2>.card{min-width:0}
.dst{display:inline-block;border-radius:999px;padding:1px 9px;font-size:12px;font-weight:600;white-space:nowrap;background:var(--soft)}
.st-todo{background:#eee}.st-in_progress{background:#dbeafe;color:#1e3a8a}.st-in_qa{background:#fff3cd;color:#7a4b00}.st-client_review{background:#ede4ff;color:#4c1d95}
.st-delivered{background:var(--lime);color:var(--ink)}.st-blocked{background:#fde8e8;color:var(--red)}.dst.big{font-size:14px;padding:4px 14px}
select.st-sel{padding:4px 8px;font-size:13px;border-radius:999px;font-weight:600;width:auto}
.ost{font-size:11.5px;border-radius:6px;padding:1px 7px;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}.ost-active{background:var(--lime)}.ost-paused{background:#fff3cd}.ost-cancelled{background:#eee;color:var(--mute)}
.pill{font-size:10.5px;letter-spacing:.06em;border-radius:5px;padding:1px 6px;background:var(--ink);color:#fff;vertical-align:middle}.p-acquire{background:#151515;color:var(--lime)}.p-convert{background:#1e3a8a}.p-retain{background:#4c1d95}.pill{text-transform:uppercase}
.order{border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:10px}.order.cancelled{opacity:.6}
.orderhead{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:6px}
table.cyc td,table.cyc th{text-align:center}table.cyc td:first-child,table.cyc th:first-child{text-align:left}
table.dl select{width:auto;max-width:160px;padding:4px 8px;font-size:13px}tr.grp td{background:var(--limebg);font-weight:700;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em}
.stp{display:inline-block;font-family:"Geist Mono",monospace;font-size:11.5px;background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:0 7px;margin:1px 2px 1px 0;white-space:nowrap}
.ss{font-size:12px;border-radius:6px;padding:1px 7px;background:#eee}.ss-done{background:var(--lime)}.ss-running,.ss-queued{background:#fff3cd}.ss-error{background:var(--red);color:#fff}
.tabs{display:flex;gap:6px;overflow-x:auto;margin:0 0 10px;padding-bottom:4px}.tabs a{flex:0 0 auto;background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:13px;text-decoration:none}.tabs a.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.pcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-bottom:6px}.grp{margin:12px 0 6px;color:var(--mute);text-transform:uppercase;font-size:12px;letter-spacing:.05em}
.pcard{display:block;position:relative;cursor:pointer}.pcard input{position:absolute;opacity:0}
.pc-body{display:flex;flex-direction:column;gap:3px;border:1px solid var(--line);border-radius:12px;padding:12px;height:100%;box-sizing:border-box;background:#fff}
.pcard input:checked+.pc-body{border-color:var(--ink);box-shadow:0 0 0 2px var(--lime)}.pcard input:focus-visible+.pc-body{outline:2px solid var(--ink)}
.price{font-weight:700}.price small{font-weight:400;color:var(--mute)}.price s{color:var(--mute);font-weight:400;font-size:12.5px}
.plain{list-style:none;padding:0;margin:0 0 10px}.plain li{padding:6px 0;border-bottom:1px solid var(--line)}.acts{list-style:none;padding:0;margin:0;font-size:13.5px}.acts li{padding:4px 0;border-bottom:1px dashed var(--line)}
.stack{display:flex;flex-direction:column;gap:8px;align-items:flex-start;margin-top:8px}.stack label:not(.chk){width:100%}.stack .g2{width:100%}
.inline{display:inline}.linkbtn{background:none;border:0;padding:0 4px;color:var(--ink);text-decoration:underline;cursor:pointer;font:inherit}
.g3.tight{margin-top:10px;align-items:center}.kpif input{width:auto;padding:5px 8px;font-size:13px;margin-right:4px}
.ck{border-radius:10px;width:100%;box-sizing:border-box}.guide{padding-left:18px;font-size:13.5px}.guide li{margin:3px 0}
details>summary{list-style:none;display:inline-flex}details>summary::-webkit-details-marker{display:none}
.svc .orderhead{margin-bottom:10px}
@media (max-width:1000px){.tiles{grid-template-columns:repeat(3,1fr)}}
@media (max-width:720px){.tiles{grid-template-columns:repeat(2,1fr)}.tile b{font-size:22px}.mainnav{gap:10px;font-size:13px}.top{flex-wrap:wrap}
 .g3.tight{grid-template-columns:1fr}.pagehead h1{font-size:20px}table.dl select{max-width:120px}.kpif input{width:70px}}
@media (max-width:720px){table.mcards thead{display:none}table.mcards,table.mcards tbody{display:block}
 table.mcards tr{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:9px 0;border-bottom:1px solid var(--line)}
 table.mcards td{border:0;padding:0}table.mcards td:first-child{flex-basis:100%}table.mcards tr.grp{padding:0}table.mcards tr.grp td{padding:6px 8px;flex-basis:100%}
 table.mcards td.nowrap::before{content:"Due ";color:var(--mute);font-size:12px}#kpi table.mcards td.nowrap::before{content:none}}
/* ---- billing / portal / notifications (v16) ---- */
.bell{position:relative;text-decoration:none;font-size:16px;line-height:1}.bell i{position:absolute;top:-7px;right:-10px;background:var(--red);color:#fff;font-style:normal;font-size:10.5px;font-weight:700;border-radius:999px;padding:1px 5px;min-width:16px;text-align:center}
.tiles.t4{grid-template-columns:repeat(4,1fr)}.amt{white-space:nowrap}
.ist{display:inline-block;font-size:11.5px;border-radius:999px;padding:1px 9px;font-weight:600;white-space:nowrap;background:var(--soft)}
.ist-draft{background:#eee;color:var(--mute)}.ist-issued{background:#e7f0ff;color:#1d4ed8}.ist-partially_paid{background:#fff3cd;color:var(--amber)}.ist-paid{background:var(--lime)}.ist-overdue{background:#fde0e0;color:var(--red)}.ist-void{background:#eee;color:var(--mute);text-decoration:line-through}
.invgrid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:14px;align-items:start}.invgrid .card{margin-bottom:14px}
.docwrap{overflow-x:auto}
table.lines{width:100%}table.lines input{width:100%}table.lines td{padding:4px}
.sm-in{padding:6px 10px;font-size:13px;width:auto}.stackform .submitbar{margin-top:12px}
.vis{border:1px solid var(--line);background:#fff;border-radius:999px;font-size:11px;padding:1px 8px;cursor:pointer;color:var(--mute);margin-left:4px;font-family:inherit}.vis.on{background:var(--limebg);border-color:#cfe98a;color:var(--ink)}
.thread{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:8px}.thread li{background:var(--soft);border-radius:12px;padding:8px 12px}.thread li p{margin:4px 0 0;white-space:pre-wrap}.thread li.k-approval{background:var(--limebg)}.thread li.k-changes{background:#fff3cd}
.notes{list-style:none;padding:0;margin:0}.notes li{border-bottom:1px solid var(--line);padding:10px 4px;display:flex;justify-content:space-between;gap:10px}.notes li a{text-decoration:none;display:flex;flex-direction:column}.notes li a span{color:var(--mute);font-size:13.5px}
.notes li.unread{background:var(--limebg);border-radius:8px}.notes li.unread b::before{content:"● ";color:var(--red)}.notes small{white-space:nowrap}
.mailprev{width:100%;height:560px;border:1px solid var(--line);border-radius:12px;background:#fff}.prewrap{white-space:pre-wrap;margin:0}
.flash.warn{background:#fffaf0;border:1px solid #f0d58a;color:#7a4b00}
/* client portal: mobile-first */
.phead{margin:4px 0 14px}.phead small{color:var(--mute)}.phead h1{margin:2px 0}.phead p{margin:4px 0}
.card.hl{border:2px solid var(--lime);background:#fcfff2}
.cnt{display:inline-block;background:var(--ink);color:var(--lime);border-radius:999px;font-size:13px;padding:0 9px;vertical-align:middle}
.clist{display:grid;gap:8px;margin-top:8px}.citem{display:flex;flex-direction:column;gap:3px;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px 13px}
.citem:hover{border-color:var(--ink)}.citem b{font-size:15px}.citem small{color:var(--mute);font-size:12.5px}.citem>.cst,.citem>.ist{align-self:flex-start}
.cst{display:inline-block;font-size:11.5px;font-weight:600;border-radius:999px;padding:1px 9px;white-space:nowrap;background:var(--soft)}
.cst-review{background:var(--ink);color:var(--lime)}.cst-progress{background:#e7f0ff;color:#1d4ed8}.cst-planned{background:#eee;color:var(--mute)}.cst-done{background:var(--lime)}.cst-hold{background:#fff3cd;color:var(--amber)}
.chips .cst{margin:2px 4px 2px 0}.pbar{height:8px;background:var(--soft);border-radius:999px;overflow:hidden;margin:10px 0}.pbar i{display:block;height:100%;background:var(--lime)}
.csvc{display:flex;flex-direction:column;gap:2px;padding:8px 0;border-bottom:1px solid var(--line)}.csvc:last-child{border:0}.csvc small{font-size:13px}
.more{display:inline-block;margin-top:10px;font-size:14px;font-weight:600}
.cquick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:6px 0 14px}.cquick a{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 8px;text-align:center;text-decoration:none;font-weight:600;font-size:14px}
.btn.big{padding:13px 24px;font-size:16px}#decide .stack input{width:100%}#decide .chg{margin-top:10px}#decide textarea{width:100%}
.o-dl{display:grid;grid-template-columns:minmax(110px,190px) 1fr;gap:4px 14px;margin:6px 0;font-size:14px}.o-dl dt{color:var(--mute);font-weight:600}.o-dl dd{margin:0;min-width:0;overflow-wrap:anywhere}
.o-dl .o-dl{background:var(--soft);border-radius:10px;padding:8px;grid-template-columns:minmax(90px,150px) 1fr}
.ohtml ul{margin:4px 0;padding-left:18px}.ohtml li{margin:2px 0}.card.out h2{font-size:18px}
table.kt td{padding:7px 4px;border-bottom:1px solid var(--line)}table.kt td.num{text-align:right;font-size:17px}
.cnav a{white-space:nowrap}
@media (max-width:1000px){.invgrid{grid-template-columns:1fr}.tiles.t4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:720px){.o-dl{grid-template-columns:1fr;gap:0}.o-dl dt{margin-top:8px}.cnav{width:100%;justify-content:space-between;gap:8px;font-size:13.5px}
 .notes li{flex-direction:column;gap:2px}.mailprev{height:440px}.btn.big{width:100%;justify-content:center}#decide .chg summary{width:100%;justify-content:center}}
/* v18 contracts + onboarding */
.cts{display:inline-block;font-size:12px;font-weight:600;border-radius:999px;padding:1px 9px;vertical-align:middle;white-space:nowrap}
.cts-draft{background:#eee;color:var(--mute)}.cts-sent{background:#e7f0ff;color:#1d4ed8}.cts-viewed{background:#fff3cd;color:var(--amber)}
.cts-accepted{background:var(--lime)}.cts-declined{background:#fde8e8;color:var(--red)}.cts-superseded{background:#f3f3f3;color:#999;text-decoration:line-through}
.warnc{color:var(--amber);font-weight:600}
.nb{display:inline-block;min-width:17px;height:17px;line-height:17px;text-align:center;font-size:11px;font-weight:700;border-radius:999px;background:var(--lime);color:var(--ink);margin-left:4px;padding:0 4px}
.obprog{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
.obi .obh{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.obi h2,.obi h3{margin:0 0 2px;font-size:17px}
.obi .ar{font-size:13.5px;color:var(--mute)}.ar-l{color:var(--mute);font-size:12.5px;margin-inline-start:6px}
.obi-verified{opacity:.82}.obi-rejected{border-color:#f0d58a}
.obs{font-size:12px;font-weight:600;border-radius:999px;padding:2px 10px;white-space:nowrap;flex:none}
.obs-todo{background:#eee;color:var(--mute)}.obs-submitted{background:#e7f0ff;color:#1d4ed8}.obs-verified{background:var(--lime)}.obs-rejected{background:#fff3cd;color:var(--amber)}
.obform{margin-top:8px}.obform>summary{list-style:none;cursor:pointer;display:inline-block}.obform>summary::-webkit-details-marker{display:none}.obform[open]>summary{display:none}
ol.steps{padding-left:20px;margin:6px 0 10px}ol.steps li{margin:4px 0}
.nopw{background:var(--limebg);border-radius:8px;padding:6px 10px;display:inline-block}
.obi input[type=file]{width:100%;padding:12px;border:1px dashed var(--line);border-radius:10px;background:var(--soft)}
@media (max-width:640px){.obi .obh{flex-direction:column}.obi .g3{grid-template-columns:1fr}}
@media (max-width:720px){.cnav{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;gap:16px;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px}.cnav::-webkit-scrollbar{display:none}}
/* v20 business reporting */
.rptabs{display:flex;gap:6px;flex-wrap:nowrap;overflow-x:auto;margin:0 0 12px;padding-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.rptabs::-webkit-scrollbar{display:none}
.rptabs a{white-space:nowrap;text-decoration:none;font-size:13.5px;font-weight:600;padding:7px 14px;border-radius:999px;background:#fff;border:1px solid var(--line)}.rptabs a.on{background:var(--ink);color:var(--lime);border-color:var(--ink)}
.rpfilter{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;margin:0 0 12px}
.rpfilter label{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--mute);font-weight:600}.rpfilter input,.rpfilter select{padding:6px 10px;font-size:13.5px;border:1px solid var(--line);border-radius:10px;background:#fff;font-family:inherit;width:auto}
.rpdemo{background:var(--limebg);border:1px solid #cfe98a;border-radius:12px;padding:8px 12px;font-size:13px;margin:0 0 12px}
.rpcard{min-width:0}.rph{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.rph h3{margin:0}
.rpt td.num,.rpt th.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.rpt td:first-child{min-width:120px}
.rpt tr.flag td{background:#fff5f5}.rpt tr.flag td:first-child{box-shadow:inset 3px 0 0 var(--red)}.rpt tr.tot td{font-weight:700;background:var(--soft);border-top:2px solid var(--ink)}
.rpt td.dn,.dn{color:var(--amber);font-weight:600}.tile b.dn{font-size:16px;line-height:1.3}
.tag.est{background:#fff3cd;border-color:#f0d58a}.tag.low{background:#fde8e8;border-color:#f3c1c1;color:var(--red)}
.rpchart{min-width:0}svg.chart{width:100%;height:auto;display:block;max-height:320px}svg.chart .grid line,svg.chart line.grid{stroke:var(--line);stroke-width:1}
svg.chart .ax,svg.chart text{font-size:11px;fill:var(--mute);font-family:inherit}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--mute);margin-top:6px}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{display:inline-block;width:12px;height:12px;border-radius:3px}
.rptiles .tile span{line-height:1.35}.tiles.t5{grid-template-columns:repeat(5,1fr)}a.tile:hover{border-color:var(--ink)}
.tsgrid th.today,.tsgrid td.today{background:var(--limebg)}.tslist li{display:flex;justify-content:space-between;align-items:center;gap:10px}.tslist form{margin:0}
.tlog input{padding:7px 10px;font-size:14px;border:1px solid var(--line);border-radius:10px;font-family:inherit}.tlog input[name=hours]{width:130px}.tlog input[name=note]{flex:1;min-width:160px}
.stchg{margin-top:10px}.stchg summary{cursor:pointer;font-weight:600;font-size:13.5px}.stchg .pop{margin-top:8px;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--soft)}
@media (max-width:1000px){.tiles.t5{grid-template-columns:repeat(3,1fr)}}
@media (max-width:720px){.tiles.t5{grid-template-columns:repeat(2,1fr)}.rpfilter label{flex:1 1 40%}.rpfilter input,.rpfilter select{width:100%}.rpt{font-size:12.5px}.rpt th,.rpt td{padding:6px}
 .tlog input[name=hours]{width:100%}.tlog input,.tlog button{flex:1 1 100%}svg.chart text{font-size:13px}}
.stack>.tw{width:100%;max-width:100%}.rpt .sm-in{width:110px;max-width:100%}
@media (max-width:720px){.rpsc{overflow-x:auto;-webkit-overflow-scrolling:touch}.rpsc svg.chart{min-width:540px}.rptiles .tile b{font-size:19px}.rpt .tag{font-size:10.5px}}
/* v22 quality layer: brand foundation, client rules, fact check, launch checkpoints (WP-001..014) */
.pill.good{background:#e6f4ea;color:var(--green)}.pill.bad{background:#fdecea;color:var(--red)}.pill.warnp,.pill.cls-client_stated{background:#fff4e0;color:var(--amber)}
.pill.cls-verified{background:#e6f4ea;color:var(--green)}.pill.cls-proof_needed{background:#fdecea;color:var(--red)}.pill.rst-active{background:#e6f4ea;color:var(--green)}.pill.rst-draft{background:#fff4e0;color:var(--amber)}
.warnt{color:var(--amber)}.swatches{display:flex;flex-wrap:wrap;gap:12px;margin:4px 0 10px}.sw{display:flex;flex-direction:column;gap:2px;min-width:120px;font-size:13px}
.sw i{display:block;width:100%;height:46px;border-radius:10px;border:1px solid var(--line)}.sub{border:1px solid var(--line);border-radius:12px;padding:12px}.sub h4{margin-top:0}
textarea.mono{font-family:"Geist Mono",ui-monospace,Menlo,monospace;font-size:12.5px}.fdedit{background:var(--limebg);padding:12px;border-radius:12px;margin-bottom:12px}
.ledger td{vertical-align:top}.rulelist,.claimlist,.fdmini{list-style:none;padding:0;margin:0}.rulelist li,.claimlist li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}
.rulelist li.r-broken{background:#fdecea}.rulelist li.r-followed code{background:#e6f4ea}.tickf{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.fdmini li{padding:2px 0}
.fcitem{border-left:3px solid var(--line);padding:6px 10px;margin:6px 0}.fcitem.flagged{border-color:var(--red);background:#fffafa}
.cpgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:10px 0}.cpbox{border:1px solid var(--line);border-radius:12px;padding:12px}.cpbox.ok{border-color:var(--green);background:#f3fbf5}
.hardrule{font-weight:600}.qsend{border:2px solid var(--amber)}sup.fn{font-size:10px;color:var(--mute);margin-left:2px}.fnotes{font-size:12px;color:var(--mute);padding-left:18px;margin-top:12px}
@media (max-width:760px){.cpgrid{grid-template-columns:1fr}.rulelist li,.claimlist li{flex-direction:column;align-items:flex-start}.tickf{justify-content:flex-start}}
/* v23 guided tour */
.tour-block{position:fixed;inset:0;z-index:9997;background:transparent}.tour-block.dim{background:rgba(15,15,15,.55)}
.tour-hole{position:fixed;z-index:9998;pointer-events:none;border-radius:12px;box-shadow:0 0 0 9999px rgba(15,15,15,.55);outline:3px solid var(--lime);transition:all .18s ease}
.tour-tip{position:fixed;z-index:9999;width:min(400px,calc(100vw - 24px));background:#fff;border-radius:16px;padding:16px 18px 12px;box-shadow:0 18px 50px rgba(0,0,0,.28);border:1px solid var(--line)}
.tour-tip.center{left:50%!important;top:50%!important;transform:translate(-50%,-50%);width:min(520px,calc(100vw - 24px))}
.tour-tip.sheet{left:0!important;right:0;bottom:0;top:auto!important;width:100%;border-radius:18px 18px 0 0;max-height:52vh;overflow:auto;padding-bottom:max(12px,env(safe-area-inset-bottom))}
.tour-tip.sheet.center{transform:none;top:auto!important;left:0!important}
.tour-tip h3{font-size:17px;margin:6px 0 6px}.tour-body{margin:0 0 8px;font-size:14.5px;line-height:1.5}.tour-note{margin:0 0 8px;font-size:13px;color:var(--mute);font-style:italic}
.tour-top{display:flex;justify-content:space-between;align-items:center}.tour-count{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);font-weight:600}
.tour-x{background:none;border:0;font-size:22px;line-height:1;cursor:pointer;color:var(--mute);padding:2px 6px}
.tour-bar{height:4px;background:var(--soft);border-radius:4px;margin-top:6px;overflow:hidden}.tour-bar i{display:block;height:100%;background:var(--ink)}
.tour-nav{display:flex;justify-content:space-between;gap:8px;margin-top:6px}.tour-keys{font-size:11px;color:var(--mute);text-align:right;margin-top:6px}
.tour-tip.sheet .tour-keys{display:none}.tour-tip.nudge{animation:tnudge .3s}@keyframes tnudge{30%{transform:translateX(-5px)}60%{transform:translateX(5px)}}
.tour-tip.center.nudge{animation:none}
.tour-pill{position:fixed;right:16px;bottom:16px;z-index:9996;background:var(--ink);color:#fff;border-radius:999px;padding:8px 8px 8px 16px;display:flex;align-items:center;gap:10px;font-size:13.5px;box-shadow:0 8px 24px rgba(0,0,0,.25);max-width:calc(100vw - 32px)}
.tour-pill .tour-x{color:#bbb}
.touragenda{columns:2;column-gap:28px;font-size:14px;padding-left:22px}.touragenda li{margin:3px 0;break-inside:avoid}
.tourshots{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;align-items:start}
.tshot{margin:0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px}.tshot img{width:100%;height:auto;border-radius:8px;display:block;border:1px solid var(--line)}
.tshot.mobile img{max-width:300px;margin:0 auto}.tshot figcaption{font-size:13px;color:var(--mute);margin-top:8px;text-align:center}
@media (max-width:720px){.touragenda{columns:1}.tour-pill{left:12px;right:12px;bottom:12px}}
/* v24 live AI: generated creatives */
.aiimg{margin:0 0 10px}.aiimg img{width:100%;max-width:360px;border-radius:10px;border:1px solid #ddd;display:block}
.aiimg figcaption{font-size:12px;line-height:1.45;margin-top:6px;color:#555}
.genform{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:flex-end;margin:8px 0 4px;padding:10px;border:1px dashed #ccc;border-radius:10px}
.genform label{display:flex;flex-direction:column;font-size:12px;gap:3px}.genform small{flex-basis:100%}
/* ---- Social: content calendar + scheduler ---- */
.ssub{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px;margin:4px 0 12px}.ssub a{text-decoration:none;padding:4px 0;border-bottom:2px solid transparent}.ssub a.on{border-color:var(--ink);font-weight:700}
.calbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin:0 0 10px}.calbar h2{margin:0}.calbar .row-actions{gap:6px}
.scal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.scal .dh{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--mute);padding:0 4px}
.scal .day{background:#fff;border:1px solid var(--line);border-radius:10px;min-height:112px;padding:6px;display:flex;flex-direction:column;gap:4px;min-width:0}
.scal .day.out{background:#fafafa}.scal .day.out .dn b{color:#bbb}.scal .day.today{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.scal .day.past{background:#fcfcfc}
.scal .dn{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--mute)}.scal .dn b{font-size:13px;color:var(--ink)}.scal .dn a{text-decoration:none;font-weight:700;padding:0 6px;border-radius:6px}.scal .dn a:hover{background:var(--lime)}
.swk .day{min-height:340px}
.spost{display:block;text-decoration:none;border-radius:8px;padding:5px 7px;font-size:12px;line-height:1.3;border-left:4px solid #bbb;background:var(--soft);overflow-wrap:anywhere}
.spost .tm{font-family:"Geist Mono",ui-monospace,monospace;font-size:11px}.spost .pl{font-family:"Geist Mono",ui-monospace,monospace;font-size:10px;color:var(--mute)}.spost img{width:100%;border-radius:6px;margin:4px 0 2px;display:block}
.spost .ex{color:#444;font-size:11.5px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sp-draft{border-color:#b9b9b9;background:#f4f4f4}.sp-in_review{border-color:var(--amber);background:#fff4e0}.sp-approved{border-color:#1e3a8a;background:#e8eefc}
.sp-scheduled{border-color:#8fb31a;background:var(--limebg)}.sp-published{border-color:var(--green);background:#e6f4ea}.sp-failed{border-color:var(--red);background:#fdecea}.sp-cancelled{opacity:.55;text-decoration:line-through}
.sst{display:inline-block;border-radius:999px;padding:1px 9px;font-size:12px;font-weight:600;border:1px solid transparent}
.sst.sp-draft,.sst.sp-in_review,.sst.sp-approved,.sst.sp-scheduled,.sst.sp-published,.sst.sp-failed,.sst.sp-cancelled{border-left-width:1px}
.slegend{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0;font-size:12px}
.sgrid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:14px;align-items:start}
.mpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px}.mpick label{position:relative;font-weight:400;font-size:11px;gap:2px}
.mpick input{position:absolute;top:6px;left:6px;width:18px;height:18px}.mpick img{width:100%;border-radius:8px;border:3px solid transparent;background:var(--soft);display:block}
.mpick input:checked+img{border-color:var(--ink)}.mpick .fl{font-family:"Geist Mono",monospace;font-size:10px;color:var(--mute)}
.pchk{display:flex;flex-wrap:wrap;gap:6px 14px}.pchk label{flex-direction:row;align-items:center;gap:6px;font-weight:500}.pchk input{width:auto}
.sprev{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;margin-bottom:10px}.sprev header{display:flex;justify-content:space-between;padding:8px 10px;font-size:12.5px;font-weight:600;border-bottom:1px solid var(--line)}
.sprev img{width:100%;display:block}.sprev .cap{padding:8px 10px;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.sprev .cap[dir=rtl],textarea[dir=rtl]{font-family:"Noto Naskh Arabic","Geeza Pro",Tahoma,sans-serif}
.agrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.acard{background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:6px}
.acard img{width:100%;border-radius:8px;background:var(--soft)}.acard form{display:flex;flex-direction:column;gap:6px}.acard input{font-size:13px;padding:6px 8px}
.tag.ai{background:#efe7ff;border-color:#cdb8ff}.tag.ph{background:#fff3cd;border-color:#f0d58a}.tag.real{background:#e6f4ea;border-color:#b8dfc4}
pre.req{white-space:pre-wrap;font-size:11.5px;background:var(--soft);padding:8px;border-radius:8px;max-height:320px;overflow:auto}
@media (max-width:1000px){.sgrid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:720px){.scal{grid-template-columns:minmax(0,1fr)}.scal .dh{display:none}.scal .day{min-height:0}.scal .day.empty{display:none}.swk .day{min-height:0}
.scal .day .dn::before{content:attr(data-wd);font-weight:700;color:var(--ink);margin-right:auto}}

/* step 05 premium statics */
.pst{border-top:1px solid #eee;padding:12px 0}.pst-h{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pst-hook{font-weight:600;margin:6px 0 2px}
.pst-figs{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}.pst-figs figure{margin:0;width:150px;max-width:31%}.pst-figs img{width:100%;border-radius:6px;border:1px solid #ddd;display:block}.pst-figs figcaption{font-size:11.5px;margin-top:4px;color:#555}
.pst-figs.vid figure{width:180px}.pst-figs video{width:100%;border-radius:6px;border:1px solid #ddd;display:block;background:#111}

/* v26 tour: chapters, step list, nav button */
.mainnav a.navtour{background:var(--lime);color:#151515!important;border-radius:999px;padding:4px 10px;font-weight:600}
.tour-tools{display:flex;align-items:center;gap:6px}
.tour-listbtn{border:1px solid var(--line);background:#fff;border-radius:999px;font-size:12px;padding:3px 10px;cursor:pointer;color:#151515}
.tour-listbtn[aria-expanded=true]{background:#151515;color:#fff;border-color:#151515}
.tour-list{display:none;list-style:none;margin:8px 0 4px;padding:6px;max-height:min(46vh,340px);overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fafaf7}
.tour-tip.listing .tour-list{display:block}
.tour-list li{margin:0}.tour-list .tour-ch{font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--mute);font-weight:700;padding:8px 8px 2px}
.tour-list button{display:block;width:100%;text-align:left;border:0;background:none;padding:5px 8px;border-radius:8px;font-size:13px;cursor:pointer;color:#151515}
.tour-list button:hover{background:#eef3d6}.tour-list button.on{background:#151515;color:#fff}
.tour-tip.sheet .tour-list{max-height:30vh}
@media (max-width:719px){html.touring body{padding-bottom:62vh}}   /* room to scroll a highlight above the bottom sheet */
