/* t1680 · Night theme (style approach copied from sites/autolab-night-t1652/v4, not linked) */
/* @font-face lives in heebo-font.css (generated by build.py from Heebo.ttf as a data: URI so it also loads from file://) */
:root{--bg:#05070d;--bg2:#0a0f1d;--ink:#e8ecf3;--head:oklch(0.98 0 0);--mut:#a3adbf;--mut2:#c3cbd9;--g:#22c55e;--gdk:#04140a;--line:rgba(255,255,255,.12);--card:#0d1322;--card2:#111a2d;--r:16px}
*{box-sizing:border-box;margin:0;padding:0}
html,body{overflow-x:clip}
body{font-family:"Heebo",system-ui,sans-serif;color:var(--ink);background:linear-gradient(180deg,#0b1220 0%,#000 100%) fixed;background-color:#05070d;min-height:100vh;-webkit-font-smoothing:antialiased;line-height:1.5;font-size:16px}
.num{font-variant-numeric:tabular-nums}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--g);outline-offset:2px}
.skip{position:absolute;inset-inline-start:16px;top:-60px;background:var(--g);color:var(--gdk);font-weight:800;padding:10px 16px;border-radius:8px;z-index:10;text-decoration:none}
.skip:focus{top:12px}
/* locked wordmark (v4 .wm rules, copied) */
.wm{--k:1;display:inline-flex;align-items:center;direction:ltr;font-weight:800;letter-spacing:-0.025em;font-size:calc(24px*var(--k));line-height:calc(32px*var(--k));color:oklch(0.98 0 0);flex:none}
.wm .wmg{width:calc(24px*var(--k));height:calc(24px*var(--k));margin:0 calc(1px*var(--k));flex:none}
.wm .dot{width:calc(8px*var(--k));height:calc(8px*var(--k));margin-inline-start:calc(4px*var(--k));margin-bottom:calc(6px*var(--k));align-self:flex-end;border-radius:50%;background:#22c55e;flex:none}
/* header */
.hdr{max-width:1400px;margin:0 auto;padding:24px 24px 8px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.htxt{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
h1{font-size:clamp(24px,3vw,34px);font-weight:800;color:var(--head);letter-spacing:-.01em;line-height:1.15}
.internal{font-size:13px;font-weight:700;color:var(--mut2);border:1px solid var(--line);border-radius:999px;padding:4px 12px}
main{max-width:1400px;margin:0 auto;padding:0 24px}
/* summary + filters */
.sum{margin:16px 0 8px}
.sline{font-size:18px;color:var(--ink)}.sline b{color:var(--head);font-weight:800;font-size:22px}
.sep{color:var(--mut)}
.stage2{font-size:14px;color:var(--mut)}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 24px}
.fbtn{min-height:44px;padding:8px 20px;border-radius:999px;border:1.5px solid rgba(255,255,255,.22);background:transparent;font-weight:700;cursor:pointer;color:#dfe5ef}
.fbtn[aria-pressed=true]{background:var(--g);border-color:var(--g);color:var(--gdk)}
.fbtn:hover{border-color:var(--g)}
/* board */
.board{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;align-items:start}
.board:focus{outline:none}
.day{background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:var(--r);padding:12px 8px 16px;display:flex;flex-direction:column;gap:12px;min-height:200px}
.dname{font-size:18px;font-weight:800;color:var(--head);text-align:center;padding-bottom:8px;border-bottom:1px solid var(--line)}
.day.off{background:rgba(255,255,255,.015)}
.offtxt,.empty{color:var(--mut);text-align:center;font-size:14px;margin-top:8px}
/* card */
.card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:12px;display:flex;flex-direction:column;gap:8px;box-shadow:0 10px 30px rgba(0,0,0,.35);cursor:pointer;transition:border-color .15s,transform .15s}
.card:hover{border-color:rgba(34,197,94,.6);transform:translateY(-2px)}
.card[hidden]{display:none}
.card:focus-within{border-color:var(--g)}
.chips{display:flex;gap:4px;flex-wrap:wrap}
.chip{font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.22);color:#dfe5ef;line-height:1.5}
.chip.type{background:rgba(255,255,255,.08);border-color:transparent;color:var(--head)}
.chip.layer.eyes{border:1.5px solid var(--g);color:#86efac}
.chip.layer.warm{border:1.5px solid #8b95a7;color:#d4dae4}
.chip.layer.cta{background:var(--g);border-color:var(--g);color:var(--gdk)}
.chip.status{color:var(--mut2);font-weight:500}
.chip.st-draft_until_live{border-color:#d4a72c;color:#f3d27a}
.ctitle{font-size:16px;font-weight:800;color:var(--head);line-height:1.3}
.hit{all:unset;cursor:pointer}
.hit::after{content:"";position:absolute;inset:0;border-radius:var(--r)}
.hit:focus-visible{outline:none}
.card:has(.hit:focus-visible){outline:2px solid var(--g);outline-offset:2px}
.hook{font-weight:700;font-size:14px;color:var(--ink);line-height:1.4}
.ctalvl{font-size:13px;color:var(--mut);border-top:1px solid var(--line);padding-top:8px}
.btag{align-self:flex-start;font-size:12px;font-weight:700;color:var(--mut2);background:rgba(255,255,255,.06);border-radius:6px;padding:2px 8px}
.wtag{color:#86efac;background:rgba(34,197,94,.1)}
/* lanes */
.lane{margin-top:32px}
.lane[hidden]{display:none}
.lname{font-size:22px;font-weight:800;color:var(--head);margin-bottom:12px}
.lgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}
.lgrid.one{grid-template-columns:minmax(0,560px)}
.card.backup{background:#0b0f19;border-style:dashed;border-color:rgba(255,255,255,.16);box-shadow:none}
.card.backup .cmock{filter:saturate(.35)}
/* mockups */
.cmock{display:flex;flex-direction:column;align-items:center;gap:6px}
.reelwrap{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%}
.phone{position:relative;width:100%;max-width:220px;aspect-ratio:9/16;border-radius:18px;border:3px solid #1f2a40;background:radial-gradient(120% 70% at 50% 30%,#1b2438 0%,#070a12 70%);display:flex;align-items:center;justify-content:center;padding:16px 28px 16px 12px;overflow:hidden}
.phone.big{max-width:300px}
.clock{position:absolute;top:8px;inset-inline-end:10px;font-weight:800;font-size:22px;color:var(--head);letter-spacing:-.02em}
.phone.big .clock{font-size:32px}
.onscreen{font-weight:800;font-size:15px;line-height:1.3;color:var(--head);text-align:center;text-shadow:0 2px 10px #000}
.phone.big .onscreen{font-size:22px}
.side{position:absolute;inset-inline-end:6px;bottom:16px;display:flex;flex-direction:column;gap:10px;color:#dfe5ef}
[dir=rtl] .side{inset-inline-end:auto;right:6px}
.ico{width:16px;height:16px}
.phone.big .ico{width:24px;height:24px}
.rcap{font-size:12px;color:var(--mut2);text-align:center}
.slide{position:relative;width:100%;aspect-ratio:4/5;background:linear-gradient(170deg,#121b30,#070a12);border:1px solid var(--line);border-radius:12px;padding:28px 12px 12px;display:flex;flex-direction:column;justify-content:center;gap:10px;overflow:hidden}
.slide .stext{font-weight:800;font-size:15px;line-height:1.35;color:var(--head)}
.dots{display:flex;gap:4px;justify-content:center}
.dots span{width:6px;height:6px;border-radius:50%;background:#4b5568}
.dots span.on{background:var(--g)}
.demo{position:absolute;top:6px;inset-inline-start:6px;font-size:11px;font-weight:800;color:var(--gdk);background:#86efac;border-radius:6px;padding:1px 6px;z-index:1}
.wam{position:relative;background:#0b141a;border:1px solid #1e2c33;border-radius:12px;padding:24px 8px 8px;display:flex;flex-direction:column;gap:8px}
.wam .wcap{font-size:13px;font-weight:700;color:var(--head)}
.own{display:flex;flex-direction:column;gap:6px}
.bub{border-radius:10px;padding:6px 10px;max-width:92%;font-size:13px;line-height:1.4;color:#e9edef}
.bub .who{display:block;font-size:11px;font-weight:700;margin-bottom:1px}
.bub time{display:block;font-size:11px;color:#a3adbf;text-align:left}
.bub.in{background:#202c33;align-self:flex-start;border-start-start-radius:2px}.bub.in .who{color:#c3cbd9}
.bub.out{background:#11402c;align-self:flex-end;border-start-end-radius:2px}.bub.out .who{color:#86efac}
.bub.draft{border:1px dashed rgba(134,239,172,.6)}
.bub.out p+p{margin-top:6px}
.dlink{color:#7dd3fc;text-decoration:underline;cursor:default}
.acts{display:flex;gap:4px;justify-content:flex-end}
.act{font-size:12px;font-weight:700;border-radius:999px;padding:2px 10px;border:1px solid rgba(255,255,255,.25);color:#dfe5ef}
.act.approve{border-color:var(--g);color:#86efac}
.act.pressed{background:#e8ecf3;color:#05070d;border-color:#e8ecf3}
.act.approve.pressed{background:var(--g);color:var(--gdk);border-color:var(--g)}
.sent{align-self:flex-end;font-size:12px;font-weight:700;color:#86efac}
.lead{border-top:1px dashed rgba(255,255,255,.2);padding-top:8px;display:flex;flex-direction:column;gap:6px}
.leadlbl{font-size:11px;font-weight:800;color:var(--mut2)}
.linkopen{display:flex;align-items:center;gap:6px;background:#e8ecf3;color:#05070d;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700;align-self:flex-start}
.linkopen .ico{width:16px;height:16px}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.balbl{display:block;font-size:12px;font-weight:800;color:var(--head);margin-bottom:4px}
.mlogo{display:flex;justify-content:center;padding:8px 0}
.poll{display:flex;flex-direction:column;gap:4px;background:#e8ecf3;border-radius:10px;padding:6px}
.opt{background:#fff;color:#05070d;font-size:12px;font-weight:700;border-radius:6px;padding:3px 8px;text-align:center}
.tip{display:flex;flex-direction:column;gap:6px}
.tlead{font-weight:800;font-size:13px;color:var(--head)}
.tquote{background:#11402c;border-radius:10px;padding:6px 8px;font-size:12px;color:#e9edef}
.tsmall{font-size:11px;color:var(--mut2)}
.bubs{display:flex;flex-direction:column;gap:6px}
.typing{background:#202c33;border-radius:999px;padding:6px 12px;font-size:13px;color:#e9edef;display:flex;align-items:center}
.caret{display:inline-block;width:2px;height:1em;background:#86efac;margin-inline-start:2px;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.ticks{font-size:44px;font-weight:800;color:#53bdeb;letter-spacing:-12px;text-align:center}
.lsticker{display:flex;flex-direction:column;align-items:center;gap:8px}
.insetup{font-size:13px;font-weight:700;color:var(--head)}
.sticker{background:#fff;color:#05070d;font-weight:800;font-size:12px;border-radius:8px;padding:4px 10px;box-shadow:0 4px 12px rgba(0,0,0,.4);cursor:default;text-align:center}
.frames{display:flex;gap:6px;width:100%;justify-content:center}
.frame{flex:1 1 0;min-width:0;max-width:200px;aspect-ratio:9/16;background:radial-gradient(120% 80% at 50% 20%,#17203a,#06080f);border:1px solid var(--line);border-radius:12px;padding:8px;display:flex;flex-direction:column;justify-content:center;gap:8px;overflow:hidden}
.ftext{font-size:13px;font-weight:800;color:var(--head);line-height:1.3}
.card .frames.n3 .frame{padding:4px;border-radius:8px}
.card .frames.n3 .frame :not(.wm):not(.wm *){font-size:7px!important;line-height:1.25}
.card .frames.n3 .wam{padding:14px 3px 3px;gap:3px}
.card .frames.n3 .demo{font-size:7px;padding:0 3px;top:2px;inset-inline-start:2px}
.card .frames.n3 .bub{padding:2px 4px}
.card .frames.n3 .act{padding:0 3px}
.card .frames.n3 .wm{--k:.45!important}
.card .frames.n3 .sticker{padding:2px 4px}
.card .frames.n1 .frame{max-width:150px}
.card .slide .wam,.card .slide .ba{display:none}
.wachat{position:relative;width:100%;background:#0b141a;border:1px solid #1e2c33;border-radius:12px;padding:28px 10px 10px;display:flex;flex-direction:column;gap:8px}
.drafttag{position:absolute;top:6px;inset-inline-start:8px;font-size:11px;font-weight:800;color:#f3d27a;border:1px solid #d4a72c;border-radius:6px;padding:0 6px}
/* footer */
footer{max-width:1400px;margin:48px auto 0;border-top:1px solid var(--line);padding:24px;text-align:center;color:var(--mut);font-size:14px}
/* drawer */
dialog{position:fixed;margin:0;inset:0 0 0 auto;height:100%;max-height:100%;width:min(560px,100%);max-width:100%;background:#0a0f1d;color:var(--ink);border:0;border-inline-end:1px solid var(--line);padding:0;overflow:auto;box-shadow:0 0 60px rgba(0,0,0,.6)}
[dir=rtl] dialog{inset:0 0 0 auto}
dialog::backdrop{background:rgba(0,0,0,.6)}
.dhead{position:sticky;top:0;z-index:2;background:#0a0f1d;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px;border-bottom:1px solid var(--line)}
.dhead h2{font-size:20px;font-weight:800;color:var(--head);line-height:1.3}
.dclose{min-height:44px;min-width:64px;border-radius:999px;border:1.5px solid rgba(255,255,255,.3);background:transparent;font-weight:700;cursor:pointer;padding:0 16px}
.dclose:hover{border-color:var(--g)}
.dbody{padding:16px 24px 32px;display:flex;flex-direction:column;gap:16px}
.preview{display:flex;justify-content:center}
.preview .frames{gap:8px}
.preview .frame{max-width:170px}
.preview .frames.n1 .frame{max-width:260px}
.preview .frame :not(.wm):not(.wm *){font-size:11px}
.preview .frames.n3 .wam{padding:18px 4px 4px}
.preview .frames.n3 .demo{font-size:9px}
.viewer{width:100%;max-width:440px;display:flex;flex-direction:column;gap:8px}
.viewer .slide{padding:32px 16px 16px;justify-content:flex-start}
.viewer .slide .stext{font-size:19px}
.vnav{display:flex;justify-content:center;align-items:center;gap:16px}
.varrow{min-width:44px;min-height:44px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);background:transparent;font-size:24px;font-weight:800;cursor:pointer;line-height:1}
.varrow:disabled{opacity:.35;cursor:default}
.vcount{font-weight:700;color:var(--mut2)}
.field .flbl{font-size:13px;font-weight:800;color:var(--g);margin-bottom:2px}
.field p,.field li{color:var(--ink)}
.field ul{padding-inline-start:20px}
.note{font-size:14px;color:var(--mut2)}
.twrap{overflow-x:auto}
table.script{width:100%;border-collapse:collapse;font-size:14px}
.script th{text-align:start;font-weight:800;color:var(--head);border-bottom:1px solid var(--line);padding:6px}
.script td{vertical-align:top;border-bottom:1px solid rgba(255,255,255,.06);padding:6px;color:var(--ink)}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
/* tablet */
@media (max-width:1100px){.lgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* mobile: 7 rows by day */
@media (max-width:760px){
  .hdr,main{padding-inline:16px}
  .board{grid-template-columns:minmax(0,1fr);gap:12px}
  .day{min-height:0;padding:12px}
  .dname{text-align:start}
  .day:not(.off) .card{max-width:100%}
  .lgrid,.lgrid.one{grid-template-columns:minmax(0,1fr)}
  .card .phone{max-width:200px}
  .card .slide{max-width:280px;align-self:center}
  .card .frames.n3 .frame :not(.wm):not(.wm *){font-size:10px!important}
  .card .frames.n3 .wm{--k:.6!important}
  .ba{grid-template-columns:1fr}
  .dhead,.dbody{padding-inline:16px}
}
/* t1680 visual fixes */
.chip.status{font-size:11px;padding:1px 7px}
.chip.st-pm_seo_humanizer{border-color:rgba(134,239,172,.45);color:#bbf7d0}
.lgrid .cmock .phone{max-width:200px}
.lgrid .cmock .slide{max-width:260px}
.lgrid .cmock .wachat{max-width:none}
.day{background:transparent;border-color:rgba(255,255,255,.08);padding:10px 6px 12px}
.frame:has(.wam){justify-content:flex-start}
.preview .frames.n3 .frame{padding:6px}
.preview .frames.n3 .wam{gap:4px}
.preview .frames.n3 .bub{padding:4px 6px}
.preview .frames.n3 .act{padding:1px 6px}
@media (max-width:760px){.preview .frames.n3 .frame :not(.wm):not(.wm *){font-size:9px}.preview .frames.n3 .demo{font-size:8px}}
@media (max-width:760px){.preview .frames.n3{flex-direction:column;align-items:center}.preview .frames.n3 .frame{width:min(100%,250px);flex:none}.preview .frames.n3 .frame :not(.wm):not(.wm *){font-size:12px}.preview .frames.n3 .demo{font-size:10px}}

/* t1680d visual fixes */
.chip{white-space:nowrap;max-width:100%}
.chips{flex-wrap:wrap}
.empty{font-size:13px}
.script td:first-child,.script th:first-child{white-space:nowrap;min-width:5.5em}
.viewer .slide[data-n="1"]{justify-content:center}
.card .frames.only1 .frame{max-width:150px;margin-inline:auto}
.fcount{display:block;text-align:center;font-size:12px;color:var(--mut2);margin-top:6px}
.card .frame .wcap,.card .frame .ftext{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;position:relative}
.card .frame .wcap::after,.card .frame .ftext::after{content:"";position:absolute;inset-inline:0;bottom:0;height:.9em;background:linear-gradient(to bottom,transparent,rgba(10,15,29,.95));pointer-events:none}
.preview .frames.n3 .frame .wam > .demo{font-size:10px!important;line-height:1.5}
.preview .frames.n3 .frame .wam{padding-top:26px}
