:root{--app-bg:#e8e6e1;--chrome-bg:#f7f6f3;--fg:#1d1d1b;--page-bg:#fff}:root[data-theme=night]{--app-bg:#121110;--chrome-bg:#1b1a18;--fg:#d8d2c6;--page-bg:#1b1a18;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body{background:var(--app-bg);height:100%;color:var(--fg);margin:0;font-family:system-ui,sans-serif;overflow:hidden}#root{height:100%}.app{flex-direction:column;height:100%;display:flex}.toolbar{box-sizing:border-box;background:var(--chrome-bg);height:44px;color:var(--fg);border-bottom:1px solid color-mix(in srgb, var(--fg) 12%, transparent);-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:6px;padding:0 12px;font-size:14px;display:flex}.toolbar button{min-width:32px;height:32px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 8px;font-size:18px}.toolbar button:hover:not(:disabled){background:color-mix(in srgb, var(--fg) 10%, transparent)}.toolbar button:disabled{opacity:.45;cursor:default}.toolbar button[aria-pressed=true]{background:color-mix(in srgb, var(--fg) 14%, transparent)}.toolbar-spacer{flex:1}.zoom-level{text-align:center;font-variant-numeric:tabular-nums;min-width:3.5em}.page-indicator{font-variant-numeric:tabular-nums;margin-left:12px}.reader{background:var(--app-bg);flex:1;min-height:0;overflow:auto scroll}.reader-content{position:relative}.page{background:var(--page-bg);position:absolute;overflow:hidden;box-shadow:0 1px 3px #0000002e}.page-canvas,.page-base{width:100%;height:100%;display:block;position:absolute;inset:0}.photo-overlay{display:block;position:absolute}[data-theme=night] .page-base{filter:invert(.88)hue-rotate(180deg)sepia(.18)}[data-theme=night] .photo-overlay{filter:brightness(.85)}[data-theme=day] .photo-overlay{display:none}.loading{flex:1}.empty-state{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:16px;display:flex}.empty-state h1{margin:0;font-size:22px;font-weight:600}.empty-state p{opacity:.75;margin:0 0 12px}.button-primary{cursor:pointer;background:var(--fg);color:var(--app-bg);border-radius:8px;padding:10px 18px;font-weight:600;display:inline-block}.button-primary[aria-disabled=true]{opacity:.6;cursor:progress}.button-primary:focus-within{outline:2px solid var(--fg);outline-offset:2px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.toast{z-index:10;box-sizing:border-box;background:var(--chrome-bg);max-width:calc(100vw - 32px);color:var(--fg);border-radius:8px;align-items:center;gap:12px;padding:10px 12px 10px 16px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000040}.toast-close{color:inherit;cursor:pointer;background:0 0;border:0;font-size:18px}.notice{box-sizing:border-box;background:var(--chrome-bg);min-height:30px;color:var(--fg);border-bottom:1px solid color-mix(in srgb, var(--fg) 12%, transparent);flex:none;justify-content:center;align-items:center;gap:8px;padding:0 8px 0 16px;font-size:13px;display:flex}.modal-backdrop{z-index:20;box-sizing:border-box;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{box-sizing:border-box;background:var(--chrome-bg);width:min(540px,100%);max-height:100%;color:var(--fg);border-radius:10px;flex-direction:column;gap:10px;padding:16px 18px;display:flex;box-shadow:0 10px 40px #00000059}.modal:focus{outline:none}.modal h2{margin:0;font-size:18px;font-weight:600}.modal-header{justify-content:space-between;align-items:center;display:flex}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.icon-button{min-width:32px;height:32px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:20px}.icon-button:hover{background:color-mix(in srgb, var(--fg) 10%, transparent)}button.button-primary{font:inherit;border:0}button.button-primary:disabled{opacity:.45;cursor:default}.button-secondary{cursor:pointer;border:1px solid color-mix(in srgb, var(--fg) 35%, transparent);color:inherit;font:inherit;background:0 0;border-radius:8px;padding:10px 18px}.button-secondary:disabled{opacity:.45;cursor:default}.usage{flex-direction:column;gap:6px;font-size:13px;display:flex}.usage-text{font-variant-numeric:tabular-nums}.usage-bar{background:color-mix(in srgb, var(--fg) 14%, transparent);border-radius:3px;height:6px;overflow:hidden}.usage-fill{background:var(--fg);height:100%}.shelf-message{opacity:.75;margin:8px 0}.shelf-list,.cleanup-list{flex:1;min-height:0;margin:0 -8px;padding:0;list-style:none;overflow:auto}.shelf-book,.cleanup-row{box-sizing:border-box;text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;padding:8px;display:flex}.shelf-book:hover,.cleanup-row:hover{background:color-mix(in srgb, var(--fg) 7%, transparent)}.shelf-book[aria-current=true],.cleanup-row[aria-checked=true]{background:color-mix(in srgb, var(--fg) 13%, transparent)}.shelf-book:focus-visible,.cleanup-row:focus-visible{outline:2px solid var(--fg);outline-offset:-2px}.cleanup-row[aria-disabled=true]{cursor:default;opacity:.6}.thumb{object-fit:cover;object-position:top;border-radius:3px;flex:none;width:44px;height:58px}.thumb-empty{background:color-mix(in srgb, var(--fg) 12%, var(--chrome-bg))}[data-theme=night] img.thumb{filter:invert(.88)hue-rotate(180deg)sepia(.18)}.book-text{flex-direction:column;gap:2px;min-width:0;display:flex}.book-title,.book-detail{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.book-title{font-weight:600}.book-detail{opacity:.72;font-variant-numeric:tabular-nums;font-size:12.5px}.check{box-sizing:border-box;border:1.5px solid;border-radius:4px;flex:none;place-items:center;width:18px;height:18px;font-size:13px;line-height:1;display:grid}.cleanup-hint{opacity:.75;margin:0;font-size:13px}.cleanup-status{font-variant-numeric:tabular-nums;margin:0;font-size:13px}
