/* onboard-doc.css — live onboarding document (see onboard-doc.js). Uses the client
   site's tokens when present, with fallbacks so it also works on a plain page. */
#ob-root{--ob-ink:var(--ink,#0a0f1a);--ob-acc:var(--ice-3,#1677b3);--ob-frost:var(--frost,#e8f4fb);--ob-muted:var(--muted,#5b6578);--ob-r:var(--r,18px)}
.ob-gate-wrap{padding:clamp(48px,10vw,110px) 0}
.ob-gate{max-width:420px;margin:0 auto;background:#fff;border:1px solid rgba(13,20,36,.1);border-radius:var(--ob-r);padding:clamp(24px,5vw,40px);box-shadow:0 24px 60px -24px rgba(10,15,26,.25)}
.ob-gate h1{font-size:clamp(28px,5vw,38px);margin:8px 0 8px}
.ob-gate label{display:block;font-weight:600;font-size:14px;margin:16px 0 6px}
.ob-gate input{width:100%;box-sizing:border-box;font:inherit;font-size:17px;padding:12px 14px;border:1px solid rgba(13,20,36,.18);border-radius:12px;background:#fff;color:inherit}
.ob-gate input:focus{outline:2px solid var(--ob-acc);outline-offset:1px}
.ob-gate .btn{width:100%;margin-top:18px;justify-content:center}
.ob-lock{font-size:30px}
.ob-sub{color:var(--ob-muted);margin:0 0 6px}
.ob-err{color:#b42318;font-weight:600;min-height:1.2em;margin:12px 0 0}
.ob-bar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px var(--gut,16px);background:var(--ob-ink);color:#fff;font-size:14px}
.ob-dot{width:9px;height:9px;border-radius:50%;background:#3ddc84;box-shadow:0 0 0 3px rgba(61,220,132,.25)}
.ob-me{margin-left:auto;opacity:.8}
.ob-link{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}
.ob-bar .ob-link{color:#fff}
.ob-tools{margin:-4px 0 6px 36px;display:grid;gap:6px}
.ob-meta{font-size:12.5px;color:var(--ob-muted)}
.ob-meta:empty{display:none}
.ob-note{white-space:pre-wrap;background:var(--ob-frost);border-radius:10px;padding:10px 12px;font-size:15px}
.ob-note textarea{width:100%;box-sizing:border-box;font:inherit;padding:10px;border:1px solid rgba(13,20,36,.18);border-radius:10px;background:#fff}
.ob-acts{display:flex;gap:8px;flex-wrap:wrap}
.ob-btn{font:inherit;font-size:13.5px;font-weight:600;padding:6px 12px;border-radius:999px;border:1px solid rgba(13,20,36,.15);background:#fff;color:var(--ob-ink);cursor:pointer;min-height:34px}
.ob-btn:hover{border-color:var(--ob-acc);color:var(--ob-acc)}
.ob-pri{background:var(--ob-acc);border-color:var(--ob-acc);color:#fff}.ob-pri:hover{color:#fff;filter:brightness(1.08)}
.ob-files{display:grid;gap:8px}
.ob-files:empty{display:none}
.ob-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:16px}
.ob-chip{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid rgba(13,20,36,.1);border-radius:12px;padding:8px;min-width:0}
.ob-open{border:0;padding:0;background:none;cursor:pointer;flex:none}
.ob-thumb{width:56px;height:56px;border-radius:8px;background:var(--ob-frost);color:var(--ob-acc);display:grid;place-items:center;font-size:12px;font-weight:700;overflow:hidden}
.ob-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ob-cinfo{min-width:0;display:grid;gap:2px;justify-items:start}
.ob-name{border:0;padding:0;background:none;font:inherit;font-weight:600;font-size:14.5px;color:var(--ob-ink);cursor:pointer;text-align:left;overflow-wrap:anywhere}
.ob-cinfo small{color:var(--ob-muted);font-size:12.5px}
.ob-rm{font-size:12.5px;color:#b42318}
.ob-shared{margin-top:36px;background:#fff;border:1px solid rgba(13,20,36,.08);border-radius:var(--ob-r);padding:clamp(20px,3vw,30px)}
.ob-shared h2{font-size:clamp(26px,3.6vw,36px);margin:0 0 8px}
.ob-drop{margin-top:14px;border:2px dashed rgba(22,119,179,.35);border-radius:14px;padding:22px;text-align:center;display:grid;gap:4px;cursor:pointer;background:var(--ob-frost)}
.ob-drop.on,.ob-drop:hover,.ob-drop:focus{border-color:var(--ob-acc);outline:none}
.ob-drop span{color:var(--ob-muted);font-size:14.5px}
.ob-empty{color:var(--ob-muted);margin:0}
#ob-toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,20px);opacity:0;background:#0a0f1a;color:#fff;padding:12px 18px;border-radius:12px;font-size:15px;z-index:9999;transition:.2s;pointer-events:none;max-width:calc(100% - 32px)}
#ob-toast.on{opacity:1;transform:translate(-50%,0)}
@media(max-width:600px){.ob-tools{margin-left:0}.ob-grid{grid-template-columns:1fr}}

/* Requests (2026-10-15) */
.ob-req{margin:0 0 30px;background:#fff;border:1px solid rgba(13,20,36,.08);border-radius:var(--ob-r);padding:clamp(20px,3vw,30px)}
.ob-req h2{font-size:clamp(26px,3.6vw,36px);margin:0 0 8px}
.ob-rq-new{display:grid;gap:10px;margin:14px 0 18px;padding:16px;border-radius:14px;background:var(--ob-frost)}
.ob-rq-row{display:grid;grid-template-columns:150px 1fr;gap:10px}
.ob-rq-new input,.ob-rq-new select,.ob-rq-new textarea,.ob-reply textarea,.ob-rq-ctl select,.ob-rq-ctl input{width:100%;box-sizing:border-box;font:inherit;font-size:16px;padding:10px 12px;border:1px solid rgba(13,20,36,.18);border-radius:10px;background:#fff;color:inherit;min-height:44px}
.ob-rq-new .btn{min-height:44px}
.ob-fl{align-self:center;color:var(--ob-muted);font-size:14px}
.ob-tabs{display:flex;gap:6px;margin:0 0 10px}
.ob-tab{font:inherit;font-size:14px;font-weight:600;padding:8px 14px;border-radius:999px;border:1px solid rgba(13,20,36,.15);background:#fff;color:var(--ob-ink);cursor:pointer;min-height:38px}
.ob-tab.on{background:var(--ob-ink);border-color:var(--ob-ink);color:#fff}
.ob-rq{border:1px solid rgba(13,20,36,.1);border-radius:14px;margin-top:10px;background:#fff}
.ob-rq summary{display:flex;gap:10px;align-items:center;padding:14px 16px;cursor:pointer;list-style:none;flex-wrap:wrap}
.ob-rq summary::-webkit-details-marker{display:none}
.ob-rq-t{font-weight:600;flex:1;min-width:160px;overflow-wrap:anywhere}
.ob-kind{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ob-acc)}
.ob-pill{font-size:12.5px;font-weight:700;padding:3px 10px;border-radius:999px;background:#eef2f7;color:#334155}
.ob-pill.st-new{background:#e0f2fe;color:#075985}.ob-pill.st-in_progress{background:#fef3c7;color:#92400e}.ob-pill.st-waiting{background:#fde2e2;color:#9f1239}.ob-pill.st-done{background:#dcfce7;color:#166534}
.ob-rq-b{display:grid;gap:10px;padding:0 16px 16px}
.ob-rq-ctl{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ob-rq-ctl label{display:grid;gap:4px;font-size:12.5px;font-weight:600;color:var(--ob-muted)}
.ob-thread{display:grid;gap:8px}.ob-thread:empty{display:none}
.ob-tn{border-left:3px solid var(--ob-acc);padding:4px 0 4px 10px;font-size:15px}
.ob-tn b{font-weight:600;margin-right:8px}.ob-tn small{color:var(--ob-muted);font-size:12.5px}.ob-tn div{white-space:pre-wrap}
.ob-tn.sys{border-left-color:rgba(13,20,36,.15);color:var(--ob-muted);font-size:13.5px}
.ob-reply{display:grid;gap:8px}
.ob-history{margin:24px 0 0;border:1px solid rgba(13,20,36,.1);border-radius:var(--ob-r);background:#fff}
.ob-history>summary{padding:16px 20px;font-weight:700;font-size:17px;cursor:pointer}
.ob-hbody{padding:0 clamp(12px,2vw,20px) 16px}
@media(max-width:600px){.ob-rq-row,.ob-rq-ctl{grid-template-columns:1fr}}

.ob-rq-new .ob-err{margin:0;min-height:0}.ob-rq-new .ob-err:empty{display:none}

/* Added checks + progress (2026-10-22) */
.ob-prog{font-weight:700;background:rgba(255,255,255,.12);border-radius:999px;padding:2px 10px}
.ob-prog:empty{display:none}
.ob-sprog{margin-left:10px;font-size:12.5px;font-weight:700;vertical-align:middle;padding:2px 9px;border-radius:999px;background:#eef2f7;color:#334155;white-space:nowrap}
.ob-sprog:empty{display:none}.ob-sprog.all{background:#dcfce7;color:#166534}
.ob-added{display:grid;gap:2px}.ob-added:empty{display:none}
.ob-mine b::before{content:"Added: ";font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ob-acc)}
.ob-addbtn{margin:8px 0 4px;border-style:dashed}
.ob-addf{display:grid;gap:8px;margin:8px 0;padding:12px;border-radius:12px;background:var(--ob-frost)}
.ob-addf[hidden]{display:none}
.ob-addf input{width:100%;box-sizing:border-box;font:inherit;font-size:16px;padding:10px 12px;border:1px solid rgba(13,20,36,.18);border-radius:10px;background:#fff;color:inherit;min-height:44px}
.ob-addf .ob-err{margin:0;min-height:0}.ob-addf .ob-err:empty{display:none}
