:root{
  --bg:#000000; --panel:#0C0E13; --panel2:#15181F; --stroke:#23262E;
  --gold:#D19F53; --goldl:#E9C679; --txt:#F5F4F2; --mute:#8A93A0;
  --poe:#D19F53; --ndi:#4F8FD6; --dante:#2FB89A; --ctrl:#6E7682;
  --good:#3FA84F; --warn:#E0795A;
  --slab:'Roboto Slab',Georgia,serif; --sans:'Public Sans','Segoe UI',system-ui,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body{background:#000000;color:var(--txt);
  font-family:var(--sans);font-weight:300;-webkit-font-smoothing:antialiased}
a{color:inherit}
.app{max-width:1340px;margin:0 auto;padding:20px clamp(14px,3vw,30px) 50px}

/* top bar */
.topbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.brand{display:flex;align-items:center;gap:13px}
.logomark{width:30px;height:30px;display:block;flex:0 0 auto}
.brand h1{font-family:var(--slab);font-weight:600;font-size:21px;margin:0}
.brand .tag{color:var(--gold);font-weight:600;font-size:11px;letter-spacing:2.4px;margin-top:2px}
.nav{display:flex;gap:4px;background:var(--panel);border:1px solid var(--stroke);border-radius:12px;padding:5px;margin-left:auto;flex-wrap:wrap}
.nav button{appearance:none;border:0;background:transparent;color:var(--mute);font-family:var(--sans);font-weight:600;
  font-size:13px;padding:9px 16px;border-radius:8px;cursor:pointer;transition:.18s}
.nav button:hover{color:var(--txt)}
.nav button.is-active{background:linear-gradient(180deg,#26313f,#161d27);color:var(--txt);box-shadow:0 0 0 1px var(--stroke)}

h2.view-h{font-family:var(--slab);font-weight:600;font-size:clamp(22px,2.6vw,30px);margin:6px 0 4px}
.view-sub{color:var(--mute);font-size:14px;margin:0 0 22px;max-width:760px;line-height:1.55}
.eyebrow{color:var(--gold);font-weight:600;font-size:11px;letter-spacing:2px;text-transform:uppercase;margin:0 0 6px}
.k{color:var(--gold);font-weight:600;font-size:11px;letter-spacing:1.4px;text-transform:uppercase;margin:0 0 8px}

/* ---- stand explorer ---- */
.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.seg{display:inline-flex;background:var(--panel);border:1px solid var(--stroke);border-radius:11px;padding:4px;gap:3px}
.seg button{appearance:none;border:0;background:transparent;color:var(--mute);font-family:var(--sans);font-weight:600;font-size:13px;padding:8px 15px;border-radius:8px;cursor:pointer;transition:.18s}
.seg button:hover{color:var(--txt)}
.seg button.is-active{background:linear-gradient(180deg,#26313f,#161d27);color:var(--txt);box-shadow:0 0 0 1px var(--stroke)}
.journey-pick{display:inline-flex;align-items:center;gap:9px;margin-left:auto;background:var(--panel);border:1px solid var(--stroke);border-radius:11px;padding:6px 8px 6px 14px}
.journey-pick label{font-size:12px;color:var(--gold);font-weight:600;letter-spacing:.4px}
.journey-pick select,.filter select{appearance:none;background:var(--panel2);color:var(--txt);border:1px solid var(--stroke);border-radius:8px;padding:8px 30px 8px 12px;font-family:var(--sans);font-size:13.5px;font-weight:600;cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 16px) 16px,calc(100% - 11px) 16px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.stage-wrap{display:grid;grid-template-columns:1fr 360px;gap:16px;align-items:start}
.stage{position:relative;background:linear-gradient(180deg,#0d141c,#0a0e14);border:1px solid var(--stroke);border-radius:18px;overflow:hidden;box-shadow:inset 0 0 80px rgba(0,0,0,.5)}
svg.plan{display:block;width:100%;height:auto;user-select:none}
#viewport{transition:transform .85s cubic-bezier(.22,.61,.36,1);transform-box:view-box;transform-origin:0 0}
.zone{cursor:pointer}
.zone .z-body{fill:var(--panel);stroke:var(--stroke);stroke-width:1.4;transition:.3s}
.zone .z-accent{fill:#39414e;transition:.3s}
.zone .z-name{fill:var(--txt);font-family:var(--slab);font-weight:600;font-size:16px}
.zone .z-sub{fill:var(--mute);font-size:12px}
.zone:hover .z-body{stroke:var(--gold)}
.zone:hover .z-accent{fill:var(--gold)}
.zone.is-active .z-body{stroke:var(--gold);stroke-width:2.2;fill:#1a2230}
.zone.is-active .z-accent{fill:var(--gold)}
.zone.dimmed{opacity:.26;filter:saturate(.4)}
.zone.core .z-body{fill:url(#engGrad);stroke:var(--gold);stroke-width:2.2}
.zone.core .z-accent{fill:var(--gold)}
.zone.core .z-sub{fill:var(--goldl)}
.glyph{fill:#222b37;stroke:var(--stroke);stroke-width:1}
.screen{fill:#10161e;stroke:var(--ndi);stroke-width:1.1}
.screen-gold{fill:#10161e;stroke:var(--gold);stroke-width:1.2}
.conn{stroke-width:2.4;fill:none;opacity:0;transition:opacity .5s;stroke-linecap:round}
.conn.show{opacity:.6}
.conn.flow{stroke-dasharray:3 9;animation:flow 1.1s linear infinite}
@keyframes flow{to{stroke-dashoffset:-24}}
.engine-pulse{fill:none;stroke:var(--gold);opacity:0;transform-origin:center;transform-box:fill-box}
.engine-pulse.on{animation:pulse 3s ease-out infinite}
@keyframes pulse{0%{opacity:.5;transform:scale(.6)}70%{opacity:0;transform:scale(1.5)}100%{opacity:0}}
.route-path{fill:none;stroke:var(--gold);stroke-width:2.4;stroke-dasharray:5 7;opacity:0;transition:opacity .5s}
.route-path.show{opacity:.85;animation:flow 1.4s linear infinite}
.stop-badge circle{fill:var(--gold);stroke:#0a0e14;stroke-width:2}
.stop-badge.active circle{fill:#fff}
.stop-badge text{fill:#0a0e14;font-weight:700;font-size:13px;font-family:var(--sans)}

.side{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:18px;padding:20px;min-height:480px;position:sticky;top:14px}
.side h3{font-family:var(--slab);font-weight:600;font-size:20px;margin:0 0 4px;line-height:1.2}
.side h3 small{display:block;color:var(--mute);font-family:var(--sans);font-size:12.5px;font-weight:400;margin-top:5px}
.side p{color:#c8cdd5;font-size:13.5px;line-height:1.6}
.divide{height:1px;background:var(--stroke);margin:15px 0}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font-size:11.5px;font-weight:600;padding:5px 10px;border-radius:20px;border:1px solid var(--stroke);color:var(--txt);background:#070809}
.chip i{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:6px;vertical-align:middle}
.chip.kit{background:#0a0c10;border-color:#33404e;color:#cdd3da;font-weight:400}
.partner-chip{cursor:pointer;transition:.18s}
.partner-chip:hover{border-color:var(--gold);color:var(--goldl)}
.proof{background:#070809;border:1px solid var(--stroke);border-left:3px solid var(--gold);border-radius:8px;padding:11px 13px;margin:10px 0;font-size:13px;color:#d6dae0;line-height:1.55}
.value-row{display:flex;gap:9px;margin-top:8px}
.value-row .v{flex:1;background:#070809;border:1px solid var(--stroke);border-radius:10px;padding:10px;text-align:left}
.value-row .v b{display:block;font-family:var(--slab);font-size:18px;color:var(--goldl)}
.value-row .v span{font-size:11px;color:var(--mute)}
.steps{display:flex;flex-direction:column;gap:8px}
.step{display:flex;gap:11px;padding:11px 12px;border-radius:11px;border:1px solid var(--stroke);background:#070809;cursor:pointer;transition:.18s}
.step:hover{border-color:#3c4654}
.step.active{border-color:var(--gold);background:#1a2230}
.step .num{flex:0 0 24px;height:24px;border-radius:50%;background:var(--panel2);border:1px solid var(--stroke);display:grid;place-items:center;font-weight:700;font-size:12px;color:var(--mute)}
.step.active .num{background:var(--gold);color:#0a0e14;border-color:var(--gold)}
.step .s-title{font-weight:600;font-size:13.5px;margin:0 0 3px}
.step .s-talk{color:var(--mute);font-size:12.5px;line-height:1.5;margin:0 0 6px}
.step.active .s-talk{color:#c8cdd5}
.step .s-kit{display:flex;flex-wrap:wrap;gap:4px}
.btn{appearance:none;border:1px solid var(--stroke);background:var(--panel2);color:var(--txt);font-family:var(--sans);font-weight:600;font-size:13px;padding:10px 14px;border-radius:9px;cursor:pointer;transition:.18s}
.btn:hover{border-color:var(--gold)}
.btn.primary{background:linear-gradient(180deg,var(--gold),#bd8c42);color:#1a130a;border-color:var(--gold)}
.row-btns{display:flex;gap:8px;margin-top:14px}
.row-btns .btn{flex:1}
.legend{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:14px;color:var(--mute);font-size:12.5px}
.legend .sw{width:22px;height:5px;border-radius:3px;display:inline-block;margin-right:7px}
.legend .li{display:flex;align-items:center}
.foot{color:var(--mute);font-size:11.5px;margin-top:14px;line-height:1.5;border-top:1px solid var(--stroke);padding-top:12px}

/* ---- cards / grids ---- */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:14px}
.card{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:15px;padding:17px;cursor:pointer;transition:.2s;position:relative;overflow:hidden}
.card:hover{border-color:var(--gold);transform:translateY(-2px)}
.card .bar{position:absolute;left:0;top:0;width:4px;height:100%}
.card h4{font-family:var(--slab);font-weight:600;font-size:16px;margin:0 0 2px}
.card .tier{font-size:11.5px;color:var(--mute);margin-bottom:10px}
.card p{font-size:12.5px;color:#c2c8d0;line-height:1.5;margin:0 0 12px}
.card .meta{display:flex;justify-content:space-between;align-items:center;font-size:12px}
.card .meta b{font-family:var(--slab);color:var(--goldl);font-size:15px}
.stage-pill{font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px}
.st-Committed{background:rgba(63,168,79,.16);color:#6fce81}
.st-Warm{background:rgba(209,159,83,.16);color:var(--goldl)}
.st-Target{background:rgba(79,143,214,.16);color:#7fb2e8}
.st-Prospect{background:rgba(138,147,160,.16);color:#aab2bd}

/* partner detail */
.pd-hero{display:grid;grid-template-columns:1fr 300px;gap:16px;margin-bottom:18px}
.pd-main{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:16px;padding:24px}
.pd-main h3{font-family:var(--slab);font-size:26px;margin:6px 0 8px}
.pd-ask{background:linear-gradient(180deg,#1a2230,#11161e);border:1px solid var(--gold);border-radius:16px;padding:22px;text-align:center}
.pd-ask .big{font-family:var(--slab);font-size:40px;color:var(--gold);line-height:1}
.pd-ask .lbl{font-size:12px;color:var(--mute);margin:4px 0 14px}
.pd-ask p{font-size:12.5px;color:#c8cdd5;text-align:left;line-height:1.5}
.pd-ask hr{border:0;border-top:1px solid var(--stroke);margin:12px 0}
.val-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-bottom:18px}
.val-grid article{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:13px;padding:15px}
.val-grid h5{margin:0 0 6px;font-size:13px;color:var(--gold);font-weight:600}
.val-grid p{margin:0;font-size:12.5px;color:#c2c8d0;line-height:1.5}

/* tables */
.tablewrap{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:14px;overflow:hidden}
table{width:100%;border-collapse:collapse;font-size:13px}
th{text-align:left;padding:11px 14px;font-family:var(--slab);font-weight:600;font-size:12px;color:var(--mute);background:#070809;border-bottom:1px solid var(--stroke);text-transform:uppercase;letter-spacing:.6px}
td{padding:10px 14px;border-bottom:1px solid #1d2530;color:#cdd3da}
tr:last-child td{border-bottom:0}
tr:hover td{background:#0a0c10}
.qty{color:var(--goldl);font-weight:600}
.sig-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:6px;vertical-align:middle}
.status{font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px;background:#0a0c10;border:1px solid var(--stroke);color:#aab2bd;white-space:nowrap}
.filter{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px;align-items:center}
.zone-head{font-family:var(--slab);font-size:14px;color:var(--gold);margin:18px 0 8px}

/* programme */
.prog{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.prog .day{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:14px;padding:14px}
.prog .day h4{font-family:var(--slab);margin:0 0 12px;font-size:15px}
.slot{border-radius:10px;padding:9px 11px;margin-bottom:8px;border:1px solid var(--stroke);background:#070809}
.slot .t{font-size:11px;font-weight:700;letter-spacing:.4px}
.slot .ti{font-size:12.5px;color:#dfe3e8;margin:3px 0 0;line-height:1.4}
.slot .pn{font-size:11px;color:var(--mute);margin-top:4px}
.slot.Education{border-left:3px solid var(--ndi)}
.slot.Podcast{border-left:3px solid var(--gold)}
.slot.Event{border-left:3px solid var(--ctrl);opacity:.85}
.slot.Education .t{color:#7fb2e8}.slot.Podcast .t{color:var(--goldl)}.slot.Event .t{color:#aab2bd}

/* commercial */
.cmd-top{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;margin-bottom:18px}
.gaugebox{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:16px;padding:20px}
.gaugebox h4{font-family:var(--slab);margin:0 0 4px;font-size:16px}
.gaugebox .gsub{color:var(--mute);font-size:12.5px;margin:0 0 16px}
.gauge{position:relative;height:34px;background:#070809;border:1px solid var(--stroke);border-radius:8px;overflow:hidden;margin-bottom:8px}
.gauge .seg{position:absolute;top:0;height:100%;transition:width .4s}
.gauge .committed{background:linear-gradient(180deg,#3FA84F,#2e8a3e);z-index:3}
.gauge .weighted{background:linear-gradient(180deg,var(--gold),#bd8c42);opacity:.5;z-index:2}
.gauge .stretch{background:#39414e;opacity:.4;z-index:1}
.gauge .targetline{position:absolute;top:-4px;height:42px;width:2px;background:#fff;z-index:5}
.gauge .targetline::after{content:'';position:absolute;top:-2px;left:-3px;width:8px;height:8px;background:#fff;border-radius:50%}
.glabels{display:flex;justify-content:space-between;font-size:11px;color:var(--mute);margin-top:6px}
.metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.metric{background:#070809;border:1px solid var(--stroke);border-radius:12px;padding:13px}
.metric span{font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.5px}
.metric b{display:block;font-family:var(--slab);font-size:23px;margin-top:3px}
.metric.gap b{color:var(--warn)}.metric.gap.ok b{color:var(--good)}
.metric small{font-size:11px;color:var(--mute)}
.pipeline{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:16px;padding:18px}
.pipeline h4{font-family:var(--slab);margin:0 0 12px;font-size:15px}
.pbar{display:flex;align-items:center;gap:10px;margin-bottom:9px;font-size:12.5px}
.pbar .name{flex:0 0 92px;color:var(--mute)}
.pbar .track{flex:1;height:14px;background:#070809;border-radius:7px;overflow:hidden}
.pbar .fill{height:100%;border-radius:7px}
.pbar .amt{flex:0 0 78px;text-align:right;font-family:var(--slab);color:var(--goldl)}
.planner{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:16px;padding:18px;margin-top:4px}
.planner h4{font-family:var(--slab);margin:0 0 4px;font-size:16px}
.planner .psub{color:var(--mute);font-size:12.5px;margin:0 0 14px}
.prow{display:grid;grid-template-columns:1.4fr 1.3fr 1fr 1fr 0.9fr;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #1d2530}
.prow.head{font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--stroke);padding-bottom:8px}
.prow .pn{font-weight:600}.prow .pn small{display:block;color:var(--mute);font-weight:400;font-size:11px}
.prow input[type=range]{width:100%;accent-color:var(--gold)}
.prow .num{display:flex;align-items:center;gap:6px}
.prow .num input{width:78px;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:7px;padding:6px 8px;font-family:var(--sans);font-size:12.5px}
.prow .wt{font-family:var(--slab);color:var(--goldl);text-align:right}
.prow .pk{font-family:var(--slab);color:#9fb1c9;text-align:right;font-size:13px}
.inv{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.inv .ibox{background:#070809;border:1px solid var(--stroke);border-radius:12px;padding:14px}
.inv h5{margin:0 0 8px;font-size:12px;color:var(--gold)}
.inv .ibar{height:10px;background:#1b2330;border-radius:5px;overflow:hidden;margin:6px 0}
.inv .ibar i{display:block;height:100%;background:var(--gold)}
.inv .il{font-size:11.5px;color:var(--mute)}
.note{color:var(--mute);font-size:12px;margin-top:14px;line-height:1.5;background:#070809;border:1px solid var(--stroke);border-radius:10px;padding:12px 14px}

@media(max-width:920px){
  .stage-wrap,.pd-hero,.cmd-top{grid-template-columns:1fr}
  .side{position:static;min-height:0}
  .prow{grid-template-columns:1fr 1fr;gap:8px}
  .prow.head{display:none}
  .nav{margin-left:0;width:100%;justify-content:flex-start}
}

/* ====================== PACKAGE BUILDER ====================== */
.loginlink{appearance:none;border:1px solid var(--stroke);background:transparent;color:var(--mute);font-family:var(--sans);
  font-weight:600;font-size:12.5px;padding:9px 14px;border-radius:9px;cursor:pointer;transition:.18s;margin-left:10px}
.loginlink:hover{border-color:var(--gold);color:var(--goldl)}
.fstrip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px}
.fstrip .tile{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:12px;padding:13px 15px}
.fstrip .tile span{font-size:10.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.6px}
.fstrip .tile b{display:block;font-family:var(--slab);font-size:21px;margin-top:3px}
.fstrip .tile.gap b{color:var(--warn)} .fstrip .tile.gap.ok b{color:var(--good)}
.fstrip .tile small{font-size:10.5px;color:var(--mute)}

.palette{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:14px;padding:14px 15px;margin-bottom:16px}
.palette .ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.palette .ph p{margin:0;font-size:12.5px;color:var(--mute)}
.blocks{display:flex;flex-wrap:wrap;gap:8px}
.pblock{display:flex;align-items:center;gap:9px;background:#0a0c10;border:1px solid var(--stroke);border-left-width:3px;
  border-radius:9px;padding:8px 12px;cursor:grab;transition:.15s;user-select:none}
.pblock:hover{border-color:var(--gold);transform:translateY(-1px)}
.pblock:active{cursor:grabbing}
.pblock .nm{font-weight:600;font-size:12.5px}
.pblock .vl{font-family:var(--slab);font-size:12px;color:var(--goldl)}
.pblock .add{width:18px;height:18px;border-radius:50%;border:1px solid var(--stroke);display:grid;place-items:center;font-size:13px;color:var(--mute)}

.builder{display:flex;flex-direction:column;gap:10px}
.brow{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:14px;overflow:hidden;transition:.15s}
.brow.dragover{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.brow.focused{border-color:#3c4654}
.brow-head{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr auto;gap:14px;align-items:center;padding:14px 16px;cursor:pointer}
.brow-head .pn{font-family:var(--slab);font-size:15px}
.brow-head .pn small{display:block;font-family:var(--sans);font-size:11px;color:var(--mute);font-weight:400;margin-top:2px}
.brow-head .lab{font-size:10px;color:var(--mute);text-transform:uppercase;letter-spacing:.5px}
.brow-head .val{font-family:var(--slab);font-size:18px;color:var(--goldl)}
.brow-head .ask input{width:92px;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:7px;padding:6px 9px;font-family:var(--sans);font-size:13px}
.brow-head .mult{font-family:var(--slab);font-size:16px}
.brow-head .mult.good{color:var(--good)} .brow-head .mult.low{color:var(--warn)}
.lockbtn{appearance:none;border:1px solid var(--gold);background:transparent;color:var(--goldl);font-family:var(--sans);font-weight:600;font-size:12px;padding:8px 13px;border-radius:8px;cursor:pointer;white-space:nowrap;transition:.15s}
.lockbtn:hover{background:var(--gold);color:#1a130a}
.lockbtn.is-locked{border-color:var(--good);color:#6fce81}
.brow-bar{display:flex;height:26px;margin:0 16px;border-radius:6px;overflow:hidden;background:#070809;border:1px dashed #2a3340;min-height:26px}
.brow-bar.empty{align-items:center;justify-content:center}
.brow-bar.empty span{font-size:11.5px;color:var(--mute)}
.bseg{height:100%;cursor:pointer;transition:.15s;min-width:3px}
.bseg:hover{filter:brightness(1.2)}
.brow-edit{padding:6px 16px 16px;display:none}
.brow.open .brow-edit{display:block}
.brow.open .brow-bar{margin-bottom:12px}
.lockinfo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#070809;border:1px solid var(--stroke);border-radius:9px;padding:10px 13px;margin:0 16px 12px;font-size:12.5px}
.lockinfo code{background:#1b2330;border:1px solid var(--stroke);border-radius:6px;padding:3px 9px;color:var(--goldl);font-family:var(--slab)}
.beditline{display:grid;grid-template-columns:18px 1.4fr 110px 120px 90px 28px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #1d2530;font-size:12.5px}
.beditline:last-child{border-bottom:0}
.beditline .dot{width:11px;height:11px;border-radius:3px}
.beditline .bn{font-weight:600}.beditline .bn small{display:block;color:var(--mute);font-weight:400;font-size:11px;line-height:1.35}
.beditline .vin input{width:96px;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:6px;padding:5px 8px;font-size:12.5px}
.qstep{display:inline-flex;align-items:center;gap:6px}
.qstep button{width:22px;height:22px;border-radius:6px;border:1px solid var(--stroke);background:var(--panel2);color:var(--txt);cursor:pointer;font-size:14px;line-height:1}
.qstep .q{min-width:16px;text-align:center;font-weight:600}
.beditline .lt{font-family:var(--slab);color:var(--goldl);text-align:right}
.brm{width:24px;height:24px;border-radius:6px;border:1px solid var(--stroke);background:var(--panel2);color:var(--mute);cursor:pointer}
.brm:hover{border-color:var(--warn);color:var(--warn)}
.emptyedit{color:var(--mute);font-size:12.5px;padding:8px 0}

/* ====================== PARTNER PROPOSAL / LOGIN ====================== */
.login-wrap{max-width:440px;margin:40px auto;background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:18px;padding:30px}
.login-wrap h2{font-family:var(--slab);font-size:24px;margin:0 0 6px}
.login-wrap p{color:var(--mute);font-size:13px;margin:0 0 18px}
.login-wrap label{display:block;font-size:12px;color:var(--gold);font-weight:600;margin-bottom:6px}
.login-wrap input{width:100%;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:9px;padding:12px;font-family:var(--sans);font-size:14px;margin-bottom:14px}
.login-err{color:var(--warn);font-size:12.5px;margin:-6px 0 12px;min-height:16px}
.login-demo{margin-top:18px;border-top:1px solid var(--stroke);padding-top:14px}
.login-demo .dl{font-size:11px;color:var(--mute);margin-bottom:8px}
.login-demo button{margin:0 6px 6px 0}

.prop-hero{background:linear-gradient(135deg,#11202b,#0a0e14);border:1px solid var(--gold);border-radius:18px;padding:34px;margin-bottom:18px;position:relative;overflow:hidden}
.prop-hero .eyebrow{margin-bottom:10px}
.prop-hero h2{font-family:var(--slab);font-size:clamp(24px,3.4vw,36px);margin:0 0 12px;line-height:1.12}
.prop-hero .intro{color:#dfe3e8;font-size:15px;line-height:1.6;max-width:660px}
.prop-hero input.edit, .prop-hero textarea.edit{width:100%;background:rgba(255,255,255,.04);border:1px dashed var(--gold);color:var(--txt);border-radius:8px;padding:10px;font-family:inherit}
.prop-hero textarea.edit{font-size:15px;line-height:1.6;min-height:80px}
.prop-deal{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-bottom:20px}
.prop-deal .d{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:14px;padding:18px;text-align:center}
.prop-deal .d b{display:block;font-family:var(--slab);font-size:30px;color:var(--goldl);line-height:1}
.prop-deal .d.invest b{color:#fff} .prop-deal .d.mult b{color:var(--good)}
.prop-deal .d span{font-size:12px;color:var(--mute);margin-top:6px;display:block}
.pkgcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin-bottom:8px}
.pkgcard{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-left:3px solid var(--gold);border-radius:13px;padding:15px}
.pkgcard .h{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.pkgcard h5{margin:0;font-size:14px}
.pkgcard .v{font-family:var(--slab);color:var(--goldl);font-size:14px;white-space:nowrap}
.pkgcard p{margin:7px 0 0;font-size:12px;color:#c2c8d0;line-height:1.5}
.pkgcard .q{font-size:11px;color:var(--mute)}
.editbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#070809;border:1px solid var(--gold);border-radius:10px;padding:10px 14px;margin-bottom:16px}
.editbar span{font-size:12.5px;color:var(--goldl);font-weight:600}
.cta-band{background:linear-gradient(135deg,#1a2230,#11161e);border:1px solid var(--stroke);border-radius:16px;padding:24px;margin-top:18px;text-align:center}
.cta-band h3{font-family:var(--slab);font-size:20px;margin:0 0 8px}
.cta-band p{color:#c8cdd5;font-size:13.5px;margin:0 0 16px}

/* ====================== CHROME / GATE ====================== */
#chrome{display:flex;align-items:center;gap:12px;margin-left:auto;flex-wrap:wrap}
.brand{cursor:pointer}
.logoutbtn{appearance:none;border:1px solid var(--stroke);background:transparent;color:var(--mute);font-weight:600;font-size:12.5px;padding:9px 14px;border-radius:9px;cursor:pointer}
.logoutbtn:hover{border-color:var(--warn);color:var(--warn)}
.rolechip{font-size:11px;color:var(--mute);background:#070809;border:1px solid var(--stroke);border-radius:20px;padding:6px 12px}
.rolechip b{color:var(--goldl)}

.gate{display:grid;grid-template-columns:1.25fr .85fr;border:1px solid var(--stroke);border-radius:20px;overflow:hidden;min-height:540px;margin-top:6px}
.gate-hero{position:relative;padding:46px;display:flex;flex-direction:column;justify-content:flex-end;background-size:cover;background-position:center}
.gate-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,10,14,.92),rgba(7,10,14,.45) 70%,rgba(7,10,14,.2))}
.gate-hero>*{position:relative;z-index:1}
.gate-hero .eyebrow{font-size:12px;letter-spacing:2.6px;margin-bottom:14px}
.gate-hero h2{font-family:var(--slab);font-weight:600;font-size:clamp(30px,4.2vw,48px);margin:0 0 16px;line-height:1.08;max-width:560px}
.gate-hero p{color:#dfe3e8;font-size:15px;line-height:1.6;max-width:480px;margin:0}
.gate-login{background:linear-gradient(180deg,var(--panel),#070809);padding:42px 38px;display:flex;flex-direction:column;justify-content:center}
.gate-login h3{font-family:var(--slab);font-size:21px;margin:0 0 6px}
.gate-login .sub{color:var(--mute);font-size:13px;margin:0 0 20px}
.gate-login label{font-size:12px;color:var(--gold);font-weight:600;margin-bottom:7px;display:block}
.gate-login input{width:100%;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:10px;padding:13px;font-family:var(--sans);font-size:15px;margin-bottom:14px}
.gate-login input:focus{outline:none;border-color:var(--gold)}
.gate-err{color:var(--warn);font-size:12.5px;min-height:18px;margin:-6px 0 10px}
.gate-demo{margin-top:22px;border-top:1px solid var(--stroke);padding-top:16px;font-size:11.5px;color:var(--mute);line-height:1.9}
.gate-demo code{background:#1b2330;border:1px solid var(--stroke);border-radius:5px;padding:2px 7px;color:var(--goldl);cursor:pointer}
@media(max-width:820px){.gate{grid-template-columns:1fr}.gate-hero{min-height:300px}}

/* ====================== OFFERINGS EDITOR ====================== */
.offerings{margin-bottom:16px}
.offerings summary{cursor:pointer;font-family:var(--slab);font-size:15px;color:var(--txt);padding:14px 16px;background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:12px;list-style:none}
.offerings summary::-webkit-details-marker{display:none}
.offerings summary span{color:var(--mute);font-family:var(--sans);font-size:12px;font-weight:400;float:right}
.offerings[open] summary{border-radius:12px 12px 0 0}
.off-body{border:1px solid var(--stroke);border-top:0;border-radius:0 0 12px 12px;padding:14px 16px;background:#0f141b}
.offrow{display:grid;grid-template-columns:14px 1.3fr .9fr 100px 1.6fr 28px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #1d2530}
.offrow.head{font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--stroke)}
.offrow input{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:6px;padding:6px 8px;font-size:12.5px;width:100%}
.offrow .sw{width:14px;height:14px;border-radius:4px}
.offadd{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;align-items:center}
.offadd input{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:7px;padding:8px 10px;font-size:12.5px}

.teamline{display:flex;align-items:center;gap:10px;padding:10px 0 6px;border-bottom:1px solid #1d2530;margin-bottom:8px;font-size:13px;color:#cdd3da}
.teamline .qstep button{width:24px;height:24px}

/* ====================== LEADS ====================== */
.lead-controls{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px;align-items:center}
.lead-controls select,.lead-controls input{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:9px 12px;font-family:var(--sans);font-size:13px}
.lead-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px;align-items:start}
.byorg{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:14px;padding:16px}
.byorg h4{font-family:var(--slab);font-size:15px;margin:0 0 12px}
.orgrow{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:13px}
.orgrow .on{flex:0 0 130px}.orgrow .ot{flex:1;height:12px;background:#070809;border-radius:6px;overflow:hidden}
.orgrow .of{height:100%;background:var(--gold);border-radius:6px}
.orgrow .oc{flex:0 0 60px;text-align:right;font-family:var(--slab);color:var(--goldl)}
.orgrow.hot .on::after{content:' ●';color:var(--warn)}
.leadnote{width:100%;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:6px;padding:6px 8px;font-size:12.5px;font-family:var(--sans)}
.intpill{font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px;color:#1a130a}
@media(max-width:820px){.lead-grid{grid-template-columns:1fr}}

/* ====================== PROPOSAL VISUAL ====================== */
.prop-hero.has-img{padding:0;border:1px solid var(--gold);border-radius:18px;overflow:hidden;margin-bottom:18px}
.prop-hero .hero-img{position:relative;background-size:cover;background-position:center;padding:40px 36px;min-height:340px;display:flex;flex-direction:column;justify-content:flex-end}
.prop-hero .hero-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,10,14,.35),rgba(7,10,14,.92))}
.prop-hero .hero-img>*{position:relative;z-index:1}
.prop-why{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:18px 0}
.prop-why article{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:13px;padding:16px}
.prop-why h5{margin:0 0 7px;font-size:13.5px;color:var(--gold)}
.prop-why p{margin:0;font-size:12.5px;color:#c2c8d0;line-height:1.55}
.ask-band{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:14px;margin:18px 0;align-items:stretch}
.ask-band .ab{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:14px;padding:18px}
.ask-band .ab.contrib{background:linear-gradient(180deg,#1a2230,#11161e);border-color:var(--gold);text-align:center;display:flex;flex-direction:column;justify-content:center}
.ask-band .ab.contrib b{font-family:var(--slab);font-size:38px;color:var(--gold);line-height:1}
.ask-band .ab.contrib span{font-size:12px;color:var(--mute);margin-top:6px}
.ask-band .ab h5{margin:0 0 9px;font-size:12px;color:var(--gold);text-transform:uppercase;letter-spacing:.6px}
.ask-band .ab p{margin:0;font-size:12.5px;color:#c8cdd5;line-height:1.55}
.ask-band .ab .team{font-family:var(--slab);font-size:26px;color:var(--goldl)}
.incl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:12px}
.incl{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-left:3px solid var(--gold);border-radius:12px;padding:14px}
.incl h5{margin:0 0 5px;font-size:13.5px}
.incl p{margin:0;font-size:12px;color:#c2c8d0;line-height:1.5}
.incl .qb{font-size:11px;color:var(--goldl);font-weight:600}
.traffic{background:linear-gradient(135deg,#11202b,#0a0e14);border:1px solid var(--stroke);border-radius:16px;padding:22px;margin:18px 0}
.traffic h3{font-family:var(--slab);font-size:19px;margin:0 0 14px}
.traffic .tg{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.traffic .tg article{background:rgba(255,255,255,.03);border:1px solid var(--stroke);border-radius:11px;padding:14px}
.traffic .tg h5{margin:0 0 6px;font-size:13px;color:var(--goldl)}
.traffic .tg p{margin:0;font-size:12px;color:#c8cdd5;line-height:1.5}

/* ====================== BRAND: LOGO / PATTERN / ICONS ====================== */
.brand{display:flex;align-items:center;gap:14px}
.brand .logo svg{height:26px;width:auto;display:block}
.brand .tagsep{width:1px;height:26px;background:var(--stroke)}
.brand .tag{font-size:10px;letter-spacing:2px;color:var(--mute);font-weight:600;text-transform:uppercase;line-height:1.4;max-width:90px}
body::before{content:'';position:fixed;inset:0;background-image:var(--pat-gray);background-size:560px;opacity:.05;pointer-events:none;z-index:0;mix-blend-mode:screen}
.app{position:relative;z-index:1}
.mark-bg{position:absolute;pointer-events:none;color:var(--gold);opacity:.10;z-index:0}
.mark-bg svg{width:100%;height:100%;display:block}
.bicon{width:26px;height:26px;flex:0 0 auto;color:var(--gold)}
.bicon svg{width:100%;height:100%;display:block}
.pblock .bicon{width:18px;height:18px}

/* ====================== IDEAS BOARD ====================== */
.ideas-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:start}
.icol{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:14px;padding:14px;min-height:120px}
.icol.dragover{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.icol h4{font-family:var(--slab);font-size:14px;margin:0 0 12px;display:flex;justify-content:space-between;align-items:center}
.icol h4 span{font-family:var(--sans);font-size:11px;color:var(--mute);font-weight:400}
.icard{background:#0a0c10;border:1px solid var(--stroke);border-left:3px solid var(--gold);border-radius:10px;padding:11px 12px;margin-bottom:10px;cursor:grab}
.icard:active{cursor:grabbing}
.icard h5{margin:0 0 5px;font-size:13px}
.icard p{margin:0;font-size:11.5px;color:#c2c8d0;line-height:1.5}
.icard .ix{display:flex;gap:8px;margin-top:9px}
.icard .ix button{font-size:11px;color:var(--mute);background:none;border:0;cursor:pointer;padding:0}
.icard .ix button:hover{color:var(--goldl)}
.icard textarea,.icard input{width:100%;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:6px;padding:7px;font-family:var(--sans);font-size:12px;margin-bottom:6px}
.idea-add{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0;align-items:center}
.idea-add input{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:9px 12px;font-size:13px}
@media(max-width:820px){.ideas-cols{grid-template-columns:1fr}}

/* ====================== PARTNER CRUD ====================== */
.pcard-actions{display:flex;gap:8px;margin-top:12px;padding-top:11px;border-top:1px solid var(--stroke)}
.pcard-actions button{font-size:11.5px;font-weight:600;background:none;border:1px solid var(--stroke);border-radius:7px;padding:6px 11px;color:var(--mute);cursor:pointer}
.pcard-actions button:hover{border-color:var(--gold);color:var(--goldl)}
.addcard{display:flex;align-items:center;justify-content:center;border:1px dashed var(--stroke);border-radius:14px;min-height:140px;cursor:pointer;color:var(--mute);font-weight:600;font-size:13px;background:transparent;transition:.15s}
.addcard:hover{border-color:var(--gold);color:var(--goldl)}
.archived-wrap{margin-top:24px;border-top:1px solid var(--stroke);padding-top:16px}
.archived-wrap h4{font-family:var(--slab);font-size:14px;color:var(--mute);margin:0 0 12px}
.archrow{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #1d2530;font-size:13px}
.archrow .an{flex:1}.archrow .at{color:var(--mute);font-size:12px}
.pform{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:16px;padding:24px;max-width:760px}
.pform h3{font-family:var(--slab);font-size:20px;margin:0 0 18px}
.pform .fg{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.pform label{display:block;font-size:11.5px;color:var(--gold);font-weight:600;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}
.pform input,.pform select,.pform textarea{width:100%;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:10px;font-family:var(--sans);font-size:13.5px}
.pform textarea{min-height:80px;resize:vertical}
.pform .full{grid-column:1 / -1}
.pform .swatches{display:flex;gap:8px;flex-wrap:wrap}
.pform .sw{width:26px;height:26px;border-radius:7px;cursor:pointer;border:2px solid transparent}
.pform .sw.sel{border-color:#fff}
.pform .actions{display:flex;gap:10px;margin-top:20px}

/* brand body-indent accent on key intros */
.view-sub{border-left:2px solid var(--gold);padding-left:14px}
.gate-hero .mark-bg{right:-60px;bottom:-80px;width:360px;height:360px;color:#fff;opacity:.07}
.prop-hero .mark-bg{right:-40px;top:-50px;width:280px;height:280px;color:#fff;opacity:.09}
.gate-login{position:relative;overflow:hidden}
.gate-login .pat{position:absolute;inset:0;background-image:var(--pat-gold);background-size:420px;opacity:.06;pointer-events:none}
.gate-login>*{position:relative;z-index:1}

/* ====================== ICON SCALING FIX ====================== */
.bicon{display:inline-grid;place-items:center;flex:0 0 auto;color:var(--gold);line-height:0}
.bicon svg{width:100%;height:100%;max-width:100%;max-height:100%;display:block}
.prop-why .bicon,.incl .bicon{width:22px;height:22px;margin-bottom:9px}
.pblock .bicon{width:15px;height:15px}
.prop-why article{display:flex;flex-direction:column}
.incl{position:relative}

/* two-line headings breathe */
h2.view-h{line-height:1.1}
h2.view-h br{display:block}
.view-sub{border-left:2px solid var(--gold);padding-left:14px}

/* ====================== IDEAS BOARD v2 ====================== */
.idea-filter{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.idea-filter button{appearance:none;border:1px solid var(--stroke);background:transparent;color:var(--mute);font-family:var(--sans);font-weight:600;font-size:12px;padding:7px 13px;border-radius:20px;cursor:pointer;transition:.15s}
.idea-filter button:hover{color:var(--txt)}
.idea-filter button.on{color:#0c0c0c}
.ideas-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;align-items:start}
.icard{border-left-width:3px}
.icard .tags{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 0;align-items:center}
.stag{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:3px 8px;border-radius:5px;color:#0c0c0c}
.flag{font-size:9.5px;font-weight:700;letter-spacing:.4px;padding:3px 7px;border-radius:5px;border:1px solid var(--stroke);color:var(--mute)}
.flag.h{border-color:var(--gold);color:var(--goldl)}
.flag.m{color:#cdd3da}
@media(max-width:980px){.ideas-cols{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.ideas-cols{grid-template-columns:1fr}}

/* ====================== TABS (partners) ====================== */
.tabs{display:inline-flex;background:var(--panel);border:1px solid var(--stroke);border-radius:11px;padding:4px;gap:3px;margin-bottom:18px}
.tabs button{appearance:none;border:0;background:transparent;color:var(--mute);font-family:var(--sans);font-weight:600;font-size:13px;padding:8px 16px;border-radius:8px;cursor:pointer;transition:.15s}
.tabs button:hover{color:var(--txt)}
.tabs button.on{background:linear-gradient(180deg,#1b1f27,#0e1014);color:var(--txt);box-shadow:0 0 0 1px var(--stroke)}
.tabs .count{font-size:11px;color:var(--mute);margin-left:5px}

/* contribution-led builder row */
.brow-head{grid-template-columns:1.7fr 1fr auto !important}
.brow-head .stage-chip{display:inline-block;font-size:10px;font-weight:600;padding:2px 8px;border-radius:12px;border:1px solid var(--stroke);color:var(--mute);margin-top:4px}
.brow-head .contrib-v{font-family:var(--slab);font-size:22px;color:var(--goldl)}

/* tagline */
.tagline{font-family:var(--slab);font-size:13px;color:var(--gold);letter-spacing:.5px;margin-top:18px}

/* ====================== CONTENT ENGINE + EVENINGS ====================== */
.content-engine{display:grid;grid-template-columns:1.15fr .85fr;gap:0;border:1px solid var(--gold);border-radius:16px;overflow:hidden;margin:6px 0 8px;background:linear-gradient(180deg,#0c0e13,#060708)}
.content-engine .ce-body{padding:24px 26px}
.content-engine h3{font-family:var(--slab);font-weight:600;font-size:20px;margin:0 0 4px}
.content-engine .ce-sub{color:var(--gold);font-size:12px;font-weight:600;margin:0 0 14px;letter-spacing:.3px}
.content-engine ul{list-style:none;padding:0;margin:0}
.content-engine li{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;color:#dfe3e8;padding:8px 0;border-bottom:1px solid #16191f;line-height:1.45}
.content-engine li:last-child{border-bottom:0}
.content-engine li::before{content:'';flex:0 0 auto;width:7px;height:7px;margin-top:6px;border-radius:2px;background:var(--gold);transform:rotate(45deg)}
.content-engine li b{color:#fff;font-weight:600}
.ce-img{background-size:cover;background-position:center;min-height:260px;border-left:1px solid var(--stroke);position:relative}
.ce-img::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,rgba(6,7,8,.65),transparent 45%)}
@media(max-width:760px){.content-engine{grid-template-columns:1fr}.ce-img{min-height:170px}}

.evenings{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:4px 0 8px}
.eve{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-top:3px solid var(--gold);border-radius:13px;padding:16px 16px 18px;display:flex;flex-direction:column;gap:7px}
.eve .ed{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.eve .ed b{font-family:var(--slab);font-weight:600;font-size:16px}
.eve .etag{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--gold)}
.eve .eth{font-weight:600;font-size:13.5px;color:#fff}
.eve .ewho{font-size:11.5px;color:var(--mute);line-height:1.5}
.eve .efo{font-size:11.5px;color:#c2c8d0;line-height:1.5;margin-top:auto;padding-top:6px;border-top:1px solid #16191f}
.eve-note{font-size:12.5px;color:var(--mute);line-height:1.55;max-width:780px;margin:0 0 8px;border-left:2px solid var(--gold);padding-left:12px}
@media(max-width:900px){.evenings{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.evenings{grid-template-columns:1fr}}

/* gate — authorised access line replacing demo codes */
.gate-auth{margin-top:18px;font-size:11.5px;color:var(--mute);letter-spacing:.3px;display:flex;align-items:center;gap:7px}
.gate-auth::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--good)}

/* ====================== UNIVERSE (prospect longlist) ====================== */
.uni-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:16px}
.uni-bar .searchwrap{margin-left:auto}
.uni-search{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:8px 12px;font-size:13px;min-width:180px}
.uflag-pills{display:flex;gap:6px;flex-wrap:wrap}
.uflag-pills button{appearance:none;border:1px solid var(--stroke);background:transparent;color:var(--mute);font-family:var(--sans);font-weight:600;font-size:11.5px;padding:6px 12px;border-radius:20px;cursor:pointer}
.uflag-pills button.on{color:#0c0c0c}
.ulevel{margin:20px 0 6px}
.ulevel h3{font-family:var(--slab);font-size:15px;margin:0 0 2px;display:flex;align-items:center;gap:10px}
.ulevel .lv{font-size:10px;font-weight:700;color:var(--gold);border:1px solid var(--stroke);border-radius:5px;padding:2px 7px;letter-spacing:.5px}
.ulevel .lc{font-size:11px;color:var(--mute);font-weight:400}
.uni-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:10px}
.ucard{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:13px;padding:14px 15px;position:relative;display:flex;flex-direction:column;gap:7px}
.ucard.prio{border-color:#5a4a2a}
.ucard .uh{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.ucard h4{font-size:14px;margin:0;line-height:1.25}
.uflag{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:3px 8px;border-radius:5px;color:#0c0c0c;white-space:nowrap;flex:0 0 auto}
.ucard .urole{font-size:12px;color:#d6dae0;line-height:1.45}
.ucard .usig{font-size:11px;color:var(--gold)}
.ucard .ucross{font-size:11px;color:var(--mute);line-height:1.45;border-top:1px solid #16191f;padding-top:7px}
.ucard .prio-tag{position:absolute;top:-8px;left:12px;background:var(--gold);color:#0c0c0c;font-size:9px;font-weight:700;padding:2px 7px;border-radius:4px;letter-spacing:.5px}
.ucard .uact{display:flex;gap:7px;margin-top:auto;padding-top:8px}
.ucard .uact button{font-size:11px;font-weight:600;background:none;border:1px solid var(--stroke);border-radius:6px;padding:5px 10px;color:var(--mute);cursor:pointer}
.ucard .uact button:hover{border-color:var(--gold);color:var(--goldl)}
.ucard .uact .promote{border-color:#3a5a3a;color:#8fce97}

/* ====================== STANDARDS MATRIX ====================== */
.smatrix{width:100%;border-collapse:collapse;margin:6px 0 8px;font-size:13px}
.smatrix th{text-align:left;font-family:var(--slab);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--gold);padding:8px 12px;border-bottom:1px solid var(--stroke)}
.smatrix td{padding:11px 12px;border-bottom:1px solid #14171d;vertical-align:top;color:#d6dae0;line-height:1.4}
.smatrix td.tr{font-weight:600;color:#fff;white-space:nowrap}
.smatrix tr:last-child td{border-bottom:0}
.smatrix input{width:100%;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:6px;padding:7px;font-size:12.5px;font-family:var(--sans)}
.smx-wrap{border:1px solid var(--stroke);border-radius:14px;overflow:hidden;background:linear-gradient(180deg,#0c0e13,#060708)}
.smx-wrap .smatrix th,.smx-wrap .smatrix td{padding-left:18px}

/* ====================== COALITION WALL ====================== */
.coalition{display:flex;flex-wrap:wrap;gap:9px;margin:4px 0 8px}
.cwchip{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--stroke);border-radius:10px;padding:9px 13px;font-size:13px;font-weight:600}
.cwchip i{width:9px;height:9px;border-radius:2px;transform:rotate(45deg);flex:0 0 auto}

/* ====================== CONVERSION PANEL ====================== */
.convert{border:1px solid var(--gold);border-radius:16px;padding:24px 26px;margin:18px 0;background:linear-gradient(180deg,rgba(209,159,83,.06),#070809)}
.convert h3{font-family:var(--slab);font-weight:600;font-size:20px;margin:0 0 4px}
.convert p.cs{color:var(--mute);font-size:13px;margin:0 0 16px}
.convert .opts{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.convert .opt{flex:1;min-width:150px;border:1px solid var(--stroke);background:var(--panel);color:var(--txt);border-radius:11px;padding:13px 14px;cursor:pointer;transition:.15s;text-align:left}
.convert .opt:hover{border-color:var(--gold)}
.convert .opt.sel{border-color:var(--gold);background:rgba(209,159,83,.1)}
.convert .opt b{display:block;font-size:14px;margin-bottom:3px;color:var(--txt)}
.convert .opt.sel b{color:var(--goldl)}
.convert .opt span{font-size:11.5px;color:var(--mute)}
.convert .frm{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.convert .frm input,.convert .frm textarea{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:10px;font-family:var(--sans);font-size:13px;width:100%}
.convert .frm .full{grid-column:1/-1}
.convert .done{text-align:center;padding:14px}
.convert .done .tick{font-size:30px;color:var(--good)}
@media(max-width:560px){.convert .frm{grid-template-columns:1fr}}

/* ====================== RESPONSES INBOX ====================== */
.resp{border:1px solid var(--stroke);border-radius:13px;padding:15px 16px;margin-bottom:11px;background:var(--panel);display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start}
.resp.handled{opacity:.55}
.resp .ra{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:4px 9px;border-radius:6px;color:#0c0c0c;white-space:nowrap;height:fit-content}
.resp .rb h5{margin:0 0 3px;font-size:14px}
.resp .rb .rmeta{font-size:11.5px;color:var(--mute);margin-bottom:6px}
.resp .rb p{margin:0;font-size:12.5px;color:#d6dae0;line-height:1.5}
.resp .rx{display:flex;flex-direction:column;gap:6px;align-items:flex-end}
.resp .rx button{font-size:11px;font-weight:600;background:none;border:1px solid var(--stroke);border-radius:6px;padding:5px 10px;color:var(--mute);cursor:pointer}
.resp .rx button:hover{border-color:var(--gold);color:var(--goldl)}

/* ====================== PLAN: budget, milestones, countdown ====================== */
.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
@media(max-width:900px){.plan-grid{grid-template-columns:1fr}}
.countdown{display:flex;align-items:baseline;gap:12px;background:linear-gradient(135deg,#15110a,#070809);border:1px solid #5a4a2a;border-radius:14px;padding:18px 22px;margin-bottom:18px}
.countdown b{font-family:var(--slab);font-size:40px;color:var(--goldl);line-height:1}
.countdown .cl{font-size:13px;color:var(--mute)}
.countdown .cd{margin-left:auto;text-align:right;font-size:12px;color:var(--mute)}
.panelbox{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:14px;padding:18px}
.panelbox h3{font-family:var(--slab);font-size:16px;margin:0 0 14px}
.mile{display:grid;grid-template-columns:auto auto 1fr auto;gap:11px;align-items:center;padding:9px 0;border-bottom:1px solid #14171d}
.mile:last-child{border-bottom:0}
.mile .mdot{width:11px;height:11px;border-radius:50%;border:2px solid var(--stroke);cursor:pointer;flex:0 0 auto}
.mile .mdot.done{background:var(--good);border-color:var(--good)}
.mile .mdate{font-size:11.5px;color:var(--gold);font-weight:600;white-space:nowrap;width:74px}
.mile .mlab{font-size:13px}
.mile.is-done .mlab{color:var(--mute);text-decoration:line-through}
.mile .mwho{font-size:11px;color:var(--mute);white-space:nowrap}
.mile .mrm{background:none;border:0;color:var(--mute);cursor:pointer;font-size:15px}
.bud{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #14171d}
.bud input{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:7px;padding:8px;font-size:13px;font-family:var(--sans)}
.bud input.amt{width:120px;text-align:right}
.bud .brm{background:none;border:0;color:var(--mute);cursor:pointer;font-size:16px}
.bud-tot{display:flex;justify-content:space-between;padding:12px 0 0;font-family:var(--slab);font-size:16px}
.addline{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.addline input{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:9px;font-size:13px;font-family:var(--sans)}
.terms-edit{width:100%;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:11px;font-size:13px;font-family:var(--sans);line-height:1.5;min-height:60px;resize:vertical}
.cd-chip{font-size:11px;font-weight:600;color:var(--gold);border:1px solid #5a4a2a;border-radius:20px;padding:5px 12px;white-space:nowrap}

/* ====================== FLOOR-PLAN PRODUCT MARKERS + TOOLTIP ====================== */
#productLayer .pmark{cursor:pointer}
#productLayer .pmark circle{transition:r .12s, stroke-width .12s}
#productLayer .pmark:hover circle{stroke:#fff;stroke-width:2.4}
#productLayer .pmark.dim{opacity:.32}
.prod-tip{position:fixed;z-index:9999;max-width:320px;background:#0b0e13;border:1px solid var(--gold);border-radius:12px;padding:14px 15px;box-shadow:0 18px 50px rgba(0,0,0,.6);pointer-events:none;opacity:0;transition:opacity .12s;font-family:var(--sans)}
.prod-tip.show{opacity:1}
.prod-tip .pt-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:5px}
.prod-tip h5{margin:0;font-size:14px;line-height:1.25;color:#fff}
.prod-tip .pt-v{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:3px 7px;border-radius:5px;color:#0c0c0c;white-space:nowrap;flex:0 0 auto}
.prod-tip .pt-meta{font-size:11px;color:var(--mute);margin-bottom:8px}
.prod-tip .pt-pills{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:9px}
.prod-tip .pt-pill{font-size:10px;font-weight:600;padding:3px 8px;border-radius:11px;color:#0c0c0c}
.prod-tip .pt-pill.role{background:#1a1f28;color:#cdd3da;border:1px solid var(--stroke)}
.prod-tip .pt-fit{font-size:12px;color:#d6dae0;line-height:1.5}
.prodbar{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin:10px 0 2px;font-size:12px;color:var(--mute)}
.prodbar .vk{display:inline-flex;align-items:center;gap:5px}
.prodbar .vk i{width:9px;height:9px;border-radius:2px}

/* ====================== SOLUTION VALIDATION PANEL ====================== */
.val-panel{margin-top:30px}
.valgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}
@media(max-width:820px){.valgrid{grid-template-columns:1fr}}
.valcard{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-left:3px solid var(--gold);border-radius:12px;padding:14px 16px}
.valcard.ok{border-left-color:#2FB89A}
.valcard.warn{border-left-color:#E0795A}
.valcard h4{margin:0 0 5px;font-size:13.5px}
.valcard p{margin:0;font-size:12px;color:#cfd4da;line-height:1.5}
.valcard .src{font-size:10.5px;color:var(--gold);margin-top:7px}
.valcard .vtag{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#0c0c0c;padding:2px 7px;border-radius:5px;margin-left:7px;vertical-align:middle}

/* ====================== SHOWCASE LINE IN TOOLTIP ====================== */
.prod-tip .pt-show{font-size:11.5px;color:var(--goldl);line-height:1.5;margin-top:9px;padding-top:9px;border-top:1px solid #16191f}
.prod-tip .pt-show b{color:var(--gold);font-weight:600;display:block;font-size:9.5px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}

/* ====================== IDEAS ACTION MENU ====================== */
.icard .ix{position:relative}
.iact{background:none;border:1px solid var(--gold)!important;color:var(--goldl)!important}
.iact-menu{position:absolute;z-index:50;top:100%;left:0;margin-top:5px;background:#0b0e13;border:1px solid var(--stroke);border-radius:10px;padding:5px;min-width:208px;box-shadow:0 14px 36px rgba(0,0,0,.55)}
.iact-menu .mh{font-size:9.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--mute);padding:6px 8px 3px}
.iact-menu button{display:block;width:100%;text-align:left;background:none;border:0;color:var(--txt);font-family:var(--sans);font-size:12.5px;padding:8px 9px;border-radius:7px;cursor:pointer}
.iact-menu button:hover{background:var(--panel2)}
.iact-menu .div{height:1px;background:#16191f;margin:4px 6px}

/* ====================== OPERATIONS PAGE ====================== */
.ops-head{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.ops-stat{background:linear-gradient(135deg,#15110a,#070809);border:1px solid #5a4a2a;border-radius:13px;padding:14px 20px}
.ops-stat b{font-family:var(--slab);font-size:30px;color:var(--goldl);line-height:1;display:block}
.ops-stat span{font-size:12px;color:var(--mute)}
.role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}
.role{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-left:3px solid var(--gold);border-radius:13px;padding:15px 16px;display:flex;flex-direction:column;gap:8px}
.role .rh{display:flex;align-items:center;gap:10px}
.role .rcount{font-family:var(--slab);font-size:22px;color:var(--goldl);min-width:34px}
.role .rt{font-weight:600;font-size:14.5px;flex:1}
.role .rtag{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--gold);border:1px solid #5a4a2a;border-radius:5px;padding:2px 7px}
.role .rresp{font-size:12.5px;color:#cfd4da;line-height:1.55}
.role textarea,.role input{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:7px;padding:8px;font-family:var(--sans);font-size:12.5px;width:100%}
.role .rx{display:flex;gap:7px;margin-top:auto;padding-top:4px}
.role .rx button{font-size:11px;font-weight:600;background:none;border:1px solid var(--stroke);border-radius:6px;padding:5px 10px;color:var(--mute);cursor:pointer}
.role .rx button:hover{border-color:var(--gold);color:var(--goldl)}
.hosts{margin-top:20px;border:1px solid var(--gold);border-radius:14px;padding:20px 22px;background:linear-gradient(180deg,rgba(209,159,83,.07),#070809)}
.hosts h3{font-family:var(--slab);font-size:17px;margin:0 0 6px}
.hosts p{font-size:13px;color:#d6dae0;line-height:1.6;margin:0;max-width:760px}
.hosts .pill{display:inline-block;font-size:11px;font-weight:600;color:var(--gold);border:1px solid #5a4a2a;border-radius:20px;padding:4px 11px;margin-top:12px}

/* ====================== LEADS EXPLAINER ====================== */
.lead-flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:6px 0 18px}
.lstep{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:13px;padding:16px;position:relative}
.lstep .ln{font-family:var(--slab);font-size:13px;color:var(--gold);margin-bottom:6px}
.lstep h4{margin:0 0 5px;font-size:14px}
.lstep p{margin:0;font-size:12px;color:#cfd4da;line-height:1.5}
.lead-get{border:1px solid var(--gold);border-radius:14px;padding:18px 20px;background:linear-gradient(180deg,rgba(209,159,83,.06),#070809)}
.lead-get h3{font-family:var(--slab);font-size:16px;margin:0 0 10px}
.lead-get ul{margin:0;padding-left:18px}
.lead-get li{font-size:13px;color:#d6dae0;line-height:1.7}

/* kit showcase sub-line */
.kp{font-weight:600}
.kshow{font-size:11px;color:#cbb98f;line-height:1.45;margin-top:3px;max-width:420px}
.kshow span{color:var(--gold);font-weight:600}

/* ====================== IDEAS ↔ PRODUCTS ====================== */
.iprod{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.ichip{font-size:10px;font-weight:600;color:#0b0e13;background:var(--goldl);border-radius:5px;padding:3px 7px}
.ie-prodwrap{margin:8px 0}
.ie-lab{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--gold);margin-bottom:5px}
.ie-prod{width:100%;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:6px;font-family:var(--sans);font-size:12px}
.ie-prod option{padding:3px 4px}

/* ====================== PROGRAMME EDITING ====================== */
.prog-add{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:4px 0 18px;background:var(--panel);border:1px solid var(--stroke);border-radius:11px;padding:11px}
.prog-add select,.prog-add input{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:7px;padding:8px;font-family:var(--sans);font-size:12.5px}
.slot{position:relative}
.slot .slotx{display:flex;gap:6px;margin-top:8px;opacity:0;transition:opacity .12s}
.slot:hover .slotx{opacity:1}
.slot .slotx button{font-size:10.5px;font-weight:600;background:none;border:1px solid var(--stroke);border-radius:5px;padding:3px 8px;color:var(--mute);cursor:pointer}
.slot .slotx button:hover{border-color:var(--gold);color:var(--goldl)}
.slot.editing{display:flex;flex-direction:column;gap:6px}
.slot.editing select,.slot.editing input{background:#0b0e13;border:1px solid var(--stroke);color:var(--txt);border-radius:6px;padding:6px;font-family:var(--sans);font-size:12px;width:100%}

/* ====================== KIT EDITING ====================== */
.kact{white-space:nowrap}
.kact button{font-size:11px;font-weight:600;background:none;border:1px solid var(--stroke);border-radius:5px;padding:4px 9px;color:var(--mute);cursor:pointer;margin-left:4px}
.kact button:hover{border-color:var(--gold);color:var(--goldl)}
.kact .kx{color:var(--warn);border-color:#5a2e24}
.kedit{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;padding:6px 2px}
.kedit.kadd{background:linear-gradient(180deg,rgba(209,159,83,.06),#070809);border:1px solid var(--gold);border-radius:11px;padding:13px;margin:6px 0 4px}
.kedit label{display:flex;flex-direction:column;gap:4px;font-size:9.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--mute)}
.kedit input,.kedit select{background:#0b0e13;border:1px solid var(--stroke);color:var(--txt);border-radius:6px;padding:7px;font-family:var(--sans);font-size:12.5px;min-width:120px}
.kebtns{display:flex;gap:7px}
.kebtns button{font-size:12px;font-weight:600;border-radius:7px;padding:8px 14px;cursor:pointer;border:1px solid var(--stroke);background:none;color:var(--txt)}
.kebtns button[data-ksave],.kebtns button[data-kaadd]{background:var(--gold);border-color:var(--gold);color:#0b0e13}

/* ====================== ACCESS & PASSPHRASES ====================== */
.access-panel{margin-top:16px}
.ap-note{font-size:12px;color:var(--mute);line-height:1.5;margin:0 0 14px}
.ap-admin{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--stroke)}
.ap-admin label{font-size:12px;font-weight:600;color:var(--goldl);white-space:nowrap}
.ap-admin input{flex:1;background:#0b0e13;border:1px solid var(--gold);color:var(--txt);border-radius:7px;padding:9px;font-family:var(--mono,monospace);font-size:13px}
.ap-row{display:grid;grid-template-columns:1.4fr 2fr 70px;gap:10px;align-items:center;padding:6px 0}
.ap-row.ap-head{font-size:9.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--mute);border-bottom:1px solid var(--stroke);padding-bottom:7px}
.ap-name{font-size:12.5px;font-weight:600}
.ap-pass{background:#0b0e13;border:1px solid var(--stroke);color:var(--goldl);border-radius:6px;padding:7px;font-family:monospace;font-size:12.5px}
.ap-lock{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--mute);cursor:pointer}

/* ====================== PARTNER FIXES (form, why-grid, spacing, programme colour) ====================== */
/* form: kill black-on-dark (incl. browser autofill) */
.convert .frm input, .convert .frm textarea{color:var(--txt)!important;-webkit-text-fill-color:var(--txt);caret-color:var(--gold)}
.convert .frm input::placeholder, .convert .frm textarea::placeholder{color:var(--mute);opacity:1}
.convert .frm input:-webkit-autofill,
.convert .frm input:-webkit-autofill:hover,
.convert .frm input:-webkit-autofill:focus,
.convert .frm input:-webkit-autofill:active{
  -webkit-text-fill-color:var(--txt)!important;
  -webkit-box-shadow:0 0 0 1000px var(--panel2) inset!important;
  caret-color:var(--txt);transition:background-color 9999s ease-out 0s}

/* why-grid: cap at 4 across so 6 cards read 4 + 2 (no lonely single) */
.prop-why{grid-template-columns:repeat(2,1fr)}
@media(min-width:760px){.prop-why{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1040px){.prop-why{grid-template-columns:repeat(4,1fr)}}

/* more breathing room between proposal sections */
.k{margin:34px 0 12px}
.prop-hero.has-img, .prop-hero{margin-bottom:6px}
.prop-why{margin:14px 0}
.incl-grid{gap:13px}

/* programme colour coding — visible tint + legend (works admin + partner) */
.slot.Education{border-left:3px solid var(--ndi);background:linear-gradient(180deg,rgba(79,143,214,.10),#070809)}
.slot.Podcast{border-left:3px solid var(--gold);background:linear-gradient(180deg,rgba(209,159,83,.10),#070809)}
.slot.Event{border-left:3px solid #7B7B7C;background:#0a0b0d;opacity:.92}
.slot.Evening{border-left:3px solid #8a6bd1;background:linear-gradient(180deg,rgba(138,107,209,.12),#070809)}
.slot.Education .t{color:#7fb2e8}
.slot.Podcast .t{color:var(--goldl)}
.slot.Event .t{color:#aab2bd}
.slot.Evening .t{color:#bda7ec}
.prog-legend{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.prog-legend span{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--mute);border:1px solid var(--stroke);border-radius:20px;padding:3px 10px 3px 8px}
.prog-legend i{width:9px;height:9px;border-radius:3px;display:inline-block}

/* ====================== SPEAKING INVITATION (partner) ====================== */
.si-lead{font-size:15px;color:#dfe3e8;line-height:1.6;margin:0 0 14px;max-width:780px}
.si-lead b{color:#fff;font-weight:600}
.si-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}
@media(max-width:820px){.si-grid{grid-template-columns:1fr}}
.si-grid article{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:13px;padding:16px;display:flex;flex-direction:column}
.si-grid .bicon{width:22px;height:22px;margin-bottom:9px}
.si-grid h5{margin:0 0 7px;font-size:13.5px;color:var(--gold)}
.si-grid p{margin:0;font-size:12.5px;color:#c2c8d0;line-height:1.55}

/* ====================== JOURNEY EDITOR (admin) ====================== */
.jed-bar{display:flex;gap:10px;margin:0 0 16px;flex-wrap:wrap}
.jstep{background:linear-gradient(180deg,var(--panel),#070809);border:1px solid var(--stroke);border-radius:14px;padding:14px 16px;margin-bottom:12px}
.jstep-h{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.jnum{width:26px;height:26px;flex:0 0 auto;border-radius:50%;background:var(--gold);color:#000;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;font-family:var(--slab)}
.jmove{margin-left:auto;display:flex;gap:6px}
.jmove button{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:7px;padding:5px 10px;cursor:pointer;font-size:13px}
.jmove button:hover:not(:disabled){border-color:var(--gold)}
.jmove button:disabled{opacity:.35;cursor:default}
.jmove .jrm{color:#e88}.jmove .jrm:hover{border-color:#e88}
.jstep input,.jstep textarea{width:100%;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:9px 11px;font-family:var(--sans);font-size:13px;margin-bottom:8px}
.jstep textarea{resize:vertical;line-height:1.5}
.jstep .je-zone{background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:8px 10px;font-family:var(--sans);font-size:13px;min-width:160px}
.je-lab{display:block;font-size:11px;color:var(--mute);letter-spacing:.3px;margin:2px 0 5px;text-transform:uppercase}
.jstep .je-prod{margin-bottom:0}

/* ====================== ADMIN LAYOUT EDITOR ====================== */
.ed-toggle{margin-left:auto;border-color:var(--gold)!important;color:var(--gold)!important}
.toolbar.editing .seg,.toolbar.editing .journey-pick{display:none}
.toolbar.editing{justify-content:flex-end}
.toolbar.editing::before{content:'Editing layout — click a section, then move / resize / rotate. Changes save as you go.';color:var(--gold);font-size:12px;font-weight:600;margin-right:auto;align-self:center}
.zone.editing{cursor:pointer}
.zone.editing .z-body{stroke-dasharray:4 4}
.zone.edit-sel .z-body{stroke:var(--gold)!important;stroke-width:2.5!important;fill:#1a1710}
.btn.danger{border-color:#5a2e2e;color:#e0795a}
.btn.danger:hover{background:#241516}
.ed-zlist{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.ed-zchip{appearance:none;border:1px solid var(--stroke);background:var(--panel2);color:var(--mute);font-family:var(--sans);font-size:11.5px;font-weight:600;padding:6px 9px;border-radius:7px;cursor:pointer;transition:.15s}
.ed-zchip:hover{color:var(--txt)}
.ed-zchip.sel{border-color:var(--gold);color:var(--gold);background:#1a1710}
.ed-l{display:block;font-size:11px;color:var(--mute);font-weight:600;letter-spacing:.4px;text-transform:uppercase;margin:10px 0 0}
.ed-l input{display:block;width:100%;margin-top:5px;background:var(--panel2);border:1px solid var(--stroke);border-radius:8px;color:var(--txt);font-family:var(--sans);font-size:13px;padding:8px 10px;box-sizing:border-box}
.ed-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.ed-num{display:flex;align-items:center;gap:4px;background:var(--panel2);border:1px solid var(--stroke);border-radius:8px;padding:4px 6px}
.ed-num span{font-size:11px;font-weight:700;color:var(--gold);width:14px;text-align:center}
.ed-num button{appearance:none;border:1px solid var(--stroke);background:#0b0d12;color:var(--txt);width:24px;height:24px;border-radius:6px;cursor:pointer;font-size:15px;line-height:1;flex:0 0 auto}
.ed-num button:hover{border-color:var(--gold)}
.ed-num input{flex:1;min-width:0;background:transparent;border:0;color:var(--txt);font-family:var(--sans);font-size:13px;text-align:center;-moz-appearance:textfield}
.ed-num input::-webkit-outer-spin-button,.ed-num input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.ed-steprow{display:flex;align-items:center;gap:6px;margin-top:12px}
.ed-steprow>span{font-size:11px;color:var(--mute);font-weight:600;margin-right:2px}
.ed-step{appearance:none;border:1px solid var(--stroke);background:var(--panel2);color:var(--mute);width:30px;height:28px;border-radius:7px;cursor:pointer;font-size:12px;font-weight:600}
.ed-step.on{border-color:var(--gold);color:var(--gold);background:#1a1710}
.ed-actrow{display:flex;gap:8px;margin-top:12px}
.ed-actrow .btn{flex:1}
.ed-hint{color:var(--mute);font-size:12.5px;line-height:1.5;margin:10px 0}

/* ====================== SPEAKER APPLICATIONS (admin) ====================== */
.navdot{font-style:normal;display:inline-block;min-width:16px;height:16px;line-height:16px;padding:0 4px;border-radius:9px;background:var(--gold);color:#000;font-size:10px;font-weight:700;text-align:center;margin-left:3px}
.spk-stat{display:flex;gap:22px;align-items:center;margin:14px 0 18px;padding-bottom:16px;border-bottom:1px solid var(--stroke)}
.spk-stat .v b{display:block;font-family:var(--slab);font-size:26px;color:var(--gold);line-height:1}
.spk-stat .v span{font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.6px}
.spk{border:1px solid var(--stroke);border-radius:13px;padding:16px 18px;margin-bottom:12px;background:var(--panel)}
.spk.dim{opacity:.55}
.spk-head{display:flex;align-items:center;gap:10px;margin-bottom:9px}
.spk-fmt{font-size:11px;font-weight:700;color:#06080c;padding:3px 9px;border-radius:20px}
.spk-status{appearance:none;background:transparent;border:1px solid;border-radius:20px;padding:3px 11px;font-size:11px;font-weight:700;cursor:pointer;font-family:var(--sans)}
.spk-date{margin-left:auto;font-size:11.5px;color:var(--mute)}
.spk h5{font-family:var(--slab);font-weight:600;font-size:16px;margin:0 0 3px}
.spk-co{color:var(--mute);font-weight:400;font-size:13px}
.spk-meta{font-size:12.5px;color:var(--mute);margin-bottom:8px}
.spk-meta a{color:var(--ndi);text-decoration:none}
.spk-meta a:hover{text-decoration:underline}
.spk-topic{font-size:13.5px;margin:0 0 6px;color:var(--txt)}
.spk-topic b{color:var(--gold);font-weight:600}
.spk-msg{font-size:13px;color:#c2c8d0;line-height:1.5;margin:0 0 10px;white-space:pre-wrap}
.spk-notes{width:100%;box-sizing:border-box;background:var(--panel2);border:1px solid var(--stroke);color:var(--txt);border-radius:8px;padding:8px 10px;font-family:var(--sans);font-size:12.5px;resize:vertical}
.spk-notes::placeholder{color:var(--mute)}
.spk-x{margin-top:8px;text-align:right}
.spk-x button{appearance:none;background:transparent;border:1px solid #5a2e2e;color:#e0795a;border-radius:7px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;font-family:var(--sans)}
.spk-x button:hover{background:#241516}
