:root{--bg:#f6f7f8;--surface:#fff;--ink:#111923;--muted:#77808b;--line:#e9ecf0;--nav:#161c26;--accent:#274b43;--soft:#eaf2ee;--yellow:#f9edcc;--red:#b24540}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}a{color:inherit;text-decoration:none}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:.15em;font-weight:800;color:#79848a;margin:0 0 8px}h1{font-size:32px;line-height:1.17;margin:0 0 10px;letter-spacing:-.03em}h2{font-size:27px;line-height:1.2;margin:0 0 10px;letter-spacing:-.03em}h3{font-size:16px;margin:0 0 12px;letter-spacing:-.015em}p{margin:6px 0 12px}header{height:76px;background:#fff;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 34px}.brand{display:flex;align-items:center;gap:12px}.brand strong{display:block;font-size:17px;letter-spacing:.13em}.brand-caption{display:block;color:var(--muted);font-size:11px}.logo{width:49px;height:49px;border-radius:15px;background:var(--nav);color:#fff;display:grid;place-items:center;font-size:27px;font-weight:900;letter-spacing:-.04em}.logo span{color:#77d6a6}.logo.small{width:38px;height:38px;border-radius:11px;font-size:23px}.header-right{display:flex;align-items:center;gap:14px}.status{font-size:12px;color:#255d48;background:#e9f4ed;border-radius:50px;padding:7px 13px;font-weight:700}.shell{display:flex;min-height:calc(100vh - 76px)}.sidebar{background:var(--nav);color:#e7ecf2;width:242px;flex-shrink:0;padding:30px 13px;display:flex;flex-direction:column;gap:6px}.side-title{font-size:10px;font-weight:800;letter-spacing:.15em;color:#7e8a98;padding:5px 18px 17px}.nav{border:0;color:#aab3c1;text-align:left;background:transparent;padding:14px 18px;border-radius:11px;width:100%;font-weight:650}.nav:hover,.nav.active{background:#2a3340;color:white}.nav.active{box-shadow:inset 3px 0 #80dab6}.aside-bottom{margin-top:auto;padding:25px 16px 8px;color:#828c9a;font-size:12px;line-height:1.7}main{width:min(1160px,calc(100% - 35px));margin:0 auto;padding:35px 10px 35px}.topline{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}.outline,.primary,.btn-light{border:1px solid #dce4e0;border-radius:11px;background:#fff;padding:11px 17px;font-weight:750;color:var(--ink)}.outline:hover{background:#eff4f2}.primary{background:#233f39;color:#fff;border-color:#233f39}.btn-light{background:white;color:#273f36;white-space:nowrap}.small-btn{font-size:12px;padding:8px 13px}.hero{background:linear-gradient(125deg,#203e36,#263c3e);color:#fff;border-radius:18px;padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:21px}.hero .muted{color:#aec5bd}.hero .eyebrow{color:#83b8a5}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:22px}.metric,.panel,.section-banner,.item{border:1px solid var(--line);background:var(--surface);border-radius:16px}.metric{padding:20px}.metric-val{font-size:25px;font-weight:850;letter-spacing:-.03em;padding-top:5px}.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.panel{padding:23px;margin-bottom:18px}.stack{display:grid;gap:11px}.item{padding:17px 19px}.item-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.item strong{font-size:16px}.mini{font-size:12px;color:var(--muted);margin-top:6px}.pill{border-radius:30px;padding:5px 10px;font-size:11px;font-weight:800;background:#eff2f5;color:#596371;white-space:nowrap}.pill.good{color:#28654d;background:#e3f3e9}.pill.caution{color:#765810;background:#fff4d6}.pill.red{color:#9a3e3a;background:#ffeded}.item-action{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}.item-action button{font-size:12px;padding:8px 12px}.item-action a{font-size:12px;font-weight:700;color:#2f6653}.section-banner{padding:18px 21px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;gap:16px}.section-banner h3{margin:0 0 4px}.section-banner p{font-size:13px;color:var(--muted);margin:0}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.empty{color:#7d858e;padding:18px;background:#f8fafb;border-radius:12px;font-size:13px}.tab{display:none}.tab.active{display:block}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:44px;padding:19px 0;color:#8c949d;font-size:12px}#notice{border:1px solid #f1dfb0;background:#fff5d8;color:#594615;border-radius:12px;padding:12px 16px;margin-bottom:16px}.hint{font-size:12px;color:#9199a2}code{font-family:ui-monospace,Consolas,monospace;font-size:12px}.login-screen{min-height:100vh;background:linear-gradient(120deg,#e9efe9,#f7f8f7);display:grid;place-items:center;padding:22px}.login-card{width:min(440px,100%);background:white;border:1px solid #e0e5e0;box-shadow:0 15px 50px #24362b14;border-radius:24px;padding:40px}.login-card h1{font-size:38px;margin-top:20px}.login-card em{color:#457962;font-style:normal}.login-card label{display:grid;margin-top:32px;gap:8px;font-weight:800;font-size:12px}.login-card input{width:100%;height:48px;padding:10px 14px;border:1px solid #dfe5e2;border-radius:9px}.login-card button{width:100%;margin-top:14px}.login-card #loginError{min-height:20px;color:#a94740}.symbol-detail{font-size:13px;color:#343f4a;margin-top:7px;line-height:1.7}.symbol-detail b{font-weight:750}.datarow{display:flex;gap:10px;flex-wrap:wrap}.datarow .k{background:#f5f7f8;padding:7px 11px;border-radius:8px;color:#616d77;font-size:12px}.warn{background:#fff7e5;color:#70551d;padding:9px 12px;border-radius:10px;font-size:12px;margin-top:10px}@media(max-width:900px){.sidebar{width:190px}.metrics{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}}@media(max-width:650px){header{padding:0 15px}.brand-caption{display:none}.sidebar{width:auto;display:flex;flex-direction:row;overflow-x:auto;padding:8px;gap:4px;min-height:60px}.shell{display:block}.side-title,.aside-bottom{display:none}.nav{min-width:max-content;width:auto;padding:12px 13px;font-size:12px}.topline{display:block}.topline .outline{margin-top:12px}main{width:100%;padding:23px 14px}.hero{padding:24px 19px;display:block}.hero .btn-light{display:inline-block;margin-top:9px}.metric{padding:15px}.metric-val{font-size:22px}.section-banner{display:block}.section-banner button{margin-top:12px}footer{display:block}.login-card{padding:28px}}
.ws-guide{border:1px solid #dfe6e3;background:#fbfdfc;border-radius:14px;padding:16px;margin-top:14px}
.ws-guide-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px}
.ws-guide-heading strong{font-size:14px}
.ws-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ws-field{display:grid;gap:3px;border:1px solid #e9edea;background:#fff;padding:9px 11px;border-radius:9px;min-width:0}
.ws-field span{font-size:11px;color:#6d7980}
.ws-field b{font-size:13px;overflow-wrap:anywhere}
@media(max-width:900px){.ws-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.ws-grid{grid-template-columns:1fr}}

/* Explicitly override display:grid on login-screen after authentication. */
[hidden] { display: none !important; }

/* Multi-user onboarding and administration */
[hidden] { display: none !important; }
.claim-panel {margin-top: 22px; padding: 18px; border: 1px solid #dfe6e1; border-radius: 14px; background: #f7faf8;}
.form-grid {display: grid; gap: 14px; max-width: 590px;}
.form-grid label {display: grid; gap: 7px; font-weight: 650;}
.form-grid input, .claim-panel input {padding: 12px; max-width: 100%; border: 1px solid #c9d4cf; border-radius: 10px; background:white;}
.invite-result {border: 1px solid #d0dfd2; border-radius: 12px; padding: 16px; margin-top: 12px; background:#f3faf4; overflow-wrap:anywhere;}
.invite-result code {display:block; padding:12px; margin: 12px 0; user-select:all; font-size:14px; background:white; border-radius:8px;}
#claimError,#loginError {min-height:1.4em; overflow-wrap:anywhere;}
#usersList .item-action {flex-wrap:wrap;}
