:root{color-scheme:light dark;--accent: #0f6b63;--accent-contrast: #ffffff;font-family:system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}header.appbar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--accent);color:var(--accent-contrast)}header.appbar h1{font-size:1.1rem;margin:0;flex:1}main{padding:16px;max-width:720px;margin:0 auto}button{font:inherit;padding:8px 16px;border-radius:20px;border:none;background:var(--accent);color:var(--accent-contrast);cursor:pointer}button.secondary{background:color-mix(in srgb,var(--accent) 15%,transparent);color:inherit}button:disabled{opacity:.5;cursor:default}input,textarea,select{font:inherit;padding:8px;border-radius:8px;border:1px solid color-mix(in srgb,currentColor 30%,transparent);background:transparent;color:inherit;width:100%}ul.booklist{list-style:none;padding:0;margin:0}ul.booklist li{display:flex;align-items:center;gap:8px;padding:12px 4px;border-bottom:1px solid color-mix(in srgb,currentColor 15%,transparent)}ul.booklist li .title{flex:1;cursor:pointer}.scanbanner{text-align:center;padding:12px;margin-bottom:16px;border-radius:12px;background:color-mix(in srgb,var(--accent) 12%,transparent)}.scanbanner p{margin:0 0 8px;font-weight:600}.muted{opacity:.65;font-size:.85rem}video.camera{width:100%;max-height:60vh;background:#000;border-radius:12px}.camerabox{position:relative}.camerabox .countdown{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:5rem;font-weight:700;color:#fff;text-shadow:0 0 16px rgba(0,0,0,.7);pointer-events:none}.pagegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px}.pagecell{position:relative}.pagecell img{width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:10px;cursor:pointer;display:block}.pagecell .badge{position:absolute;top:0;left:0;background:var(--accent);color:var(--accent-contrast);font-size:.8rem;padding:2px 8px;border-radius:10px 0}.pagecell .reorder{display:flex;gap:4px;margin-top:4px}.pagecell .reorder button{padding:2px 10px;font-size:.8rem}.editor .imagepane{overflow:auto;max-height:40vh;border-radius:10px;border:1px solid color-mix(in srgb,currentColor 15%,transparent)}.editor .imagepane img{display:block}.editor textarea{width:100%;resize:vertical}.pagetext{max-height:45vh;overflow-y:auto;white-space:pre-wrap;line-height:1.5;margin-bottom:12px}
