:root{font-family:Inter,"Microsoft YaHei",system-ui,sans-serif;color:#203044;background:#f5f7fa;font-size:14px;--blue:#2563eb;--line:#e8edf4;--muted:#7b889b}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:8px;padding:10px 15px;background:#edf2f8;color:#425571;white-space:nowrap}button:hover{filter:brightness(.96)}button:disabled{cursor:wait;opacity:.6}.primary{background:var(--blue);color:#fff;font-weight:600;box-shadow:0 3px 7px #2563eb18}.ghost{background:#fff;border:1px solid #e1e7ef}.wide{width:100%}input,select,textarea{border:1px solid #dbe2ec;border-radius:7px;padding:11px 12px;color:#203044;background:#fff;outline:none;width:100%}input:focus,select:focus,textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb12}label{display:block;margin:16px 0;font-weight:500}label input,label select,label textarea{display:block;margin-top:8px}h1{font-size:28px;margin:8px 0 10px;letter-spacing:-.6px}h2{font-size:20px;margin:0}.muted{color:var(--muted)}.small{font-size:12px;line-height:1.8}.logo{width:42px;height:42px;border-radius:12px;background:#2563eb;color:white;font-size:26px;font-weight:800;display:flex;align-items:center;justify-content:center}.logo span{font-size:17px;margin-top:-12px}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 15% 15%,#dbeafe,transparent 60%),#f5f7fa}.login-card{width:min(440px,92vw);padding:42px;background:white;border:1px solid #e6edf6;border-radius:20px;box-shadow:0 16px 60px #1b365d0c}.login-card h1{margin-top:24px}.login-card .wide{margin-top:8px}.login-card>.small{margin-top:25px;text-align:center}aside{position:fixed;inset:0 auto 0 0;width:224px;background:white;border-right:1px solid var(--line);padding:28px 18px}.brand{display:flex;align-items:center;gap:12px;padding:0 8px;font-size:20px}.side-label{font-size:11px;color:#9aa6b6;margin:44px 16px 14px}.nav{width:100%;text-align:left;padding:14px 16px;background:transparent;margin:3px 0}.nav.active{background:#edf3ff;color:#2563eb;font-weight:600}.side-foot{position:absolute;bottom:30px;left:30px;font-size:12px;line-height:2;color:#61718b}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#16b68b;margin-right:5px}main{margin-left:224px;padding:0 40px 25px;max-width:1800px}header{height:80px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:12px}.heading{display:flex;align-items:center;justify-content:space-between;margin:34px 0 25px}.heading p{margin:0}.eyebrow{font-size:10px;color:#8c9ab0;font-weight:700;letter-spacing:2px}.notice{display:flex;gap:15px;align-items:center;border:1px solid #e9dcc1;background:#fffaf0;color:#977335;padding:14px 18px;border-radius:9px;font-size:12px}.notice strong{white-space:nowrap}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:24px 0}.stats article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:21px 24px}.stats span{color:#738198;font-size:12px}.stats strong{display:block;font-size:32px;margin:12px 0 5px;font-weight:650;letter-spacing:-1px}.stats strong.status-text{font-size:22px;margin:18px 0 10px;color:#a78542;letter-spacing:0}.stats small{font-size:11px;color:#9aa6b6}.panel{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.toolbar{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line);gap:18px}.tabs{display:flex;gap:8px}.tab{background:white;color:#8c98a9}.tab.active{color:#2563eb;background:#edf3ff;font-weight:600}.tools{display:flex;gap:10px}.tools input{width:240px;padding:9px 12px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{background:#fafbfd;font-size:12px;font-weight:500;color:#8b98aa;padding:15px 20px}td{border-top:1px solid #eef1f6;padding:20px;font-size:13px}td .small{display:block}.badge{font-size:11px;border-radius:5px;background:#e8f7f1;color:#188763;padding:5px 8px}.badge.gray{background:#edf1f5;color:#7b889b}.badge.amber{background:#fff4da;color:#a87a22}.actions{display:flex;gap:7px}.actions button{font-size:11px;padding:7px 10px}.danger{color:#d75757}.code{display:inline-block;max-width:140px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.table-footer{padding:17px 22px;border-top:1px solid var(--line);color:#8d98a8;font-size:12px}.empty{text-align:center;padding:65px 20px;white-space:normal}.empty strong{display:block;color:#61718b;font-size:15px;margin-bottom:12px}.empty p{color:#9ca6b4}footer{font-size:11px;color:#a0aab9;padding-top:22px}dialog{width:min(500px,94vw);border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 30px 90px #20304425}dialog::backdrop{background:#1d304659;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#203044;color:white;border-radius:10px;padding:15px 22px;z-index:20;max-width:90vw;box-shadow:0 5px 25px #0002;line-height:1.7}.share-page{min-height:100vh;background:linear-gradient(150deg,#ddf8f4,#f5f7fa 45%);padding:30px 16px}.ticket{max-width:420px;margin:auto}.ticket-header{background:linear-gradient(130deg,#165fcc,#3697ec);color:#fff;padding:30px 25px;border-radius:18px}.ticket-header h1{font-size:23px;line-height:1.5;letter-spacing:0}.ticket-header p{opacity:.8}.ticket-body{background:white;padding:32px;border-radius:18px;text-align:center;margin-top:16px;box-shadow:0 8px 25px #20304408}.ticket-body img{width:100%;max-width:260px}.ticket-body code{display:block;overflow-wrap:anywhere;margin:18px 0;font-size:20px}.ticket-body .muted{font-size:12px}.ticket-error{padding:30px 0;color:#8c6672;line-height:1.8}.share-page footer{text-align:center;line-height:1.8}.ticket .badge{display:inline-block} [hidden]{display:none!important}@media(max-width:1050px){aside{width:190px}main{margin-left:190px;padding:0 22px}.stats{gap:10px}.stats article{padding:18px}.toolbar{flex-wrap:wrap}}@media(max-width:700px){aside{position:static;width:100%;height:auto;padding:16px;display:flex;align-items:center;gap:8px}.brand{font-size:16px;padding:0;margin-right:auto}.brand .logo{width:32px;height:32px;font-size:21px}.side-label,.side-foot{display:none}.nav{width:auto;padding:10px}.brand strong{display:none}main{margin:0;padding:0 16px}header{height:60px}.heading{margin:25px 0}.heading h1{font-size:24px}.heading .muted{font-size:11px}.stats{grid-template-columns:repeat(2,1fr)}.notice{align-items:flex-start;font-size:11px;line-height:1.8}.tools{width:100%}.tools input{width:100%}.toolbar{padding:14px}.heading .primary{padding:10px}.ticket-body{padding:24px}}

.brand-image{object-fit:cover;flex-shrink:0}.brand strong{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-card .logo{width:68px;height:68px;border-radius:16px}.branding-preview{width:112px;height:112px;object-fit:cover;border-radius:16px;border:1px solid #e8edf4}.ticket-brand{display:flex;align-items:center;gap:10px;font-size:12px}.ticket-logo{width:32px;height:32px;border-radius:8px;object-fit:cover}

.check{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.8}.check input{width:18px;height:18px;flex-shrink:0;margin:4px 0}.captcha-row{display:flex;align-items:center;gap:18px;background:#f5f7fa;padding:16px;border-radius:10px}.captcha-row img{width:140px;height:52px;object-fit:contain;background:white}.merchant-link{display:block;text-decoration:none;margin:24px 0 12px;padding:14px;border-radius:8px}.ticket-body .merchant-note{line-height:1.8}

#verification-frame{width:100%;height:490px;border:0;border-radius:10px}.verification-frame{padding:20px;text-align:center;background:#fff}

.server-access{margin:18px 0;padding:14px;border-radius:9px;background:#fff8e8;color:#83632d;font-size:13px;line-height:1.8}.server-access a{color:#2563eb}.server-access code{overflow-wrap:anywhere}.task-message{margin:16px 0;padding:12px 16px;background:#edf3ff;color:#285bbb;border-radius:8px;font-size:13px}

.nav-link{display:block;text-decoration:none;color:inherit}.member-portal #branding-settings,.member-portal #admin-members{display:none}.member-portal aside{overflow:auto}.member-portal .login-card{margin:24px 0}.member-portal .server-access{font-size:12px}.member-portal header{gap:10px;flex-wrap:wrap}.member-portal #show-register,.member-portal #show-login{margin-top:12px}.member-portal #clock-text{margin-left:auto}
.member-section{margin:24px 0}.invite-form{display:flex;gap:14px;align-items:flex-end;padding:0 22px 22px;flex-wrap:wrap}.invite-form label{flex:1;min-width:120px;margin:16px 0 0}.invite-form button{height:42px}.content-dialog{width:min(1000px,96vw)}.content-dialog td{white-space:normal;min-width:160px;overflow-wrap:anywhere}.share-link-input{margin-top:10px;min-width:260px;font-size:12px}.notice #portal-url{overflow-wrap:anywhere;flex:1}@media(max-width:700px){.notice{flex-wrap:wrap}.member-section h2{font-size:17px}.invite-form{padding:0 14px 16px}.invite-form label{min-width:130px}.nav-link{font-size:12px}}

.member-section .toolbar h2{flex-shrink:0;white-space:nowrap}.member-section .toolbar input{max-width:320px}
