:root{--bg: #0f172a;--panel: #ffffff;--ink: #0f172a;--muted: #64748b;--line: #e2e8f0;--accent: #1d4ed8;--draft: #b45309;--draft-bg: #fef3c7;--pending: #6d28d9;--pending-bg: #ede9fe;--ratified: #047857;--ratified-bg: #d1fae5;--danger: #b91c1c;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0;background:#f1f5f9;color:var(--ink)}.app{max-width:1100px;margin:0 auto;padding:24px 20px 64px}header.app-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:8px}.app-head h1{font-size:20px;margin:0}.app-head h1 .brand-sub{font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.02em;margin-left:8px;vertical-align:middle}.app-head .sub{color:var(--muted);font-size:13px;margin-top:2px}.mask-chip{display:inline-block;margin-left:8px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#475569;background:#e2e8f0;border-radius:999px;padding:1px 8px;vertical-align:middle}.persona-pick{display:flex;flex-direction:column;gap:4px;min-width:200px}.persona-pick label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.persona-pick select{font-size:14px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#fff}.lock-chip{font-size:11px;color:var(--muted)}.persona-blurb{font-size:12.5px;color:var(--muted);align-self:center;max-width:620px}.persona-blurb b{color:var(--ink)}.preview-banner{background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:12.5px;border-radius:8px;padding:8px 12px;margin:12px 0 20px}.toolbar{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-bottom:18px}.field{display:flex;flex-direction:column;gap:4px}.field label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.field select,.field input{font-size:14px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#fff}.toolbar .spacer{flex:1}.acting-as{font-size:12.5px;color:var(--muted);align-self:center}.acting-as b{color:var(--ink)}button{font:inherit;cursor:pointer;border:1px solid var(--line);background:#fff;border-radius:8px;padding:6px 12px;color:var(--ink)}button:hover{border-color:#cbd5e1}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background:#1e40af}button:disabled{opacity:.45;cursor:not-allowed}button.link{border:none;background:none;color:var(--accent);padding:2px 4px}.readiness{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-bottom:22px}.rcard{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.rcard .rname{font-weight:600;font-size:14px}.rcard .rcite{color:var(--muted);font-size:12px;margin:2px 0 8px}.rcard .rstat{font-size:12.5px;display:flex;align-items:center;gap:6px}.dot{width:9px;height:9px;border-radius:50%;display:inline-block}.dot.ok{background:var(--ratified)}.dot.no{background:var(--draft)}table.items{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden}.items th,.items td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);font-size:13.5px;vertical-align:top}.items th{background:#f8fafc;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.items tr:last-child td{border-bottom:none}.items .text{max-width:420px;color:#334155}.items .id{font-family:ui-monospace,monospace;font-size:11.5px;color:var(--muted)}.badge{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.badge.draft{color:var(--draft);background:var(--draft-bg)}.badge.pending{color:var(--pending);background:var(--pending-bg)}.badge.ratified{color:var(--ratified);background:var(--ratified-bg)}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.tabs{display:flex;gap:4px;margin:4px 0 12px;border-bottom:1px solid var(--line)}.tab{border:none;background:none;padding:9px 14px;border-radius:8px 8px 0 0;color:var(--muted);font-weight:600;border-bottom:2px solid transparent}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.custom-chip{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:1px 7px;margin-left:8px}.empty{background:var(--panel);border:1px dashed var(--line);border-radius:12px;padding:28px;text-align:center;color:var(--muted);margin-bottom:16px}button.link.danger{color:var(--danger)}.drawer.wide{width:min(680px,100%)}.bform{display:flex;flex-direction:column;gap:14px;margin-top:6px}.bform .blk{display:flex;flex-direction:column;gap:5px}.bform .lbl{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.bform input,.bform select,.bform textarea{font:inherit;font-size:13.5px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.bform textarea{min-height:56px;resize:vertical}.bform .hint{font-size:11.5px;color:var(--muted);font-weight:400;text-transform:none;letter-spacing:0}.outcomes{display:flex;flex-wrap:wrap;gap:6px}.outcome{font-size:12px;background:#f1f5f9;border:1px solid var(--line);border-radius:6px;padding:3px 8px}.outcome.adverse{background:#fef2f2;border-color:#fecaca;color:var(--danger)}.stmt-row{display:flex;gap:6px;align-items:flex-start;margin-bottom:6px}.stmt-row select{flex:0 0 110px}.stmt-row input,.stmt-row textarea{flex:1}.chk{display:flex;gap:8px;align-items:flex-start;font-size:13px}.chk input{margin-top:2px}.ratmeta{font-size:11px;color:var(--muted);margin-top:4px}.ratbanner{font-size:12.5px;color:var(--ratified);background:var(--ratified-bg);border-radius:8px;padding:6px 10px;margin-bottom:14px;font-weight:600}.count{color:var(--muted);font-size:12.5px;margin:4px 2px 10px}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;justify-content:flex-end;z-index:10}.drawer{width:min(560px,100%);height:100%;background:#fff;padding:22px 24px;overflow-y:auto;box-shadow:-8px 0 24px #00000026}.drawer h2{font-size:16px;margin:0 0 2px}.drawer .dcite{color:var(--muted);font-size:12.5px;margin-bottom:16px}.drawer textarea{width:100%;min-height:130px;font:inherit;font-size:13.5px;padding:10px;border:1px solid var(--line);border-radius:8px;resize:vertical}.drawer .drawer-actions{display:flex;gap:8px;margin-top:12px}.hist{list-style:none;padding:0;margin:16px 0 0}.hist li{border-left:3px solid var(--line);padding:8px 0 8px 12px;margin-bottom:4px}.hist .hmeta{font-size:12px;color:var(--muted)}.hist .htext{font-size:13px;color:#334155;margin-top:3px;white-space:pre-wrap}.close-x{float:right;border:none;background:none;font-size:20px;line-height:1;color:var(--muted);cursor:pointer}.note{font-size:12.5px;color:var(--muted);margin-top:8px}.denied{color:var(--danger);font-size:12.5px;margin-top:8px}.login-card{max-width:380px;margin:48px auto;padding:24px 28px;border:1px solid var(--line);border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:12px}.login-card h2{margin:0 0 4px}.login-card input{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px}.login-card .tenant-choice{text-align:left}
