:root{--bg:#f7faf9;--surface:#fff;--ink:#172333;--muted:#748299;--green:#145c49;--green-dark:#104b3d;--line:#e0e9ec;--orange:#ff742f;--radius:9px;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none;font-size:13px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:1px solid #dce4ea;border-radius:7px;background:#fff;color:#264341;padding:9px 14px;min-height:34px;transition:background .15s,border-color .15s;white-space:nowrap;box-shadow:0 1px 2px #152b3510}button:hover{background:#f1f6f3;border-color:#afc7bf}button:disabled{opacity:.44;cursor:not-allowed;box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #80b8a680;outline-offset:2px}a{color:inherit;text-decoration:none}a:hover{color:var(--green)}input,select,textarea{color:#344257;border:1px solid #dce4eb;border-radius:6px;background:#fff;padding:8px 11px;min-height:34px}select{cursor:pointer}input[type=checkbox]{width:14px;height:14px;min-height:0;padding:0;margin:0;accent-color:var(--green)}textarea{resize:vertical;line-height:1.7}button .icon{flex-shrink:0}.icon{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;flex-shrink:0}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.flipped{transform:rotate(180deg)}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#appSidebar{position:fixed;inset:0 auto 0 0;width:208px;background:linear-gradient(115deg,#fcfdfc,#f8fbfa);border-right:1px solid #dce6e6;padding:20px 10px;z-index:30}.brand{display:flex;align-items:center;gap:10px;padding:0 10px;font-size:23px;font-weight:700;color:#143c34;height:40px;letter-spacing:-.5px}.tomato-logo{width:36px;height:38px;flex-shrink:0}.main-navigation{display:flex;flex-direction:column;gap:7px;margin-top:20px}.nav{justify-content:start;text-align:left;width:100%;height:42px;border:0;background:transparent;box-shadow:none;color:#39495b;padding:10px 17px;font-size:14px;font-weight:500;gap:14px}.nav .icon{color:#174b42;width:20px;height:20px}.nav.active{background:#dcebe4;color:#114a3c;font-weight:600}.nav.active #i-home{fill:currentColor}.nav:hover{background:#edf4ef}.aside-bottom{position:absolute;bottom:25px;left:27px;right:23px;display:flex;align-items:center;gap:10px;color:#7d8897;font-size:12px}.aside-bottom>.icon{width:12px;height:12px;margin-left:auto;color:#91a1a6}.dot{display:inline-block;width:7px;height:7px;background:#2aa575;border-radius:50%;flex-shrink:0}.mobile-menu,.nav-backdrop{display:none}
main{margin-left:208px;padding:22px 26px 16px;max-width:2040px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:19px;min-height:64px}.page-heading{display:flex;align-items:center;gap:12px;min-width:0}h1{font-size:27px;line-height:1.3;margin:2px 0 6px;font-weight:650;letter-spacing:-.5px;overflow-wrap:anywhere}p{font-size:12px;color:var(--muted);line-height:1.75;margin:7px 0}#pageDescription{font-size:14px;margin:0;line-height:1.5}h2{font-size:17px;font-weight:630;margin:0;letter-spacing:-.2px}.header-right{flex-shrink:0}.header-actions{display:flex;gap:12px;align-items:center}.header-actions button{height:40px;font-weight:550;padding:9px 18px}.primary{background:var(--green);color:#fff;border-color:var(--green);box-shadow:0 2px 3px #145c4912}.primary:hover{background:#104c3e;border-color:#104c3e}.secondary{border-color:#a2c3b8;background:#fff;color:#174f42}.header-status{display:flex;align-items:center;gap:8px;justify-content:end;margin-top:9px;font-size:11px;color:#8190a2}.header-status .dot{width:6px;height:6px;box-shadow:0 0 0 5px #e8f3ed}#notice{font-size:11px;color:#778798}.breadcrumb{display:flex;align-items:center;gap:10px;font-size:12px;color:#8a97a3;margin:0 0 14px}.breadcrumb a{color:var(--green)}
.filters{display:flex;align-items:center;gap:13px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:14px;min-height:57px;box-shadow:0 1px 3px #23473603}.filters>label{display:flex;align-items:center}.filters select{min-width:145px;height:35px;font-size:12px}.filters #datePreset{min-width:96px}.date-range{display:flex;align-items:center;gap:7px;min-height:35px;border:1px solid #dce4eb;border-radius:6px;padding:0 9px;color:#647a8f;background:#fff}.date-range>.icon{width:17px;height:17px;margin-right:1px}.date-range label{display:flex;min-width:0}.date-range input{border:0;border-radius:0;padding:5px 0;background:transparent;min-width:0;width:112px;font-size:12px;box-shadow:none}.date-range input::-webkit-calendar-picker-indicator{width:12px;opacity:.55;cursor:pointer}.date-range>span{font-size:11px;color:#91a1b3}.filter-actions{display:flex;gap:12px;margin-left:auto}.filter-actions button{height:34px;padding:7px 18px;font-size:12px}.filter-actions .icon{width:16px;height:16px}
.metrics{display:grid;grid-template-columns:1.08fr 1fr 1fr 1fr;gap:14px;margin-bottom:15px}.metric{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:19px 20px 17px;min-height:141px;overflow:hidden;box-shadow:0 2px 5px #294c3a02}.metric-title{display:flex;align-items:center;gap:10px;font-size:12px;color:#607083;font-weight:500;min-height:22px}.metric-title>.icon{color:#254f4b;width:20px;height:20px}.metric strong{display:block;font-size:32px;line-height:1.15;font-weight:620;letter-spacing:.1px;margin:15px 0 16px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric small{display:block;font-size:11px;color:#8290a3;line-height:1.5}.featured{background:linear-gradient(120deg,#16604d,#114f3f);border-color:#145b47;color:#fff}.featured .metric-title,.featured .metric-title>.icon{color:#e3f0e9}.featured small{color:#d4e9dd}.featured strong{position:relative;z-index:1;color:#fff;font-weight:620;padding-right:30px}.total-sparkline{position:absolute;right:18px;top:51px;width:52px;height:32px;opacity:.7;pointer-events:none}.total-sparkline polyline{fill:none;stroke:#bde2ca;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.info-button{border:0;box-shadow:none;background:none;color:#d6eade;padding:0;min-height:16px;width:16px;height:16px;gap:0}.info-button>.icon{width:14px;height:14px}.info-button:hover{background:#ffffff18;color:#fff}.status-metric{font-size:26px!important}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:15px;overflow:hidden;box-shadow:0 1px 4px #294c3a02}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 17px 12px}.panel-heading p{font-size:11px;margin:7px 0 0}.tag{display:inline-block;background:#edf6f0;color:#397c64;padding:4px 9px;border-radius:5px;font-size:10px;white-space:nowrap}.income-chart-panel{position:relative}.income-chart-panel .panel-heading{padding-bottom:6px}.chart-legend{display:flex;gap:16px;align-items:center;font-size:11px;color:#8491a1}.chart-legend span{display:flex;gap:6px;align-items:center}.legend-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.legend-dot.collected{background:#216c53}.legend-dot.waiting{background:#b3bfca}.legend-dot.missing{background:#cda567}.coverage-box{margin:0 17px 0;font-size:11px;color:#7d8d96}.coverage-box summary{cursor:pointer;display:inline-block;line-height:1.8;list-style:none}.coverage-box summary::after{content:'⌄';padding-left:6px}.coverage-box.has-gaps summary{color:#a47b38}.coverage-box>div{background:#fafbf8;border:1px solid #e8ebe2;border-radius:6px;padding:10px 12px;line-height:1.8;margin:8px 0}.chart{height:239px;padding:10px 20px 14px 17px}.chart-canvas{position:relative;height:100%;min-width:0}.chart-plot{position:absolute;left:40px;right:3px;top:17px;bottom:23px}.chart-grid{position:absolute;inset:0;border-left:1px solid #d9e1e8}.chart-grid-line{position:absolute;left:0;right:0;border-top:1px solid #e8eef2;height:0;pointer-events:none}.chart-grid-line.zero{border-color:#d7e0e7}.chart-y-label{position:absolute;left:-40px;top:0;width:31px;text-align:right;transform:translateY(-50%);font-size:10px;font-variant-numeric:tabular-nums;color:#8794a4}.chart-columns{position:absolute;inset:0;display:grid;gap:0}.chart-day{position:relative;height:100%;min-width:0}.chart-hit{position:absolute;inset:0;width:100%;height:100%;min-height:0;padding:0;border:0;background:none!important;box-shadow:none;border-radius:0;display:block;color:inherit}.chart-hit:focus-visible{outline:2px solid #8bb8a6;outline-offset:3px;border-radius:4px}.income-bar{position:absolute;left:50%;transform:translateX(-50%);width:64%;max-width:82px;min-width:3px;border-radius:5px 5px 0 0;background:linear-gradient(180deg,#7cb793,#93c7a1);transition:filter .12s;pointer-events:none}.chart-hit:hover .income-bar,.chart-hit:focus-visible .income-bar{filter:brightness(.94)}.income-bar.negative{background:#ce978b;border-radius:0 0 4px 4px}.chart-value{position:absolute;left:50%;transform:translate(-50%,-100%);font-size:10px;color:#708093;padding-bottom:5px;white-space:nowrap;pointer-events:none;font-variant-numeric:tabular-nums}.chart-date{position:absolute;bottom:-22px;left:50%;transform:translateX(-50%);font-size:10px;color:#8491a2;white-space:nowrap}.chart-day.pending .income-bar{background:#f0f3f5;border:1px dashed #cdd6df}.chart-day.missing .income-bar{background:repeating-linear-gradient(135deg,#faf4e7,#faf4e7 5px,#fffaf1 5px,#fffaf1 10px);border:1px dashed #d8bd83}.chart-day.partial .income-bar{background:#b6ad83}.chart-day.pending .chart-value{color:#8b96a5}.chart-day.missing .chart-value{color:#ae8b51}.chart-columns.dense .chart-value{opacity:0}.chart-columns.dense .chart-hit:hover .chart-value,.chart-columns.dense .chart-hit:focus .chart-value{opacity:1}.chart-tooltip{position:fixed;background:#195747;color:#fff;padding:9px 12px;border-radius:5px;box-shadow:0 4px 12px #183c3030;pointer-events:none;z-index:80;max-width:250px;font-size:11px;line-height:1.5}.chart-tooltip strong{display:block;font-size:16px;font-weight:550;margin-top:2px;white-space:nowrap}.chart-tooltip small{display:block;font-size:10px;color:#d1e4dd;margin-top:3px}.chart-tooltip::after{content:'';position:absolute;left:50%;bottom:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #195747;transform:translateX(-50%)}
.accounts-heading{padding:14px 16px 12px;display:flex;justify-content:space-between;align-items:center;gap:15px}.account-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:end}.account-tools input,.account-tools select,.account-tools button{font-size:11px;height:31px;min-height:31px}.account-tools select{max-width:140px;min-width:100px}.account-tools button{padding:6px 12px}.account-tools .icon{width:15px;height:15px}#accountsTotal{color:#8593a4;font-size:11px;white-space:nowrap;margin-right:2px}.search-field{display:flex;align-items:center;gap:5px;padding-left:9px;border:1px solid #dce4eb;border-radius:6px;background:white;height:31px}.search-field>.icon{width:13px;height:13px;color:#91a1b7}.search-field input{border:0;background:none;box-shadow:none;min-width:0;width:167px;padding:6px 5px;font-size:11px}.search-field input::placeholder{color:#a0adbf}.table-wrap{overflow-x:auto;width:100%}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:11px;font-weight:500;color:#82909f;background:#f5f8f8;padding:13px 16px;white-space:nowrap}td{font-size:12px;line-height:1.6;padding:14px 16px;border-bottom:1px solid #edf1f3;font-variant-numeric:tabular-nums;color:#37465b}td small{display:block;font-size:10px;color:#8d99a9;line-height:1.5;margin-top:5px}td button{font:inherit;border:0;box-shadow:none;background:none;text-align:left;padding:0;min-height:0;line-height:1.7;white-space:normal;justify-content:start}td.money{font-weight:600;color:#255843}td a:hover{text-decoration:underline}.accounts-table{min-width:790px;width:calc(100% - 32px);margin:0 16px}.accounts-table th{padding:11px 10px;background:#f4f7f7;font-size:11px}.accounts-table td{padding:12px 10px;font-size:12px;vertical-align:middle}.accounts-table th:first-child{border-radius:5px 0 0 5px}.accounts-table th:last-child{border-radius:0 5px 5px 0}.accounts-table .check-column{width:30px}.accounts-table th:nth-child(2){width:20%}.accounts-table th:nth-child(3){width:15%}.accounts-table th:nth-child(4){width:13%}.accounts-table th:nth-child(5){width:18%}.accounts-table th:nth-child(6){width:15%}.account-row:hover{background:#fbfdfb}.account-row.selected{background:#f1f8f3}.author-cell{display:flex;align-items:center;gap:12px;min-width:130px}.account-name{font-size:12px;font-weight:550;color:#253c42;max-width:200px;overflow-wrap:anywhere}.author-avatar{width:28px;height:28px;border-radius:50%;background:#1d705b;display:grid;place-items:center;flex-shrink:0;color:#fff}.author-avatar .icon{width:18px;height:18px;stroke-width:1.5}.avatar-1{background:#8eb2f6}.avatar-2{background:#b69cdf}.avatar-3{background:#b5c0cb}.group-tag{display:inline-block;font-size:11px;border-radius:12px;padding:2px 12px;color:#6e7e91;background:#edf1f3;white-space:nowrap}.group-tag.color-0{background:#e9f5ee;color:#267557}.group-tag.color-1{background:#eaf0fc;color:#467fd8}.group-tag.color-2{background:#f3ebfc;color:#9b62cf}.group-tag.color-3{background:#fff2e6;color:#b18043}.account-income{color:#233640!important;font-weight:600;font-size:13px!important;white-space:nowrap}.status-pill{display:inline-flex;align-items:center;gap:7px;border-radius:12px;background:#ebf8ef;color:#287c60;padding:3px 10px;font-size:11px;white-space:nowrap}.status-pill::before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}.status-pill.warning{color:#ed8535;background:#fff3e6}.status-pill.muted{color:#8c99a8;background:#f0f3f5}.status-pill.working{color:#5689c1;background:#edf4fc}.row-actions{display:flex;align-items:center;gap:13px;justify-content:space-between;white-space:nowrap}.detail-link{display:inline-flex;align-items:center;justify-content:center;padding:4px 17px;border:1px solid #dce4eb;border-radius:5px;font-size:10px;min-height:27px;background:#fff;color:#3d5269;white-space:nowrap}.detail-link:hover{background:#eff5f1;text-decoration:none}.row-more{padding:3px!important;color:#8292a4;min-width:24px;min-height:26px;justify-content:center!important}.row-more .icon{width:18px;height:18px}.sort-button{display:inline-flex;gap:5px;align-items:center;color:inherit;border:0;box-shadow:none;padding:0;background:none;min-height:0;font-size:11px}.sort-button .icon{width:13px;height:13px}.sort-button:hover{background:none;color:#1e6450}.account-pagination{display:flex;justify-content:space-between;align-items:center;padding:13px 16px 14px;gap:12px;font-size:10px;color:#8a98aa}.account-pagination>div:first-child{display:flex;gap:25px}.pagination-controls,.page-numbers{display:flex;align-items:center;gap:6px}.icon-button{padding:3px;width:27px;height:27px;min-height:27px}.icon-button .icon{width:13px;height:13px}.page-numbers button{min-width:27px;min-height:27px;padding:3px 7px;font-size:11px;color:#6b7e92;box-shadow:none}.page-numbers .current-page{color:white;background:#1d6250;border-color:#1d6250;box-shadow:0 2px 5px #1d625025}.page-numbers>span{padding:0 5px}#accountPageSize{font-size:10px;height:27px;min-height:27px;padding:3px 7px;margin-left:5px}.selection-tools{display:flex;gap:8px;padding:0 16px 10px}.selection-tools button{font-size:10px;min-height:26px;padding:3px 8px;box-shadow:none}.account-menu{display:none;position:fixed;inset:auto;margin:0;padding:5px;min-width:165px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 7px 28px #183f3320;z-index:95}.account-menu:popover-open{display:flex;flex-direction:column}.account-menu button{border:0;box-shadow:none;text-align:left;justify-content:start;font-size:12px;padding:9px 11px}
.utility-rail{display:flex;align-items:center;gap:18px;padding:8px 16px;min-height:42px;background:#fff;border:1px solid var(--line);border-radius:8px;margin-bottom:14px}.utility-rail button{border:0;box-shadow:none;min-height:24px;padding:2px 5px;color:#477566;font-size:11px;gap:9px}.utility-rail .icon{width:16px;height:16px}.rail-divider{height:15px;border-left:1px solid #e2e9ed}.rail-caption{display:flex;align-items:center;gap:10px;margin-left:auto;font-size:10px;color:#91a0b0}.rail-caption .icon{transform:rotate(90deg);width:12px;height:12px}#railQueueCount{color:#94a2b1;font-size:10px}#operationsPanel:not([open]),#queuePanel:not([open]){display:none}.queue-summary{list-style:none;display:flex;justify-content:space-between;gap:13px;align-items:center;padding:16px 18px;cursor:pointer;font-size:14px;font-weight:550}.queue-summary::-webkit-details-marker{display:none}.queue-summary::after{content:'⌄';color:#94a29e}.queue-summary>span:first-child{margin-right:auto}.queue-summary>span:last-child{font-size:11px;font-weight:400;color:#8592a3}.queue-body{padding:5px 18px 20px}.queue-stats{display:flex;gap:25px;flex-wrap:wrap;font-size:11px;color:#839486}.queue-stats b{font-size:22px;color:#3d7255;margin-right:6px}.queue-body progress{width:100%;height:8px;accent-color:#5e9975;margin:15px 0 5px}.queue-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.queue-actions button{font-size:11px}.schedule-label{font-size:11px;color:#859586;display:flex;gap:9px;align-items:center}.schedule-label select{font-size:11px}.logs{padding:13px 17px;font-size:11px;color:#8a98a4;background:#ffffff80}.logs>summary{cursor:pointer}.log{padding:10px 0;border-bottom:1px solid #edf0ed;line-height:1.8}.log b{font-weight:500;color:#586f60}footer{font-size:10px;color:#a1acb7;text-align:center;padding:3px 0 7px}
.detail-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);padding:10px 0;margin:0 0 15px;position:sticky;top:0;z-index:10;background:var(--bg)}.detail-tabs button{box-shadow:none;border:0;background:transparent;padding:9px 20px;color:#7c8d99}.detail-tabs button[aria-selected=true]{color:#fff;background:var(--green)}.book-selection{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#edf5f0;padding:10px 14px;margin-bottom:15px;border-radius:7px;color:#527660;font-size:12px}.book-selection button{font-size:10px;padding:5px 9px;min-height:27px}.pagination{display:flex;justify-content:end;align-items:center;gap:12px;padding:13px 16px;color:#8b99a4;font-size:11px}.pagination button{font-size:11px;padding:6px 10px;min-height:30px}#booksPanel table{table-layout:fixed;min-width:800px}#booksPanel th,#booksPanel td{padding-left:12px;padding-right:12px}#booksPanel th:first-child{width:24%}#booksPanel th:nth-child(2){width:19%}#booksPanel th:nth-child(n+3){width:19%}.stat-trend-link{display:flex;flex-direction:column;align-items:start;gap:5px;width:124px!important;cursor:pointer;border-radius:6px!important}.stat-trend-link:hover{background:#f3f7f4}.stat-trend-link strong{font-size:16px;font-weight:600;color:#345443}.stat-change{font-size:10px;white-space:nowrap;font-variant-numeric:tabular-nums}.stat-change.up{color:#2b8b62}.stat-change.down{color:#c57262}.stat-change.neutral,.stat-comparison-date{color:#92a097}.stat-comparison-date{font-size:9px}.stat-sparkline{width:124px;height:32px;margin-top:3px;overflow:visible}.stat-sparkline polyline{fill:none;stroke:#85ac94;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.stat-sparkline circle{fill:#658f76;stroke:#fff;stroke-width:1}.stat-trend-range{font-size:9px;color:#95a39c}#booksPanel td.money small{font-weight:400;font-size:10px;line-height:1.5}.empty{display:grid;place-items:center;min-height:120px;text-align:center;color:#9da9b1;font-size:12px;line-height:1.9}
.operations-inner{padding:0 18px 20px}.operations-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:10px 0}.operations-tabs [role=tab]{border:0;background:#f1f6f3;font-size:12px;box-shadow:none}.operations-tabs [aria-selected=true]{background:var(--green);color:#fff}.operations-tabs #refreshOperations{margin-left:auto;font-size:11px}.op-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:17px 0}.op-controls label{font-size:11px;color:#7f9098;display:flex;flex-direction:column;gap:7px}.op-controls input,.op-controls select,.op-controls button{font-size:12px}.op-controls input{max-width:200px}.op-controls .check-label{flex-direction:row;align-items:center;min-height:36px}.month-cards{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:17px 0}.month-cards article{padding:22px;border-radius:8px;background:#f1f7f2;border:1px solid #dfebe2}.month-cards span,.month-cards small{display:block;color:#84958a;font-size:11px;line-height:1.8}.month-cards strong{display:block;font-size:27px;font-weight:600;color:#27674e;margin:13px 0}.month-cards progress{width:100%;height:8px;margin-top:12px;accent-color:#579574}.operations-inner h3{font-size:14px;font-weight:550;color:#4c715e;margin:23px 0 12px}.contributor{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid #edf2ed;font-size:12px}.contributor strong{white-space:nowrap;color:#4a825f}.operations-inner td a,.alert-item a{color:#367553}.alert-item{border:1px solid var(--line);border-radius:8px;margin:12px 0;padding:16px}.alert-item>div{display:flex;gap:10px;align-items:center}.alert-item strong{font-size:13px}.alert-item small{font-size:10px;color:#8a9d92;margin-left:auto}.alert-item p{overflow-wrap:anywhere}.alert-item a,.alert-item button{font-size:11px}.alert-item button{margin-left:16px;padding:5px 10px;min-height:26px}.alert-item.resolved{opacity:.65}.rule-settings{font-size:12px;color:#7e8d82;margin-top:20px;padding:16px;background:#f7faf6;border-radius:8px}.rule-settings summary{cursor:pointer}#operationsError{color:#bb7350}#alertBadge:empty{display:none}#alertBadge{font-size:10px;background:#ff7d37;color:white;border-radius:10px;min-width:18px;text-align:center;padding:2px 5px;margin-left:auto}
dialog{border:1px solid var(--line);border-radius:13px;padding:27px;width:440px;max-width:92vw;box-shadow:0 22px 90px #102e3b28;color:var(--ink)}dialog::backdrop{background:#16352a50;backdrop-filter:blur(3px)}dialog h2{font-size:18px;margin-bottom:10px}dialog label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#637c6e;margin-top:19px}dialog p{line-height:1.8}.hint{font-size:11px}.dialog-actions{display:flex;justify-content:end;gap:10px;margin-top:22px}#toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);max-width:min(660px,90vw);background:#234e3f;color:#fff;padding:12px 19px;border-radius:8px;z-index:120;font-size:12px;line-height:1.8;box-shadow:0 7px 25px #143f3025}.is-loading .icon{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1700px){main{padding-left:32px;padding-right:32px}.metric strong{font-size:36px}.chart{height:270px}.accounts-table td{padding-top:15px;padding-bottom:15px}}
@media(max-width:1200px){.account-tools{gap:7px}.account-tools select{min-width:80px;max-width:100px}.search-field input{width:135px}.accounts-heading{align-items:start}.metric{padding:17px 15px}.metric strong{font-size:28px}.metric-title{gap:7px;font-size:11px}.filters{gap:9px}.filters select{min-width:115px}.filter-actions{gap:7px}.filter-actions button{padding:7px 11px}.date-range input{width:108px}.total-sparkline{opacity:.35;right:11px;width:40px}}
@media(max-width:1000px){#appSidebar{width:180px}.brand{font-size:19px;gap:7px}.tomato-logo{width:31px}.nav{font-size:13px;padding-left:13px;gap:11px}main{margin-left:180px;padding:20px 18px}.filters{flex-wrap:wrap}.filter-actions{margin-left:auto}.metrics{gap:10px}.metric strong{font-size:26px}.metric-title .icon{width:17px;height:17px}.metric small{font-size:10px}.accounts-heading{flex-direction:column;gap:10px}.account-tools{width:100%;justify-content:start}.search-field{flex:1}.search-field input{width:100%}#accountsTotal{margin-right:auto}.total-sparkline{display:none}}
@media(max-width:760px){#appSidebar{width:218px;transform:translateX(-100%);transition:transform .2s;background:#fbfdfc;box-shadow:7px 0 35px #123f3020}.nav-open #appSidebar{transform:translateX(0)}.nav-backdrop{display:block;position:fixed;inset:0;width:100%;height:100%;border:0;background:#163a2b40;z-index:25;border-radius:0}.mobile-menu{display:inline-flex;width:31px;height:32px;min-height:32px;padding:4px;background:none;border:0;box-shadow:none}.mobile-menu .icon{width:21px;height:21px}main{margin-left:0;padding:17px 14px}.page-header{margin-bottom:14px;min-height:60px}.page-heading{gap:7px;align-items:start}h1{font-size:22px}#pageDescription{font-size:11px}.header-actions{gap:7px}.header-actions button{height:34px;min-height:34px;font-size:11px;padding:7px 10px}.header-actions .icon{width:15px;height:15px}.header-status{font-size:10px;margin-top:8px}#notice{font-size:10px}.filters{padding:9px;gap:8px}.filters select{font-size:11px;min-width:105px}.date-range{flex:1;justify-content:center;padding:0 6px;gap:3px}.date-range input{font-size:11px;width:105px}.date-range .icon{display:none}.filter-actions{margin-left:auto}.filter-actions button{font-size:11px;min-height:32px}.metrics{grid-template-columns:1fr 1fr;gap:10px}.metric{min-height:125px;padding:15px}.metric strong{font-size:28px;margin:13px 0}.metric-title{font-size:11px}.metric small{font-size:10px}.featured strong{padding:0}.chart{height:210px;padding:8px 13px 14px 10px}.chart .chart-value{font-size:9px}.chart-legend{gap:9px;font-size:10px}.panel-heading{padding:14px 13px 9px}h2{font-size:15px}.accounts-heading{padding:13px}.account-tools{gap:7px}#accountsTotal{font-size:10px}.search-field{flex:1;min-width:145px}.account-tools select{max-width:100px}.accounts-table{margin:0 12px;width:calc(100% - 24px)}.account-pagination{flex-wrap:wrap;padding:12px}.account-pagination>div:first-child{gap:16px}.utility-rail{gap:8px;padding:8px 10px}.utility-rail button{font-size:10px;gap:5px;padding:2px}.utility-rail .icon{width:14px;height:14px}.rail-caption{display:none}.queue-summary{padding:14px;flex-wrap:wrap;font-size:12px}.queue-summary>span:last-child{font-size:10px}.detail-tabs button{font-size:12px;padding:8px 15px}.book-selection{align-items:start;font-size:11px}.operations-inner{padding:0 13px 17px}.month-cards{grid-template-columns:1fr}.op-controls{gap:9px}.op-controls input{max-width:165px}.alert-item>div{flex-wrap:wrap}.breadcrumb{font-size:11px}.page-header .header-actions #detailLogin{max-width:135px;overflow:hidden;text-overflow:ellipsis}.selection-tools{padding-left:12px}footer{font-size:9px}}
@media(max-width:420px){.page-header{flex-wrap:wrap;gap:10px}.header-right{width:100%;display:flex;align-items:center;justify-content:space-between;flex-direction:row-reverse}.header-status{margin:0}#pageDescription{font-size:12px}.metric strong{font-size:24px}.date-range{order:3;flex-basis:100%;justify-content:start;gap:8px}.date-range .icon{display:block}.date-range input{width:120px}.filter-actions{order:2}.filters #datePreset{min-width:75px}.pagination-controls{gap:4px}.page-numbers{gap:4px}.account-pagination>div:first-child{font-size:10px}.chart-legend{gap:7px}.chart-columns .chart-value{display:none}.chart-hit:hover .chart-value,.chart-hit:focus .chart-value{display:block}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.accounts-table{min-width:720px}.nav.active use[href="#i-home"]{fill:currentColor}@media(max-width:420px){.chart-columns:not(.dense) .chart-day.pending .chart-value,.chart-columns:not(.dense) .chart-day.missing .chart-value{display:block}}

@media(max-width:420px){.filters select{min-width:100px}.filter-actions button{padding:6px 9px;gap:5px}.filter-actions .icon{width:15px;height:15px}}
/* Readability and interaction refinements */
:root{--muted:#687a8e}.metric small{color:#687c91;font-size:12px}.featured small{color:#d4e9dd}.chart-y-label,.chart-date{color:#697c91;font-size:11px}.account-pagination{font-size:11px;color:#6e8094}.accounts-table th{font-size:12px;color:#687b8e}.accounts-table td{font-size:13px}.account-name{font-size:13px}.account-income{font-size:14px!important}.group-tag{color:#617185}.chart-value{color:#657991}.chart-legend{color:#65778b}.connection-banner{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:13px;padding:11px 14px;border:1px solid #ecd7b4;background:#fff8ec;border-radius:8px;color:#966828;font-size:12px;line-height:1.7}.connection-banner button{font-size:11px;flex-shrink:0}.connection-lost .header-status .dot{background:#d99748;box-shadow:0 0 0 5px #fbf0dc}.draft-state{font-size:11px;color:#a17134;align-self:center}.chart-empty{height:100%;align-content:center;gap:8px;padding:24px}.chart-empty strong{font-size:15px;color:#688273}.chart-empty span{font-size:12px;max-width:420px}.sort-button{font-size:12px}.detail-link{font-size:11px}.row-more{min-width:30px;min-height:30px!important}.icon-button{min-height:30px;height:30px;min-width:30px}
@media(max-width:600px){
  .accounts-table{display:block;min-width:0;width:auto;margin:0 12px}.accounts-table thead{display:block}.accounts-table thead tr{display:flex}.accounts-table thead th{display:none}.accounts-table thead th:first-child{display:flex;align-items:center;gap:10px;width:100%;background:#f5f8f6;padding:10px 12px}.accounts-table thead th:first-child::after{content:'全选本页';font-size:11px;color:#718477}.accounts-table tbody{display:grid;gap:10px;padding-top:10px}.accounts-table .account-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;grid-template-rows:auto auto auto;column-gap:9px;row-gap:8px;padding:12px;border:1px solid #e3ebe6;border-radius:9px;align-items:center}.accounts-table .account-row td{display:block;border:0;padding:0;font-size:12px;min-width:0}.accounts-table .account-row td:nth-child(1){grid-column:1;grid-row:1}.accounts-table .account-row td:nth-child(2){grid-column:2;grid-row:1}.accounts-table .account-row td:nth-child(3){grid-column:2;grid-row:2;color:#6e8094;font-size:11px}.accounts-table .account-row td:nth-child(4){grid-column:2;grid-row:3}.accounts-table .account-row td:nth-child(5){grid-column:3;grid-row:1;text-align:right;white-space:nowrap;font-size:14px!important}.accounts-table .account-row td:nth-child(6){grid-column:3;grid-row:2;text-align:right}.accounts-table .account-row td:nth-child(7){grid-column:3;grid-row:3}.accounts-table .author-cell{min-width:0;gap:7px}.accounts-table .author-avatar{display:none}.accounts-table .account-name{font-size:13px;line-height:1.6}.accounts-table .group-tag{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:10px;padding:2px 9px}.accounts-table .status-pill{font-size:10px;padding:2px 8px;gap:5px}.accounts-table .row-actions{justify-content:end;gap:9px}.accounts-table .detail-link{font-size:11px;padding:4px 9px;min-height:28px}.account-pagination{gap:10px}.metric small{font-size:11px}.header-actions button{min-height:36px}.connection-banner{align-items:start;flex-direction:column;gap:7px}.chart-y-label,.chart-date{font-size:10px}
}

.selection-tools{align-items:center;flex-wrap:wrap}.selection-tools>span{font-size:11px;color:#70816f;margin-right:5px}.manage-preview{padding:10px 12px;background:#f1f6f2;border:1px solid #e1e9de;border-radius:7px;font-size:12px;color:#50725b}.operations-tabs button:focus-visible{outline:3px solid #80b8a680;outline-offset:2px}

/* Guided multi-account sign-in */
.onboarding-dialog{width:480px;max-height:90dvh;overflow:auto}.dialog-eyebrow{font-size:11px;color:var(--green);letter-spacing:.08em}.onboarding-dialog h2{margin-top:8px}.onboarding-dialog p{font-size:12px;color:#52695f}.onboarding-tabs{display:flex;gap:6px;background:#f0f5f1;padding:4px;border-radius:9px;margin:19px 0}.onboarding-tabs button{flex:1;border:0;background:transparent;box-shadow:none}.onboarding-tabs [aria-selected=true]{background:white;color:var(--green);box-shadow:0 2px 5px #173c2910}.onboarding-tip{display:grid;gap:7px;padding:16px;background:#f2f7f1;border-radius:9px;margin:19px 0;font-size:12px;color:#56745f}.onboarding-tip strong{color:#315741}.text-button{border:0;box-shadow:none;color:var(--green);background:transparent;padding:4px 0;min-height:28px;font-size:12px}.login-account{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:15px;background:#f5f8f4}.login-account .icon{width:22px;height:22px;color:var(--green)}.login-message{min-height:20px;overflow-wrap:anywhere}.login-message:not(:empty){padding:11px 13px;background:#fff7e9;border-radius:7px;color:#805c29}.login-message.login-success{background:#eaf5eb;color:#286546}.verification-input{display:flex;gap:8px;align-items:center}.verification-input input{min-width:0;flex:1}.verification-input button{white-space:nowrap;font-size:12px}.onboarding-dialog .inline-check{display:flex;flex-direction:row;align-items:flex-start;gap:9px;line-height:1.7;font-size:12px}.inline-check input{margin-top:3px;flex:none}.login-consent a{color:#286546;text-decoration:underline}.wide-button{width:100%;margin-top:17px}.onboarding-dialog input[type=tel],.onboarding-dialog input[type=password],.onboarding-dialog select{width:100%}.onboarding-dialog .hint{font-size:11px;color:#6b7c72}.onboarding-dialog [hidden]{display:none!important}@media(max-width:600px){.onboarding-dialog{padding:21px;max-width:calc(100vw - 24px)}.verification-input button{padding:8px}.onboarding-dialog .dialog-actions{flex-wrap:wrap}}
.login-message:empty{display:none}

.auth-page{display:grid;place-items:center;min-height:100dvh;padding:24px}.auth-page .auth-card{margin:0;width:420px;max-width:100%;padding:36px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 20px 80px #1743300e}.auth-card h1{font-size:26px;margin:16px 0}.auth-card p,.auth-card small{font-size:12px;line-height:1.8;color:#5b7164}.auth-card label{display:grid;gap:9px;margin-top:22px;font-size:13px}.auth-card input{width:100%}#adminError{color:#a34c33;min-height:20px}.remote-dialog{width:1060px;max-width:96vw;max-height:94dvh;overflow:auto}.remote-dialog h2{margin:0}.remote-dialog p{font-size:12px}#remoteFrame{display:block;width:100%;height:auto;border:1px solid var(--line);touch-action:none;user-select:none}.remote-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.remote-controls input{flex:1;min-width:180px}.remote-controls button{font-size:12px}

/* Six official daily reading and interaction metrics */
#statsPanel table{min-width:1020px}#statsPanel td:nth-child(2){min-width:220px}#statsPanel th:nth-child(n+3),#statsPanel .stat-number{text-align:right;font-variant-numeric:tabular-nums}#statsPanel th{white-space:nowrap}.stats-data-note{padding:0 18px;font-size:11px;line-height:1.7;color:#65796e}#booksPanel table{min-width:1200px}#booksPanel th:first-child{width:21%}#booksPanel th:nth-child(2){width:13%}#booksPanel th:nth-child(n+3){width:11%}
#statsPanel th:first-child,#statsPanel tbody td:first-child:not([colspan]){position:sticky;left:0;z-index:1;min-width:96px;background:#fff;box-shadow:1px 0 #e8eeea}#statsPanel th:first-child{background:#f4f7f5;z-index:2}
