:root{font-family:Inter,Microsoft YaHei UI,PingFang SC,system-ui,sans-serif;color:#172033;background:#f5f7fb;font-synthesis:none;text-rendering:optimizeLegibility;--primary: #5856e9;--primary-dark: #4543d7;--primary-soft: #eeefff;--success: #159d68;--success-soft: #eaf9f2;--danger: #ef4d56;--danger-soft: #fff0f1;--warning: #f59e0b;--warning-soft: #fff7e6;--text: #172033;--muted: #657086;--border: #e1e6ef;--surface: #ffffff;--shadow: 0 10px 30px rgb(35 46 78 / 8%)}*{box-sizing:border-box}html{min-width:320px;background:#f5f7fb}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgb(88 86 233 / 26%);outline-offset:2px}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;display:flex;width:232px;flex-direction:column;border-right:1px solid var(--border);background:var(--surface);padding:24px 12px}.brand{display:flex;align-items:center;gap:12px;padding:0 12px 26px;font-size:21px;letter-spacing:-.02em}.brand-mark{display:grid;width:38px;height:38px;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(145deg,#6c63ff,#4744dc);box-shadow:0 8px 18px #5856e93d}.sidebar nav{display:grid;gap:8px}.nav-item{display:flex;min-height:48px;align-items:center;gap:13px;border:0;border-radius:10px;padding:0 16px;color:#4a556b;background:transparent;text-align:left;transition:color .18s ease,background .18s ease,box-shadow .18s ease}.nav-item:hover{color:var(--primary);background:#f5f5ff}.nav-item.active{color:#fff;background:var(--primary);box-shadow:0 8px 18px #5856e938}.sidebar-note{display:flex;align-items:center;gap:10px;margin-top:auto;border:1px solid var(--border);border-radius:12px;padding:13px;color:var(--primary);background:#fafaff}.sidebar-note span{display:grid;gap:3px}.sidebar-note strong{color:#3d4658;font-size:13px}.sidebar-note small{color:var(--muted);font-size:11px}.main-content{min-height:100vh;margin-left:232px;padding:28px 30px 42px;background:radial-gradient(circle at 80% 0%,#eef0ff 0,transparent 34%),#f7f8fc}.page-header{display:flex;align-items:center;justify-content:space-between;margin:0 auto 24px;max-width:1480px}.page-header h1{margin:0 0 5px;color:#111827;font-size:25px;letter-spacing:-.03em}.page-header p{margin:0;color:var(--muted);font-size:14px}.service-status{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:999px;padding:8px 12px;color:#465064;background:#ffffffc7;font-size:13px}.service-status>span{width:8px;height:8px;border-radius:50%}.service-status.online>span{background:#20bd74;box-shadow:0 0 0 4px #20bd741f}.service-status.offline>span{background:var(--danger);box-shadow:0 0 0 4px #ef4d561f}.header-actions{display:flex;align-items:center;gap:10px}.operator-chip{display:flex;min-height:42px;align-items:center;gap:8px;border:1px solid var(--border);border-radius:10px;padding:6px 10px;color:var(--primary);background:#ffffffd1}.operator-chip span{display:grid;gap:1px}.operator-chip small{color:#7a8497;font-size:10px}.operator-chip strong{max-width:130px;overflow:hidden;color:#303a4e;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.logout-button{display:inline-flex;min-height:42px;align-items:center;gap:6px;border:1px solid var(--border);border-radius:9px;padding:0 11px;color:#687287;background:#fff}.logout-button:hover{color:var(--danger);border-color:#ffc2c6;background:var(--danger-soft)}.stats-grid{display:grid;max-width:1480px;margin:0 auto 22px;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.pool-overview{display:flex;max-width:1480px;margin:0 auto 18px;align-items:center;gap:15px;border:1px solid #cfd3f3;border-radius:15px;padding:17px 20px;background:linear-gradient(110deg,#fff,#f5f3ff);box-shadow:0 8px 24px #5856e912}.pool-overview>div{display:grid;gap:2px}.pool-overview>.button{margin-left:auto}.pool-icon{display:grid;width:52px;height:52px;flex:0 0 auto;place-items:center;border-radius:14px;color:var(--primary);background:var(--primary-soft)}.pool-overview small{color:var(--muted);font-size:12px}.pool-overview strong{color:#171b3d;font-size:25px}.pool-overview strong em{color:var(--primary);font-size:13px;font-style:normal;font-weight:600}.pool-overview p{margin:1px 0 0;color:var(--muted);font-size:12px}.stat-card{display:flex;min-width:0;align-items:center;gap:14px;border:1px solid var(--border);border-radius:15px;padding:20px;color:var(--text);background:var(--surface);box-shadow:0 6px 18px #232e4e0a;text-align:left;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.stat-card:hover{transform:translateY(-2px);border-color:#cacff1;box-shadow:var(--shadow)}.stat-card>svg{margin-left:auto;color:#8b94a6;flex:0 0 auto}.stat-icon{display:grid;width:52px;height:52px;flex:0 0 auto;place-items:center;border-radius:50%}.stat-icon.primary{color:var(--primary);background:var(--primary-soft)}.stat-icon.warning{color:var(--warning);background:var(--warning-soft)}.stat-icon.success{color:var(--success);background:var(--success-soft)}.stat-icon.danger{color:var(--danger);background:var(--danger-soft)}.stat-copy{display:grid;min-width:0;gap:3px}.stat-copy small{color:var(--muted);font-size:13px}.stat-copy strong{color:#111827;font-size:26px;line-height:1.15}.stat-copy em{color:#8a93a4;font-size:11px;font-style:normal}.data-card{max-width:1480px;margin:0 auto;overflow:hidden;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}.toolbar{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);padding:17px}.button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:9px;padding:0 16px;color:#4b5568;background:#fff;text-decoration:none;transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.button.primary{color:#fff;background:var(--primary);box-shadow:0 7px 15px #5856e933}.button.primary:hover{background:var(--primary-dark)}.button.ghost{border-color:var(--border)}.button.ghost:hover{color:var(--primary);border-color:#bec2ef;background:#fafaff}.button.success{color:#fff;background:var(--success)}.button.success:hover{background:#0d8958}.button.danger{color:#fff;background:var(--danger)}.button.danger:hover{background:#d93d47}.search-form{display:flex;min-width:190px;flex:1 1 250px;align-items:center;gap:8px;border:1px solid var(--border);border-radius:9px;padding:0 10px 0 12px;color:#8a93a5;background:#fbfcfe}.search-form:focus-within{border-color:#aaaef1;box-shadow:0 0 0 3px #5856e91a}.search-form input{width:100%;min-height:40px;border:0;outline:0;color:var(--text);background:transparent}.search-form input::placeholder{color:#9aa2b1}.icon-submit{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border:0;border-radius:7px;color:var(--primary);background:transparent}.icon-submit:hover{background:var(--primary-soft)}.segmented{display:flex;border:1px solid var(--border);border-radius:9px;padding:3px;background:#f7f8fb}.segmented button{min-height:34px;border:0;border-radius:7px;padding:0 14px;color:#606a7e;background:transparent;transition:color .18s ease,background .18s ease,box-shadow .18s ease}.segmented button:hover{color:var(--primary)}.segmented button.active{color:var(--primary);background:#fff;box-shadow:0 2px 8px #232e4e1a}.date-range{display:flex;align-items:center;gap:7px;border:1px solid var(--border);border-radius:9px;padding:0 10px;color:#8790a1;background:#fbfcfe}.date-range input{width:120px;min-height:40px;border:0;outline:0;color:#5b6578;background:transparent}.owner-filter{display:flex;min-height:42px;align-items:center;gap:7px;border:1px solid var(--border);border-radius:9px;padding:0 9px 0 11px;color:var(--muted);font-size:12px;white-space:nowrap}.owner-filter select{min-height:34px;max-width:180px;border:0;outline:0;color:#3f495c;background:transparent}.export-button{margin-left:auto;flex:0 0 auto}.table-wrap{width:100%;overflow-x:auto}table{width:100%;min-width:930px;border-collapse:collapse}th,td{border-bottom:1px solid #e9edf3;padding:14px 16px;text-align:left;vertical-align:middle}th{color:#505a6c;background:#fafbfc;font-size:13px;font-weight:600}td{color:#4c5668;font-size:13px}tbody tr{transition:background .16s ease}tbody tr:hover{background:#fafaff}tbody tr:last-child td{border-bottom:0}.actions-column{width:150px}.muted-cell,.date-cell{color:#778196;white-space:nowrap}.cdk-value{color:#354052;background:transparent;font-family:Cascadia Code,Consolas,monospace;font-size:13px}.copy-cell-button{display:inline-flex;min-width:0;min-height:36px;cursor:pointer;align-items:center;gap:7px;border:1px solid transparent;border-radius:7px;padding:0 7px;color:#7b8495;background:transparent;font:inherit;transition:color .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.copy-cell-button:hover{color:var(--primary);border-color:#d8daf7;background:#f7f7ff}.copy-cell-button:focus-visible{color:var(--primary);border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #5b5ce224}.copy-cell-button svg{flex:0 0 auto;opacity:.58;transition:opacity .18s ease}.copy-cell-button:hover svg,.copy-cell-button:focus-visible svg{opacity:1}.account-copy{max-width:210px}.status-badge{display:inline-flex;min-height:27px;align-items:center;border:1px solid;border-radius:7px;padding:0 10px;font-size:12px;font-weight:600}.status-badge.pending{color:#d77e00;border-color:#ffd38a;background:var(--warning-soft)}.status-badge.success{color:#0b8b58;border-color:#a9e2c9;background:var(--success-soft)}.status-badge.failed{color:#dd3541;border-color:#ffb9be;background:var(--danger-soft)}.row-actions{display:flex;gap:9px}.action-button{display:inline-flex;min-height:34px;align-items:center;gap:6px;border:1px solid;border-radius:7px;padding:0 11px;background:#fff;transition:color .18s ease,background .18s ease,box-shadow .18s ease}.action-button.success{color:var(--success);border-color:#8fd7ba}.action-button.success:hover{background:var(--success-soft);box-shadow:0 4px 10px #159d681a}.action-button.danger{color:var(--danger);border-color:#ffb2b8}.action-button.danger:hover{background:var(--danger-soft);box-shadow:0 4px 10px #ef4d561a}.action-button.neutral{color:#586276;border-color:#cfd5df}.action-button.neutral:hover{color:var(--primary);border-color:#b9bdf0;background:#fafaff}.session-account-column{width:210px}.session-account{display:block;min-width:0;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-account.email{color:#354052;font-family:Cascadia Code,Consolas,monospace;font-size:12px;font-weight:600}.session-account.pending,.session-account.empty{color:#9aa3b3}.session-account.invalid{color:#d77e00}.session-column{width:174px}.session-actions{display:flex;align-items:center;gap:7px}.session-button{display:inline-flex;min-height:34px;cursor:pointer;align-items:center;justify-content:center;gap:5px;border:1px solid;border-radius:7px;padding:0 10px;background:#fff;font-size:13px;font-weight:600;transition:color .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.session-button.upload{color:var(--primary);border-color:#b9bdf0;background:#fafaff}.session-button.upload:hover,.session-button.view:hover{color:var(--primary);border-color:var(--primary);box-shadow:0 4px 10px #5b5ce21f}.session-button.view{color:#596377;border-color:#cfd5df}.session-button.redeem{color:#fff;border-color:var(--primary);background:var(--primary);box-shadow:0 5px 12px #5b5ce22e}.session-button.redeem:hover{border-color:#4849d4;background:#4849d4}.session-button.redeem.locked{color:#a62f3b;border-color:#efc3c8;background:#fff4f5;box-shadow:none}.session-button.redeem.locked:hover{border-color:#df9ca4;background:#ffecee}.session-button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none}.session-empty{color:#9aa3b3;font-size:13px}.account-action-select{width:126px;min-height:36px;cursor:pointer;border:1px solid #cfd5df;border-radius:8px;padding:0 34px 0 12px;color:#586276;background-color:#fff;font:inherit;transition:border-color .18s ease,box-shadow .18s ease,color .18s ease}.account-action-select:hover{color:var(--primary);border-color:#b9bdf0;background-color:#fafaff}.account-action-select:focus-visible{color:var(--primary);border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #5b5ce224}.auto-redeem-switch{display:inline-flex;min-height:36px;cursor:pointer;align-items:center;gap:8px;border:0;padding:0;color:#7c8495;background:transparent;font:inherit}.auto-redeem-switch>span{position:relative;width:38px;height:22px;flex:0 0 auto;border-radius:999px;background:#cfd5df;box-shadow:inset 0 0 0 1px #2c354814;transition:background .18s ease,box-shadow .18s ease}.auto-redeem-switch>span:after{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #232c413d;content:"";transition:transform .18s ease}.auto-redeem-switch small{min-width:42px;color:inherit;font-size:12px;font-weight:700}.auto-redeem-switch.enabled{color:var(--success)}.auto-redeem-switch.enabled>span{background:var(--success);box-shadow:0 0 0 3px #159d681a}.auto-redeem-switch.enabled>span:after{transform:translate(16px)}.auto-redeem-switch:hover>span{box-shadow:0 0 0 4px #5b5ce21a}.auto-redeem-switch:focus-visible{border-radius:8px;outline:3px solid rgb(91 92 226 / 18%);outline-offset:3px}.processed{display:inline-flex;align-items:center;gap:6px;color:#8b94a5}.pool-badge{display:inline-flex;min-height:26px;align-items:center;border-radius:7px;padding:0 9px;color:var(--primary);background:var(--primary-soft);font-size:12px;font-weight:600}.empty-state{display:flex;min-height:250px;align-items:center;justify-content:center;gap:9px;color:#8a93a4}.pagination{display:flex;min-height:68px;align-items:center;gap:28px;border-top:1px solid var(--border);padding:12px 17px;color:#687287;font-size:13px}.pagination label{display:flex;align-items:center;gap:8px}.pagination select{min-height:36px;border:1px solid var(--border);border-radius:7px;padding:0 9px;color:#4c5668;background:#fff}.page-buttons{display:flex;gap:6px;margin-left:auto}.page-buttons button{display:grid;min-width:36px;height:36px;place-items:center;border:1px solid var(--border);border-radius:7px;color:#596377;background:#fff}.page-buttons button:hover:not(:disabled){color:var(--primary);border-color:#bbbff0}.page-buttons button.active{color:#fff;border-color:var(--primary);background:var(--primary)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:22px;background:#12182661;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in .16s ease-out}.modal{position:relative;width:min(100%,530px);border:1px solid rgb(255 255 255 / 60%);border-radius:17px;padding:26px;background:#fff;box-shadow:0 25px 70px #12182640;animation:modal-in .19s ease-out}.import-modal{width:min(100%,620px)}.modal-header{display:flex;align-items:center;gap:13px;margin-bottom:22px;padding-right:30px}.modal-header h2,.confirm-heading h2{margin:0;color:#151c2a;font-size:20px;letter-spacing:-.02em}.modal-header p{margin:4px 0 0;color:var(--muted);font-size:13px}.modal-icon{display:grid;width:46px;height:46px;flex:0 0 auto;place-items:center;border-radius:50%}.modal-icon.primary{color:var(--primary);background:var(--primary-soft)}.modal-icon.success{color:#fff;background:var(--success)}.modal-icon.danger{color:#fff;background:var(--danger)}.modal-close{position:absolute;top:18px;right:18px;display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:8px;color:#6d7688;background:transparent}.modal-close:hover{color:#222b3b;background:#f3f5f8}.import-modal form{display:grid;gap:9px}.import-modal form>label{margin-top:4px;color:#394355;font-size:13px;font-weight:600}.import-modal input,.import-modal textarea,.import-modal select{width:100%;border:1px solid var(--border);border-radius:9px;padding:11px 12px;color:var(--text);background:#fbfcfe;resize:vertical}.import-modal textarea{min-height:145px;font-family:Cascadia Code,Consolas,monospace;line-height:1.65}.file-row{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.file-row input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.file-button{display:inline-flex;min-height:38px;align-items:center;gap:7px;border:1px dashed #aeb3ea;border-radius:8px;padding:0 12px;color:var(--primary);background:#fafaff;cursor:pointer}.form-error{display:flex;align-items:center;gap:7px;border-radius:8px;padding:9px 11px;color:#c92f3a;background:var(--danger-soft);font-size:13px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.unified-backdrop{background:#141b2d75;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.unified-dialog{width:min(100%,490px);overflow:hidden;border:1px solid #e2e5f2;border-radius:20px;padding:28px;box-shadow:0 28px 90px #1c234447}.unified-dialog:before{position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#5b5ce2,#8a72f6);content:""}.unified-dialog.danger-dialog:before{background:linear-gradient(90deg,#dc3545,#f07878)}.unified-dialog-heading{display:flex;align-items:center;gap:14px;padding-right:38px}.unified-dialog-heading small{display:block;margin-bottom:3px;color:#7c8495;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.unified-dialog-heading h2{margin:0;color:#172033;font-size:21px;letter-spacing:-.025em}.unified-dialog-icon{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border-radius:14px}.unified-dialog-icon.primary{color:var(--primary);background:linear-gradient(145deg,#f0efff,#e8e6ff);box-shadow:inset 0 0 0 1px #dedbff}.unified-dialog-icon.danger{color:var(--danger);background:#fff0f1;box-shadow:inset 0 0 0 1px #ffd9dd}.unified-dialog-description{margin:20px 0;white-space:pre-line;color:#596377;font-size:14px;line-height:1.65}.unified-dialog-highlight{display:grid;gap:5px;margin:-4px 0 20px;border:1px solid #dcdcff;border-radius:12px;padding:12px 14px;background:#f7f7ff;box-shadow:inset 3px 0 0 var(--primary)}.unified-dialog-highlight small{color:#707a8d;font-size:11px;font-weight:700;letter-spacing:.04em}.unified-dialog-highlight strong{overflow-wrap:anywhere;color:#272a69;font-size:16px;line-height:1.4}.session-backdrop{z-index:60;background:#20283f6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.session-upload-modal,.session-detail-modal{width:min(92vw,720px);max-height:min(88vh,820px);overflow:auto;border:1px solid #dfe3f0;border-radius:20px;padding:28px;box-shadow:0 30px 100px #181f3452}.session-upload-modal:before,.session-detail-modal:before{position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#5b5ce2,#8a72f6);content:""}.session-modal-heading{display:flex;align-items:center;gap:14px;padding-right:36px}.session-modal-heading>div{min-width:0}.session-modal-heading small{display:block;margin-bottom:2px;color:#7c8495;font-size:11px;font-weight:700;letter-spacing:.07em}.session-modal-heading h2{margin:0;color:#172033;font-size:22px;letter-spacing:-.02em}.session-modal-heading p{overflow:hidden;margin:5px 0 0;color:#687286;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.session-modal-icon{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border-radius:14px;color:var(--primary);background:#efefff;box-shadow:inset 0 0 0 1px #dedfff}.session-modal-icon.success{color:var(--success);background:#eaf9f3;box-shadow:inset 0 0 0 1px #c9efdf}.session-upload-actions{display:flex;align-items:center;gap:12px;margin:22px 0 14px}.session-upload-actions small{color:#7c8495;font-size:12px}.session-file-button{cursor:pointer}.session-file-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}.session-textarea-label{display:block;margin-bottom:8px;color:#2f3a50;font-size:13px;font-weight:700}.session-upload-modal textarea{width:100%;min-height:300px;resize:vertical;border:1px solid #d7dceb;border-radius:12px;padding:15px 16px;color:#d7e2f2;background:#182235;box-shadow:inset 0 1px 8px #050c1838;font-family:Cascadia Code,Consolas,monospace;font-size:13px;line-height:1.65;-moz-tab-size:2;tab-size:2}.session-upload-modal textarea::placeholder{color:#7f8ba0}.session-upload-modal textarea:focus{border-color:#8587f1;outline:3px solid rgb(91 92 226 / 18%)}.session-sensitive-note{display:flex;align-items:center;gap:7px;margin:12px 0 0;color:#7c8495;font-size:12px}.session-sensitive-note.replace-warning{align-items:flex-start;border:1px solid #f3c9cd;border-radius:10px;padding:11px 12px;color:#a33a45;background:#fff5f6;line-height:1.55}.session-sensitive-note.replace-warning svg{margin-top:1px;flex:0 0 auto;color:var(--danger)}.session-valid-badge{display:inline-flex;min-height:28px;align-items:center;gap:6px;margin:20px 0 10px;border:1px solid #bce7d5;border-radius:7px;padding:0 9px;color:#11815a;background:#eaf9f3;font-size:12px;font-weight:700}.session-json-view{max-height:480px;overflow:auto;margin:0;border:1px solid #2a3850;border-radius:12px;padding:18px 20px;color:#dce7f5;background:#172235;box-shadow:inset 0 1px 10px #050c1847;font-family:Cascadia Code,Consolas,monospace;font-size:13px;line-height:1.7;-moz-tab-size:2;tab-size:2;white-space:pre}.session-json-view:focus-visible{outline:3px solid rgb(126 129 255 / 35%);outline-offset:2px}.session-detail-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #e5e8f1;margin-top:20px;padding-top:18px}.session-detail-footer p{display:flex;align-items:center;gap:7px;margin:0;color:#7c8495;font-size:12px}.session-detail-footer>div{display:flex;gap:10px}.session-replace-button{color:#a33a45;border-color:#efc6ca;background:#fff8f8}.session-replace-button:hover{color:#8f2833;border-color:#e9aeb4;background:#fff0f1}.redeem-backdrop{z-index:65;background:#1e253d7a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.redeem-flow-modal{width:min(94vw,680px);max-height:min(92vh,860px);overflow:auto;border:1px solid #dfe3f0;border-radius:20px;padding:28px;box-shadow:0 32px 100px #181f3457}.redeem-flow-modal:before{position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#5b5ce2,#8a72f6);content:""}.redeem-heading{display:flex;align-items:center;gap:14px;padding-right:40px}.redeem-heading-icon{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border-radius:14px;color:var(--primary);background:#efefff;box-shadow:inset 0 0 0 1px #dedfff}.redeem-heading small{display:block;margin-bottom:2px;color:#7c8495;font-size:11px;font-weight:700;letter-spacing:.07em}.redeem-heading h2{margin:0;color:#172033;font-size:22px;letter-spacing:-.02em}.redeem-heading p{margin:5px 0 0;color:#687286;font-size:13px}.redeem-stepper{display:grid;margin:24px 0;padding:0;grid-template-columns:repeat(4,1fr);list-style:none}.redeem-stepper li{position:relative;display:grid;justify-items:center;gap:6px;color:#9aa3b3}.redeem-stepper li:before{position:absolute;top:14px;right:50%;left:-50%;height:2px;background:#e4e7ef;content:""}.redeem-stepper li:first-child:before{display:none}.redeem-stepper li>span{position:relative;z-index:1;display:grid;width:29px;height:29px;place-items:center;border:2px solid #dfe3ec;border-radius:50%;background:#fff;font-size:12px;font-weight:800}.redeem-stepper li small{font-size:11px;font-weight:700}.redeem-stepper li.active{color:var(--primary)}.redeem-stepper li.active>span{color:#fff;border-color:var(--primary);background:var(--primary);box-shadow:0 0 0 4px #5b5ce21a}.redeem-stepper li.completed{color:var(--success)}.redeem-stepper li.completed:before{background:#8dd8b9}.redeem-stepper li.completed>span{color:#fff;border-color:var(--success);background:var(--success)}.redeem-success-banner{display:flex;align-items:center;gap:10px;margin-bottom:14px;border:1px solid #bce7d5;border-radius:11px;padding:12px 14px;color:#11815a;background:#effbf6}.redeem-success-banner span{display:grid;gap:2px}.redeem-success-banner strong{font-size:13px}.redeem-success-banner small{font-size:11px}.redeem-success-banner.large{justify-content:center;min-height:48px}.redeem-data-card{display:flex;align-items:center;gap:12px;border:1px solid #dfe3ed;border-radius:12px;padding:14px;background:#fbfcfe}.redeem-data-icon{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:10px;color:var(--primary);background:var(--primary-soft)}.redeem-data-card>div{display:grid;min-width:0;gap:3px}.redeem-data-card small,.redeem-data-card em{color:var(--muted);font-size:11px;font-style:normal}.redeem-data-card strong{overflow:hidden;color:#263044;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.redeem-progress-copy{display:flex;align-items:center;gap:8px;margin:18px 0 9px;color:#536078;font-size:13px}.redeem-progress-copy svg{color:var(--primary)}.redeem-progress{height:5px;overflow:hidden;border-radius:999px;background:#e8eaf1}.redeem-progress i{display:block;width:64%;height:100%;border-radius:inherit;background:var(--primary);animation:redeem-progress 1.3s ease-in-out infinite alternate}.redeem-note{display:flex;align-items:flex-start;gap:7px;margin:16px 0 0;color:#7c8495;font-size:12px;line-height:1.55}.redeem-note svg{flex:0 0 auto;color:var(--primary)}.redeem-review-grid{display:grid;overflow:hidden;margin:14px 0;border:1px solid var(--border);border-radius:12px;grid-template-columns:1fr 1fr;background:var(--border);gap:1px}.redeem-review-grid div{display:grid;min-height:60px;align-content:center;gap:5px;padding:11px 14px;background:#fbfcfe}.redeem-review-grid dt{color:var(--muted);font-size:11px}.redeem-review-grid dd{margin:0;overflow-wrap:anywhere;color:#263044;font-size:13px;font-weight:700}.redeem-warning{display:flex;align-items:center;gap:8px;border:1px solid #ffd38a;border-radius:9px;padding:10px 12px;color:#a76600;background:var(--warning-soft);font-size:12px}.redeem-final-confirm,.redeem-result,.redeem-failed{display:grid;justify-items:center;text-align:center}.redeem-shield,.redeem-result-icon,.redeem-failed>span{display:grid;width:66px;height:66px;margin:2px 0 12px;place-items:center;border-radius:50%}.redeem-shield{color:var(--success);background:#eaf9f3}.redeem-final-confirm>p{margin:0 0 7px;color:var(--muted);font-size:12px}.redeem-final-confirm>strong{overflow-wrap:anywhere;color:#172033;font-size:20px}.redeem-final-confirm>small{margin-top:7px;color:#687286;font-size:12px}.redeem-confirm-check{display:flex;width:100%;min-height:48px;cursor:pointer;align-items:center;gap:10px;margin-top:22px;border:1px solid #dfe3ed;border-radius:11px;padding:0 13px;color:#485368;background:#fbfcfe;font-size:13px;text-align:left}.redeem-confirm-check input{position:absolute;width:1px;height:1px;opacity:0}.redeem-confirm-check>span{display:grid;width:21px;height:21px;flex:0 0 auto;place-items:center;border:1px solid #cbd1de;border-radius:6px;color:transparent;background:#fff}.redeem-confirm-check:has(input:checked){border-color:#aeb2ef;color:#30357b;background:#f6f6ff}.redeem-confirm-check input:checked+span{color:#fff;border-color:var(--primary);background:var(--primary)}.redeem-confirm-check:focus-within{outline:3px solid rgb(91 92 226 / 14%)}.redeem-final-confirm .modal-footer,.redeem-result .modal-footer,.redeem-failed .modal-footer{width:100%}.redeem-result-icon{color:var(--success);background:#eaf9f3}.redeem-result>small{color:var(--success);font-weight:800;letter-spacing:.08em}.redeem-result.processing .redeem-result-icon{color:var(--primary);background:var(--primary-soft)}.redeem-result.processing>small{color:var(--primary)}.redeem-result.failure .redeem-result-icon{color:var(--danger);background:var(--danger-soft)}.redeem-result.failure>small{color:var(--danger)}.redeem-result h3,.redeem-failed h3{margin:6px 0 8px;color:#172033;font-size:21px}.redeem-result.failure h3{color:#a62f3b}.redeem-result>p,.redeem-failed>p{margin:0 0 16px;color:var(--muted);font-size:13px;line-height:1.6}.redeem-result-summary{display:grid;width:100%;overflow:hidden;border:1px solid var(--border);border-radius:12px;grid-template-columns:1fr 1.5fr;background:var(--border);gap:1px;text-align:left}.redeem-result-summary>span{display:grid;min-width:0;min-height:66px;align-content:center;gap:5px;padding:12px 14px;background:#fbfcfe}.redeem-result-summary small{color:var(--muted);font-size:11px}.redeem-result-summary strong{overflow:hidden;color:#263044;font-family:Cascadia Code,Consolas,monospace;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.redeem-result.failure .redeem-result-summary>span:first-child strong{color:var(--danger)}.redeem-result.success .redeem-result-summary>span:first-child strong{color:var(--success)}.redeem-result.processing .redeem-result-summary>span:first-child strong{color:var(--primary)}.redeem-result>.redeem-result-guidance{display:flex;width:100%;align-items:flex-start;gap:8px;margin:12px 0 0;border-radius:10px;padding:11px 12px;color:#536078;background:#f5f6fa;text-align:left}.redeem-result-guidance svg{margin-top:1px;flex:0 0 auto}.redeem-result.failure>.redeem-result-guidance{border:1px solid #f1c5ca;color:#94303a;background:#fff5f6}.redeem-result.success>.redeem-result-guidance{border:1px solid #bce7d5;color:#117451;background:#effbf6}.redeem-technical-details{width:100%;margin-top:12px;text-align:left}.redeem-technical-details summary{min-height:40px;cursor:pointer;color:#687286;font-size:12px;line-height:40px;text-align:center}.redeem-technical-details summary:hover{color:var(--primary)}.redeem-technical-details[open] summary{color:var(--primary);font-weight:700}.redeem-result dl,.redeem-failed dl{display:grid;width:100%;overflow:hidden;margin:0;border:1px solid var(--border);border-radius:11px;background:var(--border);gap:1px;text-align:left}.redeem-result dl div,.redeem-failed dl div{display:grid;min-height:44px;align-items:center;padding:0 13px;grid-template-columns:90px 1fr;background:#fbfcfe}.redeem-result dt,.redeem-failed dt{color:var(--muted);font-size:11px}.redeem-result dd,.redeem-failed dd{margin:0;overflow-wrap:anywhere;color:#263044;font-size:12px;font-weight:700}.redeem-failed>span{color:var(--danger);background:var(--danger-soft)}.redeem-failed>small{color:var(--danger);font-weight:800}.redeem-failed>p{display:flex;align-items:center;gap:7px;margin-top:14px;color:#7c8495}.unified-field{display:grid;gap:8px}.unified-field>span{color:#354052;font-size:13px;font-weight:700}.unified-field input,.unified-field select{width:100%;min-height:48px;border:1px solid #d9deea;border-radius:11px;padding:0 14px;color:#172033;background:#fbfcff;font-size:15px;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.unified-field select{padding-right:42px;cursor:pointer}.unified-field input:hover,.unified-field select:hover{border-color:#bfc5d5;background-color:#fff}.unified-field input:focus,.unified-field select:focus{border-color:#7778e9;background-color:#fff;box-shadow:0 0 0 4px #5b5ce21f}.unified-field input::placeholder{color:#a1a8b7}.unified-footer{margin-top:26px;padding-top:18px;border-top:1px solid #edf0f6}.unified-footer .button{min-width:104px;min-height:44px;justify-content:center}.unified-footer.alert-footer{justify-content:flex-end}.unified-footer.alert-footer .button{min-width:128px}.danger-button{color:#fff;border:1px solid #d93445;background:#dc3545;box-shadow:0 8px 18px #dc35452e}.danger-button:hover{border-color:#c62e3e;background:#c93040}.submitting-backdrop{z-index:60;background:#1e253d7a}.payment-submitting{display:grid;min-width:min(90vw,360px);justify-items:center;gap:10px;border:1px solid #e3e5f2;border-radius:18px;padding:30px 24px;color:#172033;background:#fff;box-shadow:0 26px 80px #1c234447}.payment-submitting svg{color:var(--primary)}.payment-submitting strong{font-size:16px}.payment-submitting span{color:var(--muted);font-size:13px}.payment-success-dialog{width:min(100%,470px);text-align:center}.payment-success-icon{display:grid;width:64px;height:64px;margin:0 auto 14px;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(145deg,#23b26d,#15945a);box-shadow:0 12px 28px #1ea6633d}.payment-success-dialog>small{color:var(--success);font-size:12px;font-weight:800;letter-spacing:.08em}.payment-success-dialog h2{margin:5px 0 8px;color:#172033;font-size:23px}.payment-success-dialog>p{margin:0 0 20px;color:var(--muted);font-size:13px}.payment-success-dialog dl{display:grid;gap:1px;overflow:hidden;margin:0;border:1px solid var(--border);border-radius:12px;background:var(--border);text-align:left}.payment-success-dialog dl div{display:grid;grid-template-columns:95px 1fr;align-items:center;min-height:45px;padding:0 14px;background:#fbfcfe}.payment-success-dialog dt{color:var(--muted);font-size:12px}.payment-success-dialog dd{margin:0;overflow-wrap:anywhere;color:#263044;font-size:14px;font-weight:650}.payment-success-button{width:100%;justify-content:center;margin-top:22px;min-height:46px}.confirm-heading{display:flex;align-items:center;gap:16px;padding-right:30px}.confirm-detail{display:grid;gap:13px;margin:22px 0 17px;border:1px solid var(--border);border-radius:11px;padding:16px;background:#fbfcfe}.confirm-detail div{display:grid;grid-template-columns:90px 1fr;align-items:center}.confirm-detail dt{color:var(--muted);font-size:13px}.confirm-detail dd{margin:0;overflow-wrap:anywhere;color:#263044;font-family:Cascadia Code,Consolas,monospace;font-size:13px}.confirm-warning{display:flex;align-items:center;gap:8px;margin:0;color:#5b6577;font-size:13px}.confirm-warning svg{color:var(--warning);flex:0 0 auto}.history-card{min-height:400px}.section-heading{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);padding:20px}.section-heading h2{margin:0 0 4px;color:#172033;font-size:17px}.section-heading p{margin:0;color:var(--muted);font-size:12px}.section-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:10px;color:var(--primary);background:var(--primary-soft)}.success-text{color:var(--success);font-weight:700}.danger-text{color:var(--danger);font-weight:700}.operator-name{display:inline-flex;align-items:center;gap:7px;color:#354052;font-weight:600}.operator-name svg{color:var(--primary)}.reconciliation-summary{display:grid;max-width:1480px;margin:0 auto 18px;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.reconciliation-summary>div{display:grid;gap:6px;border:1px solid var(--border);border-radius:13px;padding:18px 20px;background:#fff;box-shadow:0 6px 18px #232e4e0a}.reconciliation-summary small{color:var(--muted);font-size:12px}.reconciliation-summary strong{color:#172033;font-size:25px}.reconciliation-summary .success strong{color:var(--success)}.reconciliation-summary .danger strong{color:var(--danger)}.reconciliation-secondary{margin-top:18px}.toast-region{position:fixed;right:24px;bottom:24px;z-index:70}.toast{max-width:390px;border:1px solid #cfd3f3;border-radius:10px;padding:13px 16px;color:#303b50;background:#fff;box-shadow:0 14px 35px #12182629;animation:toast-in .18s ease-out}.spin{animation:spin .8s linear infinite}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.login-page{display:grid;min-height:100vh;place-items:center;padding:24px;background:radial-gradient(circle at 15% 15%,#e9ebff 0,transparent 34%),radial-gradient(circle at 85% 85%,#edf8f4 0,transparent 30%),#f7f8fc}.login-card{width:min(100%,450px);border:1px solid var(--border);border-radius:20px;padding:34px;background:#fffffff0;box-shadow:0 24px 70px #232e4e24}.login-brand{display:flex;align-items:center;gap:11px;margin-bottom:30px;font-size:18px}.login-icon{display:grid;width:58px;height:58px;place-items:center;border-radius:16px;color:var(--primary);background:var(--primary-soft)}.login-card h1{margin:18px 0 8px;color:#151c2a;font-size:26px}.login-card>p{margin:0 0 24px;color:var(--muted);font-size:14px;line-height:1.7}.login-card form{display:grid;gap:10px}.login-card form>label{color:#394355;font-size:13px;font-weight:600}.login-input{display:flex;align-items:center;gap:9px;border:1px solid var(--border);border-radius:10px;padding:0 12px;color:#8a93a5;background:#fbfcfe}.login-input:focus-within{border-color:#aaaef1;box-shadow:0 0 0 3px #5856e91a}.login-input input{width:100%;min-height:46px;border:0;outline:0;color:var(--text);background:transparent}.password-field{display:flex;align-items:center}.password-field input{min-width:0;flex:1}.password-field button{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border:0;border-radius:8px;color:#7d8799;background:transparent}.password-field button:hover{color:var(--primary);background:var(--primary-soft)}.login-submit{width:100%;margin-top:8px}.login-note{display:flex;align-items:flex-start;gap:8px;margin-top:20px;border-radius:9px;padding:11px;color:#6b7588;background:#f6f7fa;font-size:12px;line-height:1.55}.login-note svg{flex:0 0 auto;color:var(--primary)}.admin-heading{padding-right:18px}.admin-page{display:grid;max-width:1480px;margin:0 auto;gap:16px}.recharge-settings-card{overflow:hidden}.recharge-settings-card>header{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);padding:18px 20px}.recharge-settings-card>header h2{margin:0 0 4px;color:#172033;font-size:17px}.recharge-settings-card>header p{margin:0;color:var(--muted);font-size:12px}.recharge-config-status{display:inline-flex;min-height:30px;margin-left:auto;align-items:center;gap:6px;border-radius:999px;padding:0 11px;color:#8b6508;background:#fff7df;font-size:12px;font-weight:700}.recharge-config-status.configured{color:var(--success);background:var(--success-soft)}.recharge-settings-card form{display:flex;align-items:flex-end;gap:14px;padding:18px 20px 14px}.recharge-url-field{display:grid;min-width:0;flex:1;gap:7px}.recharge-url-field>label{color:#394355;font-size:13px;font-weight:700}.recharge-url-field>div{display:flex;min-height:46px;align-items:center;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:#fbfcfe}.recharge-url-field>div:focus-within{border-color:#8f91ed;box-shadow:0 0 0 3px #5856e91a}.recharge-url-field>div>span{display:grid;height:46px;min-width:58px;place-items:center;border-right:1px solid var(--border);color:var(--primary);background:var(--primary-soft);font-size:12px;font-weight:800}.recharge-url-field input{width:100%;min-width:0;height:44px;border:0;outline:0;padding:0 13px;color:var(--text);background:transparent;font-family:Cascadia Code,Consolas,monospace;font-size:13px}.recharge-url-field>small{color:var(--muted);font-size:12px}.recharge-settings-error{display:flex;align-items:center;gap:6px;color:var(--danger);font-size:12px;font-style:normal}.recharge-save{min-width:126px;justify-content:center}.recharge-settings-card>footer{border-top:1px solid #f0f1f6;padding:10px 20px 12px;color:var(--muted);font-size:11px}.admin-create{margin-left:auto}.admin-card table{min-width:1050px}.self-label{display:inline-flex;margin-left:8px;border-radius:5px;padding:3px 6px;color:var(--primary);background:var(--primary-soft);font-weight:500}.role-badge{display:inline-flex;min-height:26px;align-items:center;border-radius:7px;padding:0 9px;font-size:12px;font-weight:600}.role-badge.admin{color:#5a3cc3;background:#f0ecff}.role-badge.operator{color:#35718a;background:#eaf7fb}.account-status{display:inline-flex;align-items:center;gap:7px;font-weight:600}.account-status i{width:8px;height:8px;border-radius:50%}.account-status.active{color:var(--success)}.account-status.active i{background:var(--success);box-shadow:0 0 0 4px #159d681a}.account-status.disabled{color:#8992a2}.account-status.disabled i{background:#aab1bc}.account-modal form{display:grid;gap:9px}.account-modal form>label{margin-top:4px;color:#394355;font-size:13px;font-weight:600}.account-modal input,.account-modal select{width:100%;min-height:44px;border:1px solid var(--border);border-radius:9px;padding:0 12px;color:var(--text);background:#fbfcfe}.account-modal .password-field{border:1px solid var(--border);border-radius:9px;padding-right:5px;background:#fbfcfe}.account-modal .password-field:focus-within{border-color:#aaaef1;box-shadow:0 0 0 3px #5856e91a}.account-modal .password-field input{border:0;outline:0;background:transparent}.limit-button{border:0;border-radius:7px;padding:7px 9px;color:#354052;background:#f3f5f8;font-weight:600}.limit-button:hover{color:var(--primary);background:var(--primary-soft)}.limit-button small{margin-left:4px;color:var(--primary);font-weight:500}.claim-modal form{display:grid;gap:10px}.claim-modal form>label{color:#394355;font-size:13px;font-weight:600}.claim-modal form>input,.claim-modal form>select{width:100%;min-height:48px;border:1px solid var(--border);border-radius:9px;padding:0 13px;color:var(--text);background:#fbfcfe}.claim-account{display:grid;margin-bottom:8px;grid-template-columns:1.5fr 1fr 1fr;gap:10px}.claim-account span{display:grid;gap:4px;border:1px solid var(--border);border-radius:10px;padding:12px;background:#fbfcfe}.claim-account small,.claim-confirm-count small{color:var(--muted);font-size:11px}.claim-account strong{color:#313a4d;font-size:13px}.claim-confirm-count{display:grid;gap:5px;margin:18px 0;border:1px solid #a9e2c9;border-radius:12px;padding:20px;color:var(--success);background:var(--success-soft);text-align:center}.claim-confirm-count strong{font-size:28px}.finance-page{display:grid;max-width:1480px;margin:0 auto;gap:16px}.finance-toolbar{display:flex;max-width:none;align-items:center;gap:10px;padding:14px}.finance-toolbar label{color:var(--muted);font-size:13px;font-weight:600}.finance-toolbar select{min-width:220px;min-height:42px;border:1px solid var(--border);border-radius:9px;padding:0 11px;color:var(--text);background:#fff}.finance-toolbar .button:first-of-type{margin-left:auto}.finance-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.finance-summary>div{display:grid;min-height:118px;align-content:center;gap:7px;border:1px solid var(--border);border-radius:14px;padding:18px;background:#fff;box-shadow:0 6px 18px #232e4e0a}.finance-summary small{color:var(--muted);font-size:12px}.finance-summary strong{color:#172033;font-size:27px}.finance-summary em{color:var(--muted);font-size:11px;font-style:normal}.finance-summary .positive strong{color:var(--success)}.finance-summary .negative strong{color:var(--danger)}.finance-prices{max-width:none}.price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:15px}.price-grid button{display:grid;gap:5px;border:1px solid var(--border);border-radius:10px;padding:14px;color:var(--text);background:#fbfcfe;text-align:left}.price-grid button:hover{border-color:#b9bdf0;background:var(--primary-soft)}.price-grid small{color:var(--muted)}.price-grid strong{color:var(--primary);font-size:12px}.finance-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.finance-list{max-width:none;min-height:360px}.finance-list .empty-state{min-height:270px}.finance-entry{border-bottom:1px solid var(--border);padding:14px 18px}.finance-entry:last-child{border-bottom:0}.finance-entry header{display:flex;align-items:center;justify-content:space-between;gap:10px}.finance-entry header b{color:#1f2937}.finance-entry p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.void-entry{background:#fff7f7;opacity:.78}.danger-text{color:var(--danger)!important}.product-card table{min-width:980px}.finance-customer-table table{min-width:1050px}.finance-customer-table tbody tr{cursor:pointer}.finance-customer-table tbody tr:hover,.finance-customer-table .selected-row{background:#f5f4ff}.finance-entry-action{margin-top:10px}.finance-redesign{max-width:1560px;gap:16px}.finance-toolbar-v2{display:flex;width:100%;max-width:none;margin:0;min-height:76px;align-items:center;gap:24px;padding:14px 18px;border-radius:15px}.finance-filter{display:flex;align-items:center;gap:12px}.finance-filter label{color:#455066;font-size:13px;font-weight:750}.finance-filter select,.date-filter button{min-width:280px;min-height:46px;border:1px solid #dfe3ec;border-radius:10px;padding:0 14px;color:#202a3c;background:#fff;font-size:14px}.date-filter{padding-left:24px;border-left:1px solid var(--border)}.date-filter button{display:flex;min-width:160px;align-items:center;gap:10px}.date-filter button svg:last-child{margin-left:auto;transform:rotate(90deg)}.finance-toolbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto;padding-left:24px;border-left:1px solid var(--border)}.finance-toolbar-actions .button{min-height:44px}.finance-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card{display:flex;min-height:116px;align-items:center;gap:15px;border:1px solid var(--border);border-radius:15px;padding:18px;background:#fff;box-shadow:0 7px 22px #232e4e0a}.metric-card>span{display:grid;width:46px;height:46px;flex:0 0 auto;place-items:center;border-radius:13px}.metric-card>div{display:grid;gap:3px}.metric-card small{color:#596377;font-size:13px;font-weight:700}.metric-card strong{color:#172033;font-size:27px;letter-spacing:-.02em}.metric-card em{color:#8a92a3;font-size:11px;font-style:normal}.metric-card.purple>span{color:#5b5ce2;background:#efefff}.metric-card.purple strong{color:#5253df}.metric-card.blue>span{color:#2872e8;background:#eaf2ff}.metric-card.blue strong{color:#2469dc}.metric-card.amber>span{color:#dd8500;background:#fff4df}.metric-card.amber strong{color:#d97c00}.metric-card.green>span{color:#109a62;background:#e7f8f0}.metric-card.green strong{color:#109a62}.metric-card.red>span{color:var(--danger);background:var(--danger-soft)}.metric-card.red strong{color:var(--danger)}.finance-workspace{display:grid;grid-template-columns:minmax(0,2fr) minmax(330px,1fr);gap:16px}.reconciliation-workbench{width:100%;min-width:0;max-width:none;margin:0;overflow:hidden}.workbench-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 10px}.workbench-header h2,.today-tasks h2,.quick-actions h2,.snapshot-panel h2,.recent-payments h2{margin:0;color:#172033;font-size:17px}.workbench-header p,.snapshot-panel header p{margin:4px 0 0;color:var(--muted);font-size:12px}.text-action{display:inline-flex;align-items:center;gap:6px;border:0;padding:8px;color:#6d7688;background:transparent;font-size:12px}.text-action:hover{color:var(--primary)}.finance-tabs{display:flex;gap:28px;border-bottom:1px solid var(--border);padding:0 20px}.finance-tabs button{position:relative;min-height:48px;border:0;padding:0 6px;color:#667085;background:transparent;font-size:13px;font-weight:650}.finance-tabs button.active{color:var(--primary)}.finance-tabs button.active:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:2px;background:var(--primary);content:""}.workbench-content{min-height:192px;padding:14px 16px 16px}.workbench-content .empty-state{min-height:165px}.finance-overview-table{border:1px solid var(--border);border-radius:10px}.finance-overview-table table{min-width:900px}.finance-overview-table th{height:40px;background:#fafbfe}.finance-overview-table td{height:48px}.finance-overview-table tbody tr{cursor:pointer}.finance-overview-table .selected-row{background:#faf9ff}.finance-mini-pagination{display:flex;min-height:52px;align-items:center;justify-content:space-between;padding:8px 2px 0;color:#697386;font-size:11px}.finance-mini-pagination>div{display:flex;align-items:center;gap:7px}.finance-mini-pagination button{display:grid;width:30px;height:30px;place-items:center;border:1px solid var(--border);border-radius:7px;color:#718096;background:#fff}.finance-mini-pagination button.active{color:#fff;border-color:var(--primary);background:var(--primary)}.finance-mini-pagination button:disabled{color:#bbc1cd;background:#fafbfc}.finance-mini-pagination select{min-height:30px;border:1px solid var(--border);border-radius:7px;padding:0 8px;color:#5e687b;background:#fff;font-size:11px}.amount-chip{display:inline-flex;border-radius:5px;padding:4px 8px;font-weight:700}.amount-chip.purple{color:#5556df;background:#efefff}.amount-chip.blue{color:#2470dd;background:#eaf3ff}.amount-chip.green{color:#128c5c;background:#e9f8f1}.amount-chip.amber{color:#c97800;background:#fff3df}.finance-compact-list{display:grid}.finance-compact-row{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;min-height:58px;border-bottom:1px solid var(--border)}.finance-compact-row:last-child{border-bottom:0}.finance-compact-row>div{display:grid;gap:4px}.finance-compact-row small{color:var(--muted);font-size:11px}.compact-row-icon,.task-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px}.compact-row-icon.purple,.task-icon.purple{color:#5b5ce2;background:#efefff}.compact-row-icon.blue,.task-icon.blue{color:#2872e8;background:#eaf2ff}.compact-row-icon.green,.task-icon.green{color:#109a62;background:#e7f8f0}.task-icon.amber{color:#dd8500;background:#fff4df}.finance-side-stack{display:grid;align-content:start;gap:14px}.finance-side-stack>.data-card,.finance-bottom-grid>.data-card{width:100%;max-width:none;margin:0}.today-tasks,.quick-actions{overflow:hidden}.today-tasks>header,.quick-actions>header,.recent-payments>header{display:flex;min-height:46px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:10px 14px}.today-tasks header small,.recent-payments header small{color:var(--muted);font-size:11px}.today-tasks{padding-bottom:10px}.today-tasks>div{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;min-height:50px;margin:6px 10px 0;border:1px solid var(--border);border-radius:9px;padding:0 9px;background:#fff}.today-tasks p{display:grid;gap:3px;margin:0;color:#263044;font-size:13px;font-weight:650}.today-tasks p small{color:#8a92a3;font-size:10px;font-weight:400}.today-tasks strong{color:#172033;font-size:18px}.quick-actions>div{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px}.quick-actions button{display:grid;min-height:58px;place-items:center;gap:4px;border:1px solid var(--border);border-radius:9px;color:#4f5a70;background:#fbfcfe;font-size:10px}.quick-actions button:hover{color:var(--primary);border-color:#c7c8f3;background:#f7f6ff}.quick-actions button svg{color:var(--primary)}.finance-bottom-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(330px,1fr);gap:16px}.snapshot-panel,.recent-payments{overflow:hidden}.snapshot-panel>header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:14px 16px}.snapshot-panel>header .button{min-height:34px;padding:0 10px;font-size:11px}.snapshot-table{display:grid;padding:0 16px}.snapshot-table article{display:grid;grid-template-columns:38px minmax(190px,1.3fr) auto minmax(0,2.6fr);align-items:center;gap:10px;min-height:66px;border-bottom:1px solid var(--border)}.snapshot-table article:last-child{border-bottom:0}.snapshot-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:#5b5ce2;background:#efefff}.snapshot-name{display:grid;gap:4px}.snapshot-name strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.snapshot-name small{color:var(--muted);font-size:10px}.snapshot-table article>em{border-radius:5px;padding:3px 6px;color:var(--primary);background:var(--primary-soft);font-size:9px;font-style:normal;font-weight:800}.snapshot-table article>em.placeholder{visibility:hidden}.snapshot-table dl{display:grid;grid-template-columns:.8fr .9fr 1.7fr .8fr;gap:12px;margin:0}.snapshot-table dl div{display:grid;gap:4px}.snapshot-table dt{color:#8a92a3;font-size:9px}.snapshot-table dd{margin:0;overflow:hidden;color:#263044;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.snapshot-pagination{min-height:50px;border-top:1px solid var(--border);padding:8px 16px}.recent-payments{min-height:270px}.payment-empty{display:grid;min-height:215px;justify-items:center;align-content:center;gap:7px;padding:18px;text-align:center}.payment-empty>span{display:grid;width:50px;height:50px;place-items:center;border-radius:14px;color:#96a0b3;background:#f1f3f7}.payment-empty strong{color:#687287;font-size:14px}.payment-empty p{margin:0 0 7px;color:#9aa2b2;font-size:10px}.payment-empty .button{color:var(--primary)}.recent-payment-list{display:grid;padding:5px 14px 12px}.recent-payment-list article{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:9px;min-height:58px;border-bottom:1px solid var(--border)}.recent-payment-list article:last-child{border-bottom:0}.recent-payment-list article>div{display:grid;gap:4px}.recent-payment-list small{color:var(--muted);font-size:10px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px) scale(.985)}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@keyframes redeem-progress{0%{transform:translate(-18%)}to{transform:translate(58%)}}@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar{flex-wrap:wrap}.search-form{flex-basis:calc(100% - 160px)}.date-range{flex:1 1 auto}.finance-toolbar-v2{flex-wrap:wrap}.finance-toolbar-actions{width:100%;margin-left:0;padding:12px 0 0;border-top:1px solid var(--border);border-left:0}.finance-toolbar-actions .button:first-child{margin-left:auto}.finance-workspace,.finance-bottom-grid{grid-template-columns:minmax(0,1fr)}.finance-workspace>*,.finance-bottom-grid>*{min-width:0;max-width:100%}.finance-side-stack{grid-template-columns:1.35fr 1fr}}@media(max-width:760px){.sidebar{position:static;width:100%;padding:12px}.brand{padding:4px 6px 12px}.sidebar nav{display:flex;overflow-x:auto}.nav-item{min-width:max-content;flex:1;justify-content:center;padding:0 12px}.sidebar-note{display:none}.main-content{margin-left:0;padding:20px 14px 32px}.page-header{align-items:flex-start;gap:12px}.service-status svg{display:none}.header-actions{flex-wrap:wrap;justify-content:flex-end}.operator-chip small{display:none}.logout-button{min-height:36px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.pool-overview{align-items:flex-start;flex-wrap:wrap}.pool-overview>.button{width:100%;margin-left:0}.stat-card{padding:14px}.stat-icon{width:42px;height:42px}.stat-copy strong{font-size:21px}.stat-copy em,.stat-card>svg{display:none}.toolbar{align-items:stretch;padding:12px}.toolbar>.button.primary{flex:1 1 100%}.search-form{flex-basis:100%}.segmented{width:100%}.segmented button{flex:1;padding:0 8px}.date-range{width:100%;justify-content:center}.date-range input{min-width:0;width:42%}.export-button{flex:1}.owner-filter{width:100%}.owner-filter select{flex:1;max-width:none}.reconciliation-summary,.finance-summary,.finance-columns,.price-grid{grid-template-columns:1fr 1fr}.finance-toolbar{align-items:stretch;flex-wrap:wrap}.finance-toolbar select{flex:1;min-width:0}.finance-toolbar .button:first-of-type{margin-left:0}.pagination{flex-wrap:wrap;gap:12px}.page-buttons{width:100%;margin-left:0;justify-content:center}.modal{padding:22px 18px}.login-card{padding:26px 20px}.confirm-detail div{grid-template-columns:78px 1fr}.claim-account{grid-template-columns:1fr}.recharge-settings-card>header{align-items:flex-start;flex-wrap:wrap}.recharge-config-status{margin-left:52px}.recharge-settings-card form{align-items:stretch;flex-direction:column}.recharge-save{width:100%}.finance-summary,.finance-columns,.price-grid{grid-template-columns:1fr}.unified-backdrop{align-items:end;padding:14px}.unified-dialog{border-radius:20px 20px 14px 14px;padding:24px 18px 18px}.unified-footer{display:grid;grid-template-columns:1fr 1fr}.unified-footer .button{width:100%;min-width:0}.session-upload-modal,.session-detail-modal,.redeem-flow-modal{width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:18px;padding:22px 16px 16px}.redeem-stepper small{font-size:9px}.redeem-review-grid,.redeem-result-summary{grid-template-columns:1fr}.redeem-result-summary>span{min-height:56px}.session-upload-actions,.session-detail-footer{align-items:stretch;flex-direction:column}.session-upload-modal textarea{min-height:240px;font-size:12px}.session-detail-footer>div{width:100%}.session-detail-footer .button{flex:1}.finance-toolbar-v2{align-items:stretch;gap:12px}.finance-filter{display:grid;grid-template-columns:52px 1fr}.finance-filter select,.date-filter button{width:100%;min-width:0}.date-filter{padding:0;border-left:0}.finance-toolbar-actions{display:grid;grid-template-columns:1fr 1fr}.finance-toolbar-actions .button{width:100%;justify-content:center;margin:0!important}.finance-toolbar-actions .button.primary{grid-column:1 / -1}.finance-metrics{grid-template-columns:1fr 1fr}.metric-card{min-height:100px;padding:14px}.metric-card em{display:none}.finance-side-stack{grid-template-columns:1fr}.finance-tabs{gap:10px;overflow-x:auto}.finance-tabs button{min-width:max-content;flex:1}.snapshot-table article{grid-template-columns:38px 1fr auto;padding:10px 0}.snapshot-table dl{grid-column:2 / -1;grid-template-columns:1fr 1fr}}@media(max-width:420px){.stats-grid{grid-template-columns:1fr}.page-header p{max-width:210px}.service-status{padding:7px 9px;font-size:12px}.date-range{flex-wrap:wrap;padding:8px}.date-range input{width:calc(50% - 22px)}.finance-metrics{grid-template-columns:1fr}.metric-card{min-height:88px}.quick-actions>div{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
