:root{font-family:system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif;color:#182c43;background:#f3f6f9;font-size:16px;--teal:#087e75;--border:#dbe3eb}*{box-sizing:border-box}body{margin:0}header{height:80px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1120px)/2));background:#142b42;color:#d2dce5;gap:20px}header>span{font-size:.875rem}.brand{font-weight:750;font-size:1.6rem;color:#66dbc3;display:flex;align-items:center;gap:12px;text-decoration:none}.brand span{color:white;font-size:1.25rem}main{max-width:1120px;margin:44px auto;padding:0 24px}.intro{margin-bottom:28px}.eyebrow{color:var(--teal);font-size:.875rem;font-weight:700;letter-spacing:.08em}h1{font-size:2rem;margin:10px 0 12px}h2{font-size:1.25rem;margin:0 0 10px}p{color:#60738a;font-size:1rem;line-height:1.75;margin:12px 0}.card{border:1px solid var(--border);border-radius:12px;background:white;padding:28px;margin-bottom:24px}#guest,#setup{max-width:520px}label{display:grid;gap:9px;font-size:.875rem;font-weight:600}form{display:grid;gap:20px}input,select,textarea{font:inherit;color:inherit;border:1px solid #cbd6e1;border-radius:7px;padding:12px;background:white;width:100%;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #21a18e;outline-offset:2px}button,.button{font:inherit;font-size:.875rem;border:1px solid var(--border);border-radius:7px;padding:12px 18px;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;font-weight:600;line-height:1.4}.primary{background:var(--teal);color:white;border-color:var(--teal)}.secondary{color:#29445e;background:#f5f8fa}button:disabled{opacity:.6;cursor:wait}.tabs{display:flex;border-bottom:1px solid var(--border);margin-bottom:26px;gap:14px}.tabs button{border:0;border-bottom:3px solid transparent;border-radius:0;background:none;padding:12px 4px;color:#758499}.tabs .active{color:var(--teal);border-bottom-color:var(--teal)}#setupHint{margin-top:24px;border-top:1px solid var(--border);padding-top:16px}#setupHint a{color:var(--teal)}#message{padding:16px;border-radius:7px;background:#e4f5ee;border:1px solid #b7dfd1;margin-bottom:24px;line-height:1.6}#message.error{background:#fff2ed;border-color:#ecc9bc;color:#a44629}.account-heading,.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.account-heading p{margin:8px 0}.badge{background:#e7f2ed;color:var(--teal);padding:8px 14px;border-radius:6px;font-size:.875rem;white-space:nowrap}.badge.pending,.badge.rejected,.badge.disabled{background:#fff2df;color:#95671b}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}details{margin-top:28px;border-top:1px solid var(--border);padding-top:20px}summary{cursor:pointer;font-size:.875rem;color:var(--teal);font-weight:600}details form{margin-top:22px;max-width:440px}.counts{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.counts span{padding:12px 16px;background:#f2f6f8;border-radius:7px;font-size:.875rem}.counts b{font-size:1.25rem;margin-left:10px;color:var(--teal)}.filter{display:flex;gap:18px;margin:20px 0}.filter label{flex:1;max-width:340px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:800px;text-align:left;font-size:.875rem}th{color:#61748a;background:#f6f8fb;padding:14px}td{padding:16px 14px;border-bottom:1px solid var(--border);vertical-align:top}td small{display:block;color:#75869a;margin-top:8px}td input{min-width:150px}.row-actions{display:flex;flex-wrap:wrap;gap:7px;max-width:300px}.row-actions button{padding:8px 12px}.danger{background:#fff4ef;color:#a24731;border-color:#e3c1b2}.empty{text-align:center;color:#71849a;padding:32px}.footnote,footer{font-size:.875rem;color:#75869a}footer{max-width:1120px;margin:30px auto 44px;padding:0 24px}[hidden]{display:none!important}@media(max-width:640px){header{padding:0 20px}.intro h1{font-size:1.6rem}main{padding:0 16px;margin-top:28px}.card{padding:20px}.account-heading,.admin-heading{align-items:start;flex-wrap:wrap}.filter{flex-direction:column}.filter label{max-width:none}.counts{gap:8px}.counts span{padding:10px}.actions .button{width:100%}}

/* Account/settings pages use the available monitor width and height. */
:root{--account-padding:clamp(16px,3vw,48px);--account-width:1680px}
header{height:auto;min-height:80px;flex-wrap:wrap;padding:18px max(var(--account-padding),calc((100vw - var(--account-width))/2));gap:12px}
main,footer{width:100%;max-width:var(--account-width);padding-left:var(--account-padding);padding-right:var(--account-padding)}
main{margin:clamp(24px,4vh,48px) auto;min-width:0}.card{padding:clamp(18px,2.2vw,32px);min-width:0}
#guest,#setup{width:100%;max-width:clamp(400px,40vw,640px)}
.account-heading,.admin-heading,.filter,.tabs{flex-wrap:wrap;min-width:0}.account-heading>div,.admin-heading>div{min-width:0;flex:1 1 240px}
.filter label{flex:1 1 240px;max-width:480px;min-width:0}.table-scroll{width:100%;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain}
.actions>*{max-width:100%}.brand{flex-shrink:0}.badge{white-space:normal}p,h1,h2,#message,td small,header>span{overflow-wrap:anywhere}
details form{width:100%;max-width:600px}input,select,textarea{max-width:100%}
@media(max-width:640px){header{min-height:68px}#guest,#setup{max-width:100%}.filter label{max-width:none}.actions>*{flex:1 1 180px}.row-actions{min-width:190px}}

/* Shared workspace visual language on account/settings screens. */
:root{background:#f4f6f9;color:#1c2e45}header{background:#14243a}.card{border-color:#e0e6ee;border-radius:12px;box-shadow:0 3px 14px #172a4106}#guest,#setup{margin-left:auto;margin-right:auto}.intro{max-width:760px;margin:0 auto 28px;text-align:center}.intro h1{font-size:clamp(25px,2vw,32px);letter-spacing:-.5px}.card h2{color:#223e54}button,.button{font-size:13px}.table-scroll{border:1px solid #e2e8ef;border-radius:8px;max-height:65vh}th{position:sticky;top:0;z-index:3;background:#f1f5f9}td:first-child{position:sticky;left:0;z-index:1;background:white}.table-scroll tr:hover>td{background:#f7fafc}

.company-permission{display:block;min-width:170px;font-size:13px;margin:7px 0}.company-permission select{padding:6px;margin-top:4px}.admin table{min-width:1080px}#accountOrganizations{font-size:14px;line-height:1.9}

.table-sort{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:3px 0;white-space:nowrap}.table-sort.is-sorted{color:#087f5b}.table-sort:focus-visible{outline:2px solid #087f5b}
