/* Amigo refine layer: loaded last. Calmer surfaces (hairline borders instead of floating shadows),
   one icon set, navy where the app speaks for itself, blue only where you act. */

/* ---------- Shell ---------- */
.side{background:#fff;border-right:1px solid var(--line);padding:16px 12px}
.brand{padding:4px 8px 16px}
.brandicon{box-shadow:none;border-radius:9px}.brand:hover .brandicon{transform:none}
.navlink{gap:11px;padding:8px 10px;border-radius:8px;color:var(--text2);font-weight:600;font-size:14.5px}
.navlink:hover{background:var(--inset)}
.navlink.on{background:var(--accent-soft);color:var(--accent-deep);box-shadow:none}
.navlink.on::before{display:none}
.nico,.navlink .nico,.navlink.sub .nico{width:22px;height:22px;border-radius:0;background:none;box-shadow:none;color:var(--muted);transition:none}
.navlink:hover .nico{transform:none}
.navlink.on .nico{background:none;box-shadow:none;color:var(--accent)}
.nico .ic{width:19px;height:19px}
.navlink .count{background:var(--inset);color:var(--muted);border-radius:6px;padding:1px 7px}
.navlink.on .count{background:#fff;color:var(--accent-deep)}
.badge,.navlink .badge{animation:none;border-radius:6px;padding:1px 7px;font-weight:700}
.navlink.sub{font-size:13.5px;color:var(--muted);padding:7px 10px}.navlink.sub .nico .ic{width:17px;height:17px}
/* Search boxes show where focus is (their inputs drop the default outline). */
.jsearch:focus-within,.jquick:focus-within{box-shadow:0 0 0 2px var(--accent)}
.installbar{border:1px solid var(--line);box-shadow:none;border-radius:12px}
.pagehead h1{font:600 30px/1.1 var(--fig);letter-spacing:-.005em}

/* ---------- Home: dispatch header ---------- */
.homehero{background:var(--navy);animation:none;border-radius:16px;padding:20px 22px;gap:18px}
.homehero::before,.homehero::after{display:none}
.orbwrap{width:68px;height:68px}
.cring .track{stroke:rgba(255,255,255,.14);stroke-width:4}
.cring .prog{stroke:var(--hivis);stroke-width:4}
.orb{inset:11px;background:rgba(255,255,255,.08);color:#fff;font-size:0}
.orb .ic{width:24px;height:24px;stroke-width:1.6}
.orb-ok{animation:none}
.herotitle{font:600 27px/1.12 var(--fig);letter-spacing:0}
.herosub{font-weight:500;opacity:1;color:rgba(255,255,255,.72);font-size:14px;margin-top:5px}
.livedot{background:#4ADE80;animation:none;box-shadow:0 0 0 3px rgba(74,222,128,.2)}
.quick{gap:6px}
.qbtn{flex-direction:row;gap:7px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);border-radius:10px;padding:9px 13px;font:600 13.5px var(--font);backdrop-filter:none}
.qbtn:hover{background:rgba(255,255,255,.13);transform:none}
.qbtn .ic{width:16px;height:16px}
.qbtn.primary{background:#fff;color:var(--navy);box-shadow:none}.qbtn.primary:hover{background:#E9EEF7}

/* Stat tiles */
.tile{border:1px solid var(--line);box-shadow:none;border-radius:var(--r-card);padding:14px 16px}
.tile::after{display:none}
.tile:hover{transform:none;box-shadow:none;border-color:#C9D0D9}
.tico{width:30px;height:30px;border-radius:8px;background:var(--inset);color:var(--ink,var(--text2));font-size:0}
.tico .ic{width:17px;height:17px}
.tile b{font:600 34px/1 var(--fig);letter-spacing:0;color:var(--text);margin-top:14px}
.tile span{font-weight:500;color:var(--muted)}

/* Waiting, activity, coming up */
.wdot,.fico{border-radius:9px;color:var(--text2)}
.wdot .ic,.fico .ic{width:16px;height:16px}
.caught .bounce{animation:none;width:44px;height:44px;border-radius:12px;background:var(--ok-soft);color:var(--ok);display:inline-grid;place-items:center;font-size:0}
.caught .bounce .ic{width:22px;height:22px}
.when{border-radius:6px;background:var(--accent-soft);color:var(--accent-deep)}
.tli{border-radius:10px}
.tli.first::before{animation:none}
.qitem{border-radius:10px}
.qcheck{box-shadow:inset 0 0 0 1.5px #C3CAD3}

/* Today card */
.tdjob{border-radius:12px;background:var(--inset)}
.tdtime{font:600 16px var(--fig);font-variant-numeric:tabular-nums;width:64px}
.tdb{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;box-shadow:inset 0 0 0 1px var(--line);height:34px;min-width:34px;gap:6px;font:600 13px var(--font);white-space:nowrap}
.tdb .ic{width:16px;height:16px}
.tdb:hover{background:var(--inset)}
.tdb.ok{background:var(--ok);box-shadow:none}
.tdb.ok .ic{stroke-width:2.4}
.tdi{border-radius:9px;color:var(--text2);font-size:0}
.tdi .ic{width:17px;height:17px}
.tdt{border-top-color:var(--line2)}
.fwcta{border-top-color:var(--line2)}
.tdcta{font-weight:600}
.wxd{border-radius:10px}.wxd b{font:600 15px var(--fig)}
.wxd.wet{background:var(--accent-soft)}
.wxr{border-radius:10px;background:var(--accent-soft)}
.wxset{border-radius:10px}
.duebar{background:var(--inset);border:1px solid var(--line);border-radius:12px}
.wxbar{background:var(--accent-soft);border-color:#D6E4FF}
.pushcard,.tradecard{background:#fff}
.pushcard .ic,.tradecard .ic{color:var(--accent)}
.tradegrid button{border:1px solid var(--line);box-shadow:none;border-radius:10px}
.tradegrid button:hover{border-color:var(--accent);box-shadow:none}

/* What Amigo did for you */
.earnhero>div,.earnhero>div+div{background:var(--inset);border-radius:12px;border:1px solid var(--line2)}
.earnhero b{font:600 32px/1.05 var(--fig);letter-spacing:0}
.earnhero>div:first-child b{color:var(--ok)}
.eri{border-radius:8px;color:var(--text2);font-size:0}
.eri .ic{width:15px;height:15px}
.earnrow{border-top-color:var(--line2)}
.earnrow b{font:600 16px var(--fig);font-variant-numeric:tabular-nums}

/* Fill my week */
.fwd{border-radius:10px}.fwd b{font:600 17px var(--fig)}
.fwd.open{background:var(--ok-soft)}.fwd.light{background:#F2F8F5}
.fwrow{border-radius:10px;border-color:var(--line)}
.fwgrp .label{display:flex;align-items:center;gap:7px}
.fwgrp .label .ic{width:15px;height:15px;color:var(--muted)}

/* ---------- Generic surfaces ---------- */
.stat,.acard,.ctile,.ccard2,.jstat,.jlist,.startcard,.mcard,.qsum1,.qline,.qtots,.plrow,.qnote,.custchip,.hrow,.chkrow,.imprev>div,.qvers button,.cjob{border:1px solid var(--line);box-shadow:none}
.stat:hover,.acard:hover,.ctile:hover,.ccard2:hover{transform:none;box-shadow:none;border-color:#C9D0D9}
.stat b{font:600 28px/1.1 var(--fig);letter-spacing:0}
.label{text-transform:none;letter-spacing:0;font-size:13px;font-weight:600;color:var(--text2)}
.msub,.dayhead,.mhead{text-transform:none;letter-spacing:0}
.iconbtn{border-radius:8px;background:transparent;box-shadow:inset 0 0 0 1px var(--line);display:inline-grid;place-items:center}
.iconbtn:hover{background:var(--inset)}
.iconbtn .ic{width:16px;height:16px}
.toast{background:var(--navy);border-radius:10px;box-shadow:0 10px 30px rgba(16,24,40,.25)}
.banner{border-radius:12px}
.empty .ring{border-radius:12px;color:var(--text2)}
.empty .ring .ic{width:24px;height:24px}

/* Automations */
.acard{border-radius:var(--r-card)}
.acard::before{height:3px}
.st-running{--stc:var(--ok)}.st-test{--stc:var(--accent)}.st-setup{--stc:#93B4F5}.st-paused{--stc:#E3A008}
.aico,.st-running .aico,.st-test .aico,.st-setup .aico,.st-paused .aico{background:var(--inset);filter:none;border-radius:10px}
.acard:hover .aico{transform:none}
.anext{border-radius:10px}
.fchip{border-radius:8px;background:#E9EBEF}.fchip.on{background:var(--navy)}
.tcard{border-radius:12px;border:1px solid var(--line);background:#fff}
.tcard:hover{border-color:var(--accent)}
.tcard .ring{background:var(--inset)}
.idea,.choice{border-radius:10px}

/* Connections + settings heroes */
.hero,.musehero,.apphero{background:var(--navy);border-radius:16px}
.hero::after{display:none}
.hero .big{font:600 44px/1 var(--fig);letter-spacing:0}
.hero .bar i{background:var(--hivis)}
.need{border:1px solid #F3DDB3;border-radius:14px}
.ctile{border-radius:12px}
.ctile.on{border-color:#A7D8BE;box-shadow:none}

/* Settings */
.setitem{border-radius:10px;padding:9px 10px}
.setitem:hover{background:rgba(255,255,255,.75)}
.setitem.on{background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.sico{width:34px;height:34px;border-radius:9px;background:#fff!important;box-shadow:inset 0 0 0 1px var(--line);color:var(--text2);font-size:0}
.setitem.on .sico{color:var(--accent);box-shadow:inset 0 0 0 1px #C9DAFE}
.setitem:hover .sico{transform:none}
.sico .ic{width:18px;height:18px}
.sico.lg{width:44px;height:44px;border-radius:11px}.sico.lg .ic{width:22px;height:22px}
.schip{border-radius:6px}
.profile{border-radius:12px}
.avatar{background:var(--navy);box-shadow:none;border-radius:12px;font-weight:700}
.chatcard{border:1px solid var(--line);background:#fff}
.chatcard.linked{border-color:#A7D8BE;background:#fff}
.chatico{background:var(--accent-soft);color:var(--accent);border-radius:12px}
.askchip{border-radius:8px}
.step3,.howto{border-radius:12px}
.plan{background:#fff;border:1px solid var(--line);border-radius:12px}
.arow{border-radius:10px}
.newbtn{background:var(--accent);box-shadow:none;border-radius:10px}.newbtn:hover{transform:none;background:var(--accent-deep);box-shadow:none}
.bkhero{border:1px solid var(--line);box-shadow:none;border-radius:14px}
.bkhero.on{background:var(--ok);border-color:var(--ok)}
.bkico{border-radius:10px}
.notifcard,.notifcard.on{background:#fff;border:1px solid var(--line);border-radius:14px}
.notifcard.on{border-color:#A7D8BE}
.prefin,.slugin{border-width:1px;border-radius:var(--r-ctl)}
.daytog{border-radius:8px}
.svcrow .input,.plrow .input{border-radius:8px}

/* ---------- Jobs ---------- */
.jsearch{border-radius:10px;box-shadow:inset 0 0 0 1px var(--border);padding:0 12px}
.jsearch .ic{width:16px;height:16px;color:var(--muted)}
.jtool .chip{border-radius:8px;padding:6px 11px;font-size:13px}
.jtool .chip .ic{width:15px;height:15px}
.jstat{border-radius:12px}
.jstat b{font:600 27px/1.1 var(--fig);letter-spacing:0}
.jcol{background:#ECEEF1;border-radius:12px}
.jcolh{font-size:13.5px}
.jcolh .n{border-radius:6px}
.jcolh .sum{font:600 14px var(--fig);font-variant-numeric:tabular-nums}
.jcard{border:1px solid var(--line);box-shadow:none;border-radius:10px}
.jcard:hover{transform:none;box-shadow:0 2px 8px rgba(16,24,40,.07);border-color:#C9D0D9}
.jcard .t1 span:last-child{font:600 15px var(--fig);font-variant-numeric:tabular-nums}
.jmini{border-radius:6px;display:inline-flex;align-items:center;gap:4px}
.jmini .ic{width:12px;height:12px;stroke-width:2}
.jempty{border-radius:10px}
.jadd{border-radius:8px}
.jquick{border-radius:10px;border:1px solid var(--line);box-shadow:none}
.jplace{border-radius:10px}
.jlist{border-radius:12px}
.jstage{border-radius:8px}
.ccard2{border-radius:12px}
.cst span{border-radius:6px}
.nextin{background:var(--navy);border-radius:12px}
.nextin .nstep{border-radius:8px}
.dropbar>div{border-radius:12px}
.mtip{background:var(--navy)}
.mcard{border-radius:var(--r-card)}
.qbk>div{border-radius:10px}
.qbk b{font:600 24px/1.1 var(--fig);letter-spacing:0}

/* Drawers */
.jscrim{background:rgba(16,24,40,.42)}
.jdrawer{background:#F7F8FA;box-shadow:-12px 0 32px rgba(16,24,40,.14)}
.jdh,.jdf{background:#fff;border-color:var(--line)}
.fl>span{font-size:13px;font-weight:600}
.fl .input{border-radius:var(--r-ctl)}
.stagepills button,.srcpills button{border-radius:8px;box-shadow:inset 0 0 0 1px var(--line)}
.stagepills button.on{box-shadow:none}
.srcpills button.on{background:var(--navy);box-shadow:none}
.custchip{border-radius:10px}
.custpick{border-radius:10px;border:1px solid var(--line)}
.qacts .btn{background:#fff}
.musesteps{background:var(--accent-soft);border:1px solid #D6E4FF;border-radius:12px}
.qsum1,.qnew{border-radius:12px}
.qnew{border:1.5px dashed #C9CDD3}
.qsum1:hover,.qnew:hover{box-shadow:none;border-color:var(--accent)}
.qico,.qico.inv{border-radius:9px;background:var(--accent-soft);color:var(--accent);font-size:0}
.qico.inv{background:var(--ok-soft);color:var(--ok)}
.qico .ic{width:18px;height:18px}
.qgo{display:grid;place-items:center;color:var(--muted)}.qgo .ic{width:18px;height:18px}
.qpill{border-radius:6px}
.qline{border-radius:12px}
.qtots{border-radius:12px}
.qtots .qgrand{font:600 24px var(--fig)}
.qchip{border-radius:8px;box-shadow:inset 0 0 0 1px var(--line)}
.qnote{border-radius:10px}
.paybox{background:var(--ok-soft);border:1px solid #BFE3CF;border-radius:12px}
.pth,.padd{border-radius:10px}
.padd .ic{width:22px;height:22px;color:var(--muted)}
.jtl>div.k-muse i{background:var(--navy)}

/* ---------- Sidebar counts ---------- */
.navlink .count.warn{background:#FEF0C7;color:#93370D}
.navlink .count.ok{background:var(--ok-soft);color:var(--ok);font-size:11px}
.setitem.mobonly{display:none}

/* ---------- Money page ---------- */
.mtabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin:0 0 16px;overflow-x:auto;scrollbar-width:none}
.mtabs::-webkit-scrollbar{display:none}
.mtabs button{position:relative;display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;padding:10px 14px 12px;font:600 14px var(--font);color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:8px 8px 0 0}
.mtabs button:hover{color:var(--text);background:rgba(16,24,40,.03)}
.mtabs button.on{color:var(--text)}
.mtabs button.on::after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2px;border-radius:2px;background:var(--accent)}
.mtabs button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.mtabs i{font-style:normal;font:600 11.5px var(--font);background:var(--inset);color:var(--text2);border-radius:6px;padding:1px 6px;font-variant-numeric:tabular-nums}
.mtabs i.warn{width:7px;height:7px;padding:0;border-radius:50%;background:var(--warn)}
.docs .jstats{grid-template-columns:repeat(3,minmax(0,1fr))}
.jstat.warn b{color:var(--warn)}.jstat.ok b{color:var(--ok)}
.docbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.docbar .scroller{flex:1;min-width:0;margin:0}
.docbar .jsearch{flex:0 1 300px;min-width:200px}
.dtbl{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}
.dhead,.drow{display:grid;grid-template-columns:64px minmax(0,1.6fr) minmax(0,1fr) 104px 104px;gap:12px;align-items:center;padding:0 16px}
.dhead{height:36px;font-size:12px;font-weight:600;color:var(--muted);border-bottom:1px solid var(--line);background:#FAFBFC}
.dhead .n,.damt{text-align:right}
.drow{width:100%;min-height:58px;border:0;border-bottom:1px solid var(--line);background:#fff;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background .1s}
.drow:last-child{border-bottom:0}
.drow:hover{background:#F7F9FC}
.drow:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.dnum{font:600 14px var(--fig);color:var(--muted);font-variant-numeric:tabular-nums}
.dwho{min-width:0;display:grid}.dwho b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dwho small{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dwhen{font-size:13px;color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dwhen.late{color:var(--danger);font-weight:600}
.dpill{justify-self:start;font:600 12px var(--font);border-radius:6px;padding:3px 8px;background:var(--inset);color:var(--text2);white-space:nowrap}
.dpill.q-sent,.dpill.q-viewed{background:var(--accent-soft);color:#0656D9}
.dpill.q-paid,.dpill.q-accepted{background:var(--ok-soft);color:var(--ok)}
.dpill.q-overdue,.dpill.q-declined{background:#FDEEEC;color:var(--danger)}
.dpill.q-reported,.dpill.q-expired{background:#FEF0C7;color:#93370D}
.dpill.q-void{text-decoration:line-through}
.damt{font:600 17px var(--fig);font-variant-numeric:tabular-nums;white-space:nowrap}
.cardh{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}
.cardh .sico{flex:none}
.paygrid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:14px;align-items:start}
.bookrows{display:grid;gap:8px;margin-bottom:10px}
.bookrow{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:12px}
.bookrow .logo{width:38px;height:38px;border-radius:10px;flex:none;display:grid;place-items:center;color:#fff;font:700 14px var(--font)}
.bookrow .chip{flex:none;display:inline-flex;gap:4px;align-items:center}
.howpaid .steps{margin:8px 0 10px;padding-left:20px;display:grid;gap:6px;font-size:14px;color:var(--text2);line-height:1.45}
.prcard{max-width:860px}

/* ---------- Quick new invoice / quote ---------- */
.qdsheet{max-width:520px}
.qdmatch{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.qdmatch button{display:flex;justify-content:space-between;gap:10px;width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;padding:10px 12px;font:500 14px var(--font);cursor:pointer;text-align:left;color:var(--text)}
.qdmatch button:last-child{border-bottom:0}.qdmatch button:hover{background:#F2F6FF}
.qdmatch small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- Booking services: one row per service, book a time or ask for a price inline ---------- */
.svchint{margin:-6px 0 -2px}
.svcadd{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:2px}
.svcadd .input.sm{width:auto;flex:0 1 auto;min-width:0;max-width:100%;height:36px;padding-top:0;padding-bottom:0}
/* Price list items that are also booking page services */
.plbook{grid-column:1 / -1;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12.5px;line-height:1.3}
.plbook span{background:#EEF3FF;color:#2450D6;font-weight:700;border-radius:999px;padding:2px 9px}
.plbook small{color:var(--muted);font-size:12.5px}
.plbook a{font-weight:600}
.svcrows{gap:8px;container-type:inline-size}
.svcrow{grid-template-columns:minmax(120px,1fr) 100px 100px auto 32px;gap:8px;align-items:center}
.svcrow .input{height:40px;padding-top:0;padding-bottom:0}
.svcrow .moneyin{grid-column:auto}
.svcrow .svcx{width:32px;height:40px}
.svcmode{display:inline-flex;align-items:stretch;gap:2px;height:40px;box-sizing:border-box;padding:3px;border-radius:8px;background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.svcmode button{display:inline-flex;align-items:center;border:0;background:transparent;border-radius:6px;padding:0 11px;font:600 12.5px var(--font);color:var(--text2);cursor:pointer;white-space:nowrap}
.svcmode button:hover{color:var(--navy)}
.svcmode button.on{background:var(--navy);color:#fff}
.svcmode button:focus-visible{outline:2px solid var(--navy);outline-offset:1px}
@container (max-width:600px){
  .svcrow{grid-template-columns:minmax(0,1fr) 92px 92px 32px}
  .svcrow .svcx{grid-column:4;grid-row:1}
  .svcmode{grid-column:1 / -1;grid-row:2;justify-self:start}
  .svcrow{padding-bottom:12px;border-bottom:1px solid var(--line)}
  .svcrow:last-of-type{padding-bottom:0;border-bottom:0}
}
@container (max-width:400px){
  .svcrow{grid-template-columns:1fr 1fr 32px}
  .svcrow .svcname{grid-column:1 / 3;grid-row:1}
  .svcrow .svcx{grid-column:3;grid-row:1}
  .svcrow .svcmin{grid-column:1;grid-row:2}
  .svcrow .svcprice{grid-column:2;grid-row:2}
  .svcmode{grid-column:1 / -1;grid-row:3}
}

/* ---------- Connections: grouped for the trade ---------- */
.csec{display:grid;gap:10px}
.csech{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding-top:6px}
.csech b{font:600 18px var(--fig)}.csech span{font-size:13px;color:var(--muted)}

/* ---------- Website editor ---------- */
.wsstatus{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:12px 14px;margin-bottom:14px}
.wsdot{width:10px;height:10px;border-radius:50%;background:#C5CBD3;flex:none}
.wsstatus.on .wsdot{background:var(--ok);box-shadow:0 0 0 4px var(--ok-soft)}
.wsstatus a{color:var(--accent)}.wsstatus a:not([href]){color:var(--muted)}
.wssave{color:var(--muted);white-space:nowrap}.wssave.err{color:var(--danger);white-space:normal}
.wsstatus>div{flex:1 1 220px}
@media (max-width:700px){.wssave{order:3;flex-basis:100%;white-space:normal}}
.wspane.seg{display:none;margin-bottom:12px}
.wsgrid{display:grid;grid-template-columns:minmax(340px,420px) minmax(0,1fr);gap:18px;align-items:start}
.wsed{display:grid;gap:12px;min-width:0}
.wscard{display:grid;gap:12px}
.wsh{display:flex;gap:12px;align-items:flex-start}.wsh .sico{flex:none}
.cc{font-style:normal;font-weight:500;color:var(--muted);float:right;font-size:12px}
.wscheck{display:grid;gap:6px;border-color:#F5D9A8;background:#FFFBF2}
.wschk{display:flex;align-items:center;gap:10px;justify-content:space-between;width:100%;border:0;background:#fff;border-radius:10px;padding:10px 12px;box-shadow:inset 0 0 0 1px #F0E2C6;cursor:pointer;text-align:left;font:inherit;color:inherit}
.wschk span{display:grid}.wschk small{color:var(--muted);font-size:12.5px}.wschk .ic{width:16px;height:16px;color:var(--muted)}
.wslooks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.wslook{display:grid;gap:2px;text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 8px 10px;cursor:pointer;font:inherit;color:inherit;min-width:0}
.wslook.on{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.wslook b{font-size:13.5px;margin-top:6px}.wslook small{font-size:11.5px;color:var(--muted);line-height:1.3}
.wslook .mini{display:grid;gap:4px;height:58px;border-radius:8px;padding:8px;background:#F4F5F7;overflow:hidden}
.wslook .mini i{display:block;border-radius:3px;background:#D5DAE1}
.wslook .mini i:nth-child(1){height:12px;width:70%;background:#1F2937}.wslook .mini i:nth-child(2){height:6px;width:90%}.wslook .mini i:nth-child(3){height:12px;width:40%;background:var(--b)}
.wslook.lk-bold .mini{background:color-mix(in srgb,var(--b) 26%,#0B1220);border-radius:3px;border-bottom:4px solid #FFC93C}.wslook.lk-bold .mini i:nth-child(1){background:#fff;border-radius:1px}.wslook.lk-bold .mini i:nth-child(2){background:rgba(255,255,255,.35)}.wslook.lk-bold .mini i:nth-child(3){border-radius:1px}
.wslook.lk-friendly .mini{background:color-mix(in srgb,var(--b) 10%,#fff);border-radius:14px}.wslook.lk-friendly .mini i{border-radius:99px}
.wscolors{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wscolors button{width:30px;height:30px;border-radius:50%;border:0;cursor:pointer;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
.wscolors button.on{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--text)}
.wscustom{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text2);cursor:pointer;margin-left:4px}
.wscustom input{width:30px;height:30px;padding:0;border:0;background:none;cursor:pointer}
.wsimgs{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:10px}
.wsimg{display:grid;gap:6px;align-content:start}.wsimg .lab{font-size:13px;font-weight:600;color:var(--text2)}.wsimg .lab i{font-style:normal;font-weight:500}
.wsthumb{display:grid;place-items:center;aspect-ratio:5/4;border:1px dashed #C5CBD3;border-radius:10px;background:#FAFBFC;overflow:hidden;cursor:pointer;padding:0;color:var(--text2);font:600 13px var(--font)}
.wsimg.sm .wsthumb{aspect-ratio:1}
.wsthumb img{width:100%;height:100%;object-fit:cover}
.wsthumb span{display:grid;justify-items:center;gap:6px}.wsthumb .ic{width:20px;height:20px}
.wsimg a{cursor:pointer;justify-self:start}
.wshl{display:flex;flex-wrap:wrap;gap:6px}
.wschip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:5px 10px;font:600 13px var(--font);color:var(--text2);cursor:pointer}
.wschip.on{background:var(--navy);border-color:var(--navy);color:#fff;cursor:default}
.wschip.on button{border:0;background:none;color:rgba(255,255,255,.8);font-size:16px;line-height:1;cursor:pointer;padding:0 0 0 2px}
.wsgal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.wsg{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#EEF0F3}.wsg img{width:100%;height:100%;object-fit:cover}
.wsg button{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;cursor:pointer;line-height:1}
.wsrev,.wsfaq{display:grid;gap:6px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#FAFBFC}
.wsprev{position:sticky;top:14px;display:grid;gap:8px;min-width:0}
.wsbar{display:flex;align-items:center;gap:10px}
.wsbar .seg button{padding:5px 10px;display:grid;place-items:center}.wsbar .seg .ic{width:17px;height:17px}
.wsview{display:flex;justify-content:center;background:#E9ECF0;border-radius:var(--r-card);padding:12px;overflow:hidden;min-height:300px}
.wsclip{overflow:hidden;border-radius:10px;box-shadow:0 10px 30px -12px rgba(16,24,40,.35);background:#fff;flex:none}
.wsview.d-phone .wsclip{border-radius:26px;box-shadow:0 0 0 8px #1F2937,0 14px 34px -12px rgba(16,24,40,.45);margin:8px 0}
#wsframe{border:0;transform-origin:0 0;display:block;background:#fff}
.wspick{max-width:760px}
.wsplist{flex:1;overflow-y:auto;display:grid;gap:10px;align-content:start}
.wspl{font-weight:600}
.wspgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}
.wspgrid:empty{display:none}
.wspwrap{position:relative}
.wspwrap .wsp{width:100%}
.wspdel{position:absolute;top:6px;left:6px;width:26px;height:26px;border-radius:50%;border:0;background:rgba(16,24,40,.72);color:#fff;display:grid;place-items:center;cursor:pointer;padding:0}
.wspdel .ic{width:14px;height:14px;stroke-width:2.4}
.wspdel:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.wsp{position:relative;aspect-ratio:1;border:0;padding:0;border-radius:10px;overflow:hidden;cursor:pointer;background:#EEF0F3;box-shadow:inset 0 0 0 1px var(--line)}
.wsp img{width:100%;height:100%;object-fit:cover}
.wsp.on{box-shadow:0 0 0 3px var(--accent)}
.wsp small{position:absolute;left:6px;bottom:6px;background:rgba(0,0,0,.6);color:#fff;font:600 10.5px var(--font);border-radius:5px;padding:1px 6px}
.wsp i{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center}.wsp i .ic{width:14px;height:14px;stroke-width:2.6}
@media (max-width:1099px){
  .wspane.seg{display:flex}
  .wsgrid{grid-template-columns:minmax(0,1fr)}
  .wsgrid.show-edit .wsprev{display:none}.wsgrid.show-preview .wsed{display:none}
  .wsprev{position:static}
}

/* ---------- Connections: which assistant's apps ---------- */
.aifilt{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.aifilt .seg button{display:inline-flex;align-items:center;gap:6px}
.seg button:not(.on){color:var(--text2)}
.segn{font-style:normal;font:600 11px var(--font);color:var(--text2);background:rgba(16,24,40,.06);border-radius:5px;padding:0 5px;font-variant-numeric:tabular-nums}
.seg button.on .segn{background:var(--accent-soft);color:#0656D9}
.aifilt a{cursor:pointer}
.aiw{display:flex;gap:4px;flex-wrap:wrap;margin-top:-4px}
.aiw span{font:600 10.5px var(--font);border-radius:5px;padding:1px 6px;background:var(--inset);color:var(--text2)}
.aiw .aiw-muse{background:#EAF1FF;color:#0656D9}.aiw .aiw-chatgpt{background:#E3F4EE;color:#0B6E55}.aiw .aiw-grok{background:#ECEDEF;color:#111418}
.csech span:empty{display:none}
.ctile>.row{order:-1}.ctile>.aiw{order:0}.ctile>.btn,.ctile>.chip{order:1}

/* ---------- AI assistant picker ---------- */
.aipick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.aiopt{position:relative;display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px;font:inherit;color:inherit;text-align:left;cursor:pointer;min-width:0}
.aiopt:hover{border-color:#C5CBD3}
.aiopt.on{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.aiopt:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.ailogo{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;flex:none;font:700 15px var(--font);color:#fff}
.ai-muse{background:#0866FF}.ai-chatgpt{background:#10A37F}.ai-grok{background:#111418}
.aitxt{display:grid;min-width:0}.aitxt b{font-size:14.5px}.aitxt small{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aicur{position:absolute;top:-8px;right:8px;font:600 10.5px var(--font);font-style:normal;background:var(--ok);color:#fff;border-radius:5px;padding:1px 6px}
.aiuse{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--accent-soft);border:1px solid #D6E4FF;border-radius:12px;padding:12px 14px}
.mcpbox{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:8px 8px 8px 12px;background:#FAFBFC;min-width:0}
.mcpbox code{flex:1;min-width:0;font:600 13.5px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.aisteps{margin:0;padding:0;list-style:none;counter-reset:s;display:grid;gap:8px}
.aisteps li{counter-increment:s;position:relative;padding:10px 12px 10px 44px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:14px;line-height:1.45}
.aisteps li::before{content:counter(s);position:absolute;left:12px;top:10px;width:22px;height:22px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font:600 12px var(--font)}

/* ---------- Phone ---------- */
@media(max-width:719px){
  .setitem.mobonly{display:flex}
  .paygrid{grid-template-columns:minmax(0,1fr)}
  .aipick{grid-template-columns:minmax(0,1fr)}
  .aicur{top:50%;transform:translateY(-50%);right:12px}
  .dhead{display:none}
  .drow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who amt" "when pill";row-gap:3px;padding:11px 14px}
  .drow .dnum{display:none}.drow .dwho{grid-area:who}.drow .damt{grid-area:amt}.drow .dwhen{grid-area:when}.drow .dpill{grid-area:pill;justify-self:end}
  .docs .jstats{display:flex}
  .docbar .jsearch{flex-basis:100%}
  .pagehead{flex-wrap:wrap;align-items:center;padding-top:14px}
  .pagehead h1{font-size:26px}
  .mtabs{margin:0 -14px 14px;padding:0 24px 0 10px;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .homehero{border-radius:14px;padding:16px}
  .orbwrap{width:58px;height:58px}.orb{inset:9px}.orb .ic{width:20px;height:20px}
  .herotitle{font-size:23px}
  .quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
  .qbtn{flex-direction:column;gap:4px;padding:9px 4px;font-size:12px}
  .tile b{font-size:30px}
  .tabbar{border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(16,24,40,.12),inset 0 0 0 1px var(--line)}
  .tabbar .ti{font-size:0;color:var(--muted);border-radius:10px}
  .tabbar .ti .ic{width:21px;height:21px}
  .tabbar a.on .ti{background:var(--accent-soft);animation:none;color:var(--accent)}
  .tbadge{animation:none;background:var(--danger)}
  .fab{background:var(--accent);box-shadow:0 8px 18px rgba(8,102,255,.32),0 0 0 5px var(--bg);border-radius:16px;font-size:0}
  .fab .ic{width:24px;height:24px;stroke-width:2.2;color:#fff}
  .setnav{border:1px solid var(--line);border-radius:14px}
}

/* Website editor: pages, own pages, home sections, several top photos */
.wspages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.wspg{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:16px;padding:12px 14px;cursor:pointer;background:#fff;transition:border-color .12s,background .12s}
.wspg input{margin-top:3px;width:18px;height:18px;accent-color:var(--accent);flex:none}
.wspg b{display:block;font-size:14px}.wspg small{display:block;font-size:12.5px;color:var(--muted);line-height:1.35;margin-top:2px}
.wspg.on{border-color:#B9D2FF;background:var(--accent-soft)}
.wspg.fixed{cursor:default}.wspgx{width:18px;height:18px;border-radius:5px;background:var(--accent);color:#fff;display:grid;place-items:center;flex:none;margin-top:2px}.wspgx .ic{width:13px;height:13px;stroke-width:2.6}
.wsxlab{display:flex;align-items:baseline;justify-content:space-between;margin-top:4px}
.wsxp{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}
.wsxp.open{border-color:#B9D2FF;box-shadow:0 0 0 3px rgba(8,102,255,.08)}
.wsxph{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;padding:12px 14px;text-align:left;cursor:pointer;font:inherit;color:inherit}
.wsxph>span{flex:1;min-width:0}.wsxph b{display:block;font-size:14.5px}.wsxph small{display:block;font-size:12.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wsxph .ic{color:var(--muted);transition:transform .15s}.wsxp.open .wsxph .ic{transform:rotate(90deg)}
.wsxpb{display:grid;gap:12px;padding:2px 14px 14px}
.wssecs{display:grid;gap:6px}
.wssec{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:#fff}
.wssec.off{background:var(--inset)}.wssec.off .wssn b{color:var(--muted)}
.wssn{flex:1;min-width:0}.wssn b{display:block;font-size:14px}.wssn small{display:block;font-size:12.5px;color:var(--muted);line-height:1.35}
.wsord2{display:flex;gap:2px}.wsord2 .iconbtn{width:30px;height:30px;font-size:15px}.wsord2 .iconbtn:disabled{opacity:.3;cursor:default}
.wsheroes{grid-template-columns:repeat(3,minmax(0,1fr))}
.wsheroes .wsthumb.add{aspect-ratio:1;border-radius:12px}
.wsord{position:absolute;left:4px;bottom:4px;display:flex;gap:3px}
.wsord button{position:static;width:22px;height:22px;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;cursor:pointer;line-height:1;font-size:14px;padding:0}
.wsord button:disabled{opacity:.35;cursor:default}
.wspsel{width:auto;max-width:190px;padding:6px 30px 6px 12px;font-size:13px;border-radius:999px}
.wsp i b{font:700 12px var(--font);color:#fff}
@media(max-width:719px){.wspages{grid-template-columns:minmax(0,1fr)}}

/* Panels take focus when they open (so keyboard and screen-reader users land inside); no ring on the panel itself. */
.sheet:focus,.drawer:focus,.jdrawer:focus{outline:none}

/* ---------- Rounder corners, Google-style ----------
   Big soft containers, pill-shaped buttons and search, medium rounding on rows inside cards. Last in the
   cascade on purpose so it wins over the per-component radii above. */
.btn,.btn-sm,.btn-lg,.qbtn,.newbtn,.runnow,.seg,.seg button,.jsearch,.toast,.navlink .count{border-radius:999px}
.input,select.input{border-radius:14px}
textarea.input{border-radius:18px}
.homehero,.hero,.musehero,.apphero,.bkhero{border-radius:28px}
.card,.tile,.acard,.mcard,.notifcard,.notifcard.on,.need,.installbar,.plan,.profile,.dtbl,.wsstatus,.wsview,.jcol,.jlist,.ccard2,.setnav,
.duebar,.banner,.bookrow,.aiopt,.aiuse,.musesteps,.paybox,.tcard,.qsum1,.qnew,.qline,.qtots,.jstat,.ctile,.dropbar>div,
.earnhero>div,.earnhero>div+div,.tdjob,.step3,.howto,.nextin{border-radius:20px}
.tli,.qitem,.wxd,.wxr,.wxset,.fwd,.fwrow,.anext,.idea,.choice,.setitem,.arow,.jcard,.jempty,.jquick,.jplace,.custchip,.custpick,
.qnote,.pth,.padd,.wschk,.wsrev,.wsfaq,.mcpbox,.aisteps li,.qdmatch,.wslook,.wsthumb,.wsp,.wsclip,.tradegrid button,.qbk>div,.navlink{border-radius:14px}
.ring,.aico,.bkico,.chatico,.caught .bounce,.empty .ring,.sico.lg,.bookrow .logo{border-radius:14px}
.avatar{border-radius:50%}
.sheet{border-radius:28px 28px 0 0}
@media(min-width:720px){.sheet{border-radius:28px}.jdrawer{border-radius:28px 0 0 28px}}
@media(max-width:719px){
  .homehero{border-radius:24px}
  .qbtn{border-radius:18px}
  .tabbar{border-radius:28px}.tabbar .ti{border-radius:999px}
  .fab{border-radius:20px}
  .setnav{border-radius:20px}
}

/* ---------- Text first ----------
   Section titles stand on their own: no icon badge beside them and no line of explanation under them.
   Tiles, lists and empty states lead with words and numbers. Last in the cascade so it wins. */
h2.wsh{display:block;margin:0;font:700 16px/1.3 var(--font);letter-spacing:-.01em;color:var(--text)}
h2.wsh .wsn{font-weight:500;font-size:13px;color:var(--muted);margin-left:6px}
.hdate{font-weight:500;color:var(--muted);margin-left:4px}
.cardh{margin-bottom:12px}
.sethead{min-height:36px}
.tile span{display:block}
.tile b{margin-top:6px}
.empty{padding:24px 16px}
.empty p{margin:0 0 12px}.empty p:last-child{margin:0}
.caught{padding:14px 4px 4px}
.questdone{padding-top:16px;padding-bottom:16px}
.tradegrid button{justify-content:center;text-align:center;padding:12px}
.musehero,.apphero{background:var(--navy)}
.wspg{align-items:center}.wspg input,.wspg.fixed .wspgx{margin-top:0}
.setitem{padding:11px 12px}
.csech{padding-top:10px}
.qsum1,.qnew{padding:13px 16px}
.duebar{padding:12px 14px}