@font-face{font-family:Inter;src:url('/product-assets/inter.woff2') format('woff2');font-display:swap}
:root{--ink:#202938;--muted:#5d697c;--line:#e2e7ef;--bg:#f6f7fa;--surface:#fff;--blue:#2459dc;--selected:#eaf0ff;--red:#b42332;--green:#16734b;--radius:14px;--shadow:0 6px 24px #2339520a;font-family:Inter,-apple-system,'PingFang SC','Microsoft YaHei',sans-serif;color:var(--ink);background:var(--bg);font-size:14px;line-height:1.6;font-variant-numeric:tabular-nums;caret-color:var(--blue);scrollbar-color:#bac5d5 transparent}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button,a{transition:background-color .16s ease-out,border-color .16s ease-out}button{border:1px solid var(--line);border-radius:9px;padding:8px 14px;color:var(--ink);background:var(--surface);font-weight:550}button:hover:not(:disabled){background:var(--selected);border-color:#bfd0f8}button:disabled{cursor:not-allowed;opacity:.6}.primary{background:var(--blue);color:white;border-color:var(--blue)}.primary:hover:not(:disabled){background:#1747ba}.danger,.locked{color:var(--red);background:#fff2f3;border-color:#f0c5ca}.locked:disabled{opacity:1}.link-button{border:0;color:var(--blue);background:none;padding:5px 0}a{color:var(--blue);text-decoration:none;text-underline-offset:4px}a:hover{text-decoration:underline}:focus-visible{outline:3px solid #8daeff;outline-offset:3px}::selection{background:#cddcff;color:#132a62}input,select,textarea{border:1px solid #d9e0eb;background:var(--surface);border-radius:9px;padding:10px 12px;width:100%;color:var(--ink)}input::placeholder,textarea::placeholder{color:#647186}input:focus,textarea:focus,select:focus{border-color:var(--blue)}textarea{resize:vertical;min-height:100px}label{display:grid;gap:7px;font-weight:550}label small{font-weight:400;color:var(--muted)}.check{display:flex;align-items:flex-start;font-weight:400}.check input{width:auto;margin-top:5px}h1,h2,h3,p{margin:0}h1{font-size:25px;line-height:1.35;letter-spacing:-.025em}h2{font-size:17px;line-height:1.4}h3{font-size:15px}p{color:var(--muted)}small,.muted{color:var(--muted)}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:20px;z-index:10;background:white;padding:12px}.skip:focus{top:10px}
#sidebar{width:232px;position:fixed;inset:0 auto 0 0;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:4}.brand{display:flex;align-items:center;gap:12px;height:82px;padding:18px 22px;border-bottom:1px solid var(--line);color:var(--ink)}.brand img{object-fit:contain}.brand strong{font-size:17px}.brand small{display:block;font-size:11px}.brand:hover{text-decoration:none}nav{padding:23px 12px;display:grid;gap:5px}nav a{display:flex;align-items:center;gap:13px;height:44px;color:var(--muted);padding:0 15px;border-radius:10px;font-weight:550}nav a:hover{text-decoration:none;background:#f3f5fa}nav a.active{background:var(--selected);color:var(--blue)}svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:22px;color:var(--muted);font-size:12px}.sidebar-bottom small{display:block;margin-top:8px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--blue);margin-right:7px}.workspace{margin-left:232px;min-height:100vh}.topbar{height:82px;display:flex;align-items:center;gap:14px;padding:0 30px;background:var(--surface);border-bottom:1px solid var(--line)}.top-actions{margin-left:auto;display:flex;align-items:center;gap:18px}.top-actions span{color:var(--muted);font-size:13px}.top-actions button{font-size:12px}.icon-button{padding:8px;display:flex;align-items:center}#menu{display:none}main{padding:30px;max-width:1640px;margin:auto;min-height:calc(100vh - 150px)}footer{font-size:11px;color:var(--muted);padding:20px 30px}footer span{float:right}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 24px}.page-heading p{margin-top:7px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:22px}.panel-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:22px 24px;border-bottom:1px solid var(--line)}.panel-body{padding:24px}.panel-body>p{margin-top:9px}.notice{background:#fff7f2;border:1px solid #f0d6bf;color:#864518;border-radius:10px;padding:12px 16px;margin-bottom:24px;font-size:13px}.notice p{color:inherit}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:24px;padding:24px 0}.stat{padding:0 24px;border-right:1px solid var(--line)}.stat:last-child{border-right:0}.stat span{color:var(--muted);font-size:12px}.stat strong{display:block;font-size:28px;font-weight:600;margin-top:8px;letter-spacing:-.025em}.stat small{display:block;margin-top:4px;font-size:11px}.two-column{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,1fr);gap:22px}.two-column>.panel{align-self:start}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:18px 22px}.toolbar input{max-width:330px}.toolbar select{max-width:170px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;text-align:left}th{background:#f8f9fc;font-weight:500;color:var(--muted);font-size:12px;padding:12px 22px;border-bottom:1px solid var(--line)}td{padding:16px 22px;border-bottom:1px solid #edf0f5;font-size:13px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f9fbff}td small{display:block;margin-top:3px;font-size:11px}td .order-id{font-size:12px;max-width:235px;overflow:hidden;text-overflow:ellipsis;display:block}.badge{display:inline-block;font-size:11px;padding:3px 9px;border-radius:6px;background:#f0f2f6;color:#526074}.badge.good{color:var(--green);background:#eaf7f0}.badge.warn{color:#945117;background:#fff3e5}.badge.bad{color:var(--red);background:#fff0f2}.empty{text-align:center;padding:65px 24px;white-space:normal}.empty svg{width:30px;height:30px;color:#8391a5;margin:0 0 13px}.empty strong{display:block;font-weight:550;margin-bottom:6px}.empty p{font-size:13px;margin-bottom:15px}.pager{display:flex;justify-content:flex-end;align-items:center;gap:14px;border-top:1px solid var(--line);padding:15px 22px;font-size:12px}.pager span{margin-right:auto;color:var(--muted)}.pager button{font-size:12px;padding:6px 12px}.form-grid{display:grid;gap:20px;max-width:620px}.form-grid .actions{margin-top:3px}.row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:17px 0;border-bottom:1px solid var(--line)}.row:first-child{padding-top:0}.row:last-child{border-bottom:0;padding-bottom:0}.row p{font-size:12px;margin-top:4px}.row strong{font-weight:550}.row .value{white-space:nowrap}.detail-grid{display:grid;grid-template-columns:120px minmax(0,1fr);gap:13px 20px;margin:15px 0 25px}.detail-grid dt{color:var(--muted)}.detail-grid dd{margin:0;overflow-wrap:anywhere}code,pre{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;overflow-wrap:anywhere}pre{white-space:pre-wrap;word-break:break-word;background:#f5f7fb;border:1px solid var(--line);border-radius:10px;padding:20px;margin:15px 0;line-height:1.8}.doc{max-width:960px}.doc h2{margin:30px 0 12px}.doc p{margin:9px 0}.login-card{width:400px;max-width:calc(100vw - 32px);background:white;border:1px solid var(--line);padding:35px;border-radius:18px;box-shadow:0 14px 45px #2039630a}.login-card img{object-fit:contain;display:block;margin:0 auto 16px}.login-card h1,.login-card>p{text-align:center}.login-card h1{font-size:23px}.login-card>p{margin:10px 0 24px}.login-card form{display:grid;gap:18px}.login-card>a{display:block;text-align:center;font-size:12px}.login-card #login-help{font-size:12px;margin:22px 0 12px}#login-screen{display:grid;place-items:center;min-height:100vh;padding:30px 0}#login-error,#dialog-error{color:var(--red);font-size:13px}dialog{border:1px solid var(--line);border-radius:16px;padding:0;max-width:700px;width:calc(100% - 32px);max-height:88vh;box-shadow:0 20px 70px #182b4f33;color:var(--ink)}dialog::backdrop{background:#17284055}.dialog-head{padding:22px 26px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px}#dialog-body{padding:26px}#dialog-error:not(:empty){padding:0 26px 24px}#dialog .form-grid{max-width:none}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:13px 20px;border-radius:10px;background:#24354f;color:white;box-shadow:0 7px 24px #18304f26;z-index:20;max-width:calc(100vw - 32px);font-size:13px}.loading{padding:60px 24px;color:var(--muted);text-align:center}.loading::before{content:'';display:inline-block;width:14px;height:14px;border:2px solid #c4d5f7;border-top-color:var(--blue);border-radius:50%;margin-right:10px;vertical-align:-2px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.secret{padding:18px;border:1px solid #bbd0ff;background:#f1f5ff;border-radius:12px;margin-top:20px}.secret input{margin:12px 0}.secret p{font-size:12px}.route-enter{animation:arrive .16s cubic-bezier(.16,1,.3,1)}@keyframes arrive{from{transform:translateY(3px)}to{transform:translateY(0)}}
@media(max-width:1100px){main{padding:22px}.topbar{padding:0 22px}.two-column{grid-template-columns:1fr}.stat{padding:0 17px}.stat strong{font-size:24px}}
@media(max-width:760px){#sidebar{transform:translateX(-100%);transition:transform .2s ease-out;box-shadow:10px 0 40px #152c4d12}.nav-open #sidebar{transform:translateX(0)}.workspace{margin-left:0}#menu{display:flex}.topbar{height:68px;padding:0 16px;position:sticky;top:0;z-index:3}.top-actions{gap:8px}.top-actions span{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-actions button{padding:7px}main{padding:22px 14px}.page-heading{align-items:flex-start;margin-bottom:20px}.page-heading h1{font-size:22px}.page-heading p{font-size:12px}.page-heading>.actions{flex-shrink:0}.stats{grid-template-columns:1fr 1fr;padding:0}.stat{padding:20px;border-bottom:1px solid var(--line)}.stat:nth-child(2){border-right:0}.stat:nth-child(3),.stat:nth-child(4){border-bottom:0}.stat strong{font-size:25px}.panel-head,.panel-body{padding:19px}.toolbar{padding:14px;gap:8px}.toolbar input{max-width:none;flex:1 1 180px}.toolbar select{flex:1 1 140px;max-width:none}th,td{padding:13px 16px}.pager{padding:13px;gap:8px}.pager button{padding:6px 8px}.row{align-items:flex-start}.detail-grid{grid-template-columns:95px minmax(0,1fr);gap:12px}.dialog-head,#dialog-body{padding:20px}footer{padding:18px 15px}.notice{font-size:12px}.login-card{padding:28px}.panel-body .form-grid{max-width:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.keys-heading{margin:24px 0 12px}

.recent-table{table-layout:fixed}.recent-table th:first-child{width:50%}.recent-table th:nth-child(2){width:21%}.recent-table td,.recent-table th{padding-left:18px;padding-right:18px}.recent-table .order-id{max-width:100%}.recent-account{max-width:100%;overflow:hidden;text-overflow:ellipsis}@media(max-width:760px){.recent-table td,.recent-table th{padding-left:12px;padding-right:12px}.recent-table th:first-child{width:47%}.recent-table th:nth-child(2){width:23%}.recent-table td{font-size:12px}.recent-table .badge{font-size:10px;padding:3px 5px}.recent-table td small{font-size:10px}}

#close-nav{display:none}@media(max-width:760px){#close-nav{display:block;margin:12px 15px 0;align-self:flex-end}nav{padding-top:12px}}

fieldset.form-grid{border:0;padding:0;margin:0;min-width:0}fieldset legend{font-size:15px;font-weight:600;margin-bottom:18px}.card-fields{grid-template-columns:2fr 1fr 1fr 1fr}.card-fields label{min-width:0}fieldset:disabled input,fieldset:disabled textarea{background:#f7f8fb;color:var(--muted)}details summary{cursor:pointer;color:var(--muted)}details .form-grid{margin-top:18px}@media(max-width:760px){.card-fields{grid-template-columns:1fr 1fr}.card-fields label:first-child{grid-column:1/-1}}
.mode-tabs{display:flex;gap:5px;margin:-4px 0 22px;padding:4px;background:#edf1f7;border-radius:10px;width:max-content}.mode-tabs button{background:transparent;border-color:transparent;padding:8px 18px;color:var(--muted)}.mode-tabs button.active{background:var(--surface);color:var(--blue);border-color:var(--line)}.flow-list{margin:0;padding-left:20px;display:grid;gap:24px}.flow-list li{padding-left:5px}.flow-list strong{font-weight:550}.flow-list p{font-size:12px;margin-top:5px}.flow-note{margin-top:18px!important;font-size:12px;max-width:70ch}.check small{display:block;font-size:12px}.check:has(small){flex-wrap:wrap;column-gap:8px;row-gap:3px}.check:has(small) small{flex-basis:100%;padding-left:22px}.authorization{padding-top:16px;border-top:1px solid var(--line)}.batch-input{min-height:180px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.batch-total{font-size:12px;margin-top:12px}#batch-preview{min-width:0}#batch-preview:empty{display:none}#batch-preview table th,#batch-preview table td{padding:10px 12px}.row-error{white-space:normal;display:block;max-width:45ch}.sync-note{font-size:12px;font-weight:400;color:var(--muted)}.order-progress{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid var(--line)}.order-progress strong{font-size:16px}.order-progress small{width:100%;font-size:12px}.failure-note{padding:15px 0;border-bottom:1px solid var(--line)}.failure-note strong{color:var(--red);font-weight:550}.failure-note p{margin-top:5px;font-size:13px}.renewal-result{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0}.renewal-result p{width:100%;font-size:12px}.order-actions{margin-top:20px}.settings-grid{grid-template-columns:1fr 1fr}#batch-results-panel{scroll-margin-top:85px}.form-grid #batch-preview{overflow:hidden}#purchase-form{max-width:none}@media(max-width:760px){.mode-tabs{width:100%}.mode-tabs button{flex:1}.settings-grid{grid-template-columns:1fr}.order-progress strong{font-size:15px}.order-actions button{flex:1 1 auto}.panel-head .sync-note{max-width:45%;text-align:right}.batch-input{min-height:200px}.order-progress .badge{margin-left:auto}}
