:root { --paper:#f6f5f0; --surface:#fff; --ink:#202722; --muted:#7a8279; --line:#e2e4da; --green:#087f68; --green-dark:#066953; --green-pale:#e6f2ee; --orange:#ee9b00; --blue:#168bed; --danger:#a9423e; --radius:12px; --font:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; --mono:ui-monospace,SFMono-Regular,Consolas,monospace; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font:14px/1.55 var(--font); -webkit-font-smoothing:antialiased; }
[hidden] { display:none !important; }
h1,h2,h3,p,dl,dd,ol { margin:0; }
a { color:inherit; text-decoration:none; }
button,input,textarea,select { font:inherit; }
button { cursor:pointer; }
button:disabled { cursor:not-allowed; }
button,a,input,textarea,select,summary { -webkit-tap-highlight-color:transparent; }
button:focus-visible,a:focus-visible,summary:focus-visible { outline:3px solid #66bba8; outline-offset:3px; }
svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; flex:none; }
.icon-defs { position:absolute; width:0; height:0; overflow:hidden; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.admin-app { min-height:100vh; display:flex; }
.admin-side { width:240px; flex:none; background:#fbfbf8; border-right:1px solid var(--line); height:100vh; position:sticky; top:0; display:flex; flex-direction:column; padding:20px 11px 28px; }
.admin-brand { display:flex; flex-direction:column; padding:0 16px 24px; }
.admin-brand strong { color:var(--green); font-size:28px; font-weight:800; letter-spacing:-1px; line-height:1.5; }
.admin-brand span { font-size:15px; margin-top:1px; color:#47534c; }
.admin-nav { display:flex; flex-direction:column; gap:7px; }
.nav-item { display:flex; align-items:center; gap:16px; border:0; background:transparent; color:#3f4c45; border-radius:6px; padding:10px 20px; min-height:43px; width:100%; font-size:15px; font-weight:500; text-align:left; white-space:nowrap; }
.nav-item svg { width:22px; height:22px; }
.nav-item:hover { background:#edf0e9; }
.nav-item.is-active { background:#d6e8e1; color:var(--green); font-weight:700; }
.nav-item.is-active svg { stroke-width:2.1; }
.nav-count { margin-left:auto; font-size:11px; min-width:18px; text-align:center; border-radius:4px; background:#c2ded2; }
.nav-count:empty { display:none; }
.side-footer { margin-top:auto; display:flex; flex-direction:column; gap:9px; padding-top:20px; }
.admin-main { flex:1; min-width:0; padding:19px 24px 28px 29px; }
.admin-view { max-width:1560px; margin:0 auto; }
.view-header { display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:65px; margin-bottom:14px; }
.view-header h1 { font-size:28px; line-height:1.35; letter-spacing:-.7px; font-weight:750; }
.view-header p { margin-top:3px; color:#737c74; font-size:15px; }
.btn { display:inline-flex; justify-content:center; align-items:center; gap:8px; border:1px solid transparent; border-radius:5px; min-height:38px; padding:8px 16px; line-height:1.4; font-size:13px; font-weight:650; white-space:nowrap; background:var(--surface); }
.btn svg { width:17px; height:17px; }
.btn-primary { background:var(--green); color:white; border-color:var(--green); }
.btn-primary:hover:not(:disabled) { background:var(--green-dark); border-color:var(--green-dark); }
.btn-ghost { border-color:#d5dbd1; color:#47534c; }
.btn-ghost:hover:not(:disabled) { border-color:var(--green); color:var(--green); }
.btn-outline { border-color:#49a08c; color:var(--green); }
.btn-outline:hover:not(:disabled) { background:var(--green-pale); }
.btn-danger { border-color:#e0bbb8; background:#fcf6f5; color:var(--danger); }
.btn-danger:hover:not(:disabled) { background:#f5e4e2; }
.btn:disabled { opacity:.4; }
.btn-primary:disabled { opacity:1; color:#fff; background:#ccdcd7; border-color:#ccdcd7; }
.btn-block { width:100%; }
.btn-sm { min-height:32px; padding:6px 15px; font-size:12px; }
.stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:15px; }
.stat-card { display:flex; align-items:center; gap:20px; background:var(--surface); border:1px solid var(--line); border-radius:7px; padding:14px 15px; text-align:left; min-height:86px; }
.stat-card:hover { border-color:#a8c8bb; }
.stat-icon { display:grid; place-items:center; width:56px; height:56px; flex:none; background:#f0f8f5; border-radius:8px; color:var(--green); }
.stat-icon svg { width:28px; height:28px; stroke-width:2.2; }
.stat-label { display:block; font-size:13px; color:#657168; }
.stat-card strong { display:block; font-size:27px; font-weight:750; color:var(--green); line-height:1.25; margin-top:3px; font-variant-numeric:tabular-nums; }
.stat-card.users .stat-icon { background:#fff9ef; color:var(--orange); }
.stat-card.users strong { color:var(--orange); }
.stat-card.clock .stat-icon { background:#f0f7fe; color:var(--blue); }
.stat-card.clock strong { color:var(--blue); }
.stat-card.check strong { color:#66716a; }
.surface { background:var(--surface); border:1px solid var(--line); border-radius:8px; }
.workbench-grid { display:grid; grid-template-columns:minmax(530px,1.35fr) minmax(380px,1fr); gap:15px; align-items:start; }
.order-list { padding:12px 10px 0; min-height:calc(100vh - 223px); display:flex; flex-direction:column; }
.order-filter-form { display:flex; gap:10px; align-items:center; flex-wrap:wrap; padding:0 5px 15px; }
.filter-tabs { display:flex; gap:5px; }
.filter-tab { border:0; border-radius:5px; background:#f2f4f6; font-size:12px; color:#445047; font-weight:650; padding:9px 15px; white-space:nowrap; min-height:34px; }
.filter-tab.is-active { background:var(--green); color:#fff; }
.filter-tab:hover:not(.is-active) { background:#e9eeeb; }
.search-field { flex:1; min-width:170px; position:relative; }
.search-field svg { position:absolute; left:10px; top:9px; width:18px; height:18px; color:#939c95; }
.search-field .input { padding-left:34px; }
.state-filter { width:111px; }
.input { display:block; width:100%; min-width:0; border:1px solid #d7ddd3; border-radius:5px; background:#fff; color:var(--ink); min-height:35px; padding:7px 11px; font-size:13px; line-height:1.5; outline:none; }
.input::placeholder { color:#9aa198; }
.input:focus { border-color:#57a692; box-shadow:0 0 0 3px #e5f3ed; }
.input:disabled { background:#f5f5f2; color:#90988f; }
textarea.input { resize:vertical; }
select.input { padding-right:22px; }
.table-wrap { overflow:auto; width:100%; }
.orders-table-wrap { border:1px solid #e0e5df; border-radius:6px; flex:1; }
.table { width:100%; border-collapse:collapse; font-size:13px; text-align:left; }
.table th { background:#f8f9f8; color:#67726a; font-weight:650; font-size:12px; padding:12px 9px; white-space:nowrap; border-bottom:1px solid #e5e8e2; }
.table td { padding:14px 9px; border-bottom:1px solid #edf0eb; vertical-align:middle; word-break:break-word; }
.orders-table-wrap .table td { padding:15px 8px; }
.table tbody tr:last-child td { border-bottom:0; }
.table .mono-cell { font:12px/1.5 var(--mono); }
.mono-cell { font-family:var(--mono); font-size:12px; }
.order-row { cursor:pointer; }
.order-row:hover { background:#f5f9f6; }
.order-row.is-selected { background:#e9f4ef; }
.order-row.is-selected:hover { background:#e5f1eb; }
.table .radio-cell { width:37px; }
.row-radio { padding:0; background:white; border:1px solid #a8b1aa; width:15px; height:15px; display:block; border-radius:50%; margin:0 5px; }
.is-selected .row-radio { border:4px solid var(--green); box-shadow:0 0 0 2px #c8e1d5; }
.order-open { border:0; padding:0; background:transparent; text-align:left; color:inherit; font-weight:650; }
.state-badge { display:inline-flex; align-items:center; gap:8px; font-size:12px; line-height:1.5; white-space:nowrap; }
.state-badge i { width:9px; height:9px; border-radius:50%; background:#879488; flex:none; }
.state-badge.QUEUED i,.state-badge.VERIFYING i { background:var(--blue); }
.state-badge.WAITING_USER i,.state-badge.PAYMENT_PENDING i,.state-badge.PAYMENT_REVIEW i,.state-badge.CLAIMED i { background:var(--orange); }
.state-badge.SUCCESS i,.state-badge.UNUSED i { background:var(--green); }
.state-badge.FAILED i,.state-badge.REVOKED i { background:var(--danger); }
.table-footer { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:12px 5px; color:#899087; font-size:11px; }
.empty-cell { text-align:center; color:var(--muted); padding:55px 10px !important; }
.empty-cell strong { display:block; color:#5a685e; font-size:14px; font-weight:600; }
.empty-cell span { display:block; margin-top:7px; font-size:12px; }
.muted { color:var(--muted); }
.nowrap { white-space:nowrap; }
.order-detail { padding:15px; max-height:calc(100vh - 223px); min-height:calc(100vh - 223px); overflow:auto; scrollbar-width:thin; scrollbar-color:#d2ded6 transparent; }
.detail-title { font-size:18px; font-weight:750; margin-bottom:12px; }
.order-facts { display:grid; grid-template-columns:1fr 1fr; gap:16px 22px; margin:0 5px 18px; }
.order-facts dt { font-size:12px; color:#899188; margin-bottom:2px; }
.order-facts dd { font-size:13px; font-weight:550; overflow-wrap:anywhere; }
.detail-panel { border:1px solid #e1e6df; border-radius:6px; padding:10px; margin-bottom:12px; }
.detail-panel h3,.audit-section h3 { font-size:13px; font-weight:750; margin-bottom:9px; }
.process-steps { list-style:none; display:flex; justify-content:space-between; margin:7px 0 16px; padding:0 18px; }
.process-steps li { display:flex; flex-direction:column; align-items:center; gap:3px; position:relative; width:32px; }
.process-steps li:not(:last-child)::after { content:""; position:absolute; top:15px; left:44px; height:2px; width:calc((100vw - 950px) / 3 - 27px); min-width:30px; max-width:66px; background:#d8ded8; }
.process-steps span { border:1px solid #ced5ce; border-radius:50%; background:#f0f3f1; display:grid; place-items:center; width:30px; height:30px; font-size:12px; color:#3a4840; }
.process-steps .is-done span { background:var(--green); border-color:var(--green); color:white; box-shadow:0 0 0 3px #edf5f0; }
.process-steps strong { color:#7d877e; font-size:12px; font-weight:500; }
.process-steps .is-done strong { color:var(--ink); }
.credential-row { display:flex; align-items:center; gap:12px; border:1px solid #e5e9e3; border-radius:5px; min-height:50px; padding:7px 9px; margin-bottom:6px; }
.credential-row strong { font-size:12px; flex:none; }
.credential-row > span { font-size:11px; color:var(--muted); flex:1; }
.operation-note { padding:9px 11px; background:#e7f3ef; border-radius:5px; color:#4c7668; margin-bottom:12px; font-size:12px; }
.operation-note strong { color:var(--green); display:block; font-size:12px; margin-bottom:2px; }
.field-label { display:block; font-size:12px; font-weight:550; color:#46534b; margin-bottom:11px; }
.field-label > .input { margin-top:5px; }
.field-label > span { font-size:11px; color:#8b938a; margin-left:5px; font-weight:400; }
.field-hint { color:#8b938b; font-size:11px; margin-top:-5px; margin-bottom:12px; line-height:1.6; }
.payment-grid { display:grid; grid-template-columns:1fr 1.3fr; gap:10px; }
.check-label { display:flex; align-items:flex-start; gap:8px; color:#536156; font-size:12px; margin:7px 0 13px; cursor:pointer; }
.check-label input { appearance:none; flex:none; width:17px; height:17px; border:1px solid #afb9af; border-radius:4px; margin:1px 0 0; background:#fff; }
.check-label input:checked { background:var(--green); border-color:var(--green); box-shadow:inset 0 0 0 3px white; }
.check-label input:focus-visible { outline:3px solid #94cbb8; outline-offset:2px; }
.action-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.action-grid .btn { padding:8px 7px; font-size:12px; }
.verify-panel .field-label { margin-bottom:9px; }
.centered { text-align:center; margin:8px 0 0; }
.notes-panel { border-top:1px solid #e3e8e1; border-bottom:1px solid #e3e8e1; padding:10px 0 12px; margin:12px 0; }
.notes-panel summary { font-size:13px; font-weight:700; cursor:pointer; margin-bottom:12px; }
.notes-panel .field-hint { margin:10px 0 0; }
.audit-section h3 { display:flex; justify-content:space-between; }
.audit-section h3 span { color:#91998f; font-size:10px; font-weight:400; }
.audit-list { padding:0; list-style:none; font-size:11px; color:#788278; }
.audit-list li { position:relative; padding:0 0 14px 24px; display:flex; gap:12px; flex-wrap:wrap; }
.audit-list i { position:absolute; left:4px; top:5px; width:9px; height:9px; border-radius:50%; background:var(--green); }
.audit-list li:not(:last-child)::after { content:""; position:absolute; left:8px; top:18px; bottom:3px; width:1px; background:#d8e3d8; }
.audit-list p { width:100%; overflow-wrap:anywhere; }
.detail-empty { min-height:380px; display:flex; flex-direction:column; justify-content:center; align-items:center; color:var(--muted); text-align:center; gap:12px; padding:30px; }
.detail-empty svg { width:42px; height:42px; color:#a6b9ab; stroke-width:1.1; }
.detail-empty strong { font-weight:600; font-size:15px; color:#68796b; }
.detail-empty span { font-size:12px; }
.content-panel { padding:22px; margin-bottom:18px; }
.content-panel h2 { font-size:17px; margin-bottom:16px; }
.row-head { display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:14px; }
.row-head h2 { margin:0; }
.row-filters,.button-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.row-filters .input { width:180px; }
.row-filters select.input { width:120px; }
.gen-grid { display:grid; grid-template-columns:110px 130px 1fr 150px auto; gap:16px; align-items:end; }
.gen-grid .field-label { margin:0; }
.gen-grid .btn { min-height:35px; }
.gen-result { background:#f0f7f2; border:1px solid #d7e6d9; padding:16px; border-radius:8px; margin-top:20px; }
.gen-codes { display:flex; flex-wrap:wrap; gap:9px; max-height:240px; overflow:auto; }
.gen-codes code { background:white; border:1px solid #d3e4d8; border-radius:4px; padding:6px 10px; font:12px var(--mono); }
.link-btn { border:0; padding:0; background:transparent; color:var(--green); font-size:12px; }
.mini-btn { border:1px solid #c8dcd0; color:var(--green); background:#fff; border-radius:4px; padding:5px 9px; white-space:nowrap; font-size:11px; }
.mini-btn.danger { color:var(--danger); border-color:#e0c9c4; }
.settings-columns { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); align-items:start; gap:18px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.settings-form { max-width:780px; }
.settings-form .field-label { margin-bottom:17px; }
.plans-editor { display:flex; flex-direction:column; gap:18px; }
.plan-row { border-top:1px solid var(--line); padding-top:15px; display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.plan-row strong { grid-column:1/-1; font-size:13px; color:var(--green); }
.plan-row label { font-size:12px; color:#7a867d; }
.plan-row .input { margin-top:6px; }
.connection-status { font-size:11px; color:#909a8e; border:1px solid #dde4d8; padding:3px 8px; border-radius:4px; }
.connection-status.is-ready { color:var(--green); border-color:#c4dfd0; background:#f0f8f2; }
.query-form { display:grid; grid-template-columns:1.1fr 1fr 65px auto; align-items:end; gap:10px; }
.query-form .field-label { margin:0; }
.query-form .btn { min-height:35px; }
.vcc-results { margin-top:20px; min-height:70px; }
.balance-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.balance-grid > div { border-left:3px solid #d5e9dc; padding-left:15px; }
.balance-grid span { color:#8b978b; font-size:12px; display:block; }
.balance-grid strong { display:block; color:var(--green); font-size:28px; margin:4px 0; }
.config-meta { border-top:1px solid var(--line); padding:13px 0; font-size:11px; color:var(--muted); }
.config-meta > span { display:block; }
.config-meta code { display:block; margin:3px 0 9px; overflow-wrap:anywhere; color:#546b5c; font-size:11px; }
.config-meta p { font-size:10px; }
.form-notice { padding:9px 11px; background:#edf6f0; color:#517261; border-radius:5px; font-size:12px; margin:10px 0; overflow-wrap:anywhere; }
.form-notice.is-error { color:#9b4540; background:#fcf0ed; }
.is-error { color:var(--danger); }
.purchase-detail { margin-top:20px; padding-top:20px; border-top:1px solid var(--line); }
.purchase-detail h3 { font-size:16px; margin-bottom:10px; }
.purchase-confirm-form { display:grid; grid-template-columns:1.5fr 1fr auto; gap:12px; align-items:end; }
.purchase-confirm-form .field-label { margin:0; }
.purchase-confirm-form .check-label { grid-column:1/-1; margin:6px 0; }
.purchase-codes { padding:10px; border:1px solid #cde1d2; border-radius:5px; background:#f1f8f3; overflow-wrap:anywhere; white-space:pre-wrap; }
.admin-login { min-height:100vh; display:grid; place-items:center; padding:24px; }
.login-card { width:100%; max-width:400px; padding:35px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.login-brand { font-size:26px; font-weight:800; letter-spacing:-.7px; color:var(--green); }
.login-card h1 { font-size:22px; margin-top:22px; }
.login-card > p { color:var(--muted); font-size:13px; margin:6px 0 23px; }
.login-card .field-label { margin-bottom:18px; }
.login-back { display:block; text-align:center; font-size:12px; color:#819180; margin-top:20px; }
.session-dialog { width:min(620px,calc(100% - 32px)); border:1px solid #d4e0d3; border-radius:12px; padding:24px; color:var(--ink); background:#fff; box-shadow:0 15px 60px #182a1d25; }
.session-dialog::backdrop { background:#18332466; backdrop-filter:blur(3px); }
.dialog-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.dialog-head h2 { font-size:19px; }
.dialog-close { width:32px; height:32px; border:0; background:#f1f4ef; font-size:23px; line-height:1; border-radius:5px; color:#667968; }
.session-dialog > p { font-size:12px; color:var(--muted); margin-bottom:12px; }
.session-text { font-family:var(--mono); font-size:11px; max-height:45vh; margin:14px 0; }
.dialog-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.dialog-actions .field-hint { margin:0; }
.toast { position:fixed; left:50%; bottom:28px; transform:translate(-50%,10px); max-width:calc(100% - 32px); border-radius:8px; background:#243b2e; color:#fff; padding:12px 20px; font-size:13px; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .15s,transform .15s; z-index:30; box-shadow:0 4px 16px #243b2e20; }
.toast.is-show { opacity:1; visibility:visible; transform:translate(-50%,0); }
.copy-buffer { position:fixed; left:-9999px; top:0; }
@media (max-width:1280px) { .admin-side { width:220px; } .admin-main { padding:22px 20px; } .workbench-grid { grid-template-columns:minmax(460px,1.35fr) minmax(340px,1fr); } .order-filter-form { gap:8px; } .search-field { min-width:180px; } .filter-tab { padding:8px 10px; } .stat-card { gap:12px; padding:12px; } .stat-icon { width:46px; height:46px; } .credential-row { gap:7px; padding:7px; } .credential-row > span { font-size:10px; } .gen-grid { grid-template-columns:90px 100px 1fr 120px auto; gap:10px; } .query-form { grid-template-columns:1fr 1fr; } .query-form .page-field { max-width:100px; } }
@media (max-width:1100px) { .admin-side { width:180px; padding-left:8px; padding-right:8px; } .admin-brand { padding-left:12px; } .admin-brand strong { font-size:25px; } .admin-brand span { font-size:12px; } .nav-item { padding:10px 12px; font-size:13px; gap:12px; } .nav-count { display:none; } .admin-main { padding:18px; } .workbench-grid { grid-template-columns:minmax(0,1fr); } .order-list { min-height:360px; } .order-detail { min-height:0; max-height:none; } .order-facts { grid-template-columns:repeat(4,minmax(0,1fr)); } .process-steps { max-width:420px; } .process-steps li:not(:last-child)::after { width:65px; } .stat-card { gap:10px; } .stat-icon { width:40px; height:40px; } .stat-card strong { font-size:24px; } .settings-columns { grid-template-columns:1fr; } .gen-grid { grid-template-columns:1fr 1fr 2fr; } .gen-grid .btn { align-self:end; } }
@media (max-width:760px) { .admin-app { display:block; } .admin-side { width:100%; height:auto; position:static; padding:13px 14px 10px; background:#fff; border-right:0; border-bottom:1px solid var(--line); } .admin-brand { padding:0 4px 12px; flex-direction:row; justify-content:space-between; align-items:center; } .admin-brand strong { font-size:23px; } .admin-brand span { font-size:12px; } .admin-nav { flex-direction:row; gap:5px; overflow:auto; padding-bottom:3px; } .nav-item { font-size:12px; padding:9px 10px; gap:7px; width:auto; flex:none; } .nav-item svg { width:17px; height:17px; } .side-footer { display:none; } .admin-main { padding:18px 14px 30px; } .view-header { margin-bottom:17px; min-height:0; } .view-header h1 { font-size:23px; } .view-header p { font-size:12px; } .view-header > .btn { font-size:12px; padding:8px 11px; } .stat-grid { grid-template-columns:1fr 1fr; gap:9px; margin-bottom:14px; } .stat-card { min-height:73px; padding:11px; } .stat-icon { width:42px; height:42px; } .stat-icon svg { width:24px; height:24px; } .stat-label { font-size:11px; } .stat-card strong { font-size:24px; } .workbench-grid { gap:14px; } .order-filter-form { padding:0 1px 12px; } .filter-tabs { flex:1; } .filter-tab { flex:1; padding:7px 9px; } .search-field { order:2; width:calc(100% - 119px); } .state-filter { order:3; } .orders-table-wrap { min-height:260px; } .orders-table-wrap .table { min-width:540px; } .table-footer { font-size:10px; gap:5px; padding:11px 1px; } .order-detail { padding:14px; } .order-facts { grid-template-columns:1fr 1fr; gap:13px; } .credential-row { gap:7px; } .credential-row > span { font-size:10px; } .credential-row .btn { padding:6px 10px; } .process-steps { padding:0 8px; } .process-steps li:not(:last-child)::after { width:calc((100vw - 140px) / 3 - 20px); min-width:30px; max-width:65px; left:40px; } .payment-grid { grid-template-columns:1fr; gap:0; } .content-panel { padding:17px; } .gen-grid { grid-template-columns:1fr 1fr; } .gen-grid .btn { width:100%; } .row-filters { width:100%; } .row-filters > label:first-child { flex:1; } .row-filters .input { width:100%; } .row-filters select.input { width:100px; } .form-grid { grid-template-columns:1fr; gap:0; } .query-form { grid-template-columns:1fr 1fr; } .plan-row { grid-template-columns:1fr; } .view-header:has(a.btn) { flex-wrap:wrap; } .purchase-confirm-form { grid-template-columns:1fr; } .dialog-actions { align-items:flex-start; flex-direction:column; } .dialog-actions .btn { width:100%; } .session-dialog { padding:20px; } .login-card { padding:28px; } }
@media (prefers-reduced-motion:reduce) { * { transition:none !important; scroll-behavior:auto !important; } }
.price-editor { border:1px solid var(--line); border-radius:7px; overflow:hidden; margin:4px 0 14px; }
.price-row { display:grid; grid-template-columns:140px 1fr 100px; gap:20px; align-items:center; padding:15px; border-bottom:1px solid #edf0e7; }
.price-row:last-child { border-bottom:0; }
.price-row strong { font-size:14px; color:var(--green); }
.price-row .field-label,.price-row .check-label { margin:0; }
.purchase-account { display:block; color:var(--muted); font:11px var(--font); margin-top:3px; }
.terminal-facts { margin:18px 0; }
.terminal-facts > div { padding:12px 0; border-bottom:1px solid #edf0e7; }
.terminal-facts dt { font-size:11px; color:var(--muted); }
.terminal-facts dd { font-size:13px; margin-top:4px; overflow-wrap:anywhere; white-space:pre-wrap; }
@media (max-width:760px) { .price-row { grid-template-columns:85px 1fr; gap:12px; } .price-row .check-label { grid-column:2; } }

.table { font-size:14px; }
.table .mono-cell { font-size:13px; }
.order-facts dd { font-size:14px; }
.detail-title { font-size:20px; }
.detail-panel h3,.audit-section h3 { font-size:14px; }
.plan-overview { display:flex; justify-content:space-between; align-items:center; gap:15px; border-top:1px solid var(--line); padding:15px 0; font-size:13px; }
.plan-overview span { color:var(--muted); }
.plans-editor { margin-bottom:15px; }
.txn-original { display:block; font-size:10px; color:var(--muted); margin-top:3px; }

@media (max-width:760px) { .admin-side { position:relative; } .admin-brand span { display:none; } .side-footer { display:flex; flex-direction:row; position:absolute; right:14px; top:14px; padding:0; margin:0; gap:4px; } .side-footer .nav-item { padding:7px; } .side-footer .nav-item span { display:none; } .content-panel .table { min-width:640px; } }

.gateway-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-bottom:18px; }
.gateway-summary dt { font-size:11px; color:var(--muted); }
.gateway-summary dd { font-size:14px; margin-top:5px; color:#496657; }
.gateway-config { border-top:1px solid var(--line); padding-top:14px; }
.gateway-config summary { font-size:13px; color:var(--green); font-weight:600; cursor:pointer; }
.gateway-config form { padding-top:18px; max-width:780px; }
@media (max-width:760px) { .gateway-summary { grid-template-columns:1fr; gap:10px; } .gateway-summary > div { display:flex; justify-content:space-between; align-items:center; gap:10px; } .gateway-summary dd { margin:0; font-size:12px; } }

.claim-box { border:1px solid #eadfc8; background:#fcfaf4; border-radius:6px; padding:12px; margin:14px 0; font-size:12px; }
.claim-box strong { display:block; color:#8d712c; margin-bottom:7px; }
.claim-box code { display:block; font:11px/1.6 var(--mono); overflow-wrap:anywhere; margin-bottom:5px; }
.claim-box > span,.claim-box p { color:#9b906d; font-size:11px; margin-bottom:8px; }

.state-badge.LEGACY_UNVERIFIED { color:#7a8279; }
.state-badge.LEGACY_UNVERIFIED i { background:#a1aaa0; }
.receipt-label { display:block; font-size:11px; margin-top:9px; color:var(--muted); }
.receipt-tx { display:block; font:11px/1.6 var(--mono); overflow-wrap:anywhere; margin-top:4px; }
