:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#000;--fg:#eee;--muted:#888;--panel:#1c1c1c;--accent:#3d8bfd}*{box-sizing:border-box}html,body,#root{background:var(--bg);width:100%;height:100%;color:var(--fg);overscroll-behavior:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none;margin:0;padding:0;font:16px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.library{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);position:fixed;inset:0;overflow-y:auto}.library header{background:var(--bg);border-bottom:1px solid #333;justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:sticky;top:0}.library .actions{align-items:center;gap:8px;display:flex}.sync-msg{border-bottom:1px solid #222;padding:10px 16px}.library h1{margin:0;font-size:18px}.toolbar{border-bottom:1px solid #222;gap:8px;padding:10px 16px;display:flex}.toolbar .search-wrap{flex:1;min-width:0;position:relative}.toolbar .search-icon{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.toolbar .search{width:100%;font:inherit;color:var(--fg);background:#111;border:1px solid #444;border-radius:8px;padding:10px 12px 10px 36px}.toolbar select{font:inherit;color:var(--fg);background:#111;border:1px solid #444;border-radius:8px;padding:10px}.doc-list{margin:0;padding:0;list-style:none}.doc-list li{border-bottom:1px solid #222;align-items:center;gap:8px;padding:6px 12px;display:flex}.doc-list .doc{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:10px 8px;display:flex}.doc-list .name{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:17px;overflow:hidden}.doc-list .meta{color:var(--muted);font-size:13px}.muted{color:var(--muted);margin:0;padding:16px}.muted.small{font-size:13px}.error{color:#e88;background:#2a1515;margin:0;padding:12px 16px}.btn{color:var(--fg);font:inherit;cursor:pointer;background:#2a2a2a;border:1px solid #444;border-radius:8px;min-height:44px;padding:10px 16px;display:inline-block}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.danger{color:#e88;background:0 0;border-color:#633}.btn.small{white-space:nowrap;align-self:center;padding:8px 10px}.btn.icon{justify-content:center;align-items:center;gap:6px;width:44px;height:44px;padding:0;display:inline-flex}.btn:disabled{opacity:.5;cursor:default}.btn.with-icon{align-items:center;gap:6px;display:inline-flex}.btn.wide{flex:1}.viewer{touch-action:none;background:#000;position:fixed;inset:0;overflow:hidden}.page-canvas{pointer-events:none;width:100%;height:100%;display:block;position:absolute;top:0;left:0}.autoscroll{touch-action:none;background:#000;position:absolute;inset:0;overflow:hidden}.autoscroll .strip{will-change:transform;width:100%;position:absolute;top:0;left:0}.autoscroll .page-slot{background:#fff;position:absolute;left:0;overflow:hidden}.autoscroll .page-slot canvas{width:100%;display:block;position:absolute;left:0}.autoscroll .page-placeholder{background:#222;width:100%;height:100%}.panel input[type=range]{flex:1;min-width:120px}.panel .speed{text-align:right;font-variant-numeric:tabular-nums;min-width:5em}.center{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.indicator{color:#ccc;pointer-events:none;opacity:0;background:#0009;border-radius:6px;padding:4px 10px;font-size:14px;transition:opacity .25s;position:absolute;bottom:8px;right:8px}.indicator.show{opacity:1}.overlay{touch-action:auto;background:#0000008c;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.panel{background:var(--panel);border-radius:12px;flex-direction:column;gap:12px;width:min(92vw,420px);padding:16px;display:flex}.panel .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.panel .title{word-break:break-all;font-weight:600}.panel select{font:inherit;color:var(--fg);background:#111;border:1px solid #444;border-radius:6px;max-width:60vw;padding:8px}.muted-inline{color:var(--muted);font-size:13px}.toast{color:var(--fg);pointer-events:none;z-index:10;background:#282828f2;border-radius:8px;padding:10px 16px;font-size:14px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.load-status{text-align:center;flex-direction:column;align-items:center;gap:12px;max-width:80vw;display:flex}.load-status p{margin:0}.analyzing{color:#ccc;pointer-events:none;background:#0009;border-radius:6px;padding:4px 10px;font-size:14px;position:absolute;top:8px;left:8px}.video{background:#000;position:fixed;inset:0}.video-host,.video-host iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.video-bar{color:var(--fg);background:linear-gradient(#000000d9,#0000);align-items:center;gap:8px;padding:6px 8px;display:flex;position:absolute;top:0;left:0;right:0}.video-bar.hidden{display:none}.video-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:15px;overflow:hidden}.video-rate select{font:inherit;color:var(--fg);background:#111;border:1px solid #444;border-radius:6px;padding:6px 8px}.video-bar-show{width:44px;height:44px;color:var(--fg);background:#0009;border:1px solid #444;border-radius:8px;font-size:20px;position:absolute;top:8px;left:8px}.inline-icon{vertical-align:-3px;color:#e33}.btn.toggle{opacity:.45}.btn.toggle.on{opacity:1;border-color:var(--accent);color:var(--accent)}.settings{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);position:fixed;inset:0;overflow-y:auto}.settings header{background:var(--bg);border-bottom:1px solid #333;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;top:0}.settings h1{flex:1;margin:0;font-size:18px}.setting-list{margin:0;padding:0;list-style:none}.setting-list li{border-bottom:1px solid #222;align-items:center;gap:12px;padding:14px 16px;display:flex}.setting-list label{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.setting-label{font-size:16px}.setting-changed{color:var(--muted);margin-left:4px;font-size:13px}.setting-note{color:var(--muted);font-size:13px}.setting-input{align-items:center;gap:6px;display:flex}.setting-input input{width:5.5em;font:inherit;color:var(--fg);text-align:right;background:#111;border:1px solid #444;border-radius:8px;padding:8px;font-size:17px}.setting-unit{color:var(--muted);min-width:2em}.panel .crop-row{flex-wrap:nowrap}.panel .crop-label{flex-direction:column;min-width:7em;line-height:1.2;display:flex}.panel .crop-label .muted-inline{font-size:11px}
