:root{--ink:#18324f;--muted:#667c93;--line:#dfe8f3;--paper:#fff;--canvas:#f7faff;--green:#1476db;--green-dark:#0e5fbc;--pale:#eaf4ff;--gold:#ad7625;--red:#a84234;--shadow:0 3px 18px #174f8f08;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;font-size:14px;line-height:1.5;color-scheme:light;--header:#ffffff;--focus:#83b8f5;--status-idle:#b4c3d4;--control-border:#d4e1ef;--secondary-border:#cbdced;--secondary-hover:#f0f7ff;--secondary-hover-border:#93b8e0;--subtle:#8799ad;--placeholder:#9baabd;--faint:#a5b1c0;--notice-border:#d8e7f8;--notice-bg:#f0f7ff;--notice-ink:#375d86;--notice-muted:#6e86a0;--soft-line:#edf2f8;--table-head:#f7faff;--surface-hover:#f8fbff;--rating-bg:#eaf4ff;--rating-ink:#477bad;--gold-bg:#fbf2dc;--gold-ink:#a17721;--source-ink:#6486ab;--empty-ink:#7da3cc;--subsurface:#f9fbff;--capture-bg:#f2f7fd;--capture-ink:#778da6;--capture-border:#a6b8ce;--chip-border:#dae5f2;--chip-ink:#768fa9;--success:#46906b;--success-halo:#46906b10;--success-border:#b9d4c2;--success-bg:#eaf4ec;--success-ink:#367350;--warning-bg:#fcf1ea;--warning-border:#ebd5c4;--warning-ink:#a56a42;--warning-dot:#bf8d50;--task-ink:#4c6d91;--log-ink:#5c7795;--error-ink:#9b493b;--error-bg:#fbf0ea;--error-border:#efd8cc;--error-control-border:#e5c9bb;--action-border:#cbdff7;--action-bg:#edf6ff;--dialog-shadow:#183f6b33;--backdrop:#122d4c55;--continuous-border:#c6ddf7;--continuous-ink:#356fa8;--progress-ink:#47729f;--primary-bg:#1476db;}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button,a,input,select,textarea:focus-visible{outline-offset:3px}button:focus-visible,a:focus-visible{outline:3px solid var(--focus)}input:focus,select:focus,textarea:focus{outline:2px solid var(--focus);outline-offset:0;border-color:var(--focus)}a{color:var(--green)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.app-shell{max-width:1664px;margin:0 auto}.app-header{height:92px;display:flex;align-items:center;gap:44px;padding:0 48px;border-bottom:1px solid var(--line);background:var(--header)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-size:17px;font-weight:650;letter-spacing:.2px;white-space:nowrap}.brand small{display:block;font-size:11px;font-weight:400;letter-spacing:1.3px;color:var(--muted);margin-top:2px}.brand-mark{width:42px;height:45px;border-radius:12px 12px 12px 3px;background:var(--primary-bg);display:grid;place-items:center}.brand-mark svg{width:25px;height:25px;fill:none;stroke:white;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.view-tabs{display:flex;align-items:center;gap:28px;height:100%}.view-tab{padding:0 2px;height:100%;border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);font-size:14px}.view-tab.active{color:var(--green);border-bottom-color:var(--green);font-weight:650}.connection{margin-left:auto;display:flex;gap:8px;align-items:center;color:var(--muted);font-size:12px;white-space:nowrap}.status-dot{width:7px;height:7px;background:var(--status-idle);border-radius:50%}.connection.connected .status-dot{background:var(--success);box-shadow:0 0 0 4px var(--success-halo)}.connection.failed .status-dot{background:var(--red)}main{padding:38px 48px 20px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}.eyebrow{margin:0 0 8px;font-size:10px;letter-spacing:2.1px;font-weight:650;color:var(--green)}h1{font-size:29px;font-weight:650;letter-spacing:-.5px;line-height:1.3;margin:0 0 10px}h2{font-size:16px;font-weight:650;line-height:1.5;margin:0}p{margin:0}.page-description{color:var(--muted);font-size:13px}.heading-actions{display:flex;align-items:center;gap:9px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:39px;padding:9px 15px;border-radius:7px;border:1px solid transparent;font-size:12px;font-weight:550;text-decoration:none;white-space:nowrap;transition:background .15s,border-color .15s}.button.primary{background:var(--primary-bg);color:white}.button.primary:hover:not(:disabled){background:var(--green-dark)}.button.secondary{background:var(--paper);color:var(--ink);border-color:var(--secondary-border)}.button.secondary:hover:not(:disabled){background:var(--notice-bg);border-color:var(--secondary-hover-border)}.button.quiet{background:none;color:var(--muted)}.button.quiet:hover{background:var(--pale)}.button.wide{width:100%}.icon-button{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--muted);font-size:18px}.text-button{background:none;border:0;color:var(--green);font-size:12px;padding:4px 0;white-space:nowrap}.text-button:hover{text-decoration:underline}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric{padding:21px 24px 18px;background:var(--paper);border:1px solid var(--line);border-radius:9px;box-shadow:var(--shadow)}.metric>span{display:block;color:var(--muted);font-size:12px}.metric strong{display:block;font-size:33px;line-height:1.5;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.7px;margin:4px 0 1px}.metric small{color:var(--subtle);font-size:11px}.coverage-strip{display:flex;gap:12px;align-items:center;padding:14px 18px;margin-bottom:24px;border:1px solid var(--notice-border);border-radius:7px;background:var(--notice-bg);color:var(--notice-ink)}.coverage-icon{font-size:22px;line-height:1;align-self:flex-start;margin-top:0}.coverage-strip strong{font-size:12px;font-weight:600}.coverage-strip p{font-size:11px;line-height:1.6;color:var(--notice-muted);margin-top:2px}.coverage-strip>.text-button{margin-left:auto;font-size:11px;padding-left:12px}.card{background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.filter-form{padding:24px;border-bottom:1px solid var(--line)}.search-row{display:flex;gap:10px;align-items:center;margin-bottom:19px}.search-box{display:flex;align-items:center;gap:9px;flex:1;max-width:660px;position:relative}.search-box svg{position:absolute;left:12px;width:17px;height:17px;fill:none;stroke:var(--subtle);stroke-width:1.7;pointer-events:none}.search-box input{padding-left:37px;width:100%;height:40px}.filter-grid{display:grid;grid-template-columns:minmax(100px,1fr) minmax(118px,1.15fr) minmax(80px,.8fr) minmax(160px,1.5fr) minmax(100px,1fr) minmax(154px,1.5fr) auto;gap:16px;align-items:end}label{display:block;font-size:11px;font-weight:500;color:var(--muted)}input,select,textarea{display:block;width:100%;border:1px solid var(--control-border);border-radius:6px;background:var(--paper);color:var(--ink);padding:8px 10px;min-height:36px;font-size:12px;box-shadow:none;margin-top:6px}input::placeholder,textarea::placeholder{color:var(--placeholder)}input[type=search]{-webkit-appearance:none}input[type=checkbox]{width:14px;height:14px;min-height:0;padding:0;margin:0;accent-color:var(--green)}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button{opacity:.5}.input-with-suffix{position:relative}.input-with-suffix input{padding-right:39px}.input-with-suffix>span{position:absolute;right:10px;top:10px;font-size:11px;color:var(--subtle);pointer-events:none}.range-input{display:flex;gap:6px;align-items:center}.range-input input{min-width:0;padding-left:8px;padding-right:5px}.range-input>span{margin-top:5px;font-size:10px;color:var(--subtle)}.checkbox-field{display:flex;gap:7px;align-items:center;white-space:nowrap;height:36px;margin-bottom:0;font-size:11px;color:var(--ink)}.table-toolbar{min-height:62px;padding:17px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px}.table-toolbar strong{font-size:12px;font-weight:600}.subtle{font-size:11px;color:var(--subtle)}.table-toolbar .subtle{margin-left:12px}.table-status{font-size:11px;color:var(--muted)}.table-wrap{overflow:auto;min-height:70px}table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:1150px;text-align:left}th{background:var(--table-head);border-top:1px solid var(--soft-line);border-bottom:1px solid var(--line);padding:11px 18px;font-size:10px;color:var(--subtle);font-weight:550;white-space:nowrap}th:first-child,td:first-child{padding-left:24px}th:last-child,td:last-child{padding-right:24px}th.book-col{width:26%}th:nth-child(2){width:12%}th:nth-child(3){width:13%}th.access-col{width:14%}th:nth-child(5){width:12%}th:nth-child(6){width:17%}th.actions-col{width:6%}td{padding:17px 18px;border-bottom:1px solid var(--soft-line);vertical-align:middle;font-size:12px;overflow-wrap:anywhere}tbody tr:hover{background:var(--surface-hover)}tbody tr:last-child td{border-bottom:0}.book-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:600;font-size:13px;line-height:1.5;background:none;border:0;text-align:left;color:var(--ink);padding:0;cursor:pointer}.book-title:hover{color:var(--green)}.book-author,.cell-secondary{display:block;color:var(--subtle);font-size:10px;margin-top:4px;line-height:1.6}.rating-value{display:inline-block;font-size:16px;color:var(--green);font-weight:600;font-variant-numeric:tabular-nums}.rating-value .unit{font-size:10px;font-weight:400;margin-left:1px}.rating-chip{display:inline-block;font-size:9px;padding:2px 6px;border-radius:4px;background:var(--rating-bg);color:var(--rating-ink);margin-top:4px}.rating-chip.god{background:var(--gold-bg);color:var(--gold-ink)}.price-value{font-size:12px;font-variant-numeric:tabular-nums}.price-unit{font-size:10px;color:var(--subtle);margin-left:3px}.missing{color:var(--faint);font-size:11px}.book-source{font-size:18px;color:var(--source-ink);text-decoration:none;display:inline-grid;place-items:center;width:27px;height:27px;border:1px solid var(--line);border-radius:6px}.book-source:hover{background:var(--pale);color:var(--green)}.book-error-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--warning-dot);vertical-align:middle;margin-right:4px}.table-footer{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:16px 24px;border-top:1px solid var(--line)}.table-footer>p{font-size:10px;color:var(--subtle);line-height:1.7}.pagination{display:flex;gap:9px;align-items:center;white-space:nowrap;font-size:11px;color:var(--muted)}.pagination select{margin:0;min-height:30px;font-size:10px;padding:5px 21px 5px 8px}.pagination .icon-button{width:28px;height:28px;font-size:14px}.empty-state{padding:42px 20px 48px;text-align:center;border-top:1px solid var(--soft-line)}.empty-mark{height:54px;width:54px;display:grid;place-items:center;background:var(--rating-bg);border-radius:16px;color:var(--empty-ink);font-size:35px;line-height:1;margin:0 auto 14px}.empty-state h2{font-size:15px}.empty-state p{font-size:12px;color:var(--muted);margin:7px auto 18px;max-width:480px}.collection-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr);gap:22px}.capture-card,.task-card,.import-card,.logs-card,.coverage-detail{padding:24px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.card-heading p{color:var(--muted);font-size:11px;margin-top:5px}.capture-card #job-mode{margin-bottom:22px}.field-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}.field-heading .text-button{font-size:10px;margin-left:12px}.field-heading .subtle{font-size:10px;margin-left:8px}.category-checklist{margin:8px 0;padding:6px 12px;max-height:250px;min-height:80px;overflow:auto;border:1px solid var(--line);border-radius:6px;background:var(--subsurface);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.category-checklist>p{padding:10px 0;grid-column:1/-1}.category-choice{display:flex;align-items:center;gap:8px;min-height:33px;cursor:pointer;color:var(--ink);font-size:11px}.category-choice .category-count{font-size:9px;color:var(--subtle);margin-left:auto;padding-left:5px}.field-note{display:block;color:var(--subtle);font-size:10px;line-height:1.7;margin-top:6px}.job-limits{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.capture-notice{display:flex;gap:9px;padding:11px 13px;background:var(--capture-bg);border-radius:6px;margin:20px 0;color:var(--capture-ink);font-size:10px;line-height:1.8}.capture-notice>span{width:14px;height:14px;margin-top:2px;border:1px solid var(--capture-border);border-radius:50%;text-align:center;line-height:13px;flex-shrink:0;font-size:9px}.capture-side{display:flex;flex-direction:column;gap:22px}.state-chip{display:inline-block;padding:3px 9px;border:1px solid var(--chip-border);background:var(--capture-bg);color:var(--chip-ink);border-radius:12px;font-size:10px}.state-chip.running{border-color:var(--success-border);background:var(--success-bg);color:var(--success-ink)}.state-chip.failed{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-ink)}.task-message{min-height:44px;font-size:12px;line-height:1.8;color:var(--task-ink);overflow-wrap:anywhere}.task-card #job-phase{margin-top:4px}.task-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:21px 0;border:1px solid var(--line);border-radius:7px;padding:14px 0;text-align:center}.task-stats>div+div{border-left:1px solid var(--line)}.task-stats strong{display:block;font-size:24px;font-weight:550;font-variant-numeric:tabular-nums}.task-stats span{display:block;font-size:10px;color:var(--subtle);margin-top:4px}.task-controls{display:flex;gap:9px}.task-controls .button{flex:1}.import-card>p{font-size:11px;color:var(--muted);margin-top:5px}.import-card textarea{resize:vertical;min-height:100px;font-size:11px;line-height:1.8;margin:15px 0 10px}.logs-card{margin-top:22px}.logs-card .card-heading{margin-bottom:14px}.job-logs{max-height:250px;overflow:auto;font-size:11px;line-height:1.8}.log-line{display:grid;grid-template-columns:145px 1fr;gap:15px;border-top:1px solid var(--soft-line);padding:7px 0;color:var(--log-ink);overflow-wrap:anywhere}.log-line time{color:var(--subtle);font-variant-numeric:tabular-nums}.log-line.error{color:var(--red)}.coverage-detail{margin-top:22px}.coverage-detail ul{padding-left:18px;color:var(--muted);font-size:11px;line-height:1.9;margin:14px 0}.app-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;color:var(--subtle);padding:26px 0 8px}.notice{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:18px;padding:12px 16px;border-radius:7px;font-size:12px}.error-notice{color:var(--error-ink);background:var(--error-bg);border:1px solid var(--error-border)}.error-notice .icon-button{background:none;border-color:var(--error-control-border);flex-shrink:0}.action-status{font-size:12px;color:var(--green);min-height:0}.action-status:not(:empty){padding:11px 15px;margin-bottom:15px;border:1px solid var(--action-border);background:var(--action-bg);border-radius:6px}.book-dialog{width:min(620px,calc(100vw - 40px));max-height:85vh;overflow:auto;border:1px solid var(--line);border-radius:13px;padding:28px;box-shadow:0 30px 90px var(--dialog-shadow);color:var(--ink)}.book-dialog::backdrop{background:var(--backdrop);backdrop-filter:blur(2px)}.dialog-heading{display:flex;justify-content:space-between;gap:20px}.dialog-heading h2{font-size:20px}.dialog-heading .icon-button{flex-shrink:0}.detail-author{font-size:12px;color:var(--muted);margin:10px 0 23px}.book-dialog dl{display:grid;grid-template-columns:110px minmax(0,1fr);font-size:12px;gap:13px 15px}.book-dialog dt{color:var(--subtle)}.book-dialog dd{margin:0;overflow-wrap:anywhere}.dialog-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
@media(min-width:1450px){th.book-col{width:26%}.metric{padding-top:23px;padding-bottom:21px}.metric strong{font-size:36px}.filter-form{padding-top:26px;padding-bottom:26px}td{padding-top:20px;padding-bottom:20px}}
@media(max-width:1170px){.app-header{gap:24px;padding:0 28px}.view-tabs{gap:18px}main{padding:30px 28px 18px}.filter-grid{grid-template-columns:1fr .8fr 1.3fr}.checkbox-field{align-self:end}.collection-grid{grid-template-columns:1.2fr 1fr}.category-checklist{grid-template-columns:1fr}.heading-actions{gap:6px}.heading-actions .button{padding:8px 12px}.metric{padding:18px}.table-footer>p{max-width:330px}}
@media(max-width:820px){.app-header{height:auto;min-height:90px;padding:18px 20px 0;flex-wrap:wrap;gap:12px 22px}.brand{font-size:15px}.brand-mark{width:34px;height:38px}.connection{font-size:10px}.view-tabs{height:42px;order:3;flex-basis:100%;gap:25px}.view-tab{font-size:12px}.page-heading{align-items:flex-start;flex-direction:column;gap:18px}.heading-actions{width:100%;flex-wrap:wrap}.heading-actions .button{flex:1}main{padding:25px 20px 15px}h1{font-size:25px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric{padding:15px 17px}.metric strong{font-size:29px}.metric small{font-size:10px}.coverage-strip{align-items:flex-start;padding:12px}.coverage-strip>.text-button{white-space:normal;min-width:66px;text-align:right}.filter-form{padding:18px}.filter-grid{gap:12px;grid-template-columns:1fr 1fr}.search-row{flex-wrap:wrap;gap:8px}.search-box{flex-basis:100%;max-width:none}.search-row>.button{min-height:33px}.table-toolbar{padding:15px 18px}.table-footer{align-items:flex-start;flex-direction:column;gap:12px;padding:15px 18px}.table-footer>p{max-width:none}.pagination{align-self:flex-end}.collection-grid{grid-template-columns:1fr}.category-checklist{grid-template-columns:repeat(2,minmax(0,1fr))}.capture-card,.task-card,.import-card,.logs-card,.coverage-detail{padding:20px}.app-footer{font-size:9px;align-items:flex-start}.book-dialog{padding:22px}.book-dialog dl{grid-template-columns:90px 1fr;font-size:11px}.log-line{grid-template-columns:115px 1fr;font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.continuous-button{margin-top:10px;justify-content:space-between;background:var(--action-bg)!important;border-color:var(--continuous-border)!important;color:var(--continuous-ink)!important}.capture-card form>.field-note:last-child{margin-top:8px}
.coverage-strip p.entry-progress{color:var(--progress-ink);margin-top:6px;font-weight:500;font-variant-numeric:tabular-nums}.coverage-entry-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:20px 0;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.coverage-entry-stats>div{text-align:center}.coverage-entry-stats>div+div{border-left:1px solid var(--line)}.coverage-entry-stats strong{display:block;font-size:23px;font-weight:550;font-variant-numeric:tabular-nums}.coverage-entry-stats span{display:block;font-size:10px;color:var(--subtle);margin-top:3px}
.category-choice>span:not(.category-count){min-width:0;overflow-wrap:anywhere;line-height:1.5;padding:6px 0}.category-choice input,.category-choice .category-count{flex-shrink:0}
.admin-entry{font-size:11px;color:var(--muted);text-decoration:none;white-space:nowrap}.admin-entry:hover{color:var(--green);text-decoration:underline}.coverage-dialog ul{padding-left:18px;color:var(--muted);font-size:12px;line-height:1.9;margin:18px 0}.coverage-dialog .field-note{font-size:11px}.coverage-dialog .coverage-entry-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 8px}.coverage-dialog .coverage-entry-stats>div{border-left:0}.coverage-dialog .coverage-entry-stats strong{font-size:21px}@media(max-width:820px){.admin-entry{font-size:10px}.connection{margin-left:auto}.coverage-dialog .coverage-entry-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.catalog-scope{margin:-4px 0 20px;color:var(--muted);font-size:11px;line-height:1.7}.footer-data-info{margin-left:12px;padding:0;font-size:inherit}html[data-mode="public"] [data-export]{display:none!important}html[data-mode="admin"] #coverage-public-summary{display:none!important}@media(max-width:820px){.catalog-scope{margin-bottom:16px;font-size:10px}.app-footer{flex-wrap:wrap}.footer-data-info{margin-left:9px}}

/* Theme surfaces and controls share variables so the entire page follows the selected mode. */
:root[data-theme="dark"]{color-scheme:dark;--ink:#e1ebf7;--muted:#a4b6cc;--line:#2a3b52;--paper:#172335;--canvas:#0d1624;--green:#69afff;--green-dark:#2d89ec;--pale:#203853;--gold:#e0b55f;--red:#f19284;--shadow:0 3px 18px #00000026;--header:#111c2c;--focus:#6baeff;--status-idle:#5d718c;--control-border:#354b65;--secondary-border:#3b5270;--secondary-hover:#203853;--secondary-hover-border:#6294c8;--subtle:#9aabc2;--placeholder:#879ab3;--faint:#8396af;--notice-border:#2b4a6d;--notice-bg:#172d47;--notice-ink:#c2dfff;--notice-muted:#9ebcdd;--soft-line:#26384e;--table-head:#1b2b40;--surface-hover:#1d314b;--rating-bg:#203d5f;--rating-ink:#a9d1ff;--gold-bg:#45391f;--gold-ink:#f0cc78;--source-ink:#9dbfe5;--empty-ink:#9cc6f5;--subsurface:#132034;--capture-bg:#1b2d44;--capture-ink:#a8bfd9;--capture-border:#617f9f;--chip-border:#36516e;--chip-ink:#abc2db;--success:#75c99a;--success-halo:#75c99a20;--success-border:#39654f;--success-bg:#19372b;--success-ink:#9cdbb6;--warning-bg:#3a2b21;--warning-border:#6b4d38;--warning-ink:#edbb91;--warning-dot:#dcab70;--task-ink:#b3cce7;--log-ink:#a6bdd8;--error-ink:#f3b1a4;--error-bg:#3b2426;--error-border:#714247;--error-control-border:#805055;--action-border:#335981;--action-bg:#193451;--dialog-shadow:#00000080;--backdrop:#020710b3;--continuous-border:#365d87;--continuous-ink:#afd4ff;--progress-ink:#a6c8ef;--primary-bg:#2379d8;}
.book-dialog{background:var(--paper)}.app-header{gap:28px}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex-shrink:0;min-height:34px;padding:6px 10px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--muted);font:inherit;font-size:11px;white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.theme-toggle:hover{background:var(--pale);border-color:var(--secondary-hover-border);color:var(--green)}.theme-icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.theme-icon-day{display:none}:root[data-theme="dark"] .theme-icon-night{display:none}:root[data-theme="dark"] .theme-icon-day{display:block}.back-to-top{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:30;width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid var(--secondary-border);border-radius:14px;background:var(--paper);color:var(--green);box-shadow:0 4px 18px var(--dialog-shadow);cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.back-to-top:hover{background:var(--pale);border-color:var(--secondary-hover-border);transform:translateY(-2px)}.back-to-top svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1170px){.app-header{gap:18px}}@media(max-width:820px){.app-header{gap:12px 15px}.theme-toggle{font-size:10px;min-height:30px;padding:5px 8px}.theme-icon{width:14px;height:14px}.back-to-top{right:18px;bottom:calc(72px + env(safe-area-inset-bottom))}}@media(max-width:480px){.app-header{gap:10px 12px}.brand{flex-basis:100%}.connection{margin-left:0;margin-right:auto}.theme-toggle{margin-left:auto}.admin-entry{font-size:10px}.back-to-top{right:14px}}

/* Reserve a horizontal lane for the floating rocket at every scroll position. */
.table-footer{padding-right:80px}.app-footer{padding-right:56px}@media(max-width:820px){.pagination{max-width:100%;flex-wrap:wrap;justify-content:flex-end}}@media(max-width:480px){.pagination>label{flex-basis:100%;display:flex;justify-content:flex-end}.pagination select{width:auto}}

.access-label{display:inline-block;max-width:100%;padding:4px 7px;border-radius:5px;background:var(--rating-bg);color:var(--rating-ink);font-size:10px;line-height:1.6;overflow-wrap:anywhere}.access-label.unverified{background:var(--subsurface);color:var(--muted)}.filter-grid>label{min-width:0}.filter-grid select{min-width:0}
