:root{--background:#f6f5f1;--panel:#fff;--panel-muted:#efeee8;--ink:#1f2522;--muted:#67716b;--line:#d9d6ca;--green:#1f7a4d;--green-soft:#dff0e6;--red:#a23a2d;--amber:#9a6a19;--blue:#315f8f;--blue-soft:#dfe8f4}html{height:100%}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--ink);background:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Avenir Next,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.admin-shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);color:#faf8f0;background:#252a27;flex-direction:column;gap:36px;padding:28px 20px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#172017;background:#d6f0bd;border:1px solid #ffffff52;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.brand strong,.brand span{display:block}.brand strong{font-size:16px}.brand span{color:#bcc6be;margin-top:2px;font-size:12px}.nav-list{gap:8px;display:grid}.nav-item{color:#d9e1da;border:1px solid #0000;padding:10px 12px}.nav-item.active{color:#fff;background:#ffffff14;border-color:#ffffff2e}.nav-item.disabled{color:#849088}.workspace{flex-direction:column;gap:24px;min-width:0;padding:28px;display:flex}.topbar{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.eyebrow{color:var(--blue);letter-spacing:0;text-transform:uppercase;font-size:12px;font-weight:700}h1{margin-top:4px;font-size:32px;font-weight:750;line-height:1.2}h2{font-size:18px;line-height:1.35}.connection-badge{border:1px solid var(--line);background:var(--panel);gap:3px;min-width:144px;padding:10px 12px;display:grid}.connection-badge span{background:var(--amber);width:8px;height:8px}.connection-badge.connected span{background:var(--green)}.connection-badge.failed span{background:var(--red)}.connection-badge strong{font-size:14px}.connection-badge small{color:var(--muted);font-size:12px}.connection-panel{border:1px solid var(--line);background:var(--panel);padding:20px}.panel-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.panel-title span{color:var(--muted);font-size:12px}.form-grid{grid-template-columns:minmax(220px,1.2fr) minmax(220px,1fr) auto;align-items:end;gap:14px;display:grid}label{gap:7px;display:grid}label span{color:var(--muted);font-size:13px}input,select{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:#fbfaf6;min-height:42px;padding:9px 10px}textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:104px;color:var(--ink);background:#fbfaf6;padding:10px}input:focus,select:focus,textarea:focus{border-color:var(--blue);outline:2px solid var(--blue-soft)}button{color:#fff;background:#18211d;border:1px solid #18211d;min-height:42px;padding:0 16px;font-weight:700}button:hover:not(:disabled){background:#2e3a34}button:disabled{border-color:var(--line);background:var(--panel-muted);color:var(--muted)}.secondary-button{border-color:var(--line);color:var(--ink);background:#fbfaf6}.secondary-button:hover:not(:disabled){background:var(--panel-muted)}.danger-button{color:var(--red);background:#f5dfda;border-color:#dfc0ba}.danger-button:hover:not(:disabled){background:#edd0c9}@media (max-width:900px){.admin-shell{grid-template-columns:1fr}.sidebar{border-right:0;padding:18px}.nav-list{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace{padding:20px}.form-grid,.editor-form,.filter-grid,.user-filter-grid,.space-filter-grid,.subscription-filter-grid{grid-template-columns:1fr}.toolbar-actions{flex-direction:column;align-items:stretch}.csv-actions{grid-template-columns:1fr}.pagination-bar{justify-content:space-between}}@media (max-width:560px){.topbar{flex-direction:column}.connection-badge{width:100%}.list-toolbar{flex-direction:column}.toolbar-actions,.toolbar-actions button{width:100%}h1{font-size:26px}}
.question-panel,.user-panel,.space-panel,.subscription-panel,.activation-code-panel,.payment-order-panel,.ai-report-panel{border:1px solid var(--line);background:var(--panel);padding:20px}.overview-panel{border:1px solid var(--line);background:var(--panel);padding:18px}.overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.overview-card{border:1px solid var(--line);background:#fbfaf6;align-content:space-between;min-height:104px;padding:14px;display:grid}.overview-card span,.overview-meta{color:var(--muted);font-size:13px}.overview-card strong{font-size:30px;line-height:1}.overview-card.loading strong{color:var(--muted)}.overview-meta{margin-top:12px}.overview-state{border:1px dashed var(--line);color:var(--muted);text-align:center;background:#fbfaf6;padding:24px 14px}.overview-state.error{color:var(--red);background:#f5dfda;border-color:#dfc0ba}.list-toolbar{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.toolbar-actions{align-items:center;gap:10px;display:flex}.list-total{border:1px solid var(--line);color:var(--muted);text-align:center;background:#fbfaf6;min-width:72px;padding:8px 10px}.editor-panel{background:#f8fbf7;border:1px solid #c8d9cc;margin-bottom:18px;padding:18px}.manual-action-panel{background:#fffaf0;border:1px solid #d8cda9;margin-bottom:18px;padding:18px}.manual-action-grid{grid-template-columns:minmax(120px,.4fr) minmax(130px,.4fr) minmax(160px,.5fr);gap:14px;display:grid}.manual-action-grid.two-columns{grid-template-columns:minmax(180px,.7fr) minmax(240px,1fr)}.manual-action-summary{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.manual-action-summary span{color:var(--muted);word-break:break-all;font-family:SFMono-Regular,Consolas,monospace}.csv-panel{background:#fffaf0;border:1px solid #d8cda9;margin-bottom:18px;padding:18px}.csv-actions{grid-template-columns:minmax(220px,1fr) auto auto;align-items:end;gap:12px;display:grid}.file-picker input{background:#fff}.csv-result{background:var(--green-soft);color:var(--green);border:1px solid #bed6c8;flex-wrap:wrap;gap:12px;margin-top:12px;padding:10px 12px;display:flex}.csv-result.error{color:var(--red);background:#f5dfda;border-color:#dfc0ba;gap:6px;display:grid}.editor-form{grid-template-columns:minmax(220px,1fr) minmax(140px,.6fr) minmax(140px,.6fr);gap:14px;display:grid}.full-field,.form-error,.form-actions{grid-column:1/-1}.checkbox-field{align-items:center;gap:8px;display:flex}.checkbox-field input{width:18px;min-height:18px}.form-error{color:var(--red);background:#f5dfda;border:1px solid #dfc0ba;padding:10px 12px}.form-actions{justify-content:flex-end;gap:10px;display:flex}.filter-grid{border-top:1px solid var(--line);grid-template-columns:minmax(200px,1.4fr) minmax(140px,.8fr) minmax(130px,.7fr) minmax(130px,.7fr) minmax(130px,.7fr) auto;align-items:end;gap:14px;margin-bottom:18px;padding-top:18px;display:grid}.user-filter-grid,.space-filter-grid,.subscription-filter-grid,.activation-code-filter-grid,.payment-order-filter-grid{border-top:1px solid var(--line);grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:14px;margin-bottom:18px;padding-top:18px;display:grid}.space-filter-grid,.subscription-filter-grid{grid-template-columns:minmax(220px,1fr) minmax(130px,.4fr) auto}.payment-order-filter-grid{grid-template-columns:minmax(220px,1fr) minmax(120px,.35fr) minmax(130px,.35fr) auto}.ai-provider-grid{grid-template-columns:minmax(150px,.7fr) minmax(120px,.45fr) minmax(220px,1.2fr) minmax(160px,.8fr) minmax(180px,.8fr)}.ai-report-generate-grid,.ai-log-filter-grid{grid-template-columns:minmax(140px,.5fr) minmax(150px,.5fr) minmax(180px,.8fr) auto}.ai-report-filter-grid{grid-template-columns:minmax(140px,.5fr) minmax(150px,.5fr) auto;align-items:end;gap:14px;margin-bottom:14px;display:grid}.ai-log-filter-grid{align-items:end;gap:14px;margin-bottom:14px;display:grid}.ai-subsection{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.ai-subsection h3{margin:0 0 14px;font-size:16px}.activation-code-filter-grid{grid-template-columns:minmax(190px,1fr) minmax(160px,.8fr) minmax(120px,.45fr) minmax(110px,.35fr) auto}.activation-batch-grid{grid-template-columns:minmax(160px,1fr) minmax(110px,.45fr) minmax(110px,.45fr) minmax(90px,.35fr) minmax(180px,.8fr) minmax(160px,.8fr)}.table-wrap{border:1px solid var(--line);overflow-x:auto}table{border-collapse:collapse;background:#fffdfa;width:100%;min-width:860px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:13px 12px}th{background:var(--panel-muted);color:var(--muted);font-size:12px;font-weight:700}td{font-size:14px}tbody tr:last-child td{border-bottom:0}td small{color:var(--muted);margin-top:6px;font-size:12px;display:block}.question-content{white-space:normal;word-break:break-word;max-width:460px;font-weight:650;line-height:1.45;display:block}.mono-cell{word-break:break-all;font-family:SFMono-Regular,Consolas,monospace}.status-pill{border:1px solid var(--line);text-align:center;min-width:72px;padding:4px 8px;display:inline-block}.status-pill.active{background:var(--green-soft);color:var(--green);border-color:#bed6c8}.status-pill.disabled,.status-pill.ended,.status-pill.expired,.status-pill.canceled,.status-pill.closed,.status-pill.failed{color:var(--red);background:#f5dfda;border-color:#dfc0ba}.status-pill.pending{color:#8a6f51;background:#fffaf0;border-color:#d8cda9}.status-pill.used{background:var(--green-soft);color:var(--green);border-color:#bed6c8}.status-pill.unused{color:#8a6f51;background:#fffaf0;border-color:#d8cda9}.status-pill.revoked{color:var(--red);background:#f5dfda;border-color:#dfc0ba}.member-stack{gap:8px;display:grid}.member-stack strong,.member-stack small{display:block}.member-stack small{color:var(--muted);word-break:break-all;margin-top:3px;font-size:12px}.row-actions{gap:8px;display:flex}.row-actions button{min-height:34px;padding:0 10px}.empty-state,.error-state{border:1px dashed var(--line);color:var(--muted);text-align:center;background:#fbfaf6;padding:34px 18px}.error-state{color:var(--red);background:#f5dfda;border-color:#dfc0ba}.error-state.compact{text-align:left;margin-bottom:18px;padding:12px}.pagination-bar{justify-content:flex-end;align-items:center;gap:12px;margin-top:16px;display:flex}.pagination-bar span{color:var(--muted);font-size:13px}@media (max-width:900px){.editor-form,.csv-actions,.manual-action-grid,.manual-action-grid.two-columns,.filter-grid,.user-filter-grid,.space-filter-grid,.subscription-filter-grid,.activation-code-filter-grid,.activation-batch-grid,.payment-order-filter-grid,.ai-provider-grid,.ai-report-generate-grid,.ai-report-filter-grid,.ai-log-filter-grid{grid-template-columns:1fr}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.overview-grid{grid-template-columns:1fr}.list-toolbar{flex-direction:column}.toolbar-actions,.toolbar-actions button,.csv-actions button,.user-filter-grid button,.space-filter-grid button,.subscription-filter-grid button,.activation-code-filter-grid button,.payment-order-filter-grid button,.ai-report-generate-grid button,.ai-report-filter-grid button,.ai-log-filter-grid button{width:100%}}
