:root{--bg:#f5f7fb;--panel:#fff;--soft:#f8fafc;--line:#e5e7eb;--line2:#d7dce3;--text:#172033;--muted:#6b7280;--primary:#2563eb;--primary2:#1d4ed8;--danger:#dc2626;--success:#15803d;--warning:#b45309;--radius:12px;--shadow:0 1px 2px rgba(16,24,40,.03),0 8px 24px rgba(16,24,40,.04)}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font:13px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar{height:60px;background:#111827;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:sticky;top:0;z-index:100}.brand-wrap{display:flex;align-items:center;gap:10px}.brand-mark{width:30px;height:30px;border-radius:8px;background:#2563eb;display:grid;place-items:center;font-weight:800}.brand{font-weight:800;letter-spacing:.06em;font-size:13px}.brand-sub{font-size:10px;color:#94a3b8}.top-actions{display:flex;align-items:center;gap:14px}.top-email{font-size:12px;color:#d1d5db}.top-link{border:0;background:transparent;color:#fff;padding:5px 0;cursor:pointer}.app-shell{display:flex;min-height:calc(100vh - 60px)}.sidebar{width:220px;flex:0 0 220px;background:#fff;border-right:1px solid var(--line);padding:14px 10px 24px}.nav-group-label{margin:16px 10px 6px;color:#9ca3af;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.nav-group-label:first-child{margin-top:4px}.nav-link{display:flex;align-items:center;min-height:36px;padding:8px 10px;margin:2px 0;border-radius:8px;color:#465064;font-weight:550}.nav-link:hover{background:#f3f4f6;color:#111827}.nav-link.active{background:#eef4ff;color:#1d4ed8;font-weight:700}.content{flex:1;min-width:0;padding:24px;max-width:1540px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.page-head h1,h1{font-size:24px;line-height:1.2;margin:0 0 5px;letter-spacing:-.02em}.page-subtitle{margin:0;color:var(--muted);font-size:12px}h2{font-size:17px;margin:0 0 8px}h3{font-size:14px;margin:0 0 8px}.muted{color:var(--muted)}.panel,.card,.help,.auth-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel{padding:16px}.panel-narrow{max-width:720px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.panel-head p{margin:2px 0 0}.section-gap{height:16px}.help{padding:13px 15px;margin:12px 0;box-shadow:none;border-left:3px solid #94a3b8}.help h3{margin:0 0 5px}.auth-card{max-width:400px;margin:54px auto;padding:20px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.card{padding:15px}.card span{display:block;color:var(--muted)}.card strong{display:block;margin-top:5px;font-size:21px}.compact-form{max-width:700px}.form-grid{display:grid;gap:12px 14px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{min-width:0}.field.full{grid-column:1/-1}label{display:block;margin:0 0 5px;font-size:11px;font-weight:700;color:#465064}input,select,textarea{width:100%;max-width:320px;min-height:36px;padding:7px 9px;border:1px solid var(--line2);border-radius:8px;background:#fff;color:var(--text);outline:none}textarea{min-height:84px;resize:vertical}.field input,.field select,.field textarea{max-width:none}input:focus,select:focus,textarea:focus{border-color:#93b4ff;box-shadow:0 0 0 3px rgba(37,99,235,.09)}input[type=checkbox]{width:auto;min-height:auto}form.card{max-width:700px;margin:12px 0}form.card>input,form.card>select,form.card>textarea{display:block;margin:6px 0 10px}form.card>label{margin-top:10px}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.btn,button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border:1px solid transparent;border-radius:8px;background:#111827;color:#fff;font-weight:650;cursor:pointer;margin:0}.btn:hover,button:hover{filter:brightness(.97)}.btn-primary{background:var(--primary)}.btn-secondary{background:#fff;color:#374151;border-color:var(--line2)}.btn-danger{background:#fff;color:#b91c1c;border-color:#fecaca}.btn-sm{min-height:29px;padding:5px 9px;font-size:11px}.top-link{min-height:auto}.notice,.alert{padding:10px 12px;border-radius:9px;margin-bottom:12px;border:1px solid}.notice-success,.ok{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.notice-danger,.danger{background:#fef2f2;color:#991b1b;border-color:#fecaca}.notice-warning{background:#fffbeb;color:#92400e;border-color:#fde68a}.table-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}.table-scroll{overflow:auto}table,.data-table{width:100%;border-collapse:separate;border-spacing:0;min-width:760px;background:#fff}th{background:#f8fafc;color:#737d8f;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.04em;font-weight:800;padding:9px 11px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:9px 11px;border-bottom:1px solid #eef1f4;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfd}.num{text-align:right;font-variant-numeric:tabular-nums}.money{white-space:nowrap;font-variant-numeric:tabular-nums}.actions{display:flex;justify-content:flex-end;gap:5px;white-space:nowrap}.user-main{font-weight:650}.user-sub{font-size:10px;color:var(--muted);margin-top:1px}.role-badge,.status-pill,.version-chip{display:inline-flex;align-items:center;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:800;white-space:nowrap}.role-badge{background:#f2f4f7;color:#475467}.status-success{background:#ecfdf3;color:#067647}.status-danger{background:#fef3f2;color:#b42318}.status-muted{background:#f2f4f7;color:#667085}.version-chip{background:#eef4ff;color:#1d4ed8;font-size:11px}.empty-cell{text-align:center;color:var(--muted);padding:24px}.modal-open{overflow:hidden}.modal-overlay{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.48);backdrop-filter:blur(2px)}.modal-overlay.open{display:flex}.modal-box{width:min(610px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-radius:14px;box-shadow:0 28px 90px rgba(15,23,42,.25)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0}.modal-close{width:29px;height:29px;min-height:29px;padding:0;border:0;background:#f3f4f6;color:#667085;font-size:19px}.modal-content{padding:16px}.modal-footer{display:flex;justify-content:flex-end;gap:7px;padding:12px 16px;border-top:1px solid var(--line);background:#fafafa}.pagination{display:flex;gap:5px;margin-top:12px}.pagination a,.pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 8px;border:1px solid var(--line);border-radius:7px;background:#fff}pre{white-space:pre-wrap;word-break:break-word;background:#f8fafc;padding:10px;border-radius:8px}@media(max-width:900px){.sidebar{width:190px;flex-basis:190px}.content{padding:18px}}@media(max-width:720px){.app-shell{display:block}.sidebar{width:100%;display:flex;overflow:auto;border-right:0;border-bottom:1px solid var(--line);padding:8px}.nav-group-label{display:none}.nav-link{white-space:nowrap;margin:0}.content{padding:14px}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.page-head{flex-direction:column}.top-email{display:none}}

/* v0.5.1 polish */
.content{padding:22px 24px 32px}.panel{padding:15px}.panel-table{padding:0}.panel-table .panel-head{padding:15px 15px 0}.panel-table .table-scroll{margin-top:10px}.compact-table{min-width:820px}.compact-table th{padding:8px 10px}.compact-table td{padding:8px 10px}.actions-col{width:1%;white-space:nowrap}.pagination-wrap{margin-top:10px}.btn-ghost{background:transparent;color:#5f6b7a;border-color:transparent}.btn-ghost:hover{background:#f3f4f6}.btn-danger-solid{background:#b42318;color:#fff;border-color:#b42318}.field-hint{margin-top:4px;color:var(--muted);font-size:10px}.check-row{display:flex;align-items:center;gap:7px;margin:3px 0}.check-row input{margin:0}.modal-box.modal-compact{width:min(560px,100%)}.modal-box.modal-small{width:min(430px,100%)}.modal-head p{margin:3px 0 0;color:var(--muted);font-size:11px}.filter-bar{display:flex;align-items:center;gap:8px;margin-bottom:12px}.filter-bar input,.filter-bar select{width:auto;max-width:none}.filter-bar .input-search{width:230px}.soft-sep{border:0;border-top:1px solid var(--line);margin:16px 0}.mini-form label{margin-top:9px}.mini-form input,.mini-form select,.mini-form textarea{max-width:none}.layout-two-columns{display:grid;grid-template-columns:minmax(0,680px) minmax(260px,420px);gap:14px;align-items:start}.update-panel input[type=file]{display:none}.file-picker{max-width:none;width:100%;display:flex;align-items:center;gap:8px;padding:6px;border:1px solid var(--line2);border-radius:9px;background:#fff;cursor:pointer}.file-picker-button{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:7px;background:#f1f5f9;color:#263248;font-weight:700}.file-picker-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-weight:500}.compact-notice{margin:10px 0 0;padding:9px 10px;font-size:11px}.system-links{display:grid;gap:8px}.system-link{display:flex;flex-direction:column;gap:2px;padding:11px;border:1px solid var(--line);border-radius:9px;background:#fbfcfe}.system-link:hover{border-color:#bfd0f5;background:#f7faff}.system-link strong{font-size:12px}.system-link span{font-size:10px;color:var(--muted)}code{background:#f1f5f9;border-radius:5px;padding:2px 5px;font-size:11px}.settings-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.inline-fields{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.inline-fields .field{flex:0 1 180px}.inline-fields .field.wide{flex-basis:260px}.inline-fields .field.tiny{flex-basis:110px}.inline-fields .form-actions{margin:0 0 1px}.settings-table td .btn{white-space:nowrap}@media(max-width:980px){.layout-two-columns{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.filter-bar{align-items:stretch;flex-direction:column}.filter-bar input,.filter-bar select,.filter-bar .input-search{width:100%}.metric-grid{grid-template-columns:1fr}}
.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.info-grid .panel p{margin:0}.page-head-actions{display:flex;gap:7px;align-items:center}@media(max-width:900px){.info-grid{grid-template-columns:1fr}}

/* v0.5.3 unified compact UI */
.kv-list{display:grid;gap:8px}.kv-list>div{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #eef1f4}.kv-list>div:last-child{border-bottom:0}.kv-list span{color:var(--muted)}.kv-list strong{font-weight:650;text-align:right}.doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.copy-row{display:flex;align-items:center;gap:8px}.copy-row code{padding:8px 10px;display:inline-block}.http-method{display:inline-flex;min-width:44px;justify-content:center;border-radius:6px;padding:3px 6px;font-size:10px;font-weight:800}.http-method.get{background:#ecfdf3;color:#067647}.http-method.post{background:#eef4ff;color:#1d4ed8}.secret-box{margin-top:8px;padding:10px;background:#fff;border:1px dashed #f59e0b;border-radius:8px;display:grid;gap:5px}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;margin:7px 0 14px}.code-input{min-height:170px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.status-line{display:inline-flex;padding:4px 7px;border-radius:6px;background:#f2f4f7;font-weight:800;margin-bottom:8px}.break-cell{max-width:360px;word-break:break-all}.modal-box input,.modal-box select,.modal-box textarea{max-width:none}.table-card+.section-gap{height:14px}.panel-table{overflow:hidden}.panel-table table{box-shadow:none}.page-head-actions{flex-wrap:wrap}@media(max-width:800px){.doc-grid{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}}

/* v0.5.4 live updater */
.update-progress-card{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:11px;background:#fbfcfe}.update-progress-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.update-progress-top strong{font-size:13px}.update-progress-message{margin-top:3px;font-size:11px;color:var(--muted)}.update-progress-percent{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums;color:#1d4ed8}.update-progress-track{height:9px;margin:12px 0 10px;border-radius:999px;background:#e9eef6;overflow:hidden}.update-progress-bar{height:100%;border-radius:999px;background:#2563eb;transition:width .35s ease}.update-progress-steps{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}.update-progress-steps span{padding:5px 4px;border-radius:6px;background:#f2f4f7;color:#98a2b3;font-size:9px;text-align:center;font-weight:700}.update-progress-steps span.done{background:#ecfdf3;color:#067647}.update-progress-steps span.active{background:#eef4ff;color:#1d4ed8;box-shadow:inset 0 0 0 1px #bfd0f5}.update-progress-card .notice{margin:10px 0 0}@media(max-width:800px){.update-progress-steps{grid-template-columns:repeat(4,1fr)}}

/* v0.5.5 merchant cabinet */
.amount-positive{color:#067647;font-weight:750}.amount-negative{color:#b42318;font-weight:750}.merchant-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.merchant-stats-columns{grid-template-columns:1fr 1.25fr}.merchant-stats-columns .compact-table{min-width:520px}@media(max-width:1100px){.merchant-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.merchant-stats-columns{grid-template-columns:1fr}}@media(max-width:720px){.merchant-metrics{grid-template-columns:1fr}}
.notice-info{background:#eff6ff;color:#1e40af;border-color:#bfdbfe}.storage-box{display:grid;gap:9px}.stats-cards .card strong{font-variant-numeric:tabular-nums}.period-switch select{min-width:160px}

/* v0.6.2 requisites bank->bank */
.status-warning{background:#fffbeb;color:#b45309}
.requisites-card{overflow:hidden}
.requisite-table{min-width:0;table-layout:fixed;width:100%}
.requisite-table th,.requisite-table td{vertical-align:top}
.requisite-table th:nth-child(1){width:34%}
.requisite-table th:nth-child(2){width:24%}
.requisite-table th:nth-child(3){width:18%}
.requisite-table th:nth-child(4){width:10%}
.requisite-table th:nth-child(5){width:14%}
.requisite-table .actions{justify-content:flex-start;flex-wrap:wrap}
.req-title-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.req-meta-grid,.req-stats-grid,.req-locked-grid{display:grid;gap:8px}
.req-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.req-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.req-stats-grid.usage{grid-template-columns:1fr}
.req-meta-grid>div,.req-stats-grid>div,.req-locked-grid>div{border:1px solid #eef1f4;border-radius:10px;background:#fbfcfe;padding:9px 10px}
.req-meta-grid span,.req-stats-grid span,.req-locked-grid span{display:block;color:var(--muted);font-size:10px;margin-bottom:3px}
.req-meta-grid strong,.req-stats-grid strong,.req-locked-grid strong{display:block;font-size:12px;line-height:1.35;word-break:break-word}
.req-locked-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1100px){.requisite-table th:nth-child(1){width:32%}.requisite-table th:nth-child(2){width:26%}.requisite-table th:nth-child(3){width:20%}.requisite-table th:nth-child(5){width:16%}}
@media(max-width:860px){.req-meta-grid,.req-stats-grid,.req-locked-grid{grid-template-columns:1fr}.requisite-table,.requisite-table thead,.requisite-table tbody,.requisite-table tr,.requisite-table th,.requisite-table td{display:block;width:100%}.requisite-table thead{display:none}.requisite-table tr{border-bottom:1px solid #eef1f4;padding:10px 12px}.requisite-table tr:last-child{border-bottom:0}.requisite-table td{border:0;padding:8px 0}.requisite-table .actions-col{padding-top:4px}}

/* v0.6.4 dense requisites */
.requisites-dense-card{overflow:hidden}
.requisites-dense-table{min-width:1040px;font-size:11px}
.requisites-dense-table th{padding:6px 8px;font-size:9px}
.requisites-dense-table td{padding:7px 8px;vertical-align:middle}
.requisites-dense-table .dense-main{font-weight:700;margin-top:2px;white-space:nowrap}
.requisites-dense-table .user-sub{font-size:9px}
.dense-chip{display:inline-flex;padding:2px 5px;border-radius:4px;background:#172033;color:#fff;font-size:9px;font-weight:800;white-space:nowrap}
.dense-pair{display:flex;justify-content:space-between;gap:8px;line-height:1.35;white-space:nowrap}
.dense-pair span{color:var(--muted);font-size:9px}
.dense-pair b{font-size:10px;font-variant-numeric:tabular-nums}
.dense-metric{display:inline-flex;align-items:baseline;gap:3px;margin-right:8px;white-space:nowrap}
.dense-metric b{font-size:11px}.dense-metric span{font-size:9px;color:var(--muted)}
.requisites-dense-table .actions{gap:3px}
.requisites-dense-table .btn-sm{min-height:25px;padding:3px 7px;font-size:10px}
.requisites-dense-table .status-pill{padding:3px 6px;font-size:9px}
.requisites-dense-table th:first-child,.requisites-dense-table td:first-child{width:52px}
.requisites-dense-table.admin-dense{min-width:1180px}
@media(max-width:900px){.requisites-dense-table{min-width:960px}}

/* v0.6.10 trader account statistics */
.trader-stats-periods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.trader-stat-block{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.trader-stat-title{padding:8px 10px;background:#f8fafc;border-bottom:1px solid var(--line);font-size:11px;font-weight:800}
.trader-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.trader-stat-grid>div{padding:8px 10px;border-right:1px solid #eef1f4;border-bottom:1px solid #eef1f4}
.trader-stat-grid>div:nth-child(2n){border-right:0}
.trader-stat-grid>div.earnings{grid-column:1/-1;border-right:0;background:#f8fffb}
.trader-stat-grid span{display:block;color:var(--muted);font-size:9px;margin-bottom:2px}
.trader-stat-grid strong{font-size:12px;font-variant-numeric:tabular-nums}
.trader-stat-grid .earnings strong{color:#067647;font-size:14px}
@media(max-width:1050px){.trader-stats-periods{grid-template-columns:1fr}}

/* v0.6.15 account row + API tester */
.account-main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:stretch}
.account-main-grid.single{grid-template-columns:1fr}
.account-data-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.account-data-list>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;border:1px solid #eef1f4;border-radius:9px;background:#fbfcfe}
.account-data-list span{font-size:10px;color:var(--muted)}
.account-data-list strong{font-size:12px;text-align:right}
.api-test-toolbar{display:grid;grid-template-columns:1.3fr 1fr;gap:12px;margin-bottom:14px}
.api-test-generated{margin-top:10px;padding:10px;border:1px solid var(--line);border-radius:9px;background:#f8fafc}
.api-test-generated .kv-list>div{padding:5px 0}
.api-test-operation-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.api-test-operation-fields .field.full{grid-column:1/-1}
@media(max-width:980px){.account-main-grid,.api-test-toolbar{grid-template-columns:1fr}.account-data-list{grid-template-columns:1fr}}

/* v0.6.29 trader live requisite cards */
.trader-live-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.trader-work-btn{min-height:38px;padding:8px 16px;border-radius:7px;font-weight:800;border:1px solid transparent}
.trader-work-btn.offline{background:#dcfce7;color:#166534;border-color:#bbf7d0}
.trader-work-btn.online{background:#fee2e2;color:#991b1b;border-color:#fecaca}
.trader-live-balance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:520px;margin-bottom:14px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}
.trader-live-balance>div{padding:10px 14px;text-align:center;border-right:1px solid var(--line)}
.trader-live-balance>div:last-child{border-right:0}
.trader-live-balance span{display:block;color:var(--muted);font-size:11px}
.trader-live-balance strong{display:block;margin-top:2px;font-size:17px}
.trader-live-balance>div:nth-child(2) strong{color:#15803d}
.trader-live-balance>div:nth-child(3) strong{color:#dc2626}
.trader-live-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;align-items:start}
.live-requisite-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}
.live-requisite-card.is-disabled{opacity:.72}
.live-req-limits{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#fafafa;border-bottom:1px solid var(--line)}
.live-req-limits>div{padding:8px 5px;text-align:center;border-right:1px solid var(--line)}
.live-req-limits>div:last-child{border-right:0}
.live-req-limits span{display:block;color:var(--muted);font-size:9px}
.live-req-limits b{display:block;margin-top:2px;font-size:10px;white-space:nowrap}
.live-req-toggle{width:calc(100% - 20px);margin:10px;min-height:32px;border-radius:5px;font-weight:750}
.live-req-toggle.on{background:#fecaca;color:#991b1b}
.live-req-toggle.off{background:#bbf7d0;color:#166534}
.live-req-main{padding:7px 12px 11px;border-bottom:1px solid var(--line)}
.live-req-method{font-size:9px;color:var(--muted);margin-bottom:8px}
.live-req-value{font-size:16px;font-weight:800;letter-spacing:.02em;word-break:break-word}
.live-req-holder{margin-top:7px;font-size:12px;color:#465064}
.live-req-bank,.live-req-range{margin-top:3px;color:var(--muted);font-size:10px}
.live-orders-list{padding:0 12px 12px}
.live-order{padding:11px 0;border-bottom:1px solid #eef1f4}
.live-order:last-child{border-bottom:0;padding-bottom:0}
.live-order-head{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.live-order-head strong{font-size:11px}.live-order-head span{display:block;color:var(--muted);font-size:9px;word-break:break-all}
.live-order-time{font-size:9px;color:var(--muted);white-space:nowrap}
.live-order-money{display:flex;justify-content:space-between;gap:8px;align-items:baseline;margin-top:6px}
.live-order-money strong{font-size:15px}.live-order-money span{font-size:9px;color:var(--muted);text-align:right}
.live-order-profit{margin-top:3px;color:#15803d;font-size:10px}
.live-order-status{margin-top:3px;color:#b42318;font-size:10px}
.live-pay-btn{width:100%;margin-top:8px;min-height:33px;border-radius:5px;background:#3b82f6;color:#fff;font-weight:800}
.live-pay-btn:disabled{opacity:.55}
.live-no-orders{padding:12px 0 2px;text-align:center;color:var(--muted);font-size:10px}
@media(max-width:720px){
  .trader-live-toolbar{align-items:stretch;flex-direction:column}
  .trader-work-btn{width:100%}
  .trader-live-balance{max-width:none;width:100%}
  .trader-live-grid{grid-template-columns:1fr}
}

/* v0.6.30 compact status controls */
.inline-status-select{
  min-width:128px;height:30px;padding:4px 26px 4px 9px;border:1px solid #d9dee8;border-radius:999px;
  background:#f3f4f6;font-size:10px;font-weight:800;color:#344054;cursor:pointer
}
.inline-status-select.status-active{background:#ecfdf3;color:#067647;border-color:#abefc6}
.inline-status-select.status-dispute{background:#fffaeb;color:#b54708;border-color:#fedf89}
.inline-status-select.status-expired,.inline-status-select.status-cancelled{background:#fef3f2;color:#b42318;border-color:#fecdca}
.status-confirm-preview{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}
.status-confirm-preview span{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--line);border-radius:9px;background:#f8fafc;font-weight:800;font-size:12px}
.status-confirm-preview b{font-size:18px;color:var(--muted)}

/* v0.6.31 requisite archive */
.status-archive{background:#eef2ff;color:#4338ca}
.btn-archive{background:#f5f3ff;color:#5b21b6;border:1px solid #ddd6fe}
.btn-archive:hover{background:#ede9fe}

/* v0.6.32 Russian and color-coded order statuses */
.status-filter-select{min-width:150px}
.status-new{background:#eff6ff!important;color:#1d4ed8!important;border-color:#bfdbfe!important}
.status-active{background:#ecfdf3!important;color:#067647!important;border-color:#abefc6!important}
.status-completed{background:#dcfce7!important;color:#166534!important;border-color:#86efac!important}
.status-expired{background:#fff7ed!important;color:#c2410c!important;border-color:#fed7aa!important}
.status-dispute{background:#fffbeb!important;color:#b45309!important;border-color:#fde68a!important}
.status-refund{background:#f5f3ff!important;color:#6d28d9!important;border-color:#ddd6fe!important}
.status-cancelled{background:#fef2f2!important;color:#b91c1c!important;border-color:#fecaca!important}
.status-failed{background:#fff1f2!important;color:#be123c!important;border-color:#fecdd3!important}
.status-default{background:#f2f4f7!important;color:#667085!important;border-color:#d0d5dd!important}
.inline-status-select.status-new,
.inline-status-select.status-active,
.inline-status-select.status-completed,
.inline-status-select.status-expired,
.inline-status-select.status-dispute,
.inline-status-select.status-refund,
.inline-status-select.status-cancelled,
.inline-status-select.status-failed{
    font-weight:800;
}

/* v0.6.33 trader antifraud */
.fraud-guide{display:grid;grid-template-columns:1.35fr 1fr;gap:14px}
.fraud-steps{display:grid;gap:8px;margin-top:10px}
.fraud-steps>div{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:start}
.fraud-steps>div>b{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:999px;background:#eef4ff;color:#175cd3;font-size:11px}
.fraud-steps>div>span{font-size:12px;line-height:1.45;color:#475467}
.fraud-enabled-check{min-height:40px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fafafa}
.fraud-counter{margin-top:6px;display:grid;grid-template-columns:1fr auto;gap:2px 8px;min-width:145px}
.fraud-counter span,.fraud-counter small{font-size:9px;color:var(--muted)}
.fraud-counter b{font-size:11px}
.fraud-counter small{grid-column:1/-1}
@media(max-width:900px){.fraud-guide{grid-template-columns:1fr}}

/* v0.6.34 balance history */
.balance-history-metrics{grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px}
.balance-history-filter{margin:14px 0 10px;flex-wrap:wrap}
.balance-history-filter input[type=search]{min-width:230px}
.balance-history-table td,.balance-history-table th{white-space:nowrap}
.balance-history-table td:nth-child(2){white-space:normal;min-width:220px}
.admin-balance-history td:nth-child(3){white-space:normal;min-width:220px}
.balance-bucket{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:800}
.bucket-available{background:#ecfdf3;color:#067647}
.bucket-reserved{background:#fff7ed;color:#c2410c}
.bucket-insurance{background:#eff6ff;color:#1d4ed8}
@media(max-width:720px){.balance-history-metrics{grid-template-columns:1fr}}

/* v0.6.38 balances search */
.balance-search-bar{margin:0 0 10px;display:flex;gap:8px;align-items:center}
.balance-search-bar input[type=search]{min-width:280px}
@media(max-width:720px){.balance-search-bar{align-items:stretch;flex-direction:column}.balance-search-bar input[type=search]{min-width:0;width:100%}}

/* v0.6.40 withdrawals */
.withdrawal-balance-cards{grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px;margin-bottom:14px}
.withdrawal-address{max-width:300px;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}
.withdrawal-filter{margin-bottom:10px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.withdrawal-filter input[type=search]{min-width:260px}
.withdrawal-summary{padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#f8fafc;margin-bottom:12px}
.withdrawal-summary strong{display:block;font-size:18px;margin-bottom:5px}
.admin-withdrawals-table .actions-col{min-width:170px}
@media(max-width:720px){
  .withdrawal-balance-cards{grid-template-columns:1fr}
  .withdrawal-filter{align-items:stretch;flex-direction:column}
  .withdrawal-filter input[type=search]{min-width:0;width:100%}
}

/* v0.6.41 withdrawals TRC20 only */
.withdrawal-network-fixed{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:40px;padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}
.withdrawal-network-fixed strong{font-size:13px}
.withdrawal-network-fixed span{font-size:10px;color:var(--muted)}

/* v0.6.42 Waltix deposits/withdrawals */
.deposit-card{max-width:760px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:var(--shadow)}
.deposit-network{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.deposit-network strong{font-size:20px}.deposit-network span{font-size:11px;color:var(--muted)}
.deposit-address-row{display:flex;gap:8px;align-items:center;margin-top:6px}
.deposit-address-row code{flex:1;padding:11px 12px;background:#f8fafc;border:1px solid var(--line);border-radius:8px;font-size:14px;word-break:break-all}
.waltix-address-cell{display:flex;align-items:center;gap:7px;max-width:360px}
.waltix-address-cell code{max-width:235px;overflow:hidden;text-overflow:ellipsis;font-size:9px}
@media(max-width:720px){.deposit-address-row,.waltix-address-cell{align-items:stretch;flex-direction:column}.deposit-address-row .btn{width:100%}}

/* v0.6.43 Waltix client-paid fee UI */
.withdrawal-fee-preview{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 10px}
.withdrawal-fee-preview>div{padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}
.withdrawal-fee-preview span{display:block;font-size:9px;color:var(--muted)}
.withdrawal-fee-preview strong{display:block;margin-top:2px;font-size:13px}
@media(max-width:560px){.withdrawal-fee-preview{grid-template-columns:1fr}}

/* v0.6.48 payouts + receipt storage */
.payout-live-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:12px}
.payout-card{display:flex;flex-direction:column;gap:10px}
.payout-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.payout-amount{font-size:22px;font-weight:750}
.payout-complete-form{border-top:1px solid var(--line);padding-top:10px}
.receipt-links{display:flex;flex-wrap:wrap;gap:5px}
.storage-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
@media(max-width:900px){.storage-grid{grid-template-columns:1fr}}

/* v0.6.53 user role tabs and trader access */
.role-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 14px}
.role-tab{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;text-decoration:none;color:inherit;background:var(--panel)}
.role-tab span{font-size:12px;opacity:.65}
.role-tab.active{font-weight:700;border-color:currentColor}
.access-mini{display:flex;gap:5px;flex-wrap:wrap}
.trader-access-box{padding:10px;border:1px solid var(--line);border-radius:10px}

/* v1.0 information architecture */
.section-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px;padding:4px;background:rgba(148,163,184,.10);border-radius:12px;width:max-content;max-width:100%}
.section-tab{padding:8px 14px;border-radius:9px;text-decoration:none;color:inherit;font-weight:600}
.section-tab.active{background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.10)}
.info-strip{margin:0 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.info-strip div{display:flex;gap:8px;flex-wrap:wrap}
.info-strip span{opacity:.72}
.modal-subtabs{display:flex;gap:5px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.modal-subtab{border:0;background:transparent;padding:8px 10px;cursor:pointer;font-weight:600;opacity:.65;border-bottom:2px solid transparent}
.modal-subtab.active{opacity:1;border-bottom-color:currentColor}
.quick-user-links{display:flex;gap:8px;flex-wrap:wrap}
.help-details{margin:0 0 16px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--panel)}
.help-details summary{cursor:pointer;font-weight:700}
.help-details-body{padding-top:8px;opacity:.78}

/* v1.0.1 — clearer sidebar navigation */
.sidebar{padding-top:10px}
.nav-group-label{
    margin:18px 10px 7px;
    padding-top:10px;
    border-top:1px solid rgba(148,163,184,.22);
    font-size:10px;
    font-weight:800;
    letter-spacing:.10em;
    text-transform:uppercase;
    opacity:.58;
}
.nav-group-label:first-child{
    margin-top:4px;
    padding-top:0;
    border-top:0;
}
.nav-link{
    margin:2px 7px;
    border-radius:9px;
    transition:background .15s ease,color .15s ease,box-shadow .15s ease;
}
.nav-link:hover{
    background:rgba(37,99,235,.07);
}
.nav-link.active{
    background:rgba(37,99,235,.11);
    box-shadow:inset 3px 0 0 currentColor;
    font-weight:700;
}

/* v1.0.2 */
.live-summary-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px}

/* v1.0.3 — Live traders polish */
.live-tabs{
    display:inline-flex;
    align-items:center;
    gap:4px;
    margin:8px 0 18px;
    padding:4px;
    background:#e9eef6;
    border:1px solid rgba(148,163,184,.25);
    border-radius:12px;
}
.live-tab-btn{
    appearance:none;
    border:0;
    outline:0;
    min-width:96px;
    padding:9px 16px;
    border-radius:9px;
    background:transparent !important;
    color:#334155 !important;
    font:inherit;
    font-weight:700;
    cursor:pointer;
    box-shadow:none !important;
}
.live-tab-btn:hover{background:rgba(255,255,255,.65)!important}
.live-tab-btn.active{
    background:#fff !important;
    color:#0f172a !important;
    box-shadow:0 1px 4px rgba(15,23,42,.12)!important;
}
.live-pane-card{padding:0 0 18px}
.live-pane-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:16px;
    margin:0 0 12px;
}
.live-pane-head h2{margin:0 0 4px}
.live-summary-row{
    margin:0 0 14px;
    padding:10px 12px;
    border:1px solid rgba(148,163,184,.22);
    border-radius:10px;
    background:#fff;
}
.live-summary-row .page-subtitle{margin:0}
.live-control-panel{margin-bottom:16px}
.live-control-panel .panel-head{gap:18px}
.live-control-panel .inline-form{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}
.live-tab-pane .table-card{margin-top:0}
@media (max-width:900px){
    .live-pane-head,.live-summary-row,.live-control-panel .panel-head{align-items:flex-start;flex-direction:column}
    .live-tabs{width:100%}
    .live-tab-btn{flex:1}
}

/* v1.0.4 — Live payouts spacing and admin assignment */
#liveTabIncoming,#liveTabPayouts{padding-top:4px}
#liveTabPayouts .live-pane-head{margin-bottom:18px}
#liveTabPayouts .live-control-panel{padding:18px 20px;margin:0 0 22px}
#liveTabPayouts .section-gap{display:none}
.live-payout-table-card{margin-top:0}
.live-table-head{padding:17px 18px 14px}
.live-table-head h2{margin:0 0 4px}
.live-table-count{white-space:nowrap;font-size:12px;font-weight:700;opacity:.65}
.live-payouts-table th,.live-payouts-table td{padding-top:12px;padding-bottom:12px;vertical-align:middle}
.payout-requisite{margin-top:3px;max-width:220px;word-break:break-all}
.payout-admin-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap}
.payout-admin-actions form{margin:0}
.payout-assign-modal{max-width:560px}
.trader-picker{
    margin-top:8px;
    max-height:320px;
    overflow:auto;
    border:1px solid var(--line);
    border-radius:11px;
    background:var(--panel);
}
.trader-picker-item{
    display:flex;
    align-items:center;
    gap:11px;
    padding:11px 12px;
    border-bottom:1px solid rgba(148,163,184,.18);
    cursor:pointer;
}
.trader-picker-item:last-child{border-bottom:0}
.trader-picker-item:hover{background:rgba(37,99,235,.05)}
.trader-picker-item input{margin:0}
.trader-picker-main{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}
.trader-picker-main strong{overflow:hidden;text-overflow:ellipsis}
.trader-picker-main small{font-size:11px;opacity:.58}
.trader-picker-check{opacity:0;font-weight:900}
.trader-picker-item:has(input:checked){background:rgba(37,99,235,.08)}
.trader-picker-item:has(input:checked) .trader-picker-check{opacity:1}
@media (max-width:1000px){
    .payout-admin-actions{align-items:stretch;flex-direction:column}
    .payout-admin-actions .btn{width:100%}
}

/* v1.0.5 — incoming payment receipts */
.order-receipts{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.receipt-link{font-size:11px;font-weight:700;text-decoration:none;padding:3px 7px;border:1px solid var(--line);border-radius:7px;background:var(--panel)}
.receipt-link:hover{text-decoration:underline}

/* v1.0.8 — full API tester */
#apiTestForm input[type="file"]{padding:8px;background:var(--panel)}
#apiTestOperation optgroup{font-weight:800}

/* v1.0.10 — full API test laboratory */
.api-test-page-head{align-items:flex-end}
.api-test-summary{display:flex;align-items:center}
.api-endpoint-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 18px}
.api-endpoint-group{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px}
.api-endpoint-group-title{padding:3px 5px 9px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;opacity:.58}
.api-endpoint-card{width:100%;display:flex;align-items:flex-start;gap:9px;border:0;background:transparent;border-radius:9px;padding:9px;text-align:left;cursor:pointer}
.api-endpoint-card:hover{background:rgba(37,99,235,.05)}
.api-endpoint-card.active{background:rgba(37,99,235,.10);box-shadow:inset 3px 0 0 #2563eb}
.api-endpoint-card-main{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}
.api-endpoint-card-main strong{font-size:12px}
.api-endpoint-card-main code{font-size:10px;white-space:normal;word-break:break-all;opacity:.68}
.api-method{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:3px 6px;border-radius:6px;font-size:10px;font-weight:900;letter-spacing:.03em}
.api-method-get{background:rgba(5,150,105,.12);color:#047857}
.api-method-post{background:rgba(37,99,235,.12);color:#1d4ed8}
.api-test-workspace{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:14px;align-items:start}
.api-test-request-panel,.api-test-result-panel{min-width:0}
.api-test-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.api-test-section-head h2{margin:0 0 5px}
.api-route-line{display:flex;align-items:center;gap:7px;min-width:0}
.api-route-line code{word-break:break-all}
.api-scope-box{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-size:11px}
.api-scope-box span{opacity:.55}
.api-key-box{padding:12px;border:1px solid var(--line);border-radius:10px;background:rgba(148,163,184,.05)}
.api-auto-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:10px 12px;border-radius:10px;background:rgba(37,99,235,.06)}
.api-auto-bar>div{display:flex;flex-direction:column;gap:2px}
.api-auto-bar span{font-size:11px;opacity:.68}
.api-param-section{border-top:1px solid var(--line);padding-top:13px}
.api-param-section-title{font-weight:800;margin-bottom:10px}
.api-param-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.api-param-grid .field.full{grid-column:1/-1}
.required-mark{color:#dc2626}
.api-no-params{padding:16px;border-radius:9px;background:rgba(148,163,184,.07);font-size:12px;opacity:.7}
.api-files-preview{display:flex;flex-direction:column;gap:3px;margin-top:6px;font-size:11px}
.api-request-preview{margin-top:14px;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.api-preview-head{display:flex;justify-content:space-between;gap:10px;padding:9px 11px;border-bottom:1px solid var(--line);font-size:11px}
.api-preview-head span{opacity:.6}
.api-request-preview pre{margin:0;border:0;border-radius:0;max-height:260px;overflow:auto}
.api-test-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.api-result-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 15px}
.api-result-meta>div{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;background:rgba(148,163,184,.06)}
.api-result-meta span{font-size:10px;opacity:.55}
.api-route-result{display:flex;gap:8px;align-items:flex-start;margin-bottom:10px}
.api-route-result code{word-break:break-all}
.api-test-result-panel pre{white-space:pre-wrap;word-break:break-word;max-height:420px;overflow:auto}
.api-result-empty{display:flex;min-height:260px;align-items:center;justify-content:center;flex-direction:column;gap:5px;text-align:center;opacity:.65}
@media (max-width:1100px){
    .api-endpoint-grid{grid-template-columns:1fr}
    .api-test-workspace{grid-template-columns:1fr}
}
@media (max-width:700px){
    .api-param-grid,.api-result-meta{grid-template-columns:1fr}
    .api-test-section-head,.api-auto-bar{align-items:stretch;flex-direction:column}
    .api-scope-box{align-items:flex-start}
}

/* v1.0.11 — live requisite hint in API tester */
.api-live-requisite-hint{margin:-2px 0 12px;padding:10px 12px;border:1px solid rgba(5,150,105,.22);border-radius:9px;background:rgba(5,150,105,.07);font-size:12px;color:#065f46}

/* v1.0.12 — manual method/bank selection in API tester */
.api-live-requisite-hint{display:none!important}

/* v1.0.14 — explicit API endpoint selection */
.api-endpoint-selector{margin:0 0 14px;padding:14px 16px}
.api-endpoint-selector .field{margin:0}
.api-endpoint-card{color:#0f172a!important}
.api-endpoint-card-main strong{color:#0f172a!important;opacity:1!important}
.api-endpoint-card-main code{color:#475569!important;opacity:1!important}
.api-endpoint-card.active .api-endpoint-card-main strong{color:#1d4ed8!important}

/* v1.0.15 — API endpoint selection by card click only */
.api-endpoint-card{text-decoration:none!important}
.api-endpoint-selector{display:none!important}

/* v1.0.17 — server-selected API endpoint */
.api-selected-endpoint-note{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    margin:0 0 12px;
    padding:10px 12px;
    border:1px solid var(--line);
    border-radius:10px;
    background:var(--panel);
    font-size:12px;
}
.api-selected-endpoint-note code{font-weight:700}

/* v1.0.18 — endpoint selection returned to simple dropdown */
.api-endpoint-grid{display:none!important}
.api-endpoint-select-panel{margin:0 0 14px;padding:14px 16px}
.api-endpoint-select-panel .field{margin:0}
.api-endpoint-select-panel select{width:100%}

/* v1.0.19 — endpoint selector inside request form */
.api-form-endpoint-select{margin:0 0 12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:rgba(148,163,184,.05)}
.api-form-endpoint-select .field{margin:0}
.api-form-endpoint-select select{width:100%}
.api-endpoint-select-panel{display:none!important}

/* v1.0.20 — repair API tester layout */
.api-test-page-head-compact{margin-bottom:12px}
.api-selected-endpoint-note{display:none!important}
.api-test-workspace{margin-top:0}

/* v1.0.21 — order receipts + live attention */
.live-order{transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}
.live-order.is-attention{
    background:#fff9db!important;
    border-color:#f3d36a!important;
    box-shadow:0 0 0 1px rgba(243,211,106,.25);
}
.live-order-receipts{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0 2px}
.receipt-chip,.receipt-link{
    appearance:none;
    border:1px solid rgba(37,99,235,.22);
    background:rgba(37,99,235,.06);
    color:#1d4ed8;
    border-radius:7px;
    padding:4px 8px;
    font:inherit;
    font-size:11px;
    font-weight:700;
    cursor:pointer;
    text-decoration:none;
}
.receipt-chip:hover,.receipt-link:hover{background:rgba(37,99,235,.11)}
.modal-receipt-viewer{width:min(980px,94vw);max-width:980px}
.receipt-viewer-content{padding:0!important;height:min(76vh,820px);background:#f8fafc}
.receipt-viewer-content iframe{display:block;width:100%;height:100%;border:0;background:#fff}

/* v1.0.22 — clearer Live order expiry/dispute state */
.live-order-status.is-dispute{color:#b45309;font-weight:700}

/* v1.0.24 — 10 minute client-payment review window */
.live-order.is-dispute-card{
    background:#fff9db!important;
    border-color:#f3d36a!important;
    box-shadow:0 0 0 1px rgba(243,211,106,.24);
}
.live-order-status.is-dispute{color:#b45309;font-weight:700}

/* v1.0.25 — trader payment received / no payment actions */
.live-order-actions{display:flex;gap:7px;margin-top:8px}
.live-order-actions .live-pay-btn,.live-order-actions .live-no-pay-btn{flex:1}
.live-no-pay-btn{
    border:1px solid #fca5a5;
    background:#fff1f2;
    color:#b91c1c;
    border-radius:7px;
    padding:9px 10px;
    font-weight:800;
    cursor:pointer;
}
.live-no-pay-btn:hover{background:#ffe4e6}
.history-order-actions{display:flex;gap:6px;flex-wrap:wrap}
.btn-danger{background:#dc2626;color:#fff;border-color:#dc2626}
.btn-danger:hover{background:#b91c1c;border-color:#b91c1c}

/* v1.0.28 — polished Trader Live action buttons */
.live-order-receipts{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:10px 0 8px;
}
.receipt-chip{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:7px 12px;
    border:1px solid #bfdbfe;
    border-radius:9px;
    background:#eff6ff;
    color:#1d4ed8;
    font-size:12px;
    font-weight:800;
    line-height:1;
    cursor:pointer;
    transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.receipt-chip:hover{
    background:#dbeafe;
    border-color:#93c5fd;
}
.receipt-chip:active{transform:translateY(1px)}

.live-order-actions{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:8px;
    margin-top:10px;
}
.live-order-actions .live-pay-btn,
.live-order-actions .live-no-pay-btn{
    width:100%;
    min-height:44px;
    border-radius:10px;
    padding:10px 12px;
    font-size:14px;
    font-weight:800;
    line-height:1.15;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
.live-order-actions .live-pay-btn{
    border:1px solid #2563eb;
    background:#2f6fed;
    color:#fff;
    box-shadow:0 1px 2px rgba(37,99,235,.14);
}
.live-order-actions .live-pay-btn:hover{
    background:#2563eb;
    border-color:#1d4ed8;
    box-shadow:0 2px 5px rgba(37,99,235,.18);
}
.live-order-actions .live-no-pay-btn{
    border:1px solid #fca5a5;
    background:#fff7f7;
    color:#c81e1e;
    box-shadow:none;
}
.live-order-actions .live-no-pay-btn:hover{
    background:#fff0f0;
    border-color:#f87171;
}
.live-order-actions .live-pay-btn:active,
.live-order-actions .live-no-pay-btn:active{transform:translateY(1px)}

.live-order:not([data-status="dispute"]) .live-order-actions{
    grid-template-columns:1fr;
}

@media (max-width:560px){
    .live-order-actions{grid-template-columns:1fr}
}

/* v1.0.29 — clearly redesigned Trader Live buttons */
.live-order-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)!important;
    gap:10px!important;
    margin-top:12px!important;
}
.live-order-actions .live-pay-btn,
.live-order-actions .live-no-pay-btn{
    min-height:48px!important;
    margin:0!important;
    border-radius:12px!important;
    padding:10px 14px!important;
    font-size:14px!important;
    font-weight:800!important;
    line-height:1.15!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    box-sizing:border-box!important;
    text-align:center!important;
}
.live-order-actions .live-pay-btn{
    border:1px solid #2563eb!important;
    background:linear-gradient(180deg,#3b82f6 0%,#2563eb 100%)!important;
    color:#fff!important;
    box-shadow:0 4px 10px rgba(37,99,235,.18)!important;
}
.live-order-actions .live-pay-btn::before{
    content:'✓';
    display:inline-flex;
    width:24px;
    height:24px;
    flex:0 0 24px;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#fff;
    color:#2563eb;
    font-size:16px;
    font-weight:900;
}
.live-order-actions .live-no-pay-btn{
    border:1px solid #fecaca!important;
    background:#fff5f5!important;
    color:#b91c1c!important;
    box-shadow:none!important;
}
.live-order-actions .live-no-pay-btn::before{
    content:'×';
    display:inline-flex;
    width:24px;
    height:24px;
    flex:0 0 24px;
    align-items:center;
    justify-content:center;
    border:2px solid #dc2626;
    border-radius:50%;
    color:#dc2626;
    font-size:18px;
    font-weight:900;
    line-height:1;
}
.live-order-actions .live-pay-btn:hover{
    background:linear-gradient(180deg,#2563eb 0%,#1d4ed8 100%)!important;
}
.live-order-actions .live-no-pay-btn:hover{
    background:#fee2e2!important;
    border-color:#fca5a5!important;
}
.live-order:not([data-status="dispute"]) .live-order-actions{
    grid-template-columns:1fr!important;
}
.live-order:not([data-status="dispute"]) .live-pay-btn{
    min-height:46px!important;
}
.live-order-receipts{
    margin:10px 0 4px!important;
}
.receipt-chip{
    min-height:36px!important;
    padding:8px 13px!important;
    border-radius:10px!important;
    border:1px solid #bfdbfe!important;
    background:#eff6ff!important;
    color:#1d4ed8!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
    font-weight:800!important;
}
.receipt-chip::before{
    content:'▤';
    font-size:15px;
    line-height:1;
}
@media (max-width:560px){
    .live-order-actions{
        grid-template-columns:1fr!important;
    }
}

/* v1.0.30 — merchant rate / independent commissions guide */
.commission-guide{
    margin:12px 0 16px;
    padding:12px 14px;
    border:1px solid #bfdbfe;
    border-radius:10px;
    background:#f8fbff;
    color:#334155;
    font-size:12px;
    line-height:1.55;
}
.commission-guide>strong{
    display:block;
    margin-bottom:5px;
    color:#0f172a;
    font-size:13px;
}
.commission-guide code{
    padding:1px 5px;
    border-radius:5px;
    background:#eaf2ff;
    color:#1d4ed8;
    font-weight:800;
}


/* v1.0.32 — compact merchant percentage tiers */
.percent-guide-grid{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(280px,.95fr);
    gap:12px;
    margin:12px 0 14px;
}
.guide-card{
    padding:12px 14px;
    border:1px solid #dbe7ff;
    border-radius:12px;
    background:#f8fbff;
}
.guide-card-accent{
    background:linear-gradient(180deg,#f8fbff 0%,#f0f7ff 100%);
}
.guide-card h4{margin:0 0 8px;font-size:13px}
.guide-points{margin:0;padding-left:18px;color:#334155;font-size:12px;line-height:1.5}
.guide-points li+li{margin-top:4px}
.guide-example-line{font-size:12px;color:#334155;line-height:1.5}
.guide-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.guide-chip{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;background:#e8f0ff;color:#1d4ed8;font-size:11px;font-weight:800}
.guide-chip-ok{background:#ecfdf3;color:#067647}
.tier-card-compact{padding:12px;margin-bottom:12px;border:1px solid #e4e9f2;border-radius:14px;background:#fff;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.tier-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}
.tier-card-title{font-size:14px;font-weight:800;color:#172033}
.tier-card-sub{margin-top:2px;font-size:11px;color:#6b7280}
.tier-top-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.tier-fields-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}
.distribution-indicator{min-width:280px;padding:8px 10px;border-radius:12px;border:1px solid #dbeafe;background:#eff6ff}
.distribution-indicator.is-valid{background:#f0fdf4;border-color:#bbf7d0}
.distribution-indicator.is-invalid{background:#fef2f2;border-color:#fecaca}
.distribution-indicator .dist-main{font-size:12px;font-weight:800;color:#172033}
.distribution-indicator .dist-sub{margin-top:3px;font-size:11px;color:#526074;line-height:1.4}
.btn-ghost{background:#fff;color:#475467;border-color:#d7dce3}
@media(max-width:980px){.percent-guide-grid{grid-template-columns:1fr}.tier-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.distribution-indicator{min-width:240px}}
@media(max-width:640px){.tier-card-top{flex-direction:column;align-items:stretch}.tier-top-actions{justify-content:flex-start}.tier-fields-grid{grid-template-columns:1fr}.distribution-indicator{min-width:0;width:100%}}


/* v1.0.33 — merged compact percentage modal */
.merchant-percent-modal{
    width:min(1040px,calc(100vw - 34px));
    max-width:1040px!important;
    max-height:calc(100vh - 28px);
    overflow:auto;
}
.merchant-percent-modal .modal-head{padding:11px 15px}
.merchant-percent-modal .modal-head h2{font-size:17px}
.merchant-percent-modal .modal-content{padding:13px 15px 10px}
.merchant-percent-modal .modal-footer{padding:10px 15px}
.merchant-top-grid{
    display:grid;
    grid-template-columns:1.15fr 1.15fr .7fr .9fr;
    gap:10px 12px;
    align-items:end;
}
.payout-top-grid{grid-template-columns:1fr 1fr}
.payout-top-grid .field.full{grid-column:1/-1}
.compact-logic-strip{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:10px;
    margin:10px 0 11px;
    padding:8px 10px;
    border:1px solid #cfe0ff;
    border-radius:10px;
    background:#f7faff;
    color:#334155;
    font-size:11px;
    line-height:1.35;
}
.logic-dot{
    width:22px;
    height:22px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#3b82f6;
    color:#fff;
    font-weight:900;
}
.logic-example{
    white-space:nowrap;
    color:#475569;
    padding-left:10px;
    border-left:1px solid #dbe7ff;
}
.logic-example code{font-weight:800;color:#1d4ed8}
.merchant-percent-modal .soft-sep{display:none}
.merchant-percent-modal .panel-head{margin-bottom:8px}
.merchant-percent-modal .tier-card-compact{
    padding:9px 10px;
    margin-bottom:8px;
    border-radius:11px;
}
.merchant-percent-modal .tier-card-top{
    align-items:center;
    margin-bottom:8px;
}
.merchant-percent-modal .tier-card-title{font-size:12px}
.merchant-percent-modal .tier-top-actions{align-items:center}
.merchant-percent-modal .tier-fields-grid{
    grid-template-columns:1fr 1fr 1.25fr .85fr .85fr .85fr;
    gap:8px;
}
.merchant-percent-modal .tier-fields-grid label{margin-bottom:4px;font-size:10px}
.merchant-percent-modal .tier-fields-grid input{min-height:34px;padding:6px 8px}
.merchant-percent-modal .distribution-indicator{
    min-width:510px;
    padding:6px 8px;
    border-radius:9px;
}
.merchant-percent-modal .distribution-indicator .dist-main{
    font-size:11px;
    line-height:1.2;
}
.dist-chips{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    margin-top:5px;
}
.dist-chips span{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    padding:3px 7px;
    border-radius:999px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(148,163,184,.2);
    color:#475569;
    font-size:10px;
}
.distribution-indicator.is-valid .dist-main{color:#067647}
.distribution-indicator.is-invalid .dist-main{color:#b42318}
.merchant-percent-modal .field-hint{margin-top:3px;font-size:9px;line-height:1.25}
@media(min-width:760px) and (min-height:720px){
    .merchant-percent-modal{overflow:hidden}
}
@media(max-width:900px){
    .merchant-top-grid{grid-template-columns:1fr 1fr}
    .merchant-percent-modal .tier-fields-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .merchant-percent-modal .distribution-indicator{min-width:0;width:100%}
    .logic-example{white-space:normal}
}
@media(max-width:640px){
    .merchant-percent-modal{width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow:auto}
    .merchant-top-grid,.payout-top-grid{grid-template-columns:1fr}
    .compact-logic-strip{grid-template-columns:auto 1fr}
    .logic-example{grid-column:1/-1;border-left:0;padding-left:0}
    .merchant-percent-modal .tier-card-top{align-items:stretch}
    .merchant-percent-modal .tier-fields-grid{grid-template-columns:1fr 1fr}
}

/* v1.0.34 — API tester temporary scope key */
.api-test-temp-key-note{margin:10px 0 12px;font-size:11px}


/* v1.0.35 — visible user modal tabs + admin API keys */
.modal-subtabs{
    display:flex!important;
    gap:6px;
    margin:0 0 14px;
    padding:4px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#f3f6fa;
    width:max-content;
    max-width:100%;
}
.modal-subtab{
    min-height:32px;
    padding:6px 12px!important;
    border:0!important;
    border-radius:7px!important;
    background:transparent!important;
    color:#475467!important;
    opacity:1!important;
    box-shadow:none!important;
    font-weight:700!important;
}
.modal-subtab:hover{background:#fff!important;color:#172033!important}
.modal-subtab.active{
    background:#fff!important;
    color:#1d4ed8!important;
    box-shadow:0 1px 3px rgba(15,23,42,.10)!important;
}
.api-key-admin-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.api-key-admin-filters input{max-width:260px}
.api-key-admin-filters select{max-width:220px}
.scope-badges{display:flex;gap:4px;flex-wrap:wrap;max-width:520px}
.scope-badge{display:inline-flex;align-items:center;padding:3px 6px;border-radius:6px;background:#eef4ff;color:#1d4ed8;font-size:10px;font-weight:750;white-space:nowrap}
.ip-mini{max-width:260px;font-size:11px;color:#526074;word-break:break-word}
.api-key-edit-modal{width:min(920px,96vw)}
.api-key-owner-strip{display:grid;grid-template-columns:1fr 1.5fr;gap:10px;margin-bottom:14px}
.api-key-owner-strip>div{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f8fafc;min-width:0}
.api-key-owner-strip span{display:block;color:#667085;font-size:10px;margin-bottom:3px}
.api-key-owner-strip strong,.api-key-owner-strip code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.scope-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:7px}
.scope-editor-item{display:flex;gap:9px;align-items:flex-start;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;margin:0;cursor:pointer}
.scope-editor-item:hover{background:#f8fafc}
.scope-editor-item input{margin-top:2px}
.scope-editor-item span{min-width:0}
.scope-editor-item strong{display:block;font-size:11px;color:#172033;word-break:break-word}
.scope-editor-item small{display:block;margin-top:2px;color:#667085;font-size:10px;line-height:1.35}
.api-key-edit-bottom{margin-top:14px}
@media(max-width:760px){.scope-editor-grid{grid-template-columns:1fr}.api-key-owner-strip{grid-template-columns:1fr}}

/* Public API docs */
.public-docs-body{background:#f5f7fb}.public-docs-topbar{position:sticky}.public-docs-shell{width:min(1440px,100%);margin:0 auto;padding:28px 24px 48px}.public-docs-hero{max-width:760px;padding:42px 0 26px}.public-docs-hero h1{font-size:38px;margin:10px 0 10px}.public-docs-hero p{font-size:15px;color:var(--muted);max-width:700px}.public-docs-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.public-docs-card{display:block;padding:24px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);transition:.15s ease}.public-docs-card:hover{transform:translateY(-2px);border-color:#bfd0f5;box-shadow:0 10px 30px rgba(16,24,40,.07)}.public-docs-card h2{font-size:22px;margin:7px 0}.public-docs-card p{color:var(--muted);font-size:13px;min-height:42px}.public-docs-card strong{color:var(--primary)}.public-docs-card-kicker,.public-docs-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#667085;font-weight:800}.public-docs-note{margin-top:16px}.public-docs-page{display:grid;grid-template-columns:220px minmax(0,980px);gap:24px;align-items:start}.public-docs-sidebar{position:sticky;top:84px;display:grid;gap:3px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:12px}.public-docs-sidebar-title{padding:8px 9px 10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#667085}.public-docs-sidebar a{padding:8px 9px;border-radius:7px;color:#475467}.public-docs-sidebar a:hover{background:#f3f6fb;color:#1d4ed8}.public-docs-content{min-width:0}.public-docs-page-head{scroll-margin-top:86px}.public-docs-content section{scroll-margin-top:86px}.public-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.public-flow>div{display:flex;gap:9px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fbfcfe}.public-flow b{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:999px;background:#eef4ff;color:#1d4ed8}.public-flow span{display:grid;gap:2px}.public-flow small{color:var(--muted)}.public-docs-actions{flex-wrap:wrap}@media(max-width:900px){.public-docs-page{grid-template-columns:1fr}.public-docs-sidebar{position:static;display:flex;overflow:auto;white-space:nowrap}.public-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.public-docs-shell{padding:18px 14px 36px}.public-docs-cards{grid-template-columns:1fr}.public-docs-hero{padding:28px 0 18px}.public-docs-hero h1{font-size:30px}.public-docs-actions .top-link:not(:last-child){display:none}.public-flow{grid-template-columns:1fr}}

/* v1.1.4 role dashboards */
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.table-wrap{overflow:auto;border-radius:9px}
.panel.section-gap,.cards.section-gap,.grid-2.section-gap{height:auto;margin-top:16px}
.panel-head>a{color:var(--primary);font-weight:700;font-size:12px}
@media(max-width:980px){.grid-2{grid-template-columns:1fr}}

/* Dashboard v1.1.5 */
.dash-page-head{align-items:center;margin-bottom:20px}.dash-eyebrow{display:inline-block;margin-bottom:6px;color:#64748b;font-size:10px;font-weight:800;letter-spacing:.12em}.dash-live-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #dbe3ee;border-radius:999px;background:#fff;color:#475569;font-size:11px;font-weight:750}.dash-live-badge span{width:7px;height:7px;border-radius:50%;background:#16a34a;box-shadow:0 0 0 4px #dcfce7}.dash-section-title{display:flex;align-items:center;justify-content:space-between;margin:2px 0 10px}.dash-section-title>div{display:flex;align-items:center;gap:10px}.dash-section-title h2{margin:0;font-size:15px}.dash-section-title p{margin:2px 0 0;color:var(--muted);font-size:11px}.dash-section-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#eef4ff;color:#1d4ed8;font-weight:850}.dash-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dash-kpi-grid-six{grid-template-columns:repeat(6,minmax(0,1fr))}.dash-kpi-grid-admin{grid-template-columns:repeat(4,minmax(0,1fr))}.dash-kpi{position:relative;overflow:hidden;padding:15px 16px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);min-height:112px}.dash-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#cbd5e1}.dash-kpi.is-primary:before{background:#2563eb}.dash-kpi.is-success:before{background:#16a34a}.dash-kpi.is-warning:before{background:#f59e0b}.dash-kpi.is-admin:before{background:#0f766e}.dash-kpi.is-dev:before{background:#7c3aed}.dash-kpi.is-dev{background:linear-gradient(180deg,#fff 0%,#faf7ff 100%)}.dash-kpi-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.dash-kpi span,.dash-kpi-top span{display:block;color:#64748b;font-size:11px;font-weight:700}.dash-kpi em,.dash-kpi-top em{font-style:normal;color:#94a3b8;font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.dash-kpi strong{display:block;margin-top:8px;color:#0f172a;font-size:22px;line-height:1.08;font-variant-numeric:tabular-nums;letter-spacing:-.025em}.dash-kpi strong i{font-style:normal;color:#64748b;font-size:10px;font-weight:750;letter-spacing:0}.dash-kpi small{display:block;margin-top:7px;color:#94a3b8;font-size:10px}.dash-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(290px,.8fr);gap:12px}.dash-chart,.dash-side-panel{background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);padding:15px 16px}.dash-chart-head,.dash-side-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.dash-chart-head h2,.dash-side-head h2{margin:0;font-size:15px}.dash-chart-head p{margin:2px 0 0;color:#94a3b8;font-size:10px}.dash-chart-total{font-variant-numeric:tabular-nums;font-size:12px;font-weight:800;color:#475569}.dash-bars{display:flex;align-items:flex-end;gap:10px;height:180px;margin-top:12px;padding-top:10px}.dash-bar-col{display:grid;grid-template-rows:18px 1fr 18px;gap:5px;align-items:end;flex:1;min-width:0;height:100%;text-align:center}.dash-bar-value{overflow:hidden;text-overflow:ellipsis;color:#94a3b8;font-size:9px;white-space:nowrap}.dash-bar-track{display:flex;align-items:flex-end;height:100%;min-height:90px;border-radius:7px;background:#f1f5f9;overflow:hidden}.dash-bar-fill{width:100%;min-height:4px;border-radius:7px 7px 3px 3px;background:linear-gradient(180deg,#4f7cff,#2563eb)}.dash-bar-label{color:#64748b;font-size:9px;font-weight:700}.dash-side-head{align-items:center;margin-bottom:10px}.dash-side-head span{color:#94a3b8;font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.05em}.dash-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;height:auto!important;margin-top:0!important}.dash-status-card{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid #edf0f4;border-radius:10px;background:#fbfcfd}.dash-status-card .dash-status-dot{width:8px;height:8px;border-radius:50%;background:#94a3b8;flex:0 0 auto}.dash-status-card small{display:block;color:#64748b;font-size:9px}.dash-status-card strong{display:block;margin-top:2px;font-size:18px;font-variant-numeric:tabular-nums}.dash-status-card.is-active .dash-status-dot{background:#2563eb}.dash-status-card.is-dispute .dash-status-dot{background:#f59e0b}.dash-status-card.is-success .dash-status-dot{background:#16a34a}.dash-status-card.is-muted .dash-status-dot{background:#94a3b8}.dash-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dash-panel{padding:15px 16px}.dash-list{display:grid;gap:0}.dash-list>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #eef1f4}.dash-list>div:first-child{border-top:0}.dash-list span{color:#64748b;font-size:11px}.dash-list strong{font-size:11px;font-variant-numeric:tabular-nums}.dash-order-status{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:9px;font-weight:800}.dash-panel .panel-head a{color:#2563eb;font-size:11px;font-weight:700}.dash-panel table{min-width:620px}
@media(max-width:1180px){.dash-kpi-grid-six{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-grid-3{grid-template-columns:1fr 1fr}.dash-layout{grid-template-columns:1.5fr 1fr}}
@media(max-width:900px){.dash-kpi-grid,.dash-kpi-grid-admin{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-layout{grid-template-columns:1fr}.dash-grid-3{grid-template-columns:1fr}.dash-bars{height:160px}}
@media(max-width:560px){.dash-kpi-grid,.dash-kpi-grid-admin,.dash-kpi-grid-six{grid-template-columns:1fr}.dash-status-grid{grid-template-columns:1fr 1fr}.dash-kpi{min-height:100px}.dash-bars{gap:5px;height:145px}.dash-bar-value{display:none}.dash-bar-col{grid-template-rows:1fr 18px}.dash-live-badge{display:none}}

/* Dashboard v1.1.6 — spacing fix + admin monthly statistics */
/* .section-gap historically had a fixed 16px height. Dashboard grids are content
   containers, therefore they must create spacing with margin, never fixed height. */
.dash-layout.section-gap,.dash-kpi-grid.section-gap,.dash-grid-3.section-gap,.dash-section-title.section-gap{height:auto!important;margin-top:18px!important}
.dash-panel.section-gap{height:auto!important;margin-top:18px!important}

.dash-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.dash-stats-button{gap:7px;white-space:nowrap}
.dash-section{margin-top:24px}
.dash-page-head+.dash-section{margin-top:0}
.dash-section-last{padding-bottom:12px}
.dash-section>.dash-section-title{margin-bottom:12px}
.dash-main-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.82fr);gap:14px;align-items:stretch}
.dash-main-row>.dash-chart,.dash-main-row>.dash-side-panel{height:100%}
.dash-month-overview{grid-template-columns:repeat(4,minmax(0,1fr))}
.dash-distribution-card{margin-top:14px;padding:17px 18px}
.dash-distribution-card .panel-head{margin-bottom:10px}
.dash-distribution-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border:1px solid #edf0f4;border-radius:11px;overflow:hidden;background:#fbfcfe}
.dash-distribution-item{position:relative;min-width:0;padding:14px 13px;border-left:1px solid #edf0f4;background:#fff}
.dash-distribution-item:first-child{border-left:0}
.dash-distribution-item:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:#cbd5e1}
.dash-distribution-item.is-admin:before{background:#0f766e}.dash-distribution-item.is-dev:before{background:#7c3aed}.dash-distribution-item.is-success:before{background:#16a34a}
.dash-distribution-item span{display:block;color:#64748b;font-size:10px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dash-distribution-item strong{display:block;margin-top:7px;color:#0f172a;font-size:18px;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dash-distribution-item small{display:block;margin-top:4px;color:#94a3b8;font-size:9px}
.dash-ranking-grid{align-items:start}
.dash-ranking-grid>.dash-panel{min-width:0}
.dash-compact-table{min-width:560px!important}

.modal-box.modal-dashboard-stats{width:min(1320px,calc(100vw - 36px));max-height:calc(100vh - 36px);overflow:hidden;display:flex;flex-direction:column}
.modal-dashboard-stats .modal-head{padding:15px 18px;flex:0 0 auto}
.modal-dashboard-stats .modal-head h2{font-size:18px}.modal-dashboard-stats .modal-head p{margin:3px 0 0;color:#64748b;font-size:11px}
.modal-dashboard-stats .modal-content{padding:0;overflow:auto;flex:1 1 auto}
.modal-dashboard-stats .modal-footer{flex:0 0 auto}
.dash-monthly-modal-content{background:#f8fafc}
.dash-monthly-note{margin:14px 16px 10px;padding:10px 12px;border:1px solid #dbeafe;border-radius:9px;background:#eff6ff;color:#475569;font-size:11px}
.dash-monthly-table-wrap{overflow:auto;padding:0 16px 16px}
.dash-monthly-table{min-width:1220px;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.dash-monthly-table th{position:sticky;top:0;z-index:1;background:#f1f5f9;padding:10px 11px;font-size:9px}
.dash-monthly-table td{padding:10px 11px;background:#fff;font-size:11px;white-space:nowrap}
.dash-monthly-table tbody tr:hover td{background:#f8fbff}
.dash-monthly-table td:first-child{position:sticky;left:0;z-index:0;background:#fff;min-width:132px}
.dash-monthly-table tbody tr:hover td:first-child{background:#f8fbff}
.dash-conversion-pill{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:3px 7px;border-radius:999px;background:#eef4ff;color:#1d4ed8;font-size:10px;font-weight:800}
.dash-cell-admin{color:#0f766e;font-weight:750}.dash-cell-dev{color:#7c3aed;font-weight:750}.dash-cell-net{color:#15803d;font-weight:800}

@media(max-width:1180px){
    .dash-main-row{grid-template-columns:1.45fr 1fr}
    .dash-distribution-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .dash-distribution-item:nth-child(4){border-left:0}
    .dash-distribution-item:nth-child(n+4){border-top:1px solid #edf0f4}
}
@media(max-width:900px){
    .dash-main-row{grid-template-columns:1fr}
    .dash-month-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dash-head-actions{justify-content:flex-start}
}
@media(max-width:620px){
    .dash-section{margin-top:20px}
    .dash-month-overview{grid-template-columns:1fr}
    .dash-distribution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dash-distribution-item:nth-child(3),.dash-distribution-item:nth-child(5){border-left:0}
    .dash-distribution-item:nth-child(n+3){border-top:1px solid #edf0f4}
    .dash-head-actions{width:100%}.dash-stats-button{width:100%}
    .modal-box.modal-dashboard-stats{width:calc(100vw - 20px);max-height:calc(100vh - 20px)}
    .dash-monthly-note{margin:10px}.dash-monthly-table-wrap{padding:0 10px 10px}
}
