:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--bg: #f3f6fa;--panel: #ffffff;--panel-soft: #f8fafc;--ink: #132033;--muted: #647184;--line: #dce4ee;--line-strong: #bdc9d8;--accent: #0d8f8b;--accent-dark: #08706d;--blue: #1d4f8f;--shadow: 0 18px 55px rgba(27, 41, 63, .1)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--ink)}button,input,select{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.app-shell{min-height:100vh;display:grid;grid-template-columns:320px minmax(420px,1fr) 320px;gap:14px;padding:14px}.source-panel,.reader-panel,.playback-panel{min-height:calc(100vh - 28px);background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.source-panel,.playback-panel{display:flex;flex-direction:column;padding:18px;overflow:hidden}.brand{display:flex;gap:12px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line)}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#dff6f3;color:var(--accent-dark)}.brand-mark.with-logo{overflow:hidden;background:#fff;border:1px solid var(--line)}.brand-mark img{width:100%;height:100%;object-fit:contain;padding:5px}.app-links{display:grid;grid-template-columns:1fr;gap:8px;padding:14px 0 0}.app-links a,.app-links button{min-height:38px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;border:1px solid var(--line);background:var(--panel-soft);color:var(--ink);font-weight:700;text-decoration:none}.app-links a:hover,.app-links button:hover:not(:disabled){border-color:var(--accent);color:var(--accent-dark)}h1,h2,p{margin:0}h1{font-size:1.25rem;line-height:1.1;letter-spacing:0}.brand p,.hint,.status,.selection-item small,.queue-box,.welcome p{color:var(--muted);line-height:1.45}.brand p{margin-top:3px;font-size:.86rem}.panel-section,.voice-controls,.queue-preview,.now-playing{padding:18px 0;border-bottom:1px solid var(--line)}.panel-section h2,.voice-controls h2,.queue-preview h2,.now-playing h2{margin-bottom:12px;font-size:.82rem;line-height:1;text-transform:uppercase;letter-spacing:0;color:#344258}.file-drop,.url-form,.segmented,.play-mode,.toolbar-controls,.transport{display:flex;align-items:center}.file-drop{position:relative;justify-content:center;gap:8px;height:46px;border:1px dashed var(--line-strong);border-radius:8px;background:var(--panel-soft);color:var(--blue);font-weight:700}.file-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.url-form{margin-top:10px;height:42px;gap:8px;padding:0 8px 0 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.url-form input{min-width:0;flex:1;border:0;outline:0;color:var(--ink)}.url-form button,.toolbar-controls button,.transport button{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:var(--panel-soft);color:var(--ink)}.status{margin-top:10px;font-size:.84rem}.segmented,.play-mode{padding:3px;gap:3px;border-radius:8px;background:#eef3f8}.segmented button,.play-mode button{flex:1;height:34px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:7px;background:transparent;color:var(--muted);font-size:.88rem;font-weight:700}.segmented button.active,.play-mode button.active{background:#fff;color:var(--accent-dark);box-shadow:0 2px 8px #14263e14}.hint{margin-top:10px;font-size:.84rem}.selection-list-section{min-height:0;flex:1;border-bottom:0}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-title-row span,.section-title-row svg{color:var(--accent);font-weight:800}.selection-list{display:grid;gap:8px;max-height:calc(100vh - 430px);overflow:auto;padding-right:2px}.selection-item{width:100%;display:grid;grid-template-columns:10px 1fr 22px;gap:10px;align-items:start;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:inherit;text-align:left}.selection-item.active{border-color:var(--accent);box-shadow:0 0 0 2px #0d8f8b1f}.selection-item strong{display:block;margin-bottom:3px;font-size:.9rem}.selection-item small{display:block;font-size:.78rem}.swatch{width:10px;height:34px;border-radius:6px}.empty-state{display:grid;place-items:center;gap:8px;min-height:140px;border:1px dashed var(--line-strong);border-radius:8px;color:var(--muted)}.reader-panel{display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.reader-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:12px 16px;border-bottom:1px solid var(--line)}.doc-title{min-width:0;display:flex;align-items:center;gap:9px;font-weight:800}.doc-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar-controls{gap:7px}.page-chip{min-width:70px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:.86rem;font-weight:700}.pdf-stage{min-height:0;overflow:auto;display:grid;place-items:start center;padding:28px;background:linear-gradient(#e8edf4 1px,transparent 1px),linear-gradient(90deg,#e8edf4 1px,transparent 1px);background-size:28px 28px}.text-document{width:min(780px,calc(100% - 28px));min-height:min(940px,calc(100vh - 150px));align-self:start;margin:14px auto;padding:34px;background:#fff;border:1px solid var(--line);box-shadow:0 16px 38px #1c2a4214}.text-document h2{margin:0 0 22px;font-size:1.25rem}.text-document pre{margin:0;white-space:pre-wrap;font:1rem/1.65 Inter,ui-sans-serif,system-ui,sans-serif;color:var(--ink)}.welcome{align-self:center;justify-self:center;width:min(420px,100%);display:grid;justify-items:center;gap:12px;padding:36px;border:1px dashed var(--line-strong);border-radius:8px;background:#ffffffdb;text-align:center}.welcome h2{font-size:1.3rem}.page-wrap{position:relative;background:#fff;box-shadow:0 20px 55px #19263a2e}.page-wrap canvas{display:block}.text-layer{position:absolute;inset:0;overflow:hidden}.text-layer span{position:absolute;color:transparent;white-space:pre;transform-origin:0 0;cursor:text;-webkit-user-select:text;user-select:text}.area-mode .text-layer span{cursor:crosshair}.highlight{position:absolute;z-index:2;border-radius:4px;opacity:.52;pointer-events:none;mix-blend-mode:multiply}.highlight.active{outline:2px solid rgba(13,143,139,.9);opacity:.68}.drag-box{position:absolute;z-index:4;border:2px solid var(--accent);background:#0d8f8b24;pointer-events:none}.playback-panel{gap:0}.play-mode{margin-bottom:14px}.big-progress{height:10px;overflow:hidden;border-radius:999px;background:#e8eef5}.big-progress span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .18s ease}.transport{gap:8px;margin-top:14px}.transport button{width:42px;height:42px}.transport .primary{width:auto;flex:1;display:flex;gap:8px;background:var(--accent);color:#fff;font-weight:800}.voice-controls label{display:grid;gap:7px;margin-top:12px;color:var(--muted);font-size:.86rem;font-weight:700}.voice-controls small{color:var(--muted);font-size:.78rem;font-weight:600;line-height:1.4}.voice-controls select,.voice-controls input[type=range]{width:100%}.voice-controls select{min-height:40px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);padding:0 10px}.queue-preview{min-height:0;flex:1;border-bottom:0}.queue-box{max-height:calc(100vh - 430px);overflow:auto;display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);font-size:.85rem}.queue-box p+p{padding-top:10px;border-top:1px solid var(--line)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1120px){.app-shell{grid-template-columns:290px minmax(420px,1fr)}.playback-panel{grid-column:1 / -1;min-height:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.playback-panel>section{border-bottom:0;padding:0}.queue-box{max-height:190px}}@media(max-width:760px){.app-shell{display:flex;flex-direction:column;padding:10px}.source-panel,.reader-panel,.playback-panel{min-height:auto}.reader-panel{min-height:68vh}.reader-toolbar,.playback-panel{display:flex;flex-direction:column;align-items:stretch}.toolbar-controls{flex-wrap:wrap}.pdf-stage{padding:18px}}
 .text-document{position:relative;padding-top:78px}.text-document:before{content:"";position:absolute;top:24px;right:28px;width:42px;height:42px;background:url("/images/rs-logo/rs-logo-originalt-blank.png") center/contain no-repeat}
