:root{--sans:system-ui, "Segoe UI", Roboto, sans-serif;font:18px/145% var(--sans);color:#111827;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0000;background-image:radial-gradient(circle at 82% 10%,#fecc0052,#0000 16rem),radial-gradient(circle at 18% 18%,#ffffffb8,#0000 12rem),linear-gradient(#7dd3fc 0%,#bae6fd 48%,#e0f7ff 100%);background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:auto,auto,28px 28px,28px 28px,auto;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}@media (width<=1024px){:root{font-size:16px}}html,body,#root{height:100%;min-height:100%}body{margin:0;overflow:hidden auto}*{box-sizing:border-box}h1{color:#111827;text-align:center;margin:0;font-size:clamp(1.35rem,3.2vw,2.45rem);font-weight:900;line-height:1.05}@media (width<=1024px){h1{font-size:2.4rem}}.reader-shell{width:min(100%,1180px);margin:0 auto;padding:30px 20px 40px}.reader-header{margin-bottom:18px}.reader-kicker{color:#111827;letter-spacing:.11em;text-align:center;text-transform:uppercase;margin:0 0 6px;font-size:1rem;font-weight:900}.reader-card{background:linear-gradient(90deg,#fecc0024,#0000 32%),#ffffffdb;border:1px solid #11182729;border-radius:8px;gap:22px;padding:24px;display:grid;position:relative;box-shadow:0 22px 48px #11182724,inset 0 0 0 1px #ffffffc7}.reader-card:before,.reader-card:after{content:"";pointer-events:none;position:absolute}.reader-card:before{border:1px solid #1118271a;border-radius:6px;inset:10px}.reader-card:after{background:#fecc00;border-radius:999px;width:88px;height:8px;top:12px;right:20px;box-shadow:-18px 16px #bae6fdcc}.loading-screen{align-content:center;gap:18px;min-height:calc(100svh - 70px);display:grid}.loading-card{text-align:center;background:#fff;border:1px solid #11182724;border-radius:8px;gap:16px;width:min(100%,520px);margin:0 auto;padding:28px;display:grid;box-shadow:0 18px 38px #1118271f}.loading-book{background:#ede1ca;border-radius:8px;grid-template-columns:1fr 1fr;width:156px;height:96px;margin:0 auto 2px;display:grid;overflow:hidden;box-shadow:0 14px 24px #402f1a24,inset 0 0 0 1px #604a2a14}.loading-book div{background:linear-gradient(90deg,#fff0 82%,#664c261a),#fff}.loading-book div+div{background:linear-gradient(270deg,#fff0 82%,#664c261a),#fff}.loading-message{color:#293241;margin:0;font-size:clamp(1.25rem,3vw,1.7rem);font-weight:900}.loading-bar{background:#dff3ff;border-radius:999px;height:14px;overflow:hidden}.loading-bar span{border-radius:inherit;background:linear-gradient(90deg,#111827,#fecc00);height:100%;transition:width .18s;display:block}.loading-progress,.loading-warning{color:#5f6657;margin:0;font-weight:850}.loading-warning{color:#a34432;font-size:.95rem}.book-stage{perspective:1800px;perspective-origin:50% 45%;background:radial-gradient(circle,#fecc0024,#0000 40%),linear-gradient(#1118270b 1px,#0000 1px) 0 0/24px 24px,linear-gradient(90deg,#1118270b 1px,#0000 1px) 0 0/24px 24px,#f8f3e7;border:1px solid #1118271f;border-radius:8px;place-items:center;padding:18px;display:grid;position:relative}.book{width:min(100%,1040px);transform-style:preserve-3d;border-radius:8px;display:grid;position:relative}.book-spread{background:#111827;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:hidden;box-shadow:0 24px 34px #11182733,inset 0 0 0 1px #11182738}.book-spread>.turning-sheet-stage{width:100%;height:100%;position:absolute;inset:0}.book-page{background:#fff;align-content:start;gap:14px;min-width:0;padding:18px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #1118270f}.book-spine{inset-block:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,#11182738,#fffc 42%,#fecc005c 50%,#11182738);width:18px;position:absolute;left:50%;transform:translate(-50%);box-shadow:-9px 0 16px #1118271f,9px 0 16px #1118271f}.blank-page{color:#111827;text-align:center;background:linear-gradient(90deg,#fff0 88%,#11182712),radial-gradient(circle at 88% 18%,#fecc004d,#0000 4.5rem),linear-gradient(#1118270e 1px,#0000 1px) 0 0/22px 22px,linear-gradient(90deg,#1118270e 1px,#0000 1px) 0 0/22px 22px,#fff;align-content:center;justify-items:center;gap:14px;min-height:100%;padding:clamp(18px,4vw,42px);font-size:clamp(1rem,1.7vw,1.25rem);font-weight:900}.blank-page:before{content:"SQ StoryFlip";color:#111827;letter-spacing:.12em;background:#fecc00;border:2px solid #111827;border-radius:999px;place-items:center;min-height:34px;padding:0 14px;font-size:clamp(.65rem,1.1vw,.8rem);font-weight:1000;display:inline-grid}.blank-page:after{content:"Tap play. Read along. Turn the page.";color:#111827bd;background:linear-gradient(#111827,#111827) 50% 20px/72px 2px no-repeat,radial-gradient(circle,#111827 2px,#0000 2.5px) 50% 8px/14px 14px no-repeat;max-width:260px;padding-top:52px;font-size:clamp(.9rem,1.6vw,1.08rem);line-height:1.35;display:block}.blank-page span{aspect-ratio:1;color:#0000;border:2px dashed #11182752;border-radius:50%;place-items:center;width:min(58%,180px);display:grid;position:relative}.blank-page span:before{content:"SQ";aspect-ratio:1;color:#111827;letter-spacing:-.08em;background:linear-gradient(135deg,#fecc00 0 48%,#dff3ff 48% 100%);border:3px solid #111827;border-radius:8px;place-items:center;width:64%;font-size:clamp(1.8rem,5vw,3rem);font-weight:1000;display:grid}.empty-page{background:linear-gradient(90deg,#ffffff14,#1118270f),linear-gradient(#1118270a 1px,#0000 1px) 0 0/24px 24px,linear-gradient(90deg,#1118270a 1px,#0000 1px) 0 0/24px 24px,#f8f3e7;min-height:100%}.page-art{aspect-ratio:1;background:#fff;border:1px solid #11182724;border-radius:8px;overflow:hidden}.page-image{object-fit:cover;width:100%;height:100%;display:block}.image-placeholder{color:#7b705f;text-align:center;place-items:center;width:100%;height:100%;padding:24px;font-size:1.2rem;font-weight:800;display:grid}.page-text{color:#111827;text-align:center;background:#f8f3e7;border-left:5px solid #fecc00;border-radius:8px;min-height:3.1em;margin:0;padding:10px 12px;font-size:clamp(1rem,2vw,1.35rem);font-weight:850;line-height:1.28}.reader-controls{grid-template-columns:1fr minmax(140px,210px) 1fr;align-items:center;gap:14px;display:grid}button{min-height:58px;font:inherit;cursor:pointer;border:0;border-radius:8px;font-weight:900;transition:transform .16s,box-shadow .16s,background-color .16s}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 18px #2f485829}button:focus-visible{outline-offset:3px;outline:4px solid #f5c453}button:disabled{cursor:not-allowed;opacity:.45}.auto-play-button{color:#111827;background:#fecc00;justify-self:center;width:min(100%,340px);min-height:68px;padding:0 22px;font-size:1.18rem;box-shadow:0 12px 22px #11182724,inset 0 0 0 2px #11182729}.play-button{color:#111827;background:#fecc00;width:100%;min-height:56px;padding:0 16px;font-size:1rem;box-shadow:inset 0 0 0 2px #1118271f}.reader-progress{color:#111827;text-align:center;background:#fff;border-radius:8px;place-items:center;min-height:58px;padding:8px 12px;font-weight:900;display:grid;box-shadow:inset 0 0 0 1px #1118271a}.audio-message{color:#a34432;text-align:center;margin:0;font-size:.95rem;font-weight:800}.turning-sheet-stage{z-index:5;pointer-events:none;perspective:1800px;perspective-origin:50% 45%;transform-style:preserve-3d;position:absolute;inset:0;overflow:hidden}.turning-sheet{isolation:isolate;will-change:transform;width:100%;height:100%;transform-style:preserve-3d;position:relative}.sheet-face{backface-visibility:hidden;will-change:opacity, transform;width:50%;height:100%;transform-style:preserve-3d;contain:layout paint;background:#fff;display:grid;position:absolute;top:0;bottom:0;overflow:hidden}.sheet-face-left{left:0}.sheet-face-right{right:0}.sheet-face-front{z-index:2}.sheet-face-back{z-index:3}.sheet-face .book-page{opacity:1;will-change:transform, border-radius, clip-path;width:100%;height:100%;max-height:none;transform-style:preserve-3d;backface-visibility:hidden;background-color:#fff;overflow:hidden;box-shadow:0 18px 30px #3a2a163d,inset 0 0 28px #5a44261f}.sheet-face .blank-page,.sheet-face .empty-page{background:linear-gradient(90deg,#ffffff14,#70522a14),#fff}.sheet-face .book-page:before,.sheet-face .book-page:after{content:"";z-index:3;border-radius:inherit;pointer-events:none;position:absolute;inset:0}.sheet-face .book-page:before{opacity:0;background:linear-gradient(90deg,#ffffff5c,#ffffff14 44%,#412c1333);animation:1.1s cubic-bezier(.22,.61,.36,1) both sheet-gloss}.sheet-face .book-page:after{opacity:.48;background:radial-gradient(#fff0 56%,#47301629);animation:1.1s cubic-bezier(.22,.61,.36,1) both sheet-curve}.sheet-face-front:after,.sheet-face-back:after{content:"";z-index:4;pointer-events:none;opacity:0;filter:blur(.2px);background:linear-gradient(90deg,#ffffffbf,#563c1c29);border-radius:999px;width:18px;animation:1.1s cubic-bezier(.22,.61,.36,1) both page-curl-edge;position:absolute;inset-block:3%}.turning-sheet-stage-forward .sheet-face-front:after,.turning-sheet-stage-backward .sheet-face-back:after{left:-4px}.turning-sheet-stage-forward .sheet-face-back:after,.turning-sheet-stage-backward .sheet-face-front:after{right:-4px}.turning-sheet-backward .book-page:before{background:linear-gradient(270deg,#ffffff5c,#ffffff14 44%,#412c1333)}.turning-sheet-stage-forward .sheet-face-front{transform-origin:0;animation:1.1s cubic-bezier(.22,.61,.36,1) both sheet-front-forward}.turning-sheet-stage-forward .sheet-face-front .book-page{transform-origin:0;animation:1.1s cubic-bezier(.22,.61,.36,1) both page-warp-forward-front}.turning-sheet-stage-forward .sheet-face-back{transform-origin:100%;animation:1.1s cubic-bezier(.22,.61,.36,1) both sheet-back-forward}.turning-sheet-stage-forward .sheet-face-back .book-page{transform-origin:100%;animation:1.1s cubic-bezier(.22,.61,.36,1) both page-warp-forward-back}.turning-sheet-stage-backward .sheet-face-front{transform-origin:100%;animation:1.1s cubic-bezier(.22,.61,.36,1) both sheet-front-backward}.turning-sheet-stage-backward .sheet-face-front .book-page{transform-origin:100%;animation:1.1s cubic-bezier(.22,.61,.36,1) both page-warp-backward-front}.turning-sheet-stage-backward .sheet-face-back{transform-origin:0;animation:1.1s cubic-bezier(.22,.61,.36,1) both sheet-back-backward}.turning-sheet-stage-backward .sheet-face-back .book-page{transform-origin:0;animation:1.1s cubic-bezier(.22,.61,.36,1) both page-warp-backward-back}@keyframes sheet-front-forward{0%{visibility:visible;transform:rotateY(0)skewY(0)scaleX(1)translateZ(3px)}42%{visibility:visible;transform:rotateY(-74deg)skewY(-.8deg)scaleX(.99)translateZ(12px)}50%{visibility:visible;transform:rotateY(-90deg)skewY(-.2deg)scaleX(.982)translateZ(16px)}to{visibility:hidden;transform:rotateY(-90deg)skewY(-.2deg)scaleX(.982)translateZ(16px)}}@keyframes sheet-back-forward{0%{visibility:hidden;transform:rotateY(90deg)skewY(.2deg)scaleX(.982)translateZ(16px)}50%{visibility:visible;transform:rotateY(90deg)skewY(.2deg)scaleX(.982)translateZ(16px)}58%{visibility:visible;transform:rotateY(74deg)skewY(.75deg)scaleX(.982)translateZ(14px)}76%{visibility:visible;transform:rotateY(34deg)skewY(.45deg)scaleX(.992)translateZ(8px)}to{visibility:visible;transform:rotateY(0)skewY(0)scaleX(1)translateZ(3px)}}@keyframes sheet-front-backward{0%{visibility:visible;transform:rotateY(0)skewY(0)scaleX(1)translateZ(3px)}42%{visibility:visible;transform:rotateY(74deg)skewY(.8deg)scaleX(.99)translateZ(12px)}50%{visibility:visible;transform:rotateY(90deg)skewY(.2deg)scaleX(.982)translateZ(16px)}to{visibility:hidden;transform:rotateY(90deg)skewY(.2deg)scaleX(.982)translateZ(16px)}}@keyframes sheet-back-backward{0%{visibility:hidden;transform:rotateY(-90deg)skewY(-.2deg)scaleX(.982)translateZ(16px)}50%{visibility:visible;transform:rotateY(-90deg)skewY(-.2deg)scaleX(.982)translateZ(16px)}58%{visibility:visible;transform:rotateY(-74deg)skewY(-.75deg)scaleX(.982)translateZ(14px)}76%{visibility:visible;transform:rotateY(-34deg)skewY(-.45deg)scaleX(.992)translateZ(8px)}to{visibility:visible;transform:rotateY(0)skewY(0)scaleX(1)translateZ(3px)}}@keyframes sheet-gloss{0%{opacity:.06;transform:translate(0)}42%{opacity:.58;transform:translate(-8%)scaleX(.94)}50%{opacity:.7;transform:translate(-12%)scaleX(.9)}to{opacity:.18;transform:translate(-16%)scaleX(1)}}@keyframes sheet-curve{0%{opacity:.1;transform:scaleX(1)translate(0)}50%{opacity:.62;transform:scaleX(.9)translate(-2%)}to{opacity:.2;transform:scaleX(1)translate(0)}}@keyframes page-curl-edge{0%{opacity:0;transform:scaleY(.92)translateZ(1px)}42%{opacity:.72;transform:scaleY(1.05)scaleX(1.35)translateZ(5px)}50%{opacity:.9;transform:scaleY(1.08)scaleX(1.55)translateZ(7px)}76%{opacity:.5;transform:scaleY(1.03)scaleX(1.2)translateZ(4px)}to{opacity:0;transform:scaleY(.94)translateZ(1px)}}.book-stage{touch-action:none;-webkit-user-select:none;user-select:none}.book-stage [data-no-page-drag]{touch-action:manipulation}.book-stage img,.book-page img,.page-image,.blank-mark img,.brand-mark img,.loading-logo img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.book,.book-spread,.book-page,.page-art,.page-text,.karaoke-word,.bingo-page,.bingo-board,.bingo-word-button,.bingo-word-text,.reader-controls,.reader-controls button{-webkit-user-select:none;user-select:none}.turning-sheet-stage-drag .sheet-face,.turning-sheet-stage-drag .sheet-face .book-page,.turning-sheet-stage-drag .sheet-face .book-page:before,.turning-sheet-stage-drag .sheet-face .book-page:after,.turning-sheet-stage-drag .sheet-face-front:after,.turning-sheet-stage-drag .sheet-face-back:after{animation:none!important}.turning-sheet-stage-drag .sheet-face{will-change:transform, visibility;transition:none}.turning-sheet-stage-drag.turning-sheet-stage-settling .sheet-face{transition:transform .26s cubic-bezier(.22,.61,.36,1)}.turning-sheet-stage-drag .sheet-face-front{visibility:var(--turn-front-visibility,visible)}.turning-sheet-stage-drag .sheet-face-back{visibility:var(--turn-back-visibility,hidden)}.turning-sheet-stage-drag.turning-sheet-stage-forward .sheet-face-front{transform-origin:0;transform:rotateY(var(--turn-front-forward,0deg)) skewY(calc(var(--turn-progress,0) * -1.4deg)) scaleX(calc(1 - min(var(--turn-progress,0), .5) * .08)) translateZ(12px)}.turning-sheet-stage-drag.turning-sheet-stage-forward .sheet-face-back{transform-origin:100%;transform:rotateY(var(--turn-back-forward,90deg)) skewY(calc(var(--turn-progress,0) * 1.2deg)) scaleX(calc(.96 + max(var(--turn-progress,0) - .5, 0) * .08)) translateZ(12px)}.turning-sheet-stage-drag.turning-sheet-stage-backward .sheet-face-front{transform-origin:100%;transform:rotateY(var(--turn-front-backward,0deg)) skewY(calc(var(--turn-progress,0) * 1.4deg)) scaleX(calc(1 - min(var(--turn-progress,0), .5) * .08)) translateZ(12px)}.turning-sheet-stage-drag.turning-sheet-stage-backward .sheet-face-back{transform-origin:0;transform:rotateY(var(--turn-back-backward,-90deg)) skewY(calc(var(--turn-progress,0) * -1.2deg)) scaleX(calc(.96 + max(var(--turn-progress,0) - .5, 0) * .08)) translateZ(12px)}.turning-sheet-stage-drag .sheet-face .book-page{box-shadow:0 18px 34px rgba(58, 42, 22, calc(.18 + var(--turn-progress,0) * .18)), inset 0 0 28px rgba(90, 68, 38, calc(.08 + var(--turn-progress,0) * .08))}@keyframes page-warp-forward-front{0%{clip-path:inset(0 round 8px 0 0 8px);border-radius:8px 0 0 8px;transform:rotateX(0)skewY(0)scaleX(1)translateZ(0)}42%{clip-path:polygon(0 0,99% 2%,94% 100%,0 100%);border-radius:18px 5px 5px 18px;transform:rotateX(1.8deg)skewY(-2.2deg)scaleX(.965)translateZ(4px)}50%,to{clip-path:polygon(0 0,96% 4%,90% 100%,0 100%);border-radius:26px 9px 9px 26px;transform:rotateX(2.8deg)skewY(-3deg)scaleX(.92)translateZ(6px)}}@keyframes page-warp-forward-back{0%,50%{clip-path:polygon(4% 4%,100% 0,100% 100%,10% 100%);border-radius:9px 26px 26px 9px;transform:rotateX(-2.8deg)skewY(3deg)scaleX(.92)translateZ(6px)}76%{clip-path:polygon(1% 2%,100% 0,100% 100%,6% 100%);border-radius:5px 18px 18px 5px;transform:rotateX(-1.6deg)skewY(1.8deg)scaleX(.965)translateZ(4px)}to{clip-path:inset(0 round 8px 0 0 8px);border-radius:8px 0 0 8px;transform:rotateX(0)skewY(0)scaleX(1)translateZ(0)}}@keyframes page-warp-backward-front{0%{clip-path:inset(0 round 0 8px 8px 0);border-radius:0 8px 8px 0;transform:rotateX(0)skewY(0)scaleX(1)translateZ(0)}42%{clip-path:polygon(1% 2%,100% 0,100% 100%,6% 100%);border-radius:5px 18px 18px 5px;transform:rotateX(1.8deg)skewY(2.2deg)scaleX(.965)translateZ(4px)}50%,to{clip-path:polygon(4% 4%,100% 0,100% 100%,10% 100%);border-radius:9px 26px 26px 9px;transform:rotateX(2.8deg)skewY(3deg)scaleX(.92)translateZ(6px)}}@keyframes page-warp-backward-back{0%,50%{clip-path:polygon(0 0,96% 4%,90% 100%,0 100%);border-radius:26px 9px 9px 26px;transform:rotateX(-2.8deg)skewY(-3deg)scaleX(.92)translateZ(6px)}76%{clip-path:polygon(0 0,99% 2%,94% 100%,0 100%);border-radius:18px 5px 5px 18px;transform:rotateX(-1.6deg)skewY(-1.8deg)scaleX(.965)translateZ(4px)}to{clip-path:inset(0 round 0 8px 8px 0);border-radius:0 8px 8px 0;transform:rotateX(0)skewY(0)scaleX(1)translateZ(0)}}@media (prefers-reduced-motion:reduce){button,.turning-sheet,.sheet-face-front:after,.sheet-face-back:after,.sheet-face .book-page,.sheet-face .book-page:before,.sheet-face .book-page:after{transition:none;animation:none}}@media (width<=760px){.reader-shell{padding:20px 12px 28px}.reader-card{padding:14px}.book-page{gap:10px;padding:12px}.page-text{font-size:.95rem}.reader-controls{grid-template-columns:1fr 1fr}.reader-progress{grid-area:1/1/auto/-1}}.reader-shell{--app-pad:clamp(10px, 1.8dvh, 18px);--control-h:clamp(68px, 9.5dvh, 88px);--stage-gap:clamp(8px, 1.4dvh, 14px);--page-w:min(46.5vw, calc((100dvh - var(--control-h) - 92px) * .68));width:100%;height:100dvh;min-height:100dvh;padding:var(--app-pad);gap:var(--stage-gap);background:radial-gradient(circle at 50% 44%,#fecc0047,#0000 32dvh),radial-gradient(circle at 85% 12%,#bae6fd33,#0000 26dvh),linear-gradient(135deg,#fecc0014 0 10%,#0000 10% 100%),linear-gradient(#bae6fd14 1px,#0000 1px) 0 0/34px 34px,linear-gradient(90deg,#bae6fd14 1px,#0000 1px) 0 0/34px 34px,#0b1220;grid-template-rows:auto minmax(0,1fr) auto;margin:0;display:grid;overflow:hidden}.reader-shell:before{content:"";pointer-events:none;opacity:.28;background:radial-gradient(circle,#fecc0057 1.5px,#0000 2px) 28px 24px/44px 44px,linear-gradient(90deg,#0000 0 78%,#fecc0038 78% 79%,#0000 79%);position:fixed;inset:0}.reader-header{z-index:1;color:#fff;background:linear-gradient(90deg,#111827eb,#111827b3),linear-gradient(#bae6fd17 1px,#0000 1px) 0 0/18px 18px,linear-gradient(90deg,#bae6fd17 1px,#0000 1px) 0 0/18px 18px;border:1px solid #bae6fd42;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;min-height:0;margin:0;padding:clamp(7px,1.2dvh,12px) clamp(10px,1.8vw,18px);display:flex;position:relative;box-shadow:0 16px 38px #00000038}.brand-lockup{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{aspect-ratio:1;color:#111827;letter-spacing:-.08em;background:linear-gradient(135deg,#fecc00 0 52%,#bae6fd 52% 100%);border:2px solid #111827;border-radius:10px;flex:none;place-items:center;width:clamp(42px,5dvh,54px);font-size:clamp(1rem,2.4dvh,1.45rem);font-weight:1000;display:grid;box-shadow:0 0 0 3px #fecc0033}.reader-header h1{color:#fff;text-align:left;text-wrap:balance;text-shadow:0 2px #0000002e}.reader-kicker{color:#fecc00;margin:0 0 2px;font-size:clamp(.58rem,1.25dvh,.76rem);line-height:1}.reader-badge{color:#111827;background:#fecc00;border:1px solid #fecc006b;border-radius:999px;flex:none;margin:0;padding:8px 12px;font-size:clamp(.72rem,1.45dvh,.92rem);font-weight:1000;line-height:1;display:block}.reader-card{z-index:1;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:18px;padding:0;display:grid;overflow:hidden}.reader-card:before,.reader-card:after{display:none}.book-stage{background:linear-gradient(135deg,#fecc002e,#0000 18%),radial-gradient(circle,#fecc002e,#0000 34%),linear-gradient(#bae6fd1f 1px,#0000 1px) 0 0/22px 22px,linear-gradient(90deg,#bae6fd1f 1px,#0000 1px) 0 0/22px 22px,#0f172ac7;border:1px solid #bae6fd42;border-radius:18px;height:100%;min-height:0;padding:clamp(10px,1.8dvh,18px);box-shadow:inset 0 0 0 1px #ffffff14,0 22px 55px #0000004d}.book-stage:before,.book-stage:after{content:"";pointer-events:none;width:52px;height:52px;position:absolute}.book-stage:before{border-top:4px solid #fecc00;border-left:4px solid #fecc00;top:12px;left:12px}.book-stage:after{border-bottom:4px solid #bae6fd;border-right:4px solid #bae6fd;bottom:12px;right:12px}.book{width:calc(var(--page-w) * 2);max-width:calc(100vw - 2 * var(--app-pad) - 28px)}.book-page{height:calc(var(--page-w) + clamp(92px, 14dvh, 128px));max-height:calc(100dvh - var(--control-h) - 118px);gap:clamp(6px,1.1dvh,10px);padding:clamp(10px,1.8dvh,16px)}.book-spread{border-radius:14px;box-shadow:0 30px 65px #00000061,0 0 0 2px #fecc0038,inset 0 0 0 1px #ffffff24}.book-page-left{border-radius:14px 0 0 14px}.book-page-right{border-radius:0 14px 14px 0}.page-art{width:100%;min-height:0;max-height:calc(100dvh - var(--control-h) - 246px);justify-self:center;box-shadow:0 0 0 3px #1118270a,0 10px 24px #11182714}.page-text{min-height:0;padding:clamp(7px,1.1dvh,10px) 10px;font-size:clamp(.78rem,1.85dvh,1.08rem);line-height:1.18}.play-button{min-height:clamp(38px,5.7dvh,50px);font-size:clamp(.78rem,1.7dvh,.98rem)}.blank-page{background:linear-gradient(135deg,#fecc00 0 10%,#0000 10% 100%),radial-gradient(circle at 82% 20%,#fecc006b,#0000 4rem),linear-gradient(#1118270f 1px,#0000 1px) 0 0/18px 18px,linear-gradient(90deg,#1118270f 1px,#0000 1px) 0 0/18px 18px,#fff;gap:clamp(7px,1.2dvh,12px);padding:clamp(14px,2.4dvh,24px)}.blank-page:before{min-height:clamp(26px,4.1dvh,34px);padding-inline:clamp(8px,1.4vw,14px);font-size:clamp(.52rem,1.15dvh,.72rem)}.blank-page:after{max-width:220px;padding-top:clamp(34px,6dvh,48px);font-size:clamp(.72rem,1.55dvh,.96rem)}.book-spine{background:linear-gradient(90deg,#02061757,#bae6fdd1 42%,#fecc00 50%,#02061757);width:16px}.reader-controls{z-index:1;min-height:var(--control-h);background:linear-gradient(90deg,#111827f0,#111827d1),linear-gradient(#bae6fd14 1px,#0000 1px) 0 0/18px 18px,linear-gradient(90deg,#bae6fd14 1px,#0000 1px) 0 0/18px 18px;border:1px solid #bae6fd42;border-radius:16px;grid-template-columns:minmax(138px,1fr) minmax(116px,.62fr) minmax(138px,1fr) minmax(150px,1fr);align-items:center;gap:clamp(8px,1.4vw,14px);padding:clamp(8px,1.2dvh,12px);display:grid;box-shadow:0 -12px 34px #0000002e,inset 0 0 0 1px #ffffff12}button{border-radius:12px;min-height:clamp(44px,6.2dvh,58px);font-size:clamp(.76rem,1.65dvh,1rem)}.page-button,.auto-play-button,.reader-progress{min-height:clamp(44px,6.2dvh,58px)}.auto-play-button{color:#111827;background:linear-gradient(#ffe37a,#fecc00);width:100%;padding-inline:12px}.reader-progress{color:#111827;background:#fecc00;font-size:clamp(.72rem,1.55dvh,.95rem)}button:disabled{opacity:.36;filter:grayscale(.35)}.loading-screen{min-height:100dvh}@media (height<=690px){.reader-shell{--control-h:62px;--stage-gap:7px;--app-pad:8px}.reader-header{padding-block:6px}.brand-mark{width:38px}.reader-badge{padding:7px 10px}.book-stage{padding:10px}.book-page{gap:6px;padding:9px}.blank-page:after{display:none}}@media (width<=760px){.reader-shell{--page-w:min(46vw, calc((100dvh - var(--control-h) - 116px) * .64))}.reader-badge{display:none}.reader-controls{grid-template-columns:1fr 1fr}.reader-progress{grid-area:1/1/auto/-1}}.reader-header{background:linear-gradient(90deg,#242424f5,#2f3438d6),repeating-linear-gradient(135deg,#ffffff06 0 1px,#0000 1px 16px);border-color:#fffaf01f;box-shadow:0 16px 34px #00000038,inset 0 0 0 1px #fecc0014}.brand-mark{background:linear-gradient(135deg,#fecc00 0 56%,#fffaf0 56% 100%);border-color:#242424;box-shadow:0 0 0 3px #fecc0024,0 8px 18px #0000003d}.reader-badge{background:linear-gradient(#ffdc4a,#fecc00);border-color:#fecc0073}.book-stage:before{border-top-color:#fecc00;border-left-color:#fecc00}.book-stage:after{border-bottom-color:#fffaf09e;border-right-color:#fffaf09e}.book-spread{background:#141619;box-shadow:0 34px 72px #0000007a,0 0 0 2px #fecc002e,inset 0 0 0 1px #fffaf01f}.book-page-left{background:linear-gradient(90deg,#fff0 88%,#1f232814),#fffaf0}.book-page-right{background:linear-gradient(270deg,#fff0 88%,#1f232814),#fffaf0}.page-art{background:#fffaf0;border-color:#1f232829}.page-text{background:linear-gradient(90deg,#fecc0029,#0000 34%),#fff4dc;border-left-color:#fecc00}.blank-page:before{content:"SQ StoryFlip";background:#fecc00;border-color:#1f2328}.blank-page span{border-color:#1f232857}.blank-page span:before{background:linear-gradient(135deg,#fecc00 0 54%,#fffaf0 54% 100%);border-color:#1f2328}.page-button:disabled{color:#fffaf075;background:#242424}.reader-progress,.auto-play-button,.play-button{background:linear-gradient(#ffdc4a,#fecc00)}.play-button[aria-pressed=true]{background:#1f2328}.loading-card{background:#fffaf0}.reader-shell{--page-w:min(47vw, calc((100dvh - var(--control-h) - 104px) * .72));background:radial-gradient(circle at 84% 12%,#fecc006b,#0000 15dvh),radial-gradient(at 15% 18%,#ffffffd9 0 9%,#0000 9.5%),radial-gradient(at 23% 17%,#ffffffc7 0 7%,#0000 7.5%),radial-gradient(at 72% 24%,#ffffffb8 0 8%,#0000 8.6%),radial-gradient(at 80% 23%,#ffffffad 0 6%,#0000 6.6%),radial-gradient(circle,#ffffff80 1.3px,#0000 1.8px) 14px 16px/42px 42px,linear-gradient(#7dd3fc 0%,#bae6fd 52%,#e0f7ff 100%)}.reader-shell:before{opacity:.72;background:radial-gradient(at 38% 9%,#ffffffc7 0 7%,#0000 7.5%),radial-gradient(at 45% 8%,#ffffffa3 0 5%,#0000 5.6%),radial-gradient(circle at 12% 78%,#fecc0029,#0000 15dvh),radial-gradient(circle,#fecc0047 1.4px,#0000 2px) 6px 10px/56px 56px}.reader-header{color:#111827;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd1;border:0;border-radius:24px;box-shadow:0 12px 30px #0e74901f,inset 0 0 0 2px #ffffffdb}.brand-mark{background:linear-gradient(135deg,#fecc00 0 58%,#fff 58% 100%);border:3px solid #111827;border-radius:16px;box-shadow:0 5px #11182726,0 0 0 5px #fecc002e}.reader-header h1{color:#111827;text-shadow:none}.reader-kicker{color:#0e7490;letter-spacing:.08em}.reader-badge{color:#111827;background:#fecc00;border:0;box-shadow:0 5px #1118271f}.book-stage{background:radial-gradient(at 24% 18%,#ffffffe6 0 9%,#0000 9.5%),radial-gradient(at 31% 17%,#ffffffb8 0 7%,#0000 7.5%),radial-gradient(circle,#fecc0024,#0000 33%),#ffffff4d;border:0;border-radius:28px;box-shadow:inset 0 0 0 2px #ffffff73,0 18px 42px #0e749029}.book-stage:before{border-top:5px solid #fecc00;border-left:5px solid #fecc00;border-radius:10px 0 0;width:46px;height:46px;top:16px;left:18px}.book-stage:after{border-bottom:5px solid #ffffffe6;border-right:5px solid #ffffffe6;border-radius:0 0 10px;width:46px;height:46px;bottom:16px;right:18px}.book-spread{background:#facc15;border-radius:18px;box-shadow:0 24px 48px #0e749033,0 0 0 4px #ffffffdb,0 0 0 7px #fecc005c}.book-page,.sheet-face .book-page{background-color:#fffaf0}.book-page-left{background:linear-gradient(90deg,#fff0 88%,#0e749014),#fffaf0;border-radius:18px 0 0 18px}.book-page-right{background:linear-gradient(270deg,#fff0 88%,#0e749014),#fffaf0;border-radius:0 18px 18px 0}.page-art{background:#fff;border:2px solid #7dd3fc80;border-radius:16px;box-shadow:0 5px #7dd3fc3d,0 10px 22px #11182714}.page-text{color:#111827;background:linear-gradient(90deg,#fecc00 0 10px,#0000 10px),#fff7dc;border-left:0;border-radius:16px;box-shadow:inset 0 0 0 1px #fecc0033}.book-spine{background:linear-gradient(90deg,#0e74902e,#ffffffdb 42%,#fecc00 50%,#0e74902e);width:16px;box-shadow:-8px 0 14px #0e74901f,8px 0 14px #0e74901f}.blank-page{background:linear-gradient(135deg,#fecc00 0 13%,#0000 13% 100%),radial-gradient(at 20% 20%,#ffffffe6 0 9%,#0000 9.5%),radial-gradient(at 28% 19%,#ffffffbd 0 7%,#0000 7.5%),radial-gradient(circle,#7dd3fc59 1.5px,#0000 2px) 9px 9px/22px 22px,#fffaf0}.blank-page:before{content:"SQ StoryFlip";color:#111827;letter-spacing:.04em;background:#fecc00;border:0;box-shadow:0 4px #1118271a}.blank-page:after{content:"Read • Listen • Flip";color:#111827;background:linear-gradient(#fecc00,#fecc00) 50% 20px/82px 4px no-repeat,radial-gradient(circle,#f97316 2.4px,#0000 3px) 48% 6px/16px 16px no-repeat}.blank-page span{border:3px dashed #0e749040}.blank-page span:before{content:"SQ";background:linear-gradient(135deg,#fecc00 0 52%,#fff 52% 100%);border:3px solid #111827;border-radius:18px}.empty-page{background:radial-gradient(at 28% 18%,#ffffffe0 0 8%,#0000 8.5%),radial-gradient(circle,#7dd3fc42 1.5px,#0000 2px) 8px 8px/24px 24px,#fffaf0}.reader-controls{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd6;border:0;border-radius:24px;box-shadow:0 -8px 28px #0e74901f,inset 0 0 0 2px #ffffffeb}button{border-radius:999px}.page-button{color:#111827;background:#e0f7ff;box-shadow:inset 0 0 0 2px #7dd3fc66,0 5px #0e74901f}.page-button:disabled{color:#1118275c;box-shadow:none;background:#f1f5f9}.reader-progress{background:#fff;box-shadow:inset 0 0 0 2px #fecc0061,0 5px #fecc0029}.auto-play-button,.play-button{color:#111827;background:linear-gradient(#ffe16a,#fecc00);box-shadow:inset 0 0 0 2px #11182714,0 5px #b9820029}.play-button[aria-pressed=true]{color:#fff;background:#22c55e}.brand-lockup{gap:clamp(10px,1.4vw,16px)}.reader-header h1{color:#111827;letter-spacing:0;text-shadow:none;margin:0;font-size:clamp(2.1rem,5.2dvh,3.65rem);line-height:.92}.blank-mark{aspect-ratio:1;width:min(48%,176px);color:inherit;box-shadow:none;background:0 0;border:0;border-radius:0;place-items:center;display:grid;overflow:visible}.blank-mark img{object-fit:contain;filter:drop-shadow(0 8px #1118270f);width:100%;height:100%;display:block}.loading-card{background:#ffffffe6;border:0;border-radius:24px;box-shadow:0 18px 38px #0e749029}.loading-book{background:#7dd3fc}.brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.reader-header .brand-mark{width:clamp(66px,8dvh,90px);box-shadow:none;background:0 0;border:0;border-radius:0}.reader-title-lockup{flex-wrap:wrap;align-items:baseline;gap:clamp(7px,1vw,12px);display:flex}.reader-title-zh,.reader-tagline,.loading-brand-zh,.loading-tagline{margin:0}.reader-header h1{font-size:clamp(2rem,5.6dvh,3.8rem);line-height:.9}.reader-title-zh{color:#111827;font-size:clamp(1rem,2.3dvh,1.5rem);font-weight:1000;line-height:1}.reader-tagline{color:#111827c7;flex-wrap:wrap;gap:.35rem .7rem;margin-top:clamp(3px,.55dvh,6px);font-size:clamp(.74rem,1.45dvh,.94rem);font-weight:900;line-height:1.05;display:flex}.reader-tagline span{color:#0e7490}.reader-kicker{color:#f97316}.reader-badge{font-size:clamp(.9rem,1.8dvh,1.08rem)}.loading-screen h1{font-size:clamp(2.6rem,7dvh,4.7rem);line-height:.9}.loading-brand-zh{color:#111827;font-size:clamp(1.05rem,2.4dvh,1.5rem);font-weight:1000}.loading-tagline-zh{color:#0e7490;margin-top:4px;font-size:clamp(.94rem,2dvh,1.2rem)}.loading-message{margin-top:clamp(10px,1.6dvh,16px)}.blank-page:before{content:"SQ StoryFlip\a 翻翻故事書";white-space:pre-line;letter-spacing:.02em;font-size:clamp(.82rem,1.55vw,1.08rem)}.blank-page:after{content:"Read. Listen. Flip.\a 聽一聽，讀一讀，翻一翻。\a \a Tap play and read along!\a 按播放，一起讀！";white-space:pre-line;color:#111827c7;max-width:min(82%,320px);padding-top:48px;font-size:clamp(.82rem,1.45vw,1rem);line-height:1.38}.blank-page span{width:min(64%,210px)}.blank-page span:before{content:"SQ";border-radius:22px;width:70%;font-size:clamp(2.3rem,6.2vw,3.8rem)}.page-text{white-space:pre-line;min-height:0;font-size:clamp(1.1rem,2.45dvh,1.65rem);line-height:1.14}.karaoke-word{border-radius:.35em;transition:background-color .12s,box-shadow .12s,color .12s;display:inline}.karaoke-word.is-active{color:#111827;background:linear-gradient(#ffe16a,#fecc00);box-shadow:0 .08em #b982002e,0 0 0 .14em #fecc0033}.play-button{border-radius:50%;justify-self:center;place-items:center;width:clamp(46px,6.6dvh,56px);min-width:clamp(46px,6.6dvh,56px);height:clamp(46px,6.6dvh,56px);min-height:clamp(46px,6.6dvh,56px);padding:0;font-size:clamp(1.05rem,2.2dvh,1.35rem);line-height:1;display:inline-grid}.play-button span{place-items:center;display:grid;transform:translate(.04em)}.play-button svg{width:1.18em;height:1.18em;display:block}.play-button[aria-pressed=true] span{font-size:.92em;transform:none}@media (height<=690px){.page-text{font-size:clamp(.95rem,2.25dvh,1.35rem)}.play-button{width:clamp(40px,6dvh,48px);min-width:clamp(40px,6dvh,48px);height:clamp(40px,6dvh,48px);min-height:clamp(40px,6dvh,48px)}}.reader-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffc7;border-radius:28px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(10px,1.5vw,18px);padding:clamp(8px,1.2dvh,12px) clamp(12px,2vw,22px);display:grid;box-shadow:0 12px 26px #0e74901a,inset 0 0 0 2px #ffffffd1}.reader-header .brand-mark{aspect-ratio:auto;width:clamp(112px,17dvh,154px);height:auto;box-shadow:none;background:0 0;border:0;border-radius:0}.reader-header .brand-mark img{width:100%;height:auto}.reader-header h1{color:#111827;text-align:left;letter-spacing:0;text-shadow:none;margin:0;font-size:clamp(2.1rem,5.2dvh,3.65rem);line-height:.92}.brand-copy{min-width:0}.reader-tagline{color:#0e7490;margin-top:clamp(3px,.6dvh,7px);font-size:clamp(.92rem,1.7dvh,1.08rem);font-weight:1000;line-height:1;display:block}.header-actions{justify-content:flex-end;align-items:center;gap:clamp(8px,1vw,12px);display:flex}.reader-badge{color:#111827;white-space:nowrap;background:#fecc00;border:0;border-radius:999px;margin:0;padding:clamp(8px,1.1dvh,11px) clamp(12px,1.7vw,18px);font-size:clamp(.82rem,1.55dvh,1rem);font-weight:1000;line-height:1;box-shadow:0 5px #b9820029}.language-toggle{background:#bae6fd9e;border-radius:999px;grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:inline-grid;box-shadow:inset 0 0 0 1px #0e74901f}.language-toggle button{color:#111827;min-width:clamp(44px,5.5dvh,58px);min-height:clamp(34px,4.1dvh,42px);box-shadow:none;background:#ffffffbd;border:0;border-radius:999px;padding:0 10px;font-size:clamp(.78rem,1.45dvh,.92rem);font-weight:1000;line-height:1}.language-toggle button.is-active{background:#fecc00;box-shadow:0 3px #b9820029}.loading-topbar{justify-content:center;align-items:center;gap:clamp(12px,2vw,18px);display:flex}.loading-logo{place-items:center;width:clamp(72px,10dvh,108px);display:grid}.loading-logo img{object-fit:contain;width:100%;height:auto;display:block}.loading-screen h1{color:#111827;text-shadow:none;font-size:clamp(2.7rem,7.4dvh,5rem);line-height:.92}.loading-tagline{color:#0e7490;font-size:clamp(1.02rem,2.2dvh,1.35rem);font-weight:1000}.loading-message{color:#111827}.blank-page{background:linear-gradient(135deg,#fecc00 0 14%,#0000 14% 100%),radial-gradient(at 76% 18%,#7dd3fc47 0 10%,#0000 10.5%),radial-gradient(circle,#7dd3fc47 1.5px,#0000 2px) 9px 9px/24px 24px,#fffaf0;align-content:center;justify-items:center;gap:clamp(12px,2dvh,20px)}.blank-page:before,.blank-page:after{content:none}.blank-mark{aspect-ratio:1;color:#111827;background:linear-gradient(135deg,#fecc00 0 54%,#fff 54% 100%);border:4px solid #111827;border-radius:28px;place-items:center;width:min(42%,150px);font-size:clamp(2.4rem,6.2vw,4rem);font-weight:1000;line-height:1;display:grid;box-shadow:0 8px #11182714,0 0 0 8px #fecc0026}.blank-copy{text-align:center;justify-items:center;gap:8px;max-width:min(82%,340px);display:grid}.blank-title,.blank-tagline,.blank-instruction{margin:0}.blank-title{color:#111827;font-size:clamp(1.7rem,4.2vw,3rem);font-weight:1000;line-height:.98}.blank-tagline{color:#0e7490;font-size:clamp(.98rem,1.8vw,1.22rem);font-weight:1000}.blank-instruction{color:#111827;background:#ffffffbf;border-radius:999px;padding:8px 14px;font-size:clamp(.9rem,1.55vw,1.05rem);font-weight:900}@media (width<=760px),(height<=650px){.reader-header{grid-template-columns:1fr;gap:8px}.header-actions{justify-content:space-between}.reader-header .brand-mark{width:clamp(96px,15dvh,128px)}.reader-header h1{font-size:clamp(1.7rem,4.4dvh,2.7rem)}}.header-actions .reader-badge{display:block}.reader-shell{--book-shell-w:min(92vw, calc((var(--page-w) * 2) + clamp(24px, 4dvh, 44px)));grid-template-rows:auto minmax(0,1fr)}.reader-main-column{z-index:1;width:var(--book-shell-w);max-width:calc(100vw - (var(--app-pad) * 2));grid-template-rows:minmax(0,1fr) auto;place-self:stretch center;gap:clamp(8px,1.2dvh,12px);min-height:0;display:grid;position:relative}.reader-main-column .reader-card,.reader-main-column .book-stage,.reader-main-column .reader-controls{width:100%}.reader-main-column .reader-card,.reader-main-column .book-stage{min-height:0}.reader-header{background:linear-gradient(#ffffffe0,#ffffffb8),#e0f7ff85;border-radius:24px;justify-self:center;width:min(100%,1280px);padding:clamp(8px,1.05dvh,11px) clamp(14px,2vw,24px)}.brand-lockup{align-items:center;gap:clamp(14px,1.6vw,22px)}.reader-header .brand-mark{width:clamp(120px,13vw,164px);transform:translateY(1px)}.reader-header h1{color:#111827;letter-spacing:.01em;font-size:clamp(2.05rem,4.6dvh,3.35rem);font-weight:900;line-height:.96;display:inline-block;position:relative}.reader-header h1:after{content:"";opacity:.82;background:#fecc00;border-radius:999px;height:.16em;position:absolute;bottom:-.15em;left:.08em;right:.08em}.reader-tagline{color:#08778a;letter-spacing:.01em;margin-top:clamp(8px,1dvh,11px);font-size:clamp(.9rem,1.55dvh,1.02rem);font-weight:850}.header-actions{gap:clamp(9px,1vw,13px)}.reader-badge{border-radius:14px;padding:clamp(8px,1dvh,10px) clamp(12px,1.45vw,16px);font-size:clamp(.78rem,1.35dvh,.92rem);box-shadow:0 4px #b9820024,inset 0 0 0 1px #11182714}.language-toggle{background:#fff;border:2px solid #0e749038;border-radius:12px;grid-template-columns:auto auto;gap:0;padding:0;display:inline-grid;overflow:hidden;box-shadow:0 4px 10px #0e749014}.language-toggle button{color:#111827;min-width:clamp(44px,4.8dvh,54px);min-height:clamp(34px,3.9dvh,40px);box-shadow:none;background:#fff;border:0;border-radius:0;padding:0 clamp(10px,1.1vw,13px);font-size:clamp(.76rem,1.3dvh,.88rem);font-weight:900}.language-toggle button+button{border-left:2px solid #0e749029}.language-toggle button.is-active{box-shadow:none;background:#fecc00}.reader-controls{border-radius:20px;grid-template-columns:minmax(0,1fr) minmax(118px,.62fr) minmax(0,1fr) minmax(160px,1.02fr);align-items:center;gap:clamp(7px,.9vw,12px);padding:clamp(8px,1.1dvh,12px)}.page-button,.auto-play-button{padding-inline:clamp(12px,1.6vw,18px);font-size:clamp(.88rem,1.55dvh,1rem)}.auto-play-button{justify-self:stretch;width:100%;min-height:clamp(44px,5.4dvh,52px)}.reader-progress{padding:6px 10px;font-size:clamp(.78rem,1.35dvh,.92rem)}@media (width<=760px),(height<=650px){.reader-shell{--book-shell-w:min(94vw, calc((var(--page-w) * 2) + 24px))}.reader-header{grid-template-columns:minmax(0,1fr) auto;padding-inline:clamp(10px,2.4vw,16px)}.brand-lockup{gap:clamp(8px,2vw,12px)}.reader-header .brand-mark{width:clamp(86px,19vw,112px)}.reader-header h1{font-size:clamp(1.55rem,5vw,2.08rem)}.reader-tagline{margin-top:6px;font-size:clamp(.72rem,2.3vw,.86rem)}.header-actions{flex-direction:column;align-items:flex-end;gap:6px}.reader-badge{border-radius:10px;padding:7px 10px;font-size:clamp(.68rem,2.1vw,.78rem)}.language-toggle{border-radius:10px}.language-toggle button{min-width:42px;min-height:32px;padding-inline:9px;font-size:.72rem}.reader-controls{grid-template-columns:1fr 1fr}.reader-progress{grid-area:1/1/auto/-1}}.blank-page .blank-mark{width:min(48%,176px);color:inherit;box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.blank-page .blank-mark img{object-fit:contain;filter:drop-shadow(0 8px #1118270f);width:100%;height:100%;display:block}.bingo-page{background:radial-gradient(circle at 14% 14%,#fecc0033,#0000 22%),radial-gradient(circle at 88% 10%,#7dd3fc52,#0000 18%),radial-gradient(circle,#7dd3fc38 1.5px,#0000 2px) 10px 10px/24px 24px,#fffaf0;align-content:stretch;gap:clamp(10px,1.4dvh,14px)}.bingo-heading{text-align:center;justify-items:center;gap:5px;display:grid}.bingo-title,.bingo-instruction{margin:0}.bingo-title{color:#111827;font-size:clamp(1.3rem,3.2dvh,2.05rem);font-weight:1000;line-height:.98}.bingo-instruction{color:#08778a;font-size:clamp(.78rem,1.65dvh,1.02rem);font-weight:900;line-height:1.15}.bingo-board{background:linear-gradient(#ffffffe0,#fff7dcc7),#fff;border:3px solid #1118271a;border-radius:22px;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(7px,1.1dvh,12px);min-height:0;padding:clamp(8px,1.4dvh,14px);display:grid;box-shadow:0 8px #fecc0029,inset 0 0 0 2px #fecc0029}.bingo-cell-wrap{min-width:0;min-height:0}.bingo-word-button{--tile-top:#fff;--tile-bottom:#fff7dc;--tile-border:#1118271a;border:3px solid var(--tile-border);color:#111827;background:radial-gradient(circle at 82% 18%, #ffffffb8, transparent 24%), linear-gradient(180deg, var(--tile-top), var(--tile-bottom));letter-spacing:-.01em;width:100%;height:100%;min-height:clamp(50px,8.2dvh,82px);box-shadow:0 5px 0 color-mix(in srgb, var(--tile-bottom) 70%, #111827 12%), inset 0 0 0 2px #ffffffb3;border-radius:18px;place-items:center;padding:.15em;font-size:clamp(.9rem,2.45dvh,1.42rem);font-weight:1000;line-height:1;display:grid}.bingo-cell-wrap:first-child .bingo-word-button{--tile-top:#e0f7ff;--tile-bottom:#bae6fd;--tile-border:#0ea5e938}.bingo-cell-wrap:nth-child(2) .bingo-word-button{--tile-top:#fff1f7;--tile-bottom:#fbcfe8;--tile-border:#ec489933}.bingo-cell-wrap:nth-child(3) .bingo-word-button{--tile-top:#fff7dc;--tile-bottom:#fde68a;--tile-border:#eab3083d}.bingo-cell-wrap:nth-child(4) .bingo-word-button{--tile-top:#dcfce7;--tile-bottom:#bbf7d0;--tile-border:#22c55e38}.bingo-cell-wrap:nth-child(5) .bingo-word-button{--tile-top:#f5f3ff;--tile-bottom:#ddd6fe;--tile-border:#8b5cf633}.bingo-cell-wrap:nth-child(6) .bingo-word-button{--tile-top:#ffedd5;--tile-bottom:#fed7aa;--tile-border:#f9731638}.bingo-cell-wrap:nth-child(7) .bingo-word-button{--tile-top:#e0f2fe;--tile-bottom:#bae6fd;--tile-border:#0284c733}.bingo-cell-wrap:nth-child(8) .bingo-word-button{--tile-top:#fef3c7;--tile-bottom:#fde68a;--tile-border:#f59e0b38}.bingo-cell-wrap:nth-child(9) .bingo-word-button{--tile-top:#ffe4e6;--tile-bottom:#fecdd3;--tile-border:#f43f5e33}.bingo-word-button[aria-pressed=true]{color:#111827;background:radial-gradient(circle at 78% 18%,#ffffffb3,#0000 24%),linear-gradient(#ffe16a,#fecc00);transform:translateY(2px);box-shadow:0 2px #b982002e,0 0 0 5px #fecc0038}.bingo-word-button:disabled{opacity:.9}.closing-page{text-align:center;background:radial-gradient(circle at 50% 25%,#fecc004d,#0000 28%),radial-gradient(circle,#7dd3fc47 1.5px,#0000 2px) 8px 8px/24px 24px,#fffaf0;align-content:center;justify-items:center;gap:clamp(10px,1.8dvh,18px)}.closing-burst{aspect-ratio:1;color:#111827;background:#fecc00;border-radius:50%;place-items:center;width:clamp(76px,13dvh,120px);font-size:clamp(2.3rem,7dvh,4.2rem);font-weight:1000;display:grid;box-shadow:0 8px #b9820029,0 0 0 10px #fecc0024}.closing-burst svg{width:56%;height:56%;display:block}.closing-title,.closing-message{margin:0}.closing-title{color:#111827;font-size:clamp(1.8rem,4.8dvh,3rem);font-weight:1000;line-height:.98}.closing-message{color:#08778a;max-width:14em;font-size:clamp(1rem,2.1dvh,1.35rem);font-weight:900;line-height:1.2}.reader-controls{grid-template-columns:minmax(52px,.62fr) minmax(104px,1fr) minmax(52px,.62fr) minmax(66px,.58fr);gap:clamp(6px,.75vw,10px);padding:clamp(8px,1dvh,11px)}.reader-controls.reader-controls-final{grid-template-columns:minmax(56px,.7fr) minmax(120px,1fr) minmax(56px,.7fr)}.reader-controls button,.reader-progress{min-height:clamp(46px,5.6dvh,54px)}.icon-control{border-radius:18px;grid-template-columns:auto;place-items:center;gap:2px;min-width:0;padding:4px 10px;display:grid}.icon-control .control-icon{grid-auto-flow:column;place-items:center;gap:2px;font-size:clamp(1.35rem,3.1dvh,1.85rem);line-height:1;display:inline-grid}.icon-control .control-icon svg{width:1.25em;height:1.25em;display:block}.icon-control .control-text{white-space:nowrap;font-size:clamp(.64rem,1.12dvh,.78rem);line-height:1;display:none}.next-control{background:radial-gradient(circle at 78% 18%,#ffffffad,#0000 24%),linear-gradient(#bbf7d0,#86efac)}.home-control{background:radial-gradient(circle at 78% 18%,#ffffffad,#0000 24%),linear-gradient(#fed7aa,#fb923c)}.read-all-control{background:radial-gradient(circle at 78% 18%,#ffffffb3,#0000 24%),linear-gradient(#ffe16a,#fecc00);justify-self:stretch;width:auto;min-width:clamp(58px,7dvh,76px);padding-inline:10px}.read-all-control .control-icon{font-size:clamp(1.1rem,2.55dvh,1.5rem)}.read-all-control .control-icon svg{width:1.06em;height:1.06em}.reader-progress{border-radius:16px;font-size:clamp(.78rem,1.35dvh,.92rem)}.bingo-word-button{padding:.45em .2em .22em;position:relative}.bingo-speaker{aspect-ratio:1;color:#111827;background:#fecc00d6;border-radius:50%;place-items:center;width:clamp(18px,2.8dvh,24px);font-size:clamp(.65rem,1.4dvh,.85rem);line-height:1;display:grid;position:absolute;top:6px;right:7px;box-shadow:0 2px #b9820024}.bingo-speaker svg{width:68%;height:68%;display:block}.bingo-word-text{display:block}.bingo-word-button[aria-pressed=true] .bingo-speaker{color:#fff;background:#22c55e;animation:.7s ease-in-out infinite alternate bingo-speaker-pulse}@keyframes bingo-speaker-pulse{0%{transform:scale(.96);box-shadow:0 0 #22c55e33}to{transform:scale(1.08);box-shadow:0 0 0 6px #22c55e29}}@media (width>=900px) and (height>=720px){.icon-control .control-text{display:block}}@media (width<=760px),(height<=650px){.reader-controls{grid-template-columns:.7fr 1fr .7fr .72fr}.reader-controls.reader-controls-final{grid-template-columns:.7fr 1fr .7fr}.reader-progress{grid-area:auto}.icon-control{border-radius:16px;padding-inline:8px}}.theme-toggle{background:#fff;border:2px solid #0e749038;border-radius:12px;grid-template-columns:auto auto;gap:0;padding:0;display:inline-grid;overflow:hidden;box-shadow:0 4px 10px #0e749014}.theme-toggle button{color:#111827;min-width:clamp(54px,6dvh,70px);min-height:clamp(34px,3.9dvh,40px);box-shadow:none;background:#fff;border:0;border-radius:0;grid-template-columns:auto auto;align-items:center;gap:5px;padding:0 clamp(8px,1vw,12px);font-size:clamp(.72rem,1.22dvh,.84rem);font-weight:900;display:inline-grid}.theme-toggle button+button{border-left:2px solid #0e749029}.theme-toggle button.is-active{background:#fecc00}.theme-toggle svg{width:1.05em;height:1.05em}.reader-shell.theme-night:before{opacity:.7;background:radial-gradient(circle at 84% 11%,#fde68a5c,#0000 10dvh),radial-gradient(circle,#fff7ed6b 1px,#0000 2px) 24px 22px/72px 72px,linear-gradient(135deg,#0000 0 72%,#c4b5fd17 72% 73%,#0000 73%)}.theme-night .reader-header{color:#fff7ed;background:linear-gradient(#0f172ac7,#1e293ba8),#312e8138;border-color:#c4b5fd42;box-shadow:0 16px 42px #0f172a3d,inset 0 0 0 1px #fff7ed1f}.theme-night .reader-header h1{color:#fff7ed}.theme-night .reader-header h1:after{opacity:.92;background:#fde68a}.theme-night .reader-tagline,.theme-night .bingo-instruction,.theme-night .closing-message{color:#93c5fd}.theme-night .reader-badge,.theme-night .reader-progress{color:#0f172a;background:linear-gradient(#fff7ed,#fde68a);box-shadow:0 4px #0f172a2e,inset 0 0 0 1px #0f172a1a}.theme-night .language-toggle,.theme-night .theme-toggle{background:#0f172abd;border-color:#c4b5fd57;box-shadow:0 5px 16px #0f172a38}.theme-night .language-toggle button,.theme-night .theme-toggle button{color:#fff7ed;background:#1e293bc2}.theme-night .language-toggle button+button,.theme-night .theme-toggle button+button{border-left-color:#c4b5fd3d}.theme-night .language-toggle button.is-active,.theme-night .theme-toggle button.is-active{color:#0f172a;background:#fde68a}.theme-night .reader-card{background:#0f172a29;border-color:#c4b5fd38;box-shadow:0 20px 52px #0f172a57,inset 0 0 0 1px #fff7ed24}.theme-night .book-stage{background:radial-gradient(circle at 50% 52%,#fde68a33,#0000 36%),radial-gradient(circle at 82% 22%,#93c5fd2e,#0000 25%),linear-gradient(#c4b5fd14 1px,#0000 1px),linear-gradient(90deg,#c4b5fd14 1px,#0000 1px),#0f172a61;border-color:#c4b5fd38;box-shadow:0 12px 38px #0f172a47,inset 0 0 0 1px #fff7ed14}.theme-night .book-page,.theme-night .sheet-face .book-page{color:#111827;background-color:#fff7ed;box-shadow:inset 0 0 0 1px #0f172a14,inset 0 0 34px #fde68a1a}.theme-night .book-page-left{background:linear-gradient(90deg,#fff7ed00 88%,#0f172a1a),#fff7ed}.theme-night .book-page-right{background:linear-gradient(270deg,#fff7ed00 88%,#0f172a1a),#fff7ed}.theme-night .page-image,.theme-night .sheet-face .page-image{filter:sepia(.18)saturate(.75)brightness(.88)contrast(.92)}.theme-night .page-text{color:#111827;background:#fff7ed;border-left-color:#fde68a;box-shadow:inset 0 0 0 1px #fde68a5c}.theme-night .karaoke-word.is-clickable{text-decoration-color:#fde68ab8}.theme-night .karaoke-word.is-clickable:hover,.theme-night .karaoke-word.is-clickable:focus-visible{background:#fde68a57;box-shadow:0 .12em #c4b5fd59}.theme-night .karaoke-word.is-active{color:#0f172a;background:linear-gradient(#fff7c2,#fde68a);box-shadow:0 .08em #312e8129,0 0 0 .14em #c4b5fd38}.theme-night .play-button,.theme-night .read-all-control{color:#0f172a;background:radial-gradient(circle at 78% 18%,#ffffff9e,#0000 24%),linear-gradient(#fff7c2,#fde68a);box-shadow:0 5px #0f172a33,0 0 0 4px #fde68a2e}.theme-night .previous-control,.theme-night .next-control{color:#0f172a;background:radial-gradient(circle at 78% 18%,#ffffff8a,#0000 24%),linear-gradient(#dbeafe,#93c5fd)}.theme-night .home-control{color:#0f172a;background:radial-gradient(circle at 78% 18%,#ffffff8a,#0000 24%),linear-gradient(#ddd6fe,#c4b5fd)}.theme-night .reader-controls{background:linear-gradient(#fff7edc2,#dbeafe9e),#0f172a29;box-shadow:0 10px 28px #0f172a3d,inset 0 0 0 1px #fff7ed3d}.theme-night .blank-page,.theme-night .closing-page,.theme-night .bingo-page{background:radial-gradient(circle at 16% 16%,#fde68a2e,#0000 24%),radial-gradient(circle at 88% 12%,#c4b5fd33,#0000 18%),radial-gradient(circle,#93c5fd2e 1.5px,#0000 2px) 10px 10px/24px 24px,#fff7ed}.theme-night .bingo-board{background:linear-gradient(#fff7ede6,#ede9feb8),#fff7ed;border-color:#312e812e;box-shadow:0 8px #c4b5fd33,inset 0 0 0 2px #fde68a33}.theme-night .bingo-word-button{--tile-top:#fff7ed;--tile-bottom:#dbeafe;--tile-border:#312e812e;box-shadow:0 5px #312e8124,inset 0 0 0 2px #fff7edb8}.theme-night .bingo-cell-wrap:first-child .bingo-word-button,.theme-night .bingo-cell-wrap:nth-child(7) .bingo-word-button{--tile-top:#eff6ff;--tile-bottom:#bfdbfe}.theme-night .bingo-cell-wrap:nth-child(2) .bingo-word-button,.theme-night .bingo-cell-wrap:nth-child(9) .bingo-word-button{--tile-top:#fdf2f8;--tile-bottom:#fbcfe8}.theme-night .bingo-cell-wrap:nth-child(3) .bingo-word-button,.theme-night .bingo-cell-wrap:nth-child(8) .bingo-word-button{--tile-top:#fffbeb;--tile-bottom:#fde68a}.theme-night .bingo-cell-wrap:nth-child(4) .bingo-word-button{--tile-top:#ecfdf5;--tile-bottom:#bbf7d0}.theme-night .bingo-cell-wrap:nth-child(5) .bingo-word-button,.theme-night .bingo-cell-wrap:nth-child(6) .bingo-word-button{--tile-top:#f5f3ff;--tile-bottom:#ddd6fe}.theme-night .bingo-word-button[aria-pressed=true]{background:radial-gradient(circle at 78% 18%,#ffffffb3,#0000 24%),linear-gradient(#fff7c2,#fde68a);box-shadow:0 2px #312e812e,0 0 0 5px #c4b5fd42}@media (width<=760px),(height<=680px){.theme-toggle button span{display:none}.theme-toggle button{grid-template-columns:auto;min-width:clamp(38px,4.4dvh,46px);padding-inline:9px}}.header-actions{flex-flow:row;justify-content:flex-end;align-items:center;gap:clamp(7px,.85vw,11px);display:flex}.theme-toggle,.language-toggle{flex:none}.theme-toggle button,.language-toggle button{min-height:clamp(30px,3.5dvh,36px)}.reader-shell.theme-night .book-page,.reader-shell.theme-night .sheet-face .book-page,.reader-shell.theme-night .blank-page,.reader-shell.theme-night .closing-page,.reader-shell.theme-night .bingo-page{color:#f8fafc;background:radial-gradient(circle at 18% 16%,#fde68a1a,#0000 22%),radial-gradient(circle at 88% 12%,#c4b5fd21,#0000 20%),linear-gradient(#312e816b,#17153beb),#17153b;box-shadow:inset 0 0 0 1px #c4b5fd1f,inset 0 0 34px #0f172a57}.reader-shell.theme-night .book-page-left{background:linear-gradient(90deg,#1e1b4b00 86%,#fde68a1f),linear-gradient(#312e816b,#17153bf0),#17153b}.reader-shell.theme-night .book-page-right{background:linear-gradient(270deg,#1e1b4b00 86%,#fde68a1f),linear-gradient(#312e816b,#17153bf0),#17153b}.reader-shell.theme-night .page-art{z-index:1;background:#111827;border-color:#c4b5fd4d;position:relative;overflow:hidden;box-shadow:0 5px #c4b5fd29,0 10px 22px #0f172a38}.reader-shell.theme-night .page-image{object-fit:contain;width:100%;max-width:100%;height:100%;max-height:100%;display:block}.reader-shell.theme-night .page-text{z-index:2;color:#f8fafc;background:linear-gradient(90deg,#fde68a 0 10px,#0000 10px),#26235f;border-left:0;position:relative;box-shadow:inset 0 0 0 1px #c4b5fd2e,0 4px 12px #0f172a2e}.reader-shell.theme-night .blank-copy,.reader-shell.theme-night .blank-title,.reader-shell.theme-night .blank-tagline,.reader-shell.theme-night .blank-instruction,.reader-shell.theme-night .closing-title,.reader-shell.theme-night .closing-message,.reader-shell.theme-night .bingo-title,.reader-shell.theme-night .bingo-instruction{color:#f8fafc}.reader-shell.theme-night .blank-mark img{filter:drop-shadow(0 8px #0f172a3d)}.reader-shell.theme-night .bingo-board{background:linear-gradient(#312e819e,#17153bb8),#1e1b4b;border-color:#c4b5fd3d;box-shadow:0 8px #0f172a42,inset 0 0 0 2px #fde68a1f}.reader-shell.theme-night .bingo-word-button{color:#f8fafc;--tile-top:#3730a3;--tile-bottom:#26235f;--tile-border:#c4b5fd42;background:radial-gradient(circle at 82% 18%, #fde68a1f, transparent 24%), linear-gradient(180deg, var(--tile-top), var(--tile-bottom))}.reader-shell.theme-night .bingo-word-button[aria-pressed=true]{color:#0f172a;background:radial-gradient(circle at 78% 18%,#ffffffb3,#0000 24%),linear-gradient(#fff7c2,#fde68a)}@media (width<=760px),(height<=680px){.header-actions{gap:6px}}.library-shell,.route-status-shell{min-height:100svh;max-height:100svh;overflow:auto}.library-shell{isolation:isolate;background:radial-gradient(circle at 18% 18%,#ffffffb8,#0000 13rem),radial-gradient(circle at 88% 10%,#fecc0033,#0000 10rem),linear-gradient(#0e74900b 1px,#0000 1px) 0 0/30px 30px,linear-gradient(90deg,#0e74900b 1px,#0000 1px) 0 0/30px 30px,linear-gradient(#dff7ff 0%,#eefbff 44%,#fff9df 100%);padding:clamp(18px,3.4vw,42px);position:relative}.library-shell:before,.library-shell:after,.library-sky-dot{content:"";z-index:-1;pointer-events:none;position:fixed}.library-shell:before{opacity:.55;border:5px solid #fecc0075;border-radius:22px;width:92px;height:92px;top:12%;left:4%;transform:rotate(-8deg)}.library-shell:after{opacity:.75;background:radial-gradient(circle,#0e749029 1.5px,#0000 2px) 10px 10px/18px 18px;border:3px dashed #0e74902e;border-radius:8px;width:154px;height:78px;bottom:9%;right:6%;transform:rotate(5deg)}.library-sky-dot{border-radius:999px}.library-sky-dot-blue{background:#7dd3fc6b;width:42px;height:42px;top:16%;right:14%;box-shadow:64px 42px 0 -15px #22c55e47,-46px 92px 0 -17px #ef44443d}.library-sky-dot-yellow{background:#fecc0080;width:26px;height:26px;bottom:12%;left:16%;box-shadow:52px -42px 0 -8px #3b82f638,-52px 22px 0 -10px #22c55e3d}.library-content{width:min(100%,1080px);margin:0 auto}.library-header{background:#ffffffc7;border:2px solid #0e749024;border-radius:8px;align-items:center;gap:clamp(12px,2vw,18px);margin-bottom:clamp(18px,3vw,28px);padding:clamp(12px,1.8vw,18px);display:flex;box-shadow:0 16px 34px #0e74901f,inset 0 0 0 1px #ffffffc7}.library-logo,.route-status-logo{aspect-ratio:1;place-items:center;width:clamp(62px,9vw,92px);display:grid}.library-logo img,.route-status-logo{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:100%;height:auto;display:block}.library-brand-copy{flex:1;min-width:0}.library-header h1{color:#111827;text-align:left;text-shadow:0 3px #fecc0052;margin:0;font-size:clamp(2.2rem,5vw,4rem);font-weight:1000;line-height:.92}.library-auth-nav{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-left:auto;display:flex}.library-auth-nav span{color:#374151;text-overflow:ellipsis;white-space:nowrap;align-self:center;max-width:180px;font-size:.82rem;font-weight:900;overflow:hidden}.library-auth-nav button{color:#111827;min-height:34px;font:inherit;cursor:pointer;background:#ffffffdb;border:1px solid #11182724;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:.86rem;font-weight:950;display:inline-flex}.library-auth-nav button:disabled{cursor:progress;opacity:.64}.library-auth-nav svg{width:16px;height:16px}.library-hero{background:linear-gradient(135deg,#fecc0038 0 13%,#0000 13.2% 100%),radial-gradient(circle at 90% 18%,#7dd3fc59,#0000 5rem),radial-gradient(circle,#0e74901f 1.5px,#0000 2px) 12px 13px/24px 24px,#ffffffdb;border:2px solid #fecc0066;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-bottom:clamp(18px,3vw,28px);padding:clamp(18px,3vw,28px);display:grid;position:relative;overflow:hidden;box-shadow:0 18px 34px #0e74901f,inset 0 0 0 1px #ffffffd1}.library-hero:before{content:"";border-top:4px solid #ef444452;border-bottom:4px solid #22c55e4d;width:70px;height:22px;position:absolute;top:14px;right:18px;transform:rotate(4deg)}.library-hero-copy{justify-items:start;gap:8px;display:grid}.library-sticker{color:#111827;background:#fecc00;border:2px solid #11182729;border-radius:999px;place-items:center;min-height:30px;padding:0 13px;font-size:clamp(.72rem,1.2vw,.86rem);font-weight:1000;line-height:1;display:inline-grid;transform:rotate(-1.6deg);box-shadow:0 4px #b9820029}.library-hero h2{color:#111827;margin:0;font-size:clamp(2rem,4vw,3.6rem);font-weight:1000;line-height:.95}.library-lab-card{background:linear-gradient(#0e749012 1px,#0000 1px) 0 0/18px 18px,linear-gradient(90deg,#0e749012 1px,#0000 1px) 0 0/18px 18px,#fffef7;border:2px solid #0e749029;border-radius:8px;gap:10px;width:clamp(146px,22vw,220px);padding:14px;display:grid;box-shadow:0 8px #7dd3fc38}.library-lab-card-title{color:#0e7490;font-size:clamp(.82rem,1.4vw,1rem);font-weight:1000}.library-lab-card-line{background:#fecc00;border-radius:999px;width:76%;height:6px;box-shadow:38px 14px 0 -2px #ef444457}.library-lab-card-blocks{align-items:end;gap:8px;display:flex}.library-lab-card-blocks span{aspect-ratio:1;background:#bfdbfe;border:2px solid #1118271f;border-radius:6px;width:28px}.library-lab-card-blocks span:nth-child(2){background:#bbf7d0}.library-lab-card-blocks span:nth-child(3){background:#fecaca}.library-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:clamp(16px,2.4vw,24px);display:grid}.library-message{color:#111827;text-align:center;background:#ffffffdb;border:2px dashed #0e74902e;border-radius:8px;margin:0;padding:20px;font-weight:900;box-shadow:0 12px 22px #0e74901a}.library-message-error{color:#a34432}.library-book-card{min-width:0}.library-book-button{color:#111827;text-align:left;background:radial-gradient(circle,#0e749017 1.3px,#0000 1.8px) 16px 14px/22px 22px,#fffef9;border:2px solid #0e749024;border-radius:8px;gap:15px;width:100%;min-height:100%;padding:14px;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid;position:relative;overflow:hidden;transform:translateY(0);box-shadow:0 16px #7dd3fc2e,0 20px 34px #0e74901f,inset 0 0 0 1px #ffffffb8}.library-book-button:before{content:"";background:#fecc00;width:8px;position:absolute;inset:0 auto 0 0}.library-book-card:nth-child(4n+1) .library-book-button:after,.library-book-card:nth-child(4n+2) .library-book-button:after,.library-book-card:nth-child(4n+3) .library-book-button:after,.library-book-card:nth-child(4n) .library-book-button:after{content:"";opacity:.75;border:2px solid #1118271a;border-radius:7px;width:28px;height:28px;position:absolute;top:17px;right:16px;transform:rotate(8deg)}.library-book-card:nth-child(4n+1) .library-book-button:after{background:#fecaca}.library-book-card:nth-child(4n+2) .library-book-button:after{background:#bbf7d0}.library-book-card:nth-child(4n+3) .library-book-button:after{background:#bfdbfe}.library-book-card:nth-child(4n) .library-book-button:after{background:#fde68a}.library-card-tab{z-index:2;color:#111827;background:#fecc00;border-radius:0 0 8px 8px;place-items:center;width:46px;height:38px;display:grid;position:absolute;top:-1px;left:24px;box-shadow:0 5px #b9820024}.library-card-tab svg{width:18px;height:18px}.library-cover{aspect-ratio:1;background:linear-gradient(#0e74900f 1px,#0000 1px) 0 0/18px 18px,linear-gradient(90deg,#0e74900f 1px,#0000 1px) 0 0/18px 18px,#fff;border:3px solid #ffffffe6;border-radius:8px;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:0 8px #11182714,inset 0 0 0 1px #11182714}.library-cover img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.library-cover-fallback{color:#111827;text-align:center;background:linear-gradient(135deg,#fecc00 0 28%,#0000 28.2% 100%),radial-gradient(circle at 70% 30%,#7dd3fcb3,#0000 27%),#fffaf0;place-items:center;width:100%;height:100%;font-size:clamp(1.25rem,3.2vw,2rem);font-weight:1000;display:grid}.library-book-copy{gap:8px;padding:2px 2px 0;display:grid}.library-book-title,.library-book-subtitle,.library-book-meta,.library-read-pill{display:block}.library-book-title{color:#111827;font-size:clamp(1.24rem,2.5vw,1.6rem);font-weight:1000;line-height:1.1}.library-book-subtitle{color:#425466;font-size:.96rem;font-weight:900}.library-book-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:4px;display:flex}.library-book-meta{color:#0e7490;background:#effcff;border:2px solid #0e74901f;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:0 10px;font-size:.92rem;font-weight:1000;display:inline-flex}.library-book-meta svg,.library-read-pill svg{width:1.05em;height:1.05em}.library-read-pill{color:#111827;background:#fecc00;border-radius:999px;align-items:center;gap:5px;min-height:34px;padding:0 12px;font-size:.92rem;font-weight:1000;display:inline-flex;box-shadow:0 4px #b9820029}.route-status-shell{background:linear-gradient(#1118270b 1px,#0000 1px) 0 0/28px 28px,linear-gradient(90deg,#1118270b 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#ffffff85,#e0f7ffb3);place-items:center;padding:clamp(20px,4vw,44px);display:grid}.route-status-card{text-align:center;background:#ffffffeb;border:1px solid #11182724;border-radius:8px;justify-items:center;gap:14px;width:min(100%,440px);padding:26px;display:grid;box-shadow:0 18px 34px #1118271f}.route-status-card p{color:#293241;margin:0;font-weight:850}.route-status-card button{color:#111827;background:#fecc00;padding:0 20px}@media (width<=620px){.library-header{flex-wrap:wrap;align-items:center}.library-logo{width:62px}.library-auth-nav{justify-content:flex-start;width:100%;margin-left:0}.library-hero{grid-template-columns:1fr}.library-lab-card{width:100%;max-width:260px}}.reader-shell.theme-night .reader-badge{display:none}.reader-shell.theme-night .language-toggle button.is-active,.reader-shell.theme-night .theme-toggle button.is-active,.reader-shell.theme-night .reader-progress{color:#f8fafc;background:radial-gradient(circle at 76% 18%,#fff3,#0000 24%),linear-gradient(#3730a3,#26235f);box-shadow:0 4px #0f172a3d,inset 0 0 0 1px #c4b5fd38}.reader-shell.theme-night .book-stage:before{border-top-color:#c4b5fd;border-left-color:#c4b5fd}.reader-shell.theme-night .page-text{background:linear-gradient(90deg,#c4b5fd 0 10px,#0000 10px),#26235f}.reader-shell.theme-night .play-button,.reader-shell.theme-night .read-all-control,.reader-shell.theme-night .closing-burst{color:#f8fafc;background:radial-gradient(circle at 78% 18%,#ffffff2e,#0000 24%),linear-gradient(#3730a3,#26235f);box-shadow:0 5px #0f172a47,0 0 0 4px #c4b5fd29}.reader-shell.theme-night .closing-burst svg{color:#f8fafc}.reader-shell.theme-night .bingo-board{box-shadow:0 8px #0f172a42,inset 0 0 0 2px #c4b5fd29}.reader-shell.theme-night .bingo-word-button{color:#111827;text-shadow:none}.reader-shell.theme-night .bingo-speaker{color:#f8fafc;background:#3730a3;box-shadow:0 2px #0f172a38}.reader-shell.theme-night .bingo-word-button[aria-pressed=true]{color:#f8fafc;background:radial-gradient(circle at 78% 18%,#ffffff2e,#0000 24%),linear-gradient(#3730a3,#26235f);box-shadow:0 2px #0f172a3d,0 0 0 5px #c4b5fd3d}.reader-shell{--reader-page-pad:clamp(10px, 1.8dvh, 16px);--reader-page-extra:clamp(72px, 10dvh, 104px);--reader-max-page-h:calc(100dvh - var(--control-h) - clamp(150px, 21dvh, 210px));--page-w:min(44vw, calc(var(--reader-max-page-h) - var(--reader-page-extra)))}.book{width:min(calc(var(--page-w) * 2), calc(100vw - (var(--app-pad) * 2) - 28px))}.book-page,.sheet-face .book-page{height:calc(var(--page-w) + var(--reader-page-extra));max-height:var(--reader-max-page-h);padding:var(--reader-page-pad)}.reader-page{grid-template-rows:minmax(0, calc(var(--page-w) - var(--reader-page-pad) - var(--reader-page-pad))) auto auto;align-content:stretch;gap:clamp(5px,.8dvh,9px);overflow:hidden}.reader-page .page-art{aspect-ratio:auto;contain:paint;align-self:start;place-items:center;width:100%;max-width:100%;height:100%;min-height:0;max-height:100%;display:grid;overflow:hidden}.reader-page .page-image{object-position:center;place-self:stretch stretch;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;max-height:100%;display:block;object-fit:contain!important}.reader-page .page-text{overflow-wrap:anywhere;text-wrap:balance;background:#fff7dc;min-width:0;max-width:100%;margin:0;font-size:clamp(.84rem,1.65dvh,1.12rem);line-height:1.1;overflow:hidden;box-shadow:inset 0 0 0 1px #fecc0024,0 4px 12px #1118270f}.reader-page>.play-button{width:clamp(34px,4.8dvh,42px);min-width:clamp(34px,4.8dvh,42px);height:clamp(34px,4.8dvh,42px);min-height:clamp(34px,4.8dvh,42px);margin-top:clamp(1px,.3dvh,4px)}.reader-page>.play-button svg{width:clamp(17px,2.3dvh,22px);height:clamp(17px,2.3dvh,22px)}.reader-shell.theme-night .book-stage:before,.reader-shell.theme-night .book-stage:after{display:none}.reader-shell.theme-night .reader-page .page-text{background:#26235f;box-shadow:inset 0 0 0 1px #c4b5fd2e,0 4px 12px #0f172a2e}.admin-shell{-webkit-overflow-scrolling:touch;touch-action:pan-y;color:#111827;background:#f3f6fa;min-height:100svh;padding:clamp(18px,4vw,40px);overflow:hidden auto}.admin-panel{background:#fff;border:1px solid #d8dee8;border-radius:8px;width:min(100%,1240px);margin:0 auto;padding:clamp(18px,2.5vw,28px);box-shadow:0 18px 34px #0f172a14}.admin-header,.admin-section-heading,.admin-page-heading,.admin-book-row,.admin-row-actions{align-items:center;display:flex}.admin-header{border-bottom:1px solid #1118271a;gap:18px;padding-bottom:20px}.admin-header>div:nth-child(2){flex:1;min-width:0}.admin-header h1,.admin-section h2,.admin-page-heading h3,.admin-book-row h3{margin:0}.admin-header p,.admin-section-heading p,.admin-page-heading p,.admin-book-row p,.admin-message{color:#4b5563;margin:4px 0 0;font-weight:700}.admin-kicker{color:#111827;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:1000}.admin-section,.admin-home-grid{margin-top:22px}.admin-home-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.admin-action-card,.admin-book-row,.admin-form,.admin-page-card,.admin-login-card,.admin-empty-state,.admin-batch-upload-panel,.admin-bulk-text-panel{background:#fff;border:1px solid #1118271f;border-radius:8px;box-shadow:0 10px 24px #11182714}.admin-action-card{color:inherit;text-align:left;cursor:pointer;align-items:flex-start;gap:14px;padding:20px;display:flex}.admin-action-card svg{color:#0f8dc2;width:28px;height:28px}.admin-action-card strong,.admin-action-card small{display:block}.admin-action-card strong{font-size:1.1rem}.admin-action-card small{color:#4b5563;margin-top:4px;font-weight:700}.admin-user-panel{justify-items:end;gap:8px;min-width:min(100%,220px);display:grid}.admin-user-panel span{overflow-wrap:anywhere;color:#374151;max-width:100%;font-size:.9rem;font-weight:900}.admin-login-card{gap:16px;width:min(100%,520px);margin:22px auto 0;padding:22px;display:grid}.admin-login-card h2{margin:4px 0 0;font-size:clamp(1.25rem,3vw,1.7rem)}.admin-login-form{gap:14px;display:grid}.admin-login-form label{color:#374151;gap:6px;font-size:.9rem;font-weight:900;display:grid}.admin-section-heading,.admin-page-heading{justify-content:space-between;gap:14px;margin-bottom:16px}.admin-book-list,.admin-page-list{gap:12px;display:grid}.admin-book-row{justify-content:space-between;gap:14px;padding:16px}.admin-book-row>div:nth-child(2){flex:1;min-width:0}.admin-book-row code,.admin-page-path,.admin-timing-status code,.admin-empty-state code{color:#1f2937;font-size:.86rem;font-weight:850}.admin-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.admin-row-actions-start{justify-content:flex-start}.admin-primary-button,.admin-secondary-button,.admin-danger-button,.admin-link-button,.admin-icon-button{min-height:40px;font:inherit;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:950;display:inline-flex}.admin-primary-button svg,.admin-secondary-button svg,.admin-danger-button svg,.admin-link-button svg,.admin-icon-button svg{width:18px;height:18px}.admin-icon-button{color:#111827;background:#fff;border:1px solid #1118272e;width:40px;min-width:40px;padding:0}.admin-secondary-button,.admin-link-button{color:#111827;background:#fff;border:1px solid #1118272e}.admin-danger-button{color:#991b1b;background:#fff1f2;border:1px solid #b91c1c4d;margin-top:18px}.admin-primary-button:disabled{cursor:progress;opacity:.7}.admin-secondary-button:disabled,.admin-icon-button:disabled{cursor:progress;opacity:.62}.admin-form,.admin-page-card{gap:14px;padding:18px;display:grid}.admin-form{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:22px}.admin-form label,.admin-page-grid label{color:#374151;gap:6px;min-width:0;font-size:.9rem;font-weight:900;display:grid}.admin-form input,.admin-form select,.admin-form textarea,.admin-login-form input,.admin-page-grid input,.admin-page-grid select,.admin-page-grid textarea{color:#111827;width:100%;font:inherit;background:#fff;border:1px solid #1118272e;border-radius:8px;padding:10px 11px}.admin-form textarea,.admin-page-grid textarea{resize:vertical}.admin-form-wide{grid-column:1/-1}.admin-page-heading{margin-top:22px}.admin-batch-upload-panel,.admin-bulk-text-panel{gap:14px;margin:0 0 22px;padding:18px;display:grid}.admin-batch-upload-panel h3,.admin-batch-upload-panel p,.admin-bulk-text-panel h3,.admin-bulk-text-panel p{margin:4px 0 0}.admin-batch-upload-panel p,.admin-bulk-text-panel p,.admin-storage-note{color:#4b5563;font-weight:750}.admin-batch-upload-control{min-height:0}.admin-upload-results{grid-column:1/-1;gap:8px;max-height:220px;padding-right:4px;display:grid;overflow-y:auto}.admin-upload-result{border-radius:8px;gap:3px;margin:0;padding:10px 12px;font-size:.88rem;font-weight:800;display:grid}.admin-upload-result-success{color:#166534;background:#f0fdf4}.admin-upload-result-error{color:#991b1b;background:#fee2e2}.admin-upload-result span{overflow-wrap:anywhere}.admin-section-heading-compact{margin-bottom:0}.admin-bulk-textarea{color:#111827;width:100%;min-height:320px;font:inherit;resize:vertical;background:#f8fafc;border:1px solid #1118272e;border-radius:8px;padding:12px;line-height:1.45}.admin-storage-note{margin:4px 0 0;font-size:.9rem}.admin-full-audio-panel{background:#fff;border:1px solid #1118271f;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(220px,.8fr) minmax(220px,.8fr);gap:14px;margin:0 0 22px;padding:18px;display:grid;box-shadow:0 10px 24px #11182714}.admin-full-audio-panel h3,.admin-full-audio-panel p{margin:4px 0 0}.admin-full-audio-panel p{color:#4b5563;font-weight:750}.admin-full-audio-upload{min-height:0}.admin-generation-placeholder{align-content:start;gap:8px;display:grid}.admin-generation-placeholder p{color:#4b5563;font-size:.9rem;font-weight:750}.admin-page-card-header,.admin-page-status-grid,.admin-asset-grid,.admin-upload-control,.admin-timing-status{gap:8px;display:grid}.admin-page-card-header{grid-template-columns:minmax(0,1fr) auto;align-items:center}.admin-page-path{overflow-wrap:anywhere;color:#6b7280;margin-top:3px;font-size:.86rem;display:block}.admin-page-preview{color:#374151;margin:0;font-weight:750}.admin-image-preview-card{background:#f8fafc;border:1px solid #1118271f;border-radius:8px;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:12px;margin:0;padding:10px;display:grid}.admin-image-preview-card svg{color:#6b7280;width:28px;height:28px}.admin-image-preview-card figcaption,.admin-image-preview-card span{color:#374151;gap:4px;min-width:0;font-size:.9rem;font-weight:850;display:grid}.admin-image-preview-card code,.admin-image-preview-card small{overflow-wrap:anywhere;color:#4b5563;font-size:.82rem;font-weight:750}.admin-image-preview-card-empty{color:#92400e;background:#fffbeb;grid-template-columns:auto minmax(0,1fr)}.admin-image-preview-card-warning{color:#991b1b;background:#fee2e2;grid-template-columns:auto minmax(0,1fr)}.admin-asset-status{color:#92400e;background:#fffbeb;border:1px solid #b4530938;border-radius:8px;gap:2px;padding:10px 12px;font-size:.88rem;font-weight:850;display:grid}.admin-page-grid{grid-template-columns:minmax(120px,.5fr) minmax(160px,.7fr);gap:12px;display:grid}.admin-asset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-upload-control,.admin-timing-status{background:#f8fafc;border:1px dashed #11182738;border-radius:8px;align-content:start;min-height:132px;padding:14px}.admin-upload-control span,.admin-upload-control em,.admin-timing-status span,.admin-timing-status strong{align-items:center;gap:8px;font-style:normal;font-weight:950;display:inline-flex}.admin-upload-control svg{width:18px;height:18px}.admin-upload-control small,.admin-timing-status code,.admin-timing-status small{overflow-wrap:anywhere;color:#4b5563;font-weight:750}.admin-upload-control input{max-width:100%}.admin-upload-control input:disabled{cursor:progress;opacity:.62}.admin-upload-control em{color:#0f766e}.admin-image-preview{aspect-ratio:1;object-fit:cover;background:#fff;border:1px solid #11182724;border-radius:8px;width:88px}.admin-page-save-button{justify-self:start}.admin-status-chip{text-transform:uppercase;border-radius:999px;place-items:center;min-width:76px;padding:6px 10px;font-size:.78rem;font-weight:1000;display:inline-grid}.admin-empty-state,.admin-error-message,.admin-success-message{gap:10px;padding:18px;display:grid}.admin-empty-state{text-align:center;justify-items:center;margin-top:22px}.admin-empty-state svg{color:#b45309;width:34px;height:34px}.admin-empty-state h2,.admin-empty-state p{margin:0}.admin-error-message,.admin-success-message{border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;margin:0 0 14px;font-weight:850}.admin-error-message{color:#991b1b;background:#fee2e2}.admin-success-message{color:#166534;background:#dcfce7}.admin-error-message svg{width:20px;height:20px}.admin-header{grid-template-columns:minmax(220px,1fr) auto auto;align-items:center;gap:18px;padding-bottom:18px;display:grid}.admin-brand-block{min-width:0}.admin-brand-block h1{color:#0f172a;letter-spacing:0;margin:0;font-size:clamp(1.45rem,2.5vw,2rem)}.admin-top-nav{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.admin-user-panel{min-width:min(100%,260px)}.admin-primary-button,.admin-secondary-button,.admin-danger-button,.admin-link-button,.admin-icon-button{border-radius:6px;min-height:36px;font-size:.9rem;font-weight:850}.admin-primary-button{color:#111827;box-shadow:none;background:#fecc00;border:1px solid #b89400}.admin-secondary-button,.admin-link-button,.admin-icon-button{color:#1f2937;background:#fff;border-color:#cbd5e1}.admin-danger-button{color:#991b1b;background:#fff5f5;border-color:#fecaca;margin-top:0}.admin-edit-workspace{gap:18px;margin-top:22px;display:grid}.admin-edit-hero,.admin-workflow-section{background:#fff;border:1px solid #d8dee8;border-radius:8px}.admin-edit-hero{justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.admin-edit-hero h2,.admin-workflow-section h3,.admin-generation-panel h4,.admin-publish-panel h4{color:#0f172a;letter-spacing:0;margin:0}.admin-edit-hero p,.admin-workflow-section p,.admin-generation-panel p,.admin-publish-panel p{color:#526070;margin:5px 0 0;font-weight:650}.admin-workflow-stepper{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.admin-workflow-step{background:#f8fafc;border:1px solid #d8dee8;border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:10px;min-width:0;padding:14px;display:grid}.admin-workflow-index{color:#fff;background:#64748b;border-radius:999px;place-items:center;width:28px;height:28px;font-size:.85rem;font-weight:900;display:grid}.admin-workflow-step strong,.admin-workflow-step small,.admin-workflow-step em,.admin-workflow-step span span{display:block}.admin-workflow-step strong{color:#0f172a;font-size:.98rem}.admin-workflow-step small{color:#64748b;text-transform:uppercase;margin-top:2px;font-size:.76rem;font-weight:850}.admin-workflow-step em{color:#475569;text-transform:uppercase;background:#e2e8f0;border-radius:999px;width:fit-content;margin-top:8px;padding:3px 7px;font-size:.73rem;font-style:normal;font-weight:900}.admin-workflow-step span span{color:#526070;margin-top:8px;font-size:.82rem;font-weight:650}.admin-workflow-step-complete{background:#f0fdf4;border-color:#bbf7d0}.admin-workflow-step-complete .admin-workflow-index,.admin-workflow-step-complete em{color:#fff;background:#15803d}.admin-workflow-step-in-progress{background:#fffbeb;border-color:#fde68a}.admin-workflow-step-in-progress .admin-workflow-index,.admin-workflow-step-in-progress em{color:#fff;background:#b45309}.admin-workflow-step-needs-attention{background:#fff5f5;border-color:#fecaca}.admin-workflow-step-needs-attention .admin-workflow-index,.admin-workflow-step-needs-attention em{color:#fff;background:#b91c1c}.admin-workflow-section{gap:14px;padding:18px;display:grid}.admin-workflow-section>.admin-section-heading{margin-bottom:0}.admin-status-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.admin-status-summary span{color:#526070;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;gap:2px;padding:12px;font-size:.84rem;font-weight:750;display:grid}.admin-status-summary strong{color:#0f172a;font-size:1.25rem}.admin-form{box-shadow:none;margin-bottom:0}.admin-bulk-text-panel,.admin-batch-upload-panel,.admin-full-audio-panel{box-shadow:none;margin:0}.admin-batch-upload-panel{grid-template-columns:minmax(0,1fr) minmax(260px,.7fr)}.admin-full-audio-panel{box-shadow:none;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr) minmax(220px,.6fr)}.admin-audio-source-note,.admin-generation-panel,.admin-publish-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.admin-audio-source-note{align-content:start;gap:6px;padding:14px;display:grid}.admin-audio-source-note strong{color:#0f172a}.admin-generation-panel,.admin-publish-panel{grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);gap:14px;padding:16px;display:grid}.admin-generation-action,.admin-publish-actions{align-content:start;gap:10px;display:grid}.admin-warning-list{color:#991b1b;gap:7px;margin:10px 0 0;padding-left:20px;font-weight:750;display:grid}.admin-page-list{gap:10px}.admin-page-card{box-shadow:none;gap:12px;padding:14px}.admin-page-summary-grid{grid-template-columns:170px minmax(0,1fr) auto;align-items:start;gap:14px;display:grid}.admin-page-summary-copy{gap:7px;min-width:0;display:grid}.admin-page-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-page-title-row strong{color:#0f172a}.admin-page-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-page-status-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-asset-status{color:#991b1b;background:#fff5f5;border-color:#fecaca;padding:8px 10px;font-size:.82rem}.admin-image-preview-card{min-height:92px;box-shadow:none;grid-template-columns:68px minmax(0,1fr);align-self:stretch}.admin-status-neutral{color:#334155;background:#e2e8f0}.admin-book-row-polished{grid-template-columns:minmax(220px,1.1fr) minmax(360px,1.3fr) auto;align-items:center;display:grid}.admin-book-main{align-items:center;gap:12px;min-width:0;display:flex}.admin-book-main>div{min-width:0}.admin-book-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0;display:grid}.admin-book-metrics span{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;gap:2px;min-width:0;padding:8px 10px;font-size:.76rem;font-weight:800;display:grid}.admin-book-metrics strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.admin-new-book-workspace{max-width:1120px;margin-inline:auto}.admin-wizard-progress{grid-template-columns:repeat(7,minmax(0,1fr))}.admin-workflow-step{padding:0}.admin-workflow-step button{width:100%;min-height:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px;display:grid}.admin-workflow-step-current{border-color:#b89400;box-shadow:0 0 0 2px #fecc005c}.admin-workflow-index svg{width:16px;height:16px}.admin-wizard-layout{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:18px;display:grid}.admin-wizard-sidebar,.admin-wizard-card,.admin-info-panel{background:#fff;border:1px solid #d8dee8;border-radius:8px}.admin-wizard-sidebar{gap:16px;padding:16px;display:grid;position:sticky;top:18px}.admin-wizard-sidebar h3,.admin-wizard-card-header h3{color:#0f172a;letter-spacing:0;margin:0}.admin-wizard-sidebar p,.admin-wizard-card-header p,.admin-info-panel p{color:#526070;margin:5px 0 0;font-weight:650}.admin-wizard-sidebar-list{gap:8px;display:grid}.admin-wizard-sidebar-step{color:#334155;text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:6px 10px;width:100%;padding:10px;display:grid}.admin-wizard-sidebar-step>span{color:#fff;background:#64748b;border-radius:999px;grid-row:span 2;place-items:center;width:28px;height:28px;font-size:.82rem;font-weight:900;display:grid}.admin-wizard-sidebar-step strong,.admin-wizard-sidebar-step em,.admin-wizard-sidebar-step small{min-width:0}.admin-wizard-sidebar-step strong{color:#0f172a}.admin-wizard-sidebar-step em{color:#475569;text-transform:uppercase;background:#e2e8f0;border-radius:999px;padding:3px 7px;font-size:.7rem;font-style:normal;font-weight:900}.admin-wizard-sidebar-step small{color:#64748b;grid-column:2/-1;font-size:.78rem;font-weight:700}.admin-wizard-sidebar-step-current{background:#fffbeb;border-color:#b89400}.admin-wizard-sidebar-step-complete>span,.admin-wizard-sidebar-step-complete em{color:#fff;background:#15803d}.admin-wizard-sidebar-step-in-progress>span,.admin-wizard-sidebar-step-in-progress em{color:#fff;background:#b45309}.admin-wizard-sidebar-step-needs-attention>span,.admin-wizard-sidebar-step-needs-attention em{color:#fff;background:#b91c1c}.admin-wizard-card{gap:16px;min-width:0;padding:clamp(16px,2.2vw,24px);display:grid;box-shadow:0 12px 28px #0f172a14}.admin-wizard-card-header{border-bottom:1px solid #e2e8f0;gap:4px;padding-bottom:14px;display:grid}.admin-wizard-card-header h3{font-size:clamp(1.35rem,2.4vw,1.85rem)}.admin-wizard-form{gap:16px;display:grid}.admin-form-compact{box-shadow:none;border:0;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0}.admin-course-form{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-course-form input:disabled{color:#64748b;cursor:not-allowed;background:#f1f5f9}.admin-info-panel{background:#f8fafc;gap:8px;padding:14px;display:grid}.admin-info-panel strong{color:#0f172a}.admin-ai-helper-panel{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);align-items:start}.admin-ai-helper-panel code{overflow-wrap:anywhere;color:#334155;background:#e2e8f0;border-radius:6px;padding:10px;font-size:.82rem;font-weight:800;display:block}.admin-inline-save{justify-self:start}.admin-wizard-footer{border-top:1px solid #e2e8f0;justify-content:space-between;gap:12px;padding-top:16px;display:flex}.admin-batch-upload-control,.admin-full-audio-upload{background:#f8fafc;border-style:dashed;border-width:2px;justify-content:center;min-height:190px}.admin-batch-upload-control em,.admin-full-audio-upload em{color:#0f172a;background:#fecc00;border-radius:999px;width:fit-content;padding:8px 12px}.admin-page-heading-wizard{margin:0}.admin-shell{color:#0f172a;background:#f8fafc;padding:clamp(18px,3vw,32px)}.admin-panel{width:min(100%,1360px);box-shadow:none;background:0 0;border:0;padding:0}.admin-header{background:#fff;border:1px solid #e5e7eb;border-radius:8px;grid-template-columns:minmax(220px,1fr) auto auto;gap:16px;min-height:58px;padding:12px 16px;display:grid;box-shadow:0 1px 2px #0f172a0a}.admin-brand-block p:not(.admin-kicker),.admin-header p,.admin-section-heading p,.admin-page-heading p,.admin-book-row p,.admin-message{color:#64748b;font-size:.86rem;font-weight:500}.admin-kicker{color:#64748b;letter-spacing:.08em;font-size:.72rem;font-weight:750}.admin-top-nav{gap:4px}.admin-user-panel{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.admin-user-panel span{color:#475569;font-size:.82rem;font-weight:600}.admin-primary-button,.admin-secondary-button,.admin-danger-button,.admin-link-button,.admin-icon-button{border-radius:6px;min-height:34px;padding:0 11px;font-size:.84rem;font-weight:650}.admin-primary-button{color:#111827;background:#fecc00;border:1px solid #d6a900}.admin-primary-button:hover:not(:disabled){background:#f3bf00}.admin-secondary-button,.admin-link-button,.admin-icon-button{color:#334155;background:#fff;border:1px solid #d1d5db}.admin-secondary-button:hover:not(:disabled),.admin-link-button:hover:not(:disabled),.admin-icon-button:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.admin-danger-button{color:#b42318;background:#fff;border:1px solid #f1c3c3}.admin-edit-workspace,.admin-section,.admin-home-grid{gap:14px;margin-top:18px}.admin-edit-hero{background:0 0;border:0;padding:4px 2px 8px}.admin-wizard-hero{border-left:0}.admin-edit-hero h2{font-size:clamp(1.35rem,2.2vw,1.8rem);font-weight:760}.admin-edit-hero p,.admin-wizard-card-header p,.admin-wizard-sidebar p,.admin-info-panel p,.admin-generation-panel p,.admin-publish-panel p{color:#64748b;font-size:.9rem;font-weight:500}.admin-storage-note code,.admin-book-row code,.admin-page-path,.admin-timing-status code,.admin-empty-state code{color:#475569;font-size:.82rem;font-weight:600}.admin-wizard-progress,.admin-workflow-stepper{display:none}.admin-wizard-layout{grid-template-columns:252px minmax(0,1fr);gap:24px}.admin-wizard-sidebar{background:0 0;border:0;gap:14px;padding:0;top:20px}.admin-wizard-sidebar>div:first-child{border-bottom:1px solid #e5e7eb;padding-bottom:12px}.admin-wizard-sidebar h3{font-size:.98rem;font-weight:720}.admin-wizard-sidebar-list{gap:2px}.admin-wizard-sidebar-step{color:#475569;background:0 0;border:0;border-left:3px solid #0000;border-radius:6px;grid-template-columns:26px minmax(0,1fr) auto;gap:4px 9px;padding:9px 9px 9px 10px}.admin-wizard-sidebar-step:hover{background:#f1f5f9}.admin-wizard-sidebar-step-current{background:#fff9db;border-left-color:#d6a900}.admin-wizard-sidebar-step>span{color:#64748b;background:#e2e8f0;width:22px;height:22px;font-size:.76rem;font-weight:760}.admin-wizard-sidebar-step strong{color:#1e293b;font-size:.88rem;font-weight:680}.admin-wizard-sidebar-step em{color:#64748b;text-transform:none;background:0 0;border-radius:0;align-self:center;padding:0;font-size:.72rem;font-weight:650}.admin-wizard-sidebar-step small{color:#94a3b8;font-size:.75rem;font-weight:500}.admin-wizard-sidebar-step-complete>span{color:#166534;background:#dcfce7}.admin-wizard-sidebar-step-in-progress>span{color:#92400e;background:#fef3c7}.admin-wizard-sidebar-step-needs-attention>span{color:#b42318;background:#fee4e2}.admin-wizard-card,.admin-login-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;gap:18px;padding:clamp(20px,2.4vw,30px);box-shadow:0 1px 2px #0f172a0a}.admin-wizard-card-header{border-bottom:1px solid #e5e7eb;gap:6px;padding-bottom:18px}.admin-wizard-card-header h3{font-size:clamp(1.28rem,2vw,1.62rem);font-weight:760}.admin-wizard-form{gap:18px}.admin-form,.admin-form-compact{gap:16px 18px}.admin-form label,.admin-page-grid label,.admin-login-form label{color:#334155;gap:7px;font-size:.84rem;font-weight:650}.admin-form input,.admin-form select,.admin-form textarea,.admin-login-form input,.admin-page-grid input,.admin-page-grid select,.admin-page-grid textarea,.admin-bulk-textarea{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:6px;min-height:40px;padding:9px 10px;font-size:.92rem}.admin-form textarea,.admin-page-grid textarea,.admin-bulk-textarea{line-height:1.48}.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus,.admin-login-form input:focus,.admin-page-grid input:focus,.admin-page-grid select:focus,.admin-page-grid textarea:focus,.admin-bulk-textarea:focus{outline-offset:1px;border-color:#d6a900;outline:2px solid #fecc006b}.admin-info-panel,.admin-audio-source-note,.admin-generation-panel,.admin-publish-panel,.admin-batch-upload-panel,.admin-bulk-text-panel,.admin-full-audio-panel,.admin-page-card,.admin-action-card,.admin-empty-state{box-shadow:none;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.admin-info-panel{background:#f8fafc;padding:14px 16px}.admin-info-panel strong{color:#1e293b;font-weight:700}.admin-status-summary span,.admin-book-metrics span{color:#64748b;background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:9px 10px;font-size:.78rem;font-weight:520}.admin-status-summary strong,.admin-book-metrics strong{color:#0f172a;font-size:.98rem;font-weight:720}.admin-batch-upload-panel,.admin-full-audio-panel{grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);padding:18px}.admin-full-audio-panel{grid-template-columns:minmax(0,1fr) minmax(280px,.7fr)}.admin-audio-source-note{background:#f8fafc;grid-column:1/-1;padding:12px 14px}.admin-bulk-text-panel{padding:18px}.admin-bulk-textarea{background:#fff;min-height:360px}.admin-upload-control,.admin-timing-status,.admin-batch-upload-control,.admin-full-audio-upload{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;min-height:128px;padding:14px}.admin-batch-upload-control,.admin-full-audio-upload{min-height:168px}.admin-upload-control span,.admin-upload-control em,.admin-timing-status span,.admin-timing-status strong{font-weight:680}.admin-upload-control small,.admin-timing-status small{color:#64748b;font-size:.8rem;font-weight:500}.admin-upload-control em,.admin-batch-upload-control em,.admin-full-audio-upload em{color:#334155;background:0 0;border-radius:0;width:fit-content;padding:0;font-size:.84rem}.admin-upload-results{max-height:180px}.admin-upload-result{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:8px 10px;font-size:.82rem;font-weight:550}.admin-upload-result-success{color:#166534;background:#f7fef9;border-color:#bbf7d0}.admin-upload-result-error{color:#b42318;background:snow;border-color:#fecaca}.admin-page-card{padding:12px}.admin-page-summary-grid{grid-template-columns:132px minmax(0,1fr) auto;gap:12px}.admin-image-preview-card{background:#fff;border-color:#e5e7eb;grid-template-columns:56px minmax(0,1fr);min-height:76px;padding:8px}.admin-image-preview{border-radius:4px;width:56px}.admin-image-preview-card-empty,.admin-image-preview-card-warning{color:#64748b;background:#f8fafc}.admin-image-preview-card-warning{color:#b42318}.admin-page-title-row strong{font-weight:720}.admin-page-preview{color:#475569;font-size:.88rem;font-weight:500}.admin-page-status-grid{grid-template-columns:repeat(4,minmax(96px,1fr));gap:6px}.admin-asset-status{color:#b42318;background:#fff;border:1px solid #e5e7eb;border-radius:999px;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;font-size:.76rem;font-weight:600;display:flex}.admin-asset-status strong{color:#64748b;font-size:.74rem;font-weight:650}.admin-status-chip{text-transform:capitalize;border:1px solid #0000;border-radius:999px;min-width:0;padding:3px 8px;font-size:.72rem;font-weight:680}.admin-error-message,.admin-success-message{border:1px solid;border-radius:8px;padding:12px 14px;font-weight:600}.admin-warning-list{color:#b42318;font-size:.88rem;font-weight:560}.admin-ready-message{color:#166534!important;font-weight:650!important}.admin-book-list{background:#fff;border:1px solid #e5e7eb;border-radius:8px;gap:0;overflow:hidden}.admin-book-row-polished{box-shadow:none;background:#fff;border:0;border-bottom:1px solid #e5e7eb;border-radius:0;grid-template-columns:minmax(240px,1.2fr) minmax(380px,1.4fr) auto;gap:16px;padding:14px 16px}.admin-book-row-polished:last-child{border-bottom:0}.admin-book-main{gap:10px}.admin-book-row h3{color:#0f172a;font-size:.98rem;font-weight:720}.admin-book-metrics{gap:6px}.admin-book-metrics span{background:0 0;border:0}.admin-book-metrics strong{font-size:.84rem}.admin-wizard-footer{margin-top:2px;padding-top:18px}.admin-shell-wizard{background:radial-gradient(circle at 18% 12%,#fecc0024,#0000 26rem),radial-gradient(circle at 88% 4%,#0f172a14,#0000 24rem),linear-gradient(135deg,#fff 0%,#f8fafc 50%,#f1f5f9 100%);min-height:100svh;padding:0}.admin-panel-wizard{width:100%;min-height:100svh;margin:0}.admin-creation-shell{color:#0f172a;grid-template-rows:auto auto minmax(0,1fr);min-height:100svh;display:grid}.admin-creation-topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffbd;border-bottom:1px solid #cbd5e1bd;grid-template-columns:minmax(130px,.45fr) minmax(220px,1fr) minmax(320px,auto);align-items:center;gap:16px;min-height:68px;padding:14px clamp(18px,3vw,40px);display:grid}.admin-ghost-button{color:#475569;min-height:34px;font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:8px;padding:0;font-size:.88rem;font-weight:650;display:inline-flex}.admin-ghost-button:hover{color:#0f172a}.admin-ghost-button svg{width:17px;height:17px}.admin-creation-title-block{text-align:center;justify-items:center;min-width:0;display:grid}.admin-creation-title-block span{color:#64748b;letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:760}.admin-creation-title-block strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;max-width:min(100%,520px);font-size:1rem;font-weight:760;overflow:hidden}.admin-creation-title-block code{color:#94a3b8;font-size:.75rem;font-weight:600}.admin-creation-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.admin-creation-email{color:#64748b;text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:.78rem;font-weight:600;overflow:hidden}.admin-creation-progress{color:#64748b;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px clamp(18px,3vw,40px) 0;font-size:.78rem;font-weight:700;display:grid}.admin-creation-progress div{background:#e2e8f0;border-radius:999px;height:3px;overflow:hidden}.admin-creation-progress i{border-radius:inherit;background:#fecc00;height:100%;transition:width .22s;display:block}.admin-creation-main{grid-template-columns:minmax(220px,270px) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,48px);width:min(100%,1360px);margin:0 auto;padding:clamp(24px,4vw,54px) clamp(18px,3vw,40px) clamp(34px,5vw,70px);display:grid}.admin-creation-stage{justify-items:center;min-width:0;display:grid}.admin-creation-stage>.admin-error-message,.admin-creation-stage>.admin-success-message,.admin-creation-stage .admin-wizard-card-focus{width:min(100%,940px)}.admin-creation-shell .admin-wizard-sidebar{gap:18px;padding:4px 0;position:sticky;top:98px}.admin-creation-shell .admin-wizard-sidebar h3{font-size:1.05rem}.admin-creation-shell .admin-wizard-sidebar p{max-width:24ch;font-size:.84rem;line-height:1.5}.admin-creation-shell .admin-wizard-sidebar-step{background:#ffffff47;border-left-width:2px;grid-template-columns:28px minmax(0,1fr) auto;padding:11px 12px}.admin-creation-shell .admin-wizard-sidebar-step-current{background:#ffffffd6;box-shadow:0 14px 30px #0f172a14}.admin-creation-shell .admin-wizard-sidebar-step>span{width:24px;height:24px}.admin-creation-shell .admin-wizard-sidebar-step strong{font-size:.92rem}.admin-creation-shell .admin-wizard-card{background:#ffffffeb;border:1px solid #e2e8f0f2;border-radius:18px;gap:clamp(20px,2.5vw,30px);padding:clamp(28px,4.6vw,56px);position:relative;box-shadow:0 30px 70px #0f172a1a,inset 0 1px #ffffffe6}.admin-creation-shell .admin-wizard-card:before{content:"";z-index:0;border-radius:inherit;pointer-events:none;opacity:.7;background:linear-gradient(90deg,#fecc0038,#0000 32%),linear-gradient(#ffffffe0,#0000 34%);position:absolute;inset:0}.admin-creation-shell .admin-wizard-card>*{z-index:1;position:relative}.admin-creation-shell .admin-wizard-card-header{border-bottom:0;gap:9px;max-width:760px;padding-bottom:8px}.admin-creation-shell .admin-wizard-card-header h3{letter-spacing:-.045em;max-width:14ch;font-size:clamp(2.15rem,5vw,4.25rem);font-weight:780;line-height:.98}.admin-creation-shell .admin-wizard-card-header p{color:#475569;max-width:660px;font-size:clamp(1rem,1.55vw,1.18rem);line-height:1.55}.admin-creation-shell .admin-kicker{color:#a77b00;font-size:.76rem;font-weight:780}.admin-creation-shell .admin-form-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.admin-creation-shell .admin-form label,.admin-creation-shell .admin-page-grid label{color:#334155;font-size:.88rem}.admin-creation-shell .admin-form input,.admin-creation-shell .admin-form select,.admin-creation-shell .admin-form textarea,.admin-creation-shell .admin-page-grid input,.admin-creation-shell .admin-page-grid select,.admin-creation-shell .admin-page-grid textarea,.admin-creation-shell .admin-bulk-textarea{background:#fffffff5;border-color:#dbe2ea;border-radius:10px;min-height:48px;padding:12px 13px;font-size:.98rem}.admin-creation-shell .admin-wizard-footer{align-items:center;margin-top:4px;padding-top:22px}.admin-creation-shell .admin-primary-button{min-height:42px;padding-inline:18px}.admin-creation-shell .admin-secondary-button,.admin-creation-shell .admin-link-button{min-height:38px}.admin-creation-shell .admin-status-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.admin-creation-shell .admin-status-summary span{background:#f8fafcbd;border-color:#e2e8f0e0;padding:13px 14px}.admin-creation-shell .admin-status-summary strong{font-size:1.28rem}.admin-creation-shell .admin-batch-upload-panel,.admin-creation-shell .admin-full-audio-panel{background:0 0;border:0;grid-template-columns:minmax(0,.85fr) minmax(320px,1fr);gap:22px;padding:0}.admin-creation-shell .admin-bulk-text-panel{background:0 0;border:0;padding:0}.admin-creation-shell .admin-batch-upload-control,.admin-creation-shell .admin-full-audio-upload{text-align:center;background:linear-gradient(#ffffffeb,#f8fafce0),radial-gradient(circle at 50% 0,#fecc001f,#0000 18rem);border:1.5px dashed #cbd5e1;border-radius:18px;place-content:center;justify-items:center;min-height:260px}.admin-creation-shell .admin-upload-control em{background:#fff;border-radius:999px;padding:8px 13px;box-shadow:0 1px 2px #0f172a14}.admin-creation-shell .admin-page-heading-wizard{border-top:1px solid #e2e8f0;align-items:flex-start;padding-top:8px}.admin-creation-shell .admin-page-list{max-height:540px;padding-right:4px;overflow:auto}.admin-creation-shell .admin-page-card{border-radius:12px}.admin-creation-shell .admin-bulk-textarea{border-radius:16px;min-height:430px;font-size:1rem}.admin-narration-guide ul,.admin-readiness-list,.admin-warning-list{margin:0}.admin-narration-guide{align-content:start}.admin-narration-guide ul{color:#475569;gap:8px;padding-left:20px;font-weight:550;display:grid}.admin-readiness-list{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.admin-readiness-list span{color:#64748b;background:#ffffffbd;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:9px;padding:12px 14px;font-size:.9rem;font-weight:640;display:flex}.admin-readiness-list i{color:#94a3b8;background:#e2e8f0;border-radius:999px;place-items:center;width:22px;height:22px;font-style:normal;font-weight:800;display:grid}.admin-readiness-list .admin-readiness-ready{color:#166534}.admin-wizard-error-state{width:min(100%,760px);margin:40px auto}@media (width<=980px){.admin-creation-topbar{grid-template-columns:1fr;justify-items:start}.admin-creation-title-block{text-align:left;justify-items:start}.admin-creation-actions{justify-content:flex-start}.admin-creation-main{grid-template-columns:1fr}.admin-creation-shell .admin-wizard-sidebar{position:static}.admin-creation-shell .admin-wizard-sidebar-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.admin-creation-main{padding-inline:14px}.admin-creation-shell .admin-wizard-card{border-radius:14px;padding:22px}.admin-creation-shell .admin-wizard-card-header h3{max-width:none;font-size:clamp(2rem,13vw,3.2rem)}.admin-creation-shell .admin-form-compact,.admin-creation-shell .admin-batch-upload-panel,.admin-creation-shell .admin-full-audio-panel,.admin-readiness-list,.admin-creation-shell .admin-wizard-sidebar-list{grid-template-columns:1fr}}.admin-shell,.admin-shell-wizard{color:#171b21;background:#f4f5f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-shell-wizard{background-color:#f6f7f9;background-image:linear-gradient(#dee2e880 1px,#0000 1px),linear-gradient(90deg,#dee2e880 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:40px 40px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.admin-panel,.admin-panel-wizard{max-width:none}.admin-header{min-height:48px;box-shadow:none;border-color:#d8dde5;border-radius:3px;padding:9px 12px}.admin-brand-block h1{font-size:.98rem;font-weight:650}.admin-brand-block p:not(.admin-kicker),.admin-header p,.admin-section-heading p,.admin-page-heading p,.admin-book-row p,.admin-message,.admin-storage-note{font-size:.8rem;line-height:1.42}.admin-kicker{letter-spacing:.07em;font-size:.66rem;font-weight:700}.admin-primary-button,.admin-secondary-button,.admin-danger-button,.admin-link-button,.admin-icon-button,.admin-ghost-button{border-radius:3px;min-height:30px;padding:0 10px;font-size:.8rem;font-weight:600}.admin-primary-button{background:#f6c900;border-color:#b88900}.admin-icon-button{width:30px;min-width:30px}.admin-primary-button svg,.admin-secondary-button svg,.admin-danger-button svg,.admin-link-button svg,.admin-icon-button svg,.admin-ghost-button svg{width:15px;height:15px}.admin-section-heading{margin-bottom:10px}.admin-section-heading h2,.admin-page-heading h3,.admin-book-row h3{font-size:1rem;font-weight:650}.admin-book-list,.admin-book-row,.admin-action-card,.admin-empty-state,.admin-login-card,.admin-info-panel,.admin-audio-source-note,.admin-generation-panel,.admin-publish-panel,.admin-batch-upload-panel,.admin-bulk-text-panel,.admin-full-audio-panel,.admin-page-card{box-shadow:none;border-color:#d8dde5;border-radius:3px}.admin-book-row-polished{min-height:64px;padding:10px 12px}.admin-book-metrics span{padding:4px 6px;font-size:.72rem}.admin-book-metrics strong{font-size:.78rem;font-weight:650}.admin-status-chip{border-radius:3px;padding:2px 6px;font-size:.68rem}.admin-creation-topbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fafbfcf0;border-bottom-color:#d8dde5;min-height:52px;padding:8px clamp(14px,2vw,28px)}.admin-creation-title-block span{letter-spacing:.08em;font-size:.64rem}.admin-creation-title-block strong{font-size:.9rem;font-weight:650}.admin-creation-title-block code,.admin-creation-email{font-size:.7rem}.admin-creation-progress{padding:8px clamp(14px,2vw,28px) 0;font-size:.7rem}.admin-creation-progress div{border-radius:0;height:2px}.admin-creation-main{grid-template-columns:minmax(210px,240px) minmax(0,1fr);gap:clamp(18px,3vw,34px);width:min(100%,1280px);padding:clamp(18px,3vw,34px) clamp(14px,2vw,28px) 34px}.admin-creation-stage .admin-wizard-card-focus{width:min(100%,880px)}.admin-creation-shell .admin-wizard-sidebar{gap:10px;top:76px}.admin-creation-shell .admin-wizard-sidebar>div:first-child{padding-bottom:10px}.admin-creation-shell .admin-wizard-sidebar h3{font-size:.9rem;font-weight:650}.admin-creation-shell .admin-wizard-sidebar p{font-size:.76rem;line-height:1.42}.admin-creation-shell .admin-wizard-sidebar-list{gap:3px}.admin-wizard-sidebar-step,.admin-creation-shell .admin-wizard-sidebar-step{background:0 0;border-radius:3px;grid-template-columns:22px minmax(0,1fr) auto;padding:7px 8px}.admin-wizard-sidebar-step-current,.admin-creation-shell .admin-wizard-sidebar-step-current{box-shadow:none;background:#fff8d66b;border-left-color:#c99a00}.admin-wizard-sidebar-step>span,.admin-creation-shell .admin-wizard-sidebar-step>span{border-radius:3px;width:18px;height:18px;font-size:.66rem}.admin-wizard-sidebar-step strong,.admin-creation-shell .admin-wizard-sidebar-step strong{font-size:.8rem;font-weight:620}.admin-wizard-sidebar-step em,.admin-wizard-sidebar-step small{font-size:.68rem}.admin-creation-shell .admin-wizard-card,.admin-wizard-card,.admin-login-card{background:#fff;border-color:#d8dde5;border-radius:4px;gap:16px;padding:clamp(18px,3vw,32px);box-shadow:0 8px 22px #161c240b}.admin-creation-shell .admin-wizard-card-header,.admin-wizard-card-header{border-bottom:1px solid #e4e7ec;gap:5px;max-width:720px;padding-bottom:12px}.admin-creation-shell .admin-wizard-card-header h3,.admin-wizard-card-header h3{letter-spacing:0;max-width:none;font-size:clamp(1.35rem,2.2vw,2rem);font-weight:680;line-height:1.12}.admin-creation-shell .admin-wizard-card-header p,.admin-wizard-card-header p,.admin-info-panel p,.admin-generation-panel p,.admin-publish-panel p{max-width:680px;font-size:.86rem;line-height:1.5}.admin-form,.admin-form-compact,.admin-creation-shell .admin-form-compact{gap:12px 14px}.admin-form label,.admin-page-grid label,.admin-login-form label,.admin-creation-shell .admin-form label,.admin-creation-shell .admin-page-grid label{gap:5px;font-size:.78rem;font-weight:620}.admin-field-note{color:#667085;font-size:.74rem;font-weight:500;line-height:1.35}.admin-form input,.admin-form select,.admin-form textarea,.admin-login-form input,.admin-page-grid input,.admin-page-grid select,.admin-page-grid textarea,.admin-bulk-textarea,.admin-creation-shell .admin-form input,.admin-creation-shell .admin-form select,.admin-creation-shell .admin-form textarea,.admin-creation-shell .admin-page-grid input,.admin-creation-shell .admin-page-grid select,.admin-creation-shell .admin-page-grid textarea,.admin-creation-shell .admin-bulk-textarea{border-color:#cfd6df;border-radius:3px;min-height:34px;padding:7px 9px;font-size:.84rem}.admin-status-summary{gap:6px}.admin-status-summary span,.admin-book-metrics span,.admin-creation-shell .admin-status-summary span{border-radius:3px;padding:7px 8px;font-size:.72rem}.admin-status-summary strong,.admin-creation-shell .admin-status-summary strong{font-size:.96rem;font-weight:650}.admin-creation-shell .admin-batch-upload-panel,.admin-creation-shell .admin-full-audio-panel,.admin-batch-upload-panel,.admin-full-audio-panel{grid-template-columns:minmax(0,.95fr) minmax(260px,1fr);gap:14px}.admin-creation-shell .admin-batch-upload-control,.admin-creation-shell .admin-full-audio-upload,.admin-batch-upload-control,.admin-full-audio-upload,.admin-upload-control,.admin-timing-status{background:#f8fafc;border-radius:4px;min-height:118px}.admin-creation-shell .admin-batch-upload-control,.admin-creation-shell .admin-full-audio-upload{background:#fafbfc;min-height:150px}.admin-creation-shell .admin-batch-upload-control span,.admin-creation-shell .admin-full-audio-upload span{font-size:.9rem}.admin-upload-control small,.admin-timing-status small,.admin-upload-result{font-size:.74rem}.admin-creation-shell .admin-bulk-textarea,.admin-bulk-textarea{border-radius:4px;min-height:300px;font-size:.86rem}.admin-page-card,.admin-creation-shell .admin-page-card{border-radius:3px;padding:10px}.admin-page-summary-grid,.admin-creation-shell .admin-page-summary-grid{grid-template-columns:112px minmax(0,1fr) auto;gap:10px}.admin-image-preview-card,.admin-creation-shell .admin-image-preview-card{border-radius:3px;grid-template-columns:48px minmax(0,1fr);min-height:64px}.admin-image-preview,.admin-creation-shell .admin-image-preview{border-radius:2px;width:48px}.admin-asset-status{border-radius:3px;padding:4px 6px;font-size:.7rem}.admin-asset-status strong{font-size:.68rem}.admin-readiness-list{gap:6px}.admin-readiness-list span{border-radius:3px;padding:8px 9px;font-size:.8rem}.admin-readiness-list i{border-radius:3px;width:18px;height:18px;font-size:.7rem}.admin-narration-guide ul,.admin-warning-list{gap:5px;font-size:.8rem}.admin-creation-shell .admin-wizard-footer,.admin-wizard-footer{padding-top:14px}@media (width<=680px){.admin-creation-shell .admin-wizard-card-header h3{font-size:clamp(1.45rem,8vw,2.2rem)}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=760px){.admin-header,.admin-edit-hero,.admin-section-heading,.admin-page-heading,.admin-book-row{align-items:stretch}.admin-edit-hero,.admin-section-heading,.admin-page-heading,.admin-book-row{flex-direction:column}.admin-header,.admin-workflow-stepper,.admin-generation-panel,.admin-publish-panel,.admin-page-summary-grid,.admin-wizard-layout,.admin-book-row-polished,.admin-book-metrics,.admin-ai-helper-panel{grid-template-columns:1fr}.admin-wizard-sidebar{position:static}.admin-wizard-footer,.admin-book-main{flex-direction:column;align-items:stretch}.admin-top-nav,.admin-row-actions{justify-content:flex-start}.admin-user-panel{justify-items:start}.admin-form,.admin-form-compact,.admin-page-grid,.admin-batch-upload-panel,.admin-full-audio-panel,.admin-page-status-grid,.admin-asset-grid,.admin-page-card-header{grid-template-columns:1fr}.admin-page-actions{justify-content:flex-start}.admin-page-path{justify-self:start}}:root{--sf-purple:#6941c6;--sf-purple-700:#4c2ca4;--sf-purple-950:#17133f;--sf-navy:#111735;--sf-yellow:#fecc00;--sf-ink:#1b2033;--sf-muted:#667085;--sf-line:#e6e2f3;--sf-card:#fff;--sf-lavender:#f5f1ff;--sf-blue:#e9f7ff;--sf-green:#12b76a;--sf-danger:#b42318}.library-shell{max-height:none;color:var(--sf-ink);background:radial-gradient(circle at 12% 12%,#fecc0038,#0000 13rem),radial-gradient(circle at 84% 9%,#6941c621,#0000 14rem),linear-gradient(#f7fbff 0%,#fff 54%,#f7f3ff 100%);padding:clamp(14px,2.4vw,34px)}.library-shell:before,.library-shell:after,.library-sky-dot{display:none}.library-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe6;border:1px solid #6941c624;border-radius:8px;grid-template-columns:minmax(220px,auto) minmax(0,1fr) auto;align-items:center;gap:clamp(12px,2vw,22px);margin-bottom:clamp(16px,2.4vw,24px);padding:10px clamp(12px,1.8vw,18px);display:grid;box-shadow:0 18px 38px #2a245a1a}.library-brand-row{align-items:center;gap:10px;min-width:0;display:flex}.library-logo{width:clamp(46px,6vw,64px)}.library-header h1{color:var(--sf-purple-950);text-shadow:none;font-size:clamp(1.35rem,2.4vw,2rem);line-height:1}.library-product-nav{flex-wrap:wrap;justify-content:center;gap:6px;min-width:0;display:flex}.library-product-nav button,.library-auth-nav button{color:#4b4f63;min-height:34px;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;padding:0 12px;font-size:.84rem;font-weight:760}.library-hero{background:radial-gradient(circle at 94% 18%,#fecc0047,#0000 6rem),linear-gradient(135deg,#fff 0%,#f5f1ff 58%,#e9f7ff 100%);border:1px solid #6941c61f;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(220px,320px);gap:clamp(16px,2.4vw,28px);margin-bottom:14px;padding:clamp(18px,3vw,30px);box-shadow:0 22px 46px #2a245a1f}.library-hero:before{display:none}.library-sticker{min-height:26px;color:var(--sf-purple-700);letter-spacing:.06em;text-transform:uppercase;box-shadow:none;background:#6941c61a;border:0;padding:0 10px;font-size:.72rem;transform:none}.library-hero h2{color:var(--sf-purple-950);letter-spacing:0;font-size:clamp(2rem,4.5vw,3.7rem)}.library-search-visual{color:#7a8195;background:#ffffffd1;border:1px solid #6941c624;border-radius:999px;align-items:center;gap:9px;width:min(100%,420px);min-height:42px;margin-top:8px;padding:0 14px;font-size:.86rem;font-weight:680;display:flex}.library-search-visual svg{width:17px;height:17px;color:var(--sf-purple)}.library-stats-panel{align-content:center;gap:10px;display:grid}.library-stats-panel span{color:#555b72;background:#ffffffc2;border:1px solid #6941c61f;border-radius:8px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;min-height:58px;padding:10px 12px;font-size:.82rem;font-weight:720;display:grid}.library-stats-panel strong{aspect-ratio:1;width:44px;color:var(--sf-purple-950);background:var(--sf-yellow);border-radius:50%;place-items:center;font-size:1rem;display:grid;box-shadow:0 8px 18px #fecc003d}.library-reward-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:clamp(16px,2.4vw,24px);display:grid}.library-reward-strip span{color:#4b4f63;background:#fff;border-radius:8px;align-items:center;gap:9px;min-width:0;min-height:46px;padding:8px 12px;font-size:.86rem;font-weight:780;display:flex;box-shadow:0 10px 24px #2a245a12}.library-reward-strip svg{width:21px;height:21px;color:var(--sf-purple)}.library-book-button{background:#fff;border:1px solid #6941c61f;border-radius:8px;gap:12px;padding:12px;box-shadow:0 14px 30px #2a245a1a}.library-book-button:before,.library-book-button:after{display:none}.library-status-badge{z-index:2;color:#027a48;background:#ecfdf3;border-radius:999px;padding:5px 8px;font-size:.68rem;font-weight:840;position:absolute;top:10px;right:10px}.library-book-level{width:fit-content;color:var(--sf-purple-700);background:var(--sf-lavender);border-radius:999px;padding:4px 8px;font-size:.68rem;font-weight:820}.library-book-title{color:var(--sf-purple-950);font-size:clamp(1rem,1.6vw,1.18rem);line-height:1.16}.library-book-subtitle{color:#667085;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.82rem;font-weight:650;line-height:1.3;display:-webkit-box;overflow:hidden}.library-book-footer{grid-template-columns:auto minmax(48px,1fr) auto;gap:8px;display:grid}.library-book-meta,.library-read-pill{border:0;min-height:30px;font-size:.76rem}.library-read-pill{color:#241a00;background:var(--sf-yellow)}.library-progress-meter{background:#ece7fb;border-radius:999px;align-self:center;height:7px;display:block;overflow:hidden}.library-progress-meter span{border-radius:inherit;background:linear-gradient(90deg, var(--sf-purple), var(--sf-yellow));height:100%;display:block}.reader-shell{color:#f8fafc;background:radial-gradient(circle at 78% 12%,#fecc003d,#0000 11rem),radial-gradient(circle at 22% 18%,#8a5cf657,#0000 16rem),linear-gradient(#18133f 0%,#111735 58%,#090d20 100%)}.reader-header{color:#fff;background:#0c0f27b8;border:1px solid #d9cbff33;border-radius:8px;width:min(100%,1220px);padding:9px clamp(12px,1.8vw,18px);box-shadow:0 18px 46px #00000038}.reader-header .brand-mark{width:clamp(42px,5.4vw,58px)}.reader-header h1{color:#fff;font-size:clamp(1.3rem,2.4dvh,1.85rem)}.reader-header h1:after{background:var(--sf-yellow);height:.12em}.reader-tagline{color:#d9d0ff;text-overflow:ellipsis;white-space:nowrap;max-width:min(54vw,540px);font-size:.82rem;overflow:hidden}.reader-library-button{color:#fff;min-height:34px;font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #d9cbff38;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 11px;font-size:.78rem;font-weight:760;display:inline-flex}.reader-library-button svg{width:16px;height:16px}.reader-card{background:radial-gradient(circle at 50% 45%,#fecc001c,#0000 28rem),#ffffff0f;border:1px solid #d9cbff38;border-radius:8px;box-shadow:0 28px 70px #0000004d}.book-stage{background:radial-gradient(circle,#6941c640,#0000 26rem),linear-gradient(#ffffff0a 1px,#0000 1px),linear-gradient(90deg,#ffffff0a 1px,#0000 1px),#090d208a;border:1px solid #d9cbff24;border-radius:8px}.reader-controls{background:#0c0f27c2;border:1px solid #d9cbff2e;border-radius:8px;box-shadow:0 16px 42px #0000003d}.reader-progress{color:#fff;background:#ffffff17}.theme-toggle,.language-toggle{background:#ffffff14;border-color:#d9cbff38;border-radius:999px}.theme-toggle button,.language-toggle button{color:#fff;background:0 0}.theme-toggle button.is-active,.language-toggle button.is-active{color:#211800;background:var(--sf-yellow)}.admin-shell,.admin-shell-wizard{min-height:100svh;color:var(--sf-ink);background:#f6f7fb}.admin-panel,.admin-panel-wizard{width:100%;min-height:100svh;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.admin-side-nav{color:#fff;background:radial-gradient(circle at 20% 8%,#fecc002e,#0000 7rem),linear-gradient(#201957 0%,#111735 100%);grid-template-rows:auto 1fr auto;gap:18px;min-height:100svh;padding:18px 12px;display:grid}.admin-side-brand,.admin-side-user{align-items:center;gap:10px;min-width:0;padding:8px;display:flex}.admin-side-logo,.admin-side-user>span{aspect-ratio:1;width:36px;color:var(--sf-yellow);background:#ffffff1a;border-radius:8px;flex:none;place-items:center;display:grid}.admin-side-logo svg{width:20px;height:20px}.admin-side-brand strong,.admin-side-brand small,.admin-side-user strong,.admin-side-user button{display:block}.admin-side-brand strong{letter-spacing:.01em;font-size:.96rem}.admin-side-brand small,.admin-side-user strong,.admin-side-user button{color:#ffffffb8;font-size:.74rem;font-weight:650}.admin-side-nav nav{align-content:start;gap:6px;display:grid}.admin-side-nav nav button{color:#ffffffd1;min-height:38px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:0 10px;font-size:.84rem;font-weight:720;display:flex}.admin-side-nav nav button.is-active,.admin-side-nav nav button:hover:not(:disabled){color:#fff;background:#6941c68c}.admin-side-nav nav button:disabled{cursor:not-allowed;opacity:.48}.admin-side-nav nav svg{width:17px;height:17px}.admin-side-user{background:#ffffff14;border-radius:8px}.admin-side-user div{min-width:0}.admin-side-user strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden}.admin-side-user button{cursor:pointer;background:0 0;border:0;padding:0}.admin-books-shell{grid-template-columns:minmax(190px,220px) minmax(0,1fr);min-height:100svh;display:grid}.admin-books-workspace{min-width:0;padding:clamp(18px,3vw,34px)}.admin-books-heading{background:#fff;border:1px solid #6941c61f;border-radius:8px;margin-bottom:18px;padding:18px;box-shadow:0 12px 30px #231c520f}.admin-books-heading h2{color:var(--sf-purple-950);font-size:clamp(1.45rem,2.4vw,2rem);font-weight:780}.admin-book-table{background:#fff;border:1px solid #6941c61f;border-radius:8px;overflow:hidden;box-shadow:0 16px 36px #231c5212}.admin-book-table-head,.admin-book-table-row{grid-template-columns:minmax(230px,1.7fr) minmax(58px,.45fr) minmax(64px,.48fr) minmax(64px,.48fr) minmax(70px,.52fr) minmax(84px,.62fr) minmax(88px,.68fr) minmax(160px,.9fr);align-items:center;gap:10px;display:grid}.admin-book-table-head{color:#667085;text-transform:uppercase;background:#faf9ff;padding:10px 14px;font-size:.72rem;font-weight:760}.admin-book-table-row{color:#475467;border-top:1px solid #eef0f6;min-width:0;padding:12px 14px;font-size:.82rem;font-weight:650}.admin-book-title-cell{align-items:center;gap:10px;min-width:0;display:flex}.admin-book-thumbnail{aspect-ratio:4/3;color:#fff;background:radial-gradient(circle at 72% 18%,#fecc00b8,#0000 28%),linear-gradient(135deg,#6941c6,#2f225f);border-radius:8px;flex:none;place-items:center;width:44px;font-weight:820;display:grid}.admin-book-title-cell h3{color:var(--sf-purple-950);margin:0;font-size:.94rem;font-weight:760}.admin-book-title-cell p{color:#667085;min-width:0;margin:3px 0 0;font-size:.76rem}.admin-book-title-cell code{color:var(--sf-purple-700);background:#f5f1ff}.admin-table-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.admin-primary-button{color:#241a00;background:var(--sf-yellow);border-color:#d9a900}.admin-status-chip{border-radius:999px;font-weight:760}.admin-status-published{color:#027a48;background:#ecfdf3}.admin-status-draft{color:#6941c6;background:#f5f1ff}.admin-status-archived{color:#667085;background:#f2f4f7}.admin-creation-shell{background-color:#f7f7fb;background-image:linear-gradient(#e2e8f080 1px,#0000 1px),linear-gradient(90deg,#e2e8f080 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:34px 34px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;grid-template-columns:minmax(190px,220px) minmax(0,1fr);grid-template-areas:"side top""side progress""side main";min-height:100svh;display:grid}.admin-creation-shell>.admin-side-nav{grid-area:side}.admin-creation-topbar{background:#ffffffe6;border-bottom:1px solid #6941c61f;grid-area:top;min-width:0;min-height:56px}.admin-creation-progress{color:var(--sf-purple-700);grid-area:progress;padding-top:10px}.admin-creation-progress div{background:#e9e4f8;border-radius:999px;height:5px}.admin-creation-main{grid-area:main;grid-template-columns:minmax(220px,270px) minmax(0,1fr);gap:clamp(16px,2.4vw,26px);width:min(100%,1280px)}.admin-creation-shell .admin-wizard-sidebar{background:#fff;border:1px solid #6941c61f;border-radius:8px;top:84px;box-shadow:0 16px 36px #231c5212}.admin-wizard-sidebar-step,.admin-creation-shell .admin-wizard-sidebar-step{border-radius:8px}.admin-wizard-sidebar-step-current,.admin-creation-shell .admin-wizard-sidebar-step-current{border-left-color:var(--sf-purple);background:#f5f1ff}.admin-creation-shell .admin-wizard-card,.admin-wizard-card{border:1px solid #6941c61f;border-radius:8px;box-shadow:0 18px 44px #231c5214}.admin-creation-shell .admin-wizard-card-header h3,.admin-wizard-card-header h3{color:var(--sf-purple-950);font-size:clamp(1.35rem,2.2vw,1.9rem)}.admin-kicker{color:var(--sf-purple)}.admin-form input,.admin-form select,.admin-form textarea,.admin-login-form input,.admin-page-grid input,.admin-page-grid select,.admin-page-grid textarea,.admin-bulk-textarea,.admin-creation-shell .admin-form input,.admin-creation-shell .admin-form select,.admin-creation-shell .admin-form textarea,.admin-creation-shell .admin-page-grid input,.admin-creation-shell .admin-page-grid select,.admin-creation-shell .admin-page-grid textarea,.admin-creation-shell .admin-bulk-textarea,.admin-info-panel,.admin-audio-source-note,.admin-generation-panel,.admin-publish-panel,.admin-batch-upload-panel,.admin-bulk-text-panel,.admin-full-audio-panel,.admin-page-card,.admin-upload-control,.admin-timing-status{border-radius:8px}@media (width<=980px){.library-header{grid-template-columns:1fr}.library-product-nav,.library-auth-nav{justify-content:flex-start}.admin-books-shell,.admin-creation-shell{grid-template-columns:1fr;grid-template-areas:"side""top""progress""main"}.admin-side-nav{min-height:auto}.admin-side-nav nav{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.admin-books-shell{display:block}.admin-book-table-head{display:none}.admin-book-table-row{grid-template-columns:1fr;gap:8px}.admin-book-table-row>span{justify-content:space-between;gap:12px;display:flex}.admin-book-table-row>span:before{content:attr(data-label);color:#667085;font-weight:760}.admin-table-actions{justify-content:flex-start}.admin-creation-main{grid-template-columns:1fr}.admin-creation-shell .admin-wizard-sidebar{position:static}}@media (width<=680px){.library-hero,.library-reward-strip,.library-book-footer,.reader-header{grid-template-columns:1fr}.header-actions{justify-content:flex-start;overflow-x:auto}.reader-library-button{flex:none}}.library-shell{color:#19152f;background:radial-gradient(at 18% 6%,#fecc004d,#0000 34rem),radial-gradient(at 82% 18%,#14b8a62e,#0000 30rem),radial-gradient(at 50% 110%,#6941c652,#0000 36rem),linear-gradient(135deg,#ffffff0f 24%,#0000 24% 26%,#ffffff0f 26% 27%,#0000 27%) 0 0/120px 120px,radial-gradient(circle,#ffffff57 1px,#0000 1.6px) 8px 10px/28px 28px,linear-gradient(#23175b 0%,#371a72 48%,#17133f 100%);min-height:100svh;max-height:none;padding:clamp(16px,2.4vw,36px);font-family:Trebuchet MS,Avenir Next,Segoe UI,ui-rounded,system-ui,sans-serif;overflow-x:hidden}.library-shell:before,.library-shell:after{content:"";z-index:0;pointer-events:none;display:block;position:fixed}.library-shell:before{aspect-ratio:1;border:2px dashed #fecc002e;border-radius:50%;width:21rem;inset:7rem auto auto -4rem;transform:rotate(-13deg)}.library-shell:after{background:linear-gradient(135deg,#0000 0 47%,#fecc0029 47% 48%,#0000 48% 100%),linear-gradient(28deg,#0000 0 58%,#14b8a621 58% 59%,#0000 59% 100%);border:2px solid #ffffff1a;border-radius:38% 62% 42% 58%;width:min(42vw,34rem);height:min(28vw,22rem);bottom:5rem;right:-3rem}.library-sky-dot{z-index:0;pointer-events:none;display:block;position:fixed}.library-sky-dot-blue,.library-sky-dot-yellow{width:10rem;height:10rem;box-shadow:none;background-color:#0000;background-image:linear-gradient(90deg,#ffffff24 1px,#0000 1px),linear-gradient(#ffffff24 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:18px 18px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:2px solid #ffffff21;border-radius:26px}.library-sky-dot-blue{top:12rem;right:5vw;transform:rotate(11deg)}.library-sky-dot-yellow{border-color:#fecc003d;width:7rem;height:7rem;bottom:7rem;left:7vw;transform:rotate(-9deg)}.library-content{z-index:1;width:min(100%,1420px);position:relative}.library-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;grid-template-columns:minmax(220px,auto) minmax(0,1fr) auto;gap:clamp(10px,1.8vw,22px);margin-bottom:clamp(18px,2.4vw,28px);padding:clamp(10px,1.4vw,14px);box-shadow:0 18px 48px #07051733,inset 0 0 0 1px #ffffff14}.library-header h1{color:#fff;letter-spacing:0;font-size:clamp(1.5rem,2.2vw,2.25rem);font-weight:950}.library-header p{color:#ffe985;font-size:.84rem;font-weight:820}.library-product-nav{justify-content:center;gap:8px}.library-product-nav button,.library-auth-nav button{color:#ffffffd1;background:#ffffff14;border-radius:999px;min-height:38px;padding:0 14px;font-size:.86rem;font-weight:820}.library-product-nav button.is-active{color:#221800;background:var(--sf-yellow)}.library-auth-nav{align-items:center}.library-auth-nav span{color:#fffc}.library-auth-nav button{color:#fff;border-color:#ffffff38}.library-hero{background:linear-gradient(115deg,#fffffff5,#fff8ddeb 48%,#ebe6ffe0),#fff9ea;border:1px solid #ffffff38;border-radius:8px;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);align-items:stretch;gap:clamp(16px,2.2vw,28px);min-height:clamp(260px,28vw,360px);margin-bottom:14px;padding:clamp(22px,3.2vw,42px);overflow:hidden;box-shadow:0 26px 70px #0705173d,inset 0 0 0 1px #ffffff9e}.library-hero:before{content:"";aspect-ratio:1.45;background:linear-gradient(140deg,#0000 0 49%,#6941c621 49% 50%,#0000 50%),radial-gradient(circle,#6941c61f 1.2px,#0000 1.8px) 0 0/22px 22px;border-radius:46% 54% 38% 62%;width:min(50vw,42rem);display:block;position:absolute;inset:auto -8% -36% auto;transform:rotate(-4deg)}.library-hero-copy{z-index:1;align-content:center;gap:12px;position:relative}.library-sticker{color:#fff;letter-spacing:.08em;background:#6941c6;min-height:30px;padding:0 12px;font-size:.76rem;font-weight:900;box-shadow:0 8px 18px #6941c638}.library-hero p{color:#4f415f;max-width:34rem;font-size:clamp(1.02rem,1.5vw,1.28rem);font-weight:760}.library-search-visual{color:#61556f;background:linear-gradient(#fff,#fbf8ff);border:2px solid #6941c629;border-radius:999px;width:min(100%,520px);min-height:50px;margin-top:8px;padding:0 18px;font-size:.95rem;font-weight:760;box-shadow:0 14px 30px #6941c614}.library-search-visual svg{color:#6941c6;width:19px;height:19px}.library-stats-panel{z-index:1;background:linear-gradient(#ffffffb8,#ffffff70),#ffffff80;border:1px solid #6941c624;border-radius:8px;align-content:stretch;gap:12px;padding:clamp(14px,1.8vw,20px);position:relative}.library-stats-orbit{color:#17133f;background:linear-gradient(135deg,#6941c61f 0 48%,#0000 48%),radial-gradient(circle,#6941c629 1.5px,#0000 2px) 10px 8px/18px 18px,#fff8d7;border-radius:8px;place-items:center;min-height:86px;display:grid;position:relative}.library-stats-orbit svg{color:#6941c6;width:34px;height:34px}.library-stats-orbit span{aspect-ratio:1;clip-path:polygon(50% 0,62% 35%,100% 50%,62% 65%,50% 100%,38% 65%,0 50%,38% 35%);background:#fecc00;width:12px;position:absolute}.library-stats-orbit span:nth-child(2){top:15px;left:20%}.library-stats-orbit span:nth-child(3){background:#14b8a6;bottom:18px;right:22%}.library-stats-orbit span:nth-child(4){background:#f97316;top:22px;right:14%}.library-stats-panel>span{color:#594f68;background:#fff;border:0;border-radius:8px;min-height:60px;padding:10px 12px;font-size:.84rem;font-weight:780;box-shadow:0 12px 24px #6941c612}.library-stats-panel strong{color:#211800;background:#fecc00;width:44px}.library-reward-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.library-reward-strip span{color:#fff9db;background:linear-gradient(135deg,#ffffff2e,#ffffff14),#ffffff14;border:1px solid #ffffff38;border-radius:8px;min-height:54px;font-size:.9rem;box-shadow:0 16px 36px #07051724}.library-reward-strip svg{color:#fecc00}.library-filter-strip{flex-wrap:wrap;gap:9px;margin-bottom:18px;display:flex}.library-filter-strip button{color:#ffffffdb;min-height:38px;font:inherit;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:999px;padding:0 14px;font-size:.85rem;font-weight:850}.library-filter-strip button.is-active{color:#211800;background:#fecc00}.library-shelf-heading{color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;margin-bottom:16px;display:flex}.library-shelf-heading h3{font-size:clamp(1.45rem,2.2vw,2.25rem);font-weight:950;line-height:1}.library-shelf-heading>span{background:#ffffff17;border:1px solid #ffffff2e;border-radius:999px;padding:8px 11px}.library-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));align-items:stretch;gap:clamp(16px,2vw,24px)}.library-book-card{min-width:0;display:flex}.library-book-button{color:#19152f;background:linear-gradient(#fffcf2 0%,#fff 58%,#f8f4ff 100%);border:1px solid #ffffffc7;border-radius:8px;grid-template-rows:auto 1fr;gap:14px;width:100%;min-height:100%;padding:clamp(14px,1.6vw,18px);display:grid;overflow:visible;box-shadow:0 20px 42px #0705173d,0 0 0 1px #6941c61a,inset 0 0 0 1px #ffffffb8}.library-card-tab{color:#211800;background:#fecc00;border-radius:8px;width:38px;height:34px;top:14px;left:14px;box-shadow:0 10px 18px #432d0329}.library-status-badge{color:#fff;text-overflow:ellipsis;white-space:nowrap;background:#6941c6;max-width:calc(100% - 70px);padding:6px 10px;font-size:.7rem;font-weight:900;top:14px;right:14px;overflow:hidden}.library-cover{aspect-ratio:4/3;background:linear-gradient(135deg,#fecc0033,#0000 38%),radial-gradient(circle at 82% 16%,#14b8a629,#0000 32%),linear-gradient(#f4f0ff,#fff7d6);border:1px solid #6941c61f;border-radius:8px;place-items:center;display:grid;overflow:hidden;box-shadow:inset 0 0 0 8px #ffffff70,0 12px 22px #6941c61a}.library-cover img{box-sizing:border-box;object-fit:contain;object-position:center;width:100%;height:100%;padding:clamp(8px,1vw,12px);display:block}.library-cover-fallback{color:#fff;background:linear-gradient(135deg,#6941c6,#17133f 58%,#14b8a6);font-size:clamp(1.3rem,2.2vw,1.9rem)}.library-book-copy{flex-direction:column;gap:8px;min-width:0;display:flex}.library-book-level{color:#4c2ca4;text-overflow:ellipsis;white-space:nowrap;background:#eee8ff;max-width:100%;font-size:.72rem;font-weight:900;overflow:hidden}.library-book-title{color:#17133f;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.5em;font-size:clamp(1.12rem,1.7vw,1.42rem);font-weight:1000;line-height:1.12;display:-webkit-box;overflow:hidden}.library-book-subtitle{color:#635872;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.55em;font-size:.88rem;font-weight:740;line-height:1.28;display:-webkit-box;overflow:hidden}.library-book-subtitle+.library-book-subtitle{color:#7a7187;-webkit-line-clamp:1;min-height:0;font-size:.8rem}.library-book-footer{grid-template-columns:minmax(0,auto) minmax(58px,1fr) auto;align-items:center;gap:10px;margin-top:auto;padding-top:8px;display:grid}.library-book-meta,.library-read-pill{white-space:nowrap;border-radius:999px;min-width:0;min-height:36px;font-size:.82rem;font-weight:900}.library-read-pill{color:#211800;background:#fecc00;justify-content:center;padding:0 14px;box-shadow:0 7px #a8770029}@media (width>=1280px){.library-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (width<=980px){.library-header{grid-template-columns:1fr}.library-product-nav,.library-auth-nav{justify-content:flex-start}.library-hero{grid-template-columns:1fr}.library-stats-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.library-stats-orbit{grid-column:1/-1}}@media (width<=720px){.library-shell{padding:14px}.library-hero,.library-header,.library-book-button{border-radius:8px}.library-hero h2{font-size:clamp(2.6rem,15vw,4.2rem)}.library-stats-panel,.library-reward-strip,.library-book-footer{grid-template-columns:1fr}.library-book-footer{align-items:stretch}.library-progress-meter{width:100%}.library-read-pill,.library-book-meta{justify-content:center}}.library-shell{--shelf-dark:#084c61;--shelf-teal:#177e89;--shelf-gold:#ffc857;--shelf-graphite:#323031;--shelf-scarlet:#db3a34;--shelf-cream:#f8f3e7;--shelf-paper:#fffdf7;--shelf-line:#084c6129;--shelf-muted:#635f58;min-height:100svh;color:var(--shelf-graphite);background:radial-gradient(circle at 8% 16%,#ffc85780,#0000 13rem),radial-gradient(circle at 92% 10%,#db3a342e,#0000 12rem),radial-gradient(circle at 78% 46%,#177e8933,#0000 20rem),linear-gradient(#084c61fa 0 14.5rem,#177e893d 14.5rem 18rem,#0000 18rem),linear-gradient(90deg,#084c610e 1px,#0000 1px) 0 0/44px 44px,linear-gradient(#084c610e 1px,#0000 1px) 0 0/44px 44px,#fbfaf4;padding:clamp(14px,2vw,28px);font-family:Avenir Next,Nunito,Trebuchet MS,ui-rounded,Segoe UI,system-ui,sans-serif}.library-shell:before{opacity:1;background:linear-gradient(#0000,#084c6114),repeating-linear-gradient(90deg,#0000 0 62px,#ffc85738 62px 65px,#0000 65px 126px);border:0;border-radius:0;width:100%;height:112px;display:block;inset:auto 0 0;transform:none}.library-shell:after{background:radial-gradient(circle at 50% 50%, #ffc857d9 0 18%, transparent 19%), conic-gradient(from 20deg, transparent 0 18%, #db3a3457 18% 20%, transparent 20% 48%, #177e896b 48% 50%, transparent 50%);border:2px solid #177e892e;border-radius:50%;width:clamp(58px,8vw,96px);height:clamp(58px,8vw,96px);display:block;top:8.6rem;bottom:auto;right:clamp(1rem,4vw,4rem)}.library-sky-dot-blue,.library-sky-dot-yellow{z-index:0;opacity:.48;background-color:#084c6133;background-image:linear-gradient(90deg,#ffc8572e 1px,#0000 1px),linear-gradient(#ffc8572e 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:14px 14px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:0;border-radius:10px;width:clamp(54px,7vw,82px);height:clamp(54px,7vw,82px);display:block}.library-sky-dot-blue{top:22rem;right:3vw}.library-sky-dot-yellow{background-color:#db3a3424;bottom:8rem;left:4vw}.library-content{width:min(100%,1440px)}.library-header{background:linear-gradient(90deg, #ffc85729, transparent 28%), linear-gradient(135deg, var(--shelf-dark), #063747 58%, var(--shelf-teal));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid #ffc85747;border-radius:8px;grid-template-columns:minmax(200px,auto) minmax(0,1fr) auto;gap:clamp(10px,1.5vw,18px);margin-bottom:clamp(14px,1.8vw,22px);padding:12px clamp(12px,1.5vw,18px);box-shadow:0 18px 42px #084c6147,inset 0 -4px #ffc85738}.library-brand-row{gap:10px}.library-logo{background:#177e8914;border-radius:8px;width:clamp(42px,4.4vw,58px)}.library-header h1{color:#fff;font-size:clamp(1.35rem,2vw,1.9rem);font-weight:950}.library-header p{color:var(--shelf-gold);margin-top:2px;font-size:.78rem;font-weight:820}.library-product-nav{gap:6px}.library-product-nav button,.library-auth-nav button{color:#ffffffe0;background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;min-height:34px;padding:0 11px;font-size:.8rem;font-weight:820}.library-product-nav button.is-active{color:var(--shelf-graphite);background:var(--shelf-gold);border-color:var(--shelf-gold);box-shadow:0 6px #0000001f}.library-auth-nav{gap:6px}.library-auth-nav span{color:#ffffffc2;max-width:150px;font-size:.76rem}.library-auth-nav button{color:#fff;background:#ffffff1c;border-color:#ffffff2e}.library-auth-nav button:first-of-type{color:#fff;background:#177e899e}.library-hero{background:radial-gradient(circle at 90% 16%, #ffc8577a, transparent 12rem), radial-gradient(circle at 72% 78%, #db3a3433, transparent 10rem), linear-gradient(110deg, var(--shelf-dark) 0%, #0a5b72 48%, var(--shelf-teal) 100%);border:1px solid #ffc8575c;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(14px,2vw,24px);min-height:0;margin-bottom:12px;padding:clamp(22px,3vw,38px);box-shadow:0 22px 54px #084c6147,inset 0 -6px #ffc85761}.library-hero:before{aspect-ratio:5;background:linear-gradient(90deg,#ffc85799,#db3a346b),repeating-linear-gradient(90deg,#0000 0 18px,#ffffff2e 18px 20px);border:0;border-radius:999px;width:clamp(118px,16vw,210px);display:block;inset:auto 22px 18px auto;transform:none}.library-hero-copy{gap:10px}.library-sticker{display:none}.library-hero h2{color:#fff;max-width:none;font-size:clamp(2rem,4vw,4rem);font-weight:1000;line-height:1.2}.library-hero p{color:#ffffffdb;font-size:clamp(.96rem,1.2vw,1.12rem);font-weight:760}.library-search-visual{width:min(100%,460px);min-height:42px;color:var(--shelf-graphite);background:#fff;border:2px solid #ffc857b3;border-radius:999px;margin-top:4px;padding:0 14px;font-size:.88rem;box-shadow:0 12px 26px #031b222e}.library-search-visual svg{color:var(--shelf-scarlet)}.library-stats-panel{z-index:1;background:0 0;border:0;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:min(100%,270px);padding:0;display:flex}.library-stats-orbit{display:none}.library-stats-panel>span{color:#ffffffd1;background:linear-gradient(160deg,#ffffff29,#ffffff0f),#084c61c7;border:1px solid #ffc85752;border-radius:8px;grid-template-columns:auto;place-items:center;gap:2px;min-width:74px;min-height:58px;padding:8px 10px;font-size:.72rem;font-weight:820;display:grid;box-shadow:0 10px 22px #031b222e}.library-stats-panel strong{aspect-ratio:auto;width:auto;min-width:0;color:var(--shelf-gold);box-shadow:none;background:0 0;font-size:1.1rem}.library-reward-strip{display:none}.library-filter-strip{gap:8px;margin:0 0 16px}.library-filter-strip button{min-height:34px;color:var(--shelf-dark);background:#ffffffdb;border:1px solid #084c6138;border-radius:999px;padding:0 12px;font-size:.8rem;font-weight:860}.library-filter-strip button.is-active{color:#fff;border-color:var(--shelf-teal);background:linear-gradient(135deg, var(--shelf-teal), var(--shelf-dark));box-shadow:0 5px #084c6129}.library-shelf-heading{color:var(--shelf-graphite);align-items:center;margin-bottom:14px}.library-shelf-heading h3{color:var(--shelf-dark);font-size:clamp(1.15rem,1.7vw,1.6rem);font-weight:950}.library-shelf-heading>span{color:#fff;background:linear-gradient(135deg, var(--shelf-dark), var(--shelf-teal));border-color:#084c6138;box-shadow:inset 0 -3px #ffc85757}.library-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:clamp(14px,1.6vw,20px)}.library-book-button{color:var(--shelf-graphite);background:linear-gradient(#fff 0%,#fffdf7 62%,#f8f0dc 100%);border:1px solid #084c611f;border-radius:8px;grid-template-rows:auto 1fr;gap:12px;padding:clamp(12px,1.3vw,16px);box-shadow:0 14px 30px #084c611c,inset 0 -4px #084c6112}.library-book-button:hover,.library-book-button:focus-visible{border-color:#177e895c;box-shadow:0 18px 36px #084c6124,0 0 0 4px #ffc8573d}.library-card-tab{display:none}.library-status-badge{max-width:calc(100% - 24px);color:var(--shelf-dark);background:#ffc857eb;padding:5px 8px;font-size:.66rem;top:12px;right:12px}.library-cover{aspect-ratio:1;background:linear-gradient(135deg,#ffc8573b,#0000 42%),radial-gradient(circle at 84% 14%,#177e892e,#0000 34%),linear-gradient(#fffaf0,#eaf4f1);border:1px solid #084c611f;border-radius:8px;box-shadow:inset 0 0 0 7px #ffffff75,0 10px 18px #084c6114}.library-cover img{object-fit:contain;width:calc(100% - clamp(16px,1.6vw,24px));max-width:calc(100% - clamp(16px,1.6vw,24px));height:calc(100% - clamp(16px,1.6vw,24px));max-height:calc(100% - clamp(16px,1.6vw,24px));padding:0}.library-cover-fallback{color:#fff;background:linear-gradient(135deg, var(--shelf-dark), var(--shelf-teal))}.library-book-copy{gap:7px}.library-book-level{color:var(--shelf-dark);background:#177e891c;font-size:.68rem}.library-book-title{min-height:2.42em;color:var(--shelf-graphite);font-size:clamp(1.02rem,1.25vw,1.25rem);line-height:1.16}.library-book-subtitle{min-height:2.42em;color:var(--shelf-muted);font-size:.82rem;font-weight:720}.library-book-subtitle+.library-book-subtitle{color:#807a70;font-size:.76rem}.library-book-footer{grid-template-columns:minmax(0,auto) minmax(52px,1fr) auto;gap:8px;padding-top:9px}.library-book-meta,.library-read-pill{min-height:34px;font-size:.76rem}.library-book-meta{color:var(--shelf-dark);background:#084c6114}.library-progress-meter{background:#177e8929;min-width:52px;height:8px}.library-progress-meter span{background:linear-gradient(90deg, var(--shelf-teal), var(--shelf-gold))}.library-read-pill{color:#2b220e;background:var(--shelf-gold);box-shadow:0 5px #7d560924}@media (width>=1280px){.library-grid{grid-template-columns:repeat(auto-fit,minmax(245px,1fr))}}@media (width<=980px){.library-header,.library-hero{grid-template-columns:1fr}.library-stats-panel{justify-content:flex-start}}@media (width<=720px){.library-hero{padding:18px}.library-hero h2{font-size:clamp(2rem,11vw,3rem)}.library-stats-panel{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.library-product-nav,.library-auth-nav,.library-filter-strip{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.library-product-nav button,.library-auth-nav button,.library-filter-strip button{flex:none}}.library-book-card{perspective:1200px}.library-book-button{aspect-ratio:1;width:100%;min-height:0;box-shadow:none;cursor:pointer;perspective:1200px;background:0 0;border:0;border-radius:8px;padding:0;display:block;position:relative;overflow:visible;transform:none}.library-book-button:hover,.library-book-button:focus-visible{box-shadow:none;border-color:#0000;transform:none}.library-card-flipper{transform-style:preserve-3d;border-radius:8px;transition:transform .62s cubic-bezier(.2,.8,.2,1),filter .22s;display:block;position:absolute;inset:0;transform:rotateY(0)}.library-book-button:hover .library-card-flipper,.library-book-button:focus-visible .library-card-flipper{filter:saturate(1.04);transform:rotateY(180deg)}.library-book-button:hover .library-card-face,.library-book-button:focus-visible .library-card-face{border-color:#ffc857c2;box-shadow:0 20px 42px #084c6138,0 0 0 4px #ffc8573d,inset 0 -5px #177e8938}.library-card-face{background:var(--shelf-paper);backface-visibility:hidden;border:1px solid #084c6124;border-radius:8px;min-width:0;display:grid;position:absolute;inset:0;overflow:hidden;box-shadow:0 16px 34px #084c612b,inset 0 -5px #084c611f}.library-card-front{background:linear-gradient(135deg,#ffc857b8 0 14%,#0000 14.3%),radial-gradient(circle at 88% 12%,#db3a3433,#0000 18%),linear-gradient(#fff,#f5fbfa 62%,#eaf4f1);place-items:stretch stretch;padding:clamp(10px,1.1vw,14px)}.library-card-front:after{aspect-ratio:1;background:var(--shelf-scarlet);width:clamp(12px,1.8vw,20px);box-shadow:-13px 9px 0 -5px var(--shelf-gold), 0 0 0 4px #ffffffad;content:"";border-radius:50%;position:absolute;top:10px;right:10px}.library-card-front .library-cover{aspect-ratio:auto;background:radial-gradient(circle at 86% 14%,#ffc8576b,#0000 22%),linear-gradient(135deg,#177e8933,#0000 42%),linear-gradient(#fff,#eaf4f1);border:2px solid #084c612e;border-radius:8px;width:100%;height:100%;box-shadow:inset 0 0 0 8px #ffffff85,inset 0 -5px #177e8921}.library-card-front .library-cover img{object-fit:contain;object-position:center;width:calc(100% - clamp(12px,1.4vw,20px));max-width:calc(100% - clamp(12px,1.4vw,20px));height:calc(100% - clamp(12px,1.4vw,20px));max-height:calc(100% - clamp(12px,1.4vw,20px));padding:0}.library-card-back{text-align:left;background:linear-gradient(135deg,#ffc8574d 0 15%,#0000 15.3%),radial-gradient(circle at 86% 14%,#db3a342e,#0000 24%),linear-gradient(#fffdf7,#f1fbfa 58%,#e6f1ee);grid-template-rows:auto minmax(0,1fr) auto;align-content:stretch;gap:clamp(10px,1vw,14px);padding:clamp(14px,1.45vw,18px);transform:rotateY(180deg)}.library-back-header{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.library-back-header .library-book-level,.library-back-header .library-status-badge{white-space:nowrap;border-radius:999px;max-width:100%;min-height:26px;padding:5px 8px;font-size:.66rem;line-height:1;position:static}.library-back-header .library-book-level{color:#fff;background:linear-gradient(135deg, var(--shelf-dark), var(--shelf-teal));text-overflow:ellipsis;flex:auto;overflow:hidden}.library-back-header .library-status-badge{color:#fff;background:var(--shelf-scarlet);flex:0 auto;box-shadow:0 4px #72191624}.library-card-back .library-book-copy{justify-content:center;gap:7px;min-width:0;padding:0;display:flex}.library-card-back .library-book-title{min-height:0;color:var(--shelf-dark);font-size:clamp(1.08rem,1.42vw,1.34rem);line-height:1.12}.library-card-back .library-book-subtitle{min-height:0;color:var(--shelf-muted);font-size:clamp(.78rem,.95vw,.88rem);line-height:1.25}.library-card-back .library-book-subtitle+.library-book-subtitle{color:#807a70;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.library-card-back .library-book-footer{grid-template-columns:auto minmax(44px,1fr) auto;align-items:center;gap:8px;padding-top:0;display:grid}.library-card-back .library-book-meta,.library-card-back .library-read-pill{min-height:32px}.library-card-back .library-book-meta{color:#fff;background:var(--shelf-dark)}.library-card-back .library-progress-meter{background:#084c612e}.library-card-back .library-progress-meter span{background:linear-gradient(90deg, var(--shelf-teal), var(--shelf-gold), var(--shelf-scarlet))}.library-card-back .library-read-pill{color:var(--shelf-graphite);background:var(--shelf-gold);justify-content:center;box-shadow:0 5px #7d560929}@media (prefers-reduced-motion:reduce){.library-card-flipper{transition:none}}@media (hover:none),(pointer:coarse){.library-book-button{aspect-ratio:auto;height:auto}.library-card-flipper,.library-book-button:hover .library-card-flipper,.library-book-button:focus-visible .library-card-flipper{gap:0;display:grid;position:relative;transform:none}.library-card-face{backface-visibility:visible;position:relative}.library-card-front{aspect-ratio:1;border-radius:8px 8px 0 0}.library-card-back{border-top:0;border-radius:0 0 8px 8px;transform:none}}.library-shell{--library-green:#2e7d58;--library-green-dark:#1f5f42;--library-leaf:#61a66f;--library-sage:#dfe8cf;--library-gold:#ffc857;--library-coral:#e05a4e;--library-cream:#faf6ea;--library-paper:#fffdf6;--library-ink:#28282b;--library-muted:#6f6046;--library-border:#42634229;--library-surface:var(--library-paper);--library-soft:#f3f7e9;min-height:100svh;color:var(--library-ink);background:linear-gradient(90deg, #6f604607 1px, transparent 1px), linear-gradient(#6f604606 1px, transparent 1px), radial-gradient(circle at 12% 10%, #61a66f2e, transparent 18rem), radial-gradient(circle at 88% 4%, #ffc8572e, transparent 14rem), linear-gradient(180deg, #dfe8cf85, transparent 17rem), var(--library-cream);background-size:24px 24px,24px 24px,auto,auto,auto,auto;padding:clamp(12px,2vw,24px);font-family:Nunito,Avenir Next,Trebuchet MS,ui-rounded,Segoe UI,system-ui,sans-serif;overflow-x:clip}.library-shell:before,.library-shell:after{z-index:0;pointer-events:none;content:"";display:block;position:fixed}.library-shell:before{aspect-ratio:1;background:#61a66f21;border-radius:58% 42% 62% 38%;width:clamp(46px,7vw,82px);top:clamp(124px,18vw,210px);right:clamp(14px,6vw,92px);transform:rotate(-18deg)}.library-shell:after{aspect-ratio:1.2;background-color:#fffdf694;background-image:linear-gradient(90deg,#ffc85729 1px,#0000 1px),linear-gradient(#ffc85729 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:14px 14px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:10px;width:clamp(52px,8vw,86px);bottom:clamp(24px,6vw,74px);left:clamp(14px,7vw,96px);transform:rotate(-9deg)}.library-sky-dot{display:none}.library-content{z-index:1;width:min(100%,1440px);margin:0 auto;position:relative}.library-header{background:linear-gradient(135deg, #fffdf6f5, #f8f7ebeb), var(--library-paper);border:1px solid #2e7d5824;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px clamp(14px,2vw,24px);margin-bottom:clamp(12px,1.8vw,18px);padding:12px clamp(14px,2vw,20px);display:flex;box-shadow:0 10px 22px #45371b0f,inset 0 -2px #dfe8cfb8,inset 0 1px #ffffffb8}.library-brand-row{flex:220px;align-items:center;gap:10px;min-width:0;display:flex}.library-brand-copy{min-width:0}.library-header h1{color:var(--library-green-dark);letter-spacing:0;text-shadow:none;margin:0;font-size:clamp(1.36rem,2vw,1.9rem);font-weight:950;line-height:1.04}.library-header p{color:var(--library-muted);margin:3px 0 0;font-size:.78rem;font-weight:850}.library-product-nav,.library-auth-nav{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:flex}.library-product-nav{flex:360px;justify-content:center}.library-auth-nav{flex:0 auto;justify-content:flex-end}.library-product-nav button,.library-auth-nav button{max-width:100%;min-height:34px;color:var(--library-green-dark);box-shadow:none;font:inherit;white-space:nowrap;cursor:pointer;background:#fffdf6c7;border:1px solid #2e7d5826;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:.8rem;font-weight:800;line-height:1;display:inline-flex}.library-product-nav button.is-active{border-color:var(--library-gold);color:#2d250d;background:var(--library-gold);box-shadow:0 4px 10px #a6741224}.library-auth-nav span{max-width:min(190px,48vw);color:var(--library-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:700;overflow:hidden}.library-auth-nav button,.library-auth-nav button:first-of-type{color:#1f5f42e0;background:#fffdf68f}.library-auth-nav button svg{width:16px;height:16px}.library-hero{background:linear-gradient(90deg,#2e7d5814 1px,#0000 1px) 0 0/36px 100%,radial-gradient(circle at 94% 22%,#ffc8573b,#0000 8rem),radial-gradient(circle at 72% 100%,#61a66f33,#0000 13rem),linear-gradient(135deg,#fffdf6fa 0%,#f0f7e5f0 100%);border:1px solid #2e7d5824;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(14px,2vw,24px);min-height:0;margin-bottom:12px;padding:clamp(14px,2vw,22px);display:grid;position:relative;overflow:hidden;box-shadow:0 14px 34px #45371b14}.library-hero:before{content:"";background:linear-gradient(90deg,#2e7d5838,#ffc85747),repeating-linear-gradient(90deg,#0000 0 14px,#fffdf65c 14px 16px);border-radius:999px;width:clamp(86px,15vw,150px);height:14px;display:block;position:absolute;bottom:14px;right:clamp(16px,4vw,54px)}.library-hero:after{opacity:.75;content:"";background:radial-gradient(circle at 28% 42%,#fffdf6a8 0 3px,#0000 4px),linear-gradient(135deg,#61a66f38,#2e7d581a);border-radius:70% 30% 72% 28%;width:clamp(52px,8vw,86px);height:clamp(34px,5vw,54px);display:block;position:absolute;top:clamp(12px,3vw,24px);right:clamp(18px,5vw,78px);transform:rotate(-14deg)}.library-hero-copy{gap:8px;min-width:0;display:grid}.library-hero h2{color:var(--library-green-dark);letter-spacing:0;margin:0;font-size:clamp(1.9rem,3.6vw,3rem);font-weight:950;line-height:1.04}.library-hero p{color:var(--library-muted);margin:0;font-size:clamp(.98rem,1.4vw,1.12rem);font-weight:750}.library-search-visual{width:min(100%,440px);min-height:42px;color:var(--library-muted);background:var(--library-paper);border:1px solid #2e7d582e;border-radius:999px;align-items:center;gap:9px;margin-top:2px;padding:0 14px;font-size:.86rem;font-weight:700;display:flex;overflow:hidden;box-shadow:0 6px 18px #45371b0d,inset 0 0 0 1px #ffc85724}.library-search-visual svg{width:17px;height:17px;color:var(--library-green);flex:none}.library-search-visual span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.library-stats-panel{flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:min(100%,250px);display:flex}.library-stats-panel>span{min-width:70px;min-height:56px;color:var(--library-muted);text-align:center;background:#fffdf6e0;border:1px solid #2e7d581f;border-radius:8px;place-items:center;gap:2px;padding:8px 10px;font-size:.72rem;font-weight:800;display:grid;box-shadow:0 8px 18px #45371b0f}.library-stats-panel>span:nth-child(3){background:radial-gradient(circle at 72% 18%,#ffffffb8,#0000 42%),#ffc85733;border-color:#ffc85785}.library-stats-panel>span:nth-child(3) strong{color:#8a6200}.library-stats-panel strong{color:var(--library-green-dark);box-shadow:none;background:0 0;font-size:1.1rem;line-height:1}.library-filter-strip{flex-wrap:wrap;gap:8px;margin:0 0 14px;padding:0;display:flex;overflow:visible}.library-filter-strip button{min-height:32px;color:var(--library-green-dark);font:inherit;white-space:nowrap;background:#fffdf6d1;border:1px solid #2e7d5829;border-radius:999px;flex:0 auto;padding:0 12px;font-size:.78rem;font-weight:820;box-shadow:inset 0 -1px #dfe8cfb3}.library-filter-strip button.is-active{border-color:var(--library-green);color:#fff;background:var(--library-green);box-shadow:0 4px 10px #2e7d5829,inset 0 -2px #1f5f423d}.library-filter-strip button:last-child{color:#9f3d34;background:#e05a4e14;border-color:#e05a4e5c}.library-shelf-heading{color:var(--library-ink);flex-wrap:wrap;align-items:flex-start;gap:8px 14px;margin-bottom:12px;display:flex}.library-shelf-heading h3,.library-shelf-heading p{margin:0}.library-shelf-heading h3{color:var(--library-green-dark);font-size:clamp(1.15rem,1.8vw,1.55rem);font-weight:900;line-height:1.08}.library-shelf-heading p,.library-shelf-heading>span{color:var(--library-muted);font-size:.82rem;font-weight:750}.library-shelf-heading>span{border:1px solid var(--library-border);background:#ffffffc7;border-radius:999px;align-items:center;min-height:30px;padding:0 10px;display:inline-flex}.library-grid{grid-template-columns:repeat(auto-fill,minmax(240px,280px));justify-content:start;align-items:start;gap:clamp(14px,1.6vw,20px);width:100%;display:grid;position:relative}.library-grid:before{z-index:0;pointer-events:none;content:"";background:repeating-linear-gradient(#0000 0 258px,#6f604612 258px 260px,#ffc85714 260px 263px,#0000 263px 332px);border-radius:8px;height:calc(100% - 20px);position:absolute;inset:20px 0 auto}.library-message{border:1px solid var(--library-border);color:var(--library-muted);background:#fffdf6db;border-radius:8px;grid-column:1/-1;margin:0;padding:14px;font-weight:750}.library-message-error{color:#b42318;background:#fff8f6;border-color:#b4231838}.library-book-card{z-index:1;perspective:none;min-width:0;display:block;position:relative}.library-book-card:after{z-index:-1;filter:blur(4px);content:"";background:#6f604614;border-radius:999px;height:8px;position:absolute;bottom:-4px;left:12px;right:12px}.library-book-button{aspect-ratio:auto;width:100%;height:auto;min-height:0;color:var(--library-ink);background:linear-gradient(90deg, #2e7d5814 0 4px, transparent 4px), linear-gradient(180deg, var(--library-paper) 0%, #fbf7ec 100%);text-align:left;cursor:pointer;border:1px solid #42634226;border-radius:8px;grid-template-rows:auto auto auto;gap:9px;padding:10px;display:grid;position:relative;overflow:hidden;transform:none;box-shadow:0 10px 20px #45371b11,inset 0 1px #ffffffc7}.library-book-button:hover,.library-book-button:focus-visible{border-color:#61a66f80;transform:translateY(-2px);box-shadow:0 13px 24px #45371b17,0 0 0 3px #dfe8cfc2}.library-book-button:focus-visible{outline-offset:3px;outline:3px solid #ffc857b3}.library-book-button:before,.library-book-button:after,.library-card-tab,.library-card-flipper,.library-card-face,.library-card-front,.library-card-back{display:none}.library-cover{aspect-ratio:1;background:radial-gradient(circle at 88% 12%, #ffc85738, transparent 38%), linear-gradient(135deg, #dfe8cfc7, #fffdf6b8 44%, #61a66f24), var(--library-soft);border:1px solid #2e7d5824;border-radius:8px;place-items:center;width:100%;padding:10px;display:grid;overflow:hidden;box-shadow:inset 0 0 0 7px #fffdf694}.library-cover img{object-fit:contain;place-self:center;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.library-cover-fallback{color:#fff;background:linear-gradient(135deg, var(--library-green-dark), var(--library-leaf));border-radius:8px;place-items:center;width:100%;height:100%;font-weight:900;display:grid}.library-book-copy{align-content:start;gap:5px;min-width:0;display:grid}.library-card-meta-row{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.library-book-level,.library-status-badge{text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;max-width:100%;min-height:24px;padding:0 8px;font-size:.68rem;font-weight:850;line-height:1;display:inline-flex;position:static;overflow:hidden}.library-book-level{color:var(--library-green-dark);background:linear-gradient(90deg,#fffdf680,#0000 44%),#61a66f29}.library-status-badge{color:#7b5b00;background:#ffc8573d}.library-book-title{min-width:0;min-height:0;color:var(--library-ink);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1rem;font-weight:900;line-height:1.16;display:-webkit-box;overflow:hidden}.library-book-subtitle{min-width:0;min-height:0;color:var(--library-muted);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8rem;font-weight:680;line-height:1.28;display:-webkit-box;overflow:hidden}.library-book-description{color:#7a827c;-webkit-line-clamp:2;font-size:.76rem}.library-book-footer{border-top:1px solid #dfe8cfb8;flex-wrap:wrap;align-items:center;gap:7px;min-width:0;padding-top:4px;display:flex}.library-book-meta,.library-read-pill{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:34px;font-size:.78rem;font-weight:850;line-height:1;display:inline-flex}.library-book-meta{color:#1f5f42e0;background:#dfe8cf6b;flex:auto;padding:0 10px}.library-book-meta svg,.library-read-pill svg{flex:none;width:16px;height:16px}.library-read-pill{color:#2d250d;background:linear-gradient(180deg, #ffd876, var(--library-gold));flex:none;padding:0 12px;box-shadow:0 3px #90600a24,inset 0 1px #ffffff73}.library-progress-meter{display:none}@media (width>=1320px){.library-grid{grid-template-columns:repeat(auto-fill,minmax(240px,280px))}}@media (width<=980px){.library-product-nav{justify-content:flex-start}.library-auth-nav{flex:260px;justify-content:flex-start}.library-hero{grid-template-columns:1fr}.library-stats-panel{justify-content:flex-start}}@media (width<=620px){.library-shell{padding:10px}.library-header,.library-hero,.library-book-button{padding:12px}.library-product-nav,.library-auth-nav,.library-filter-strip{flex-wrap:wrap;overflow:visible}.library-stats-panel{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid}.library-stats-panel>span{min-width:0}.library-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=380px){.library-read-pill{flex:100%}}.reader-shell{--reader-forest:#2e7d58;--reader-forest-dark:#1f5f42;--reader-leaf:#61a66f;--reader-sage:#dfe8cf;--reader-cream:#faf6ea;--reader-paper:#fffdf6;--reader-yellow:#ffc857;--reader-coral:#e05a4e;--reader-ink:#28282b;--reader-brown:#6f6046;--reader-border:#2e7d582e;color:var(--reader-ink);background:radial-gradient(circle at 82% 10%, #ffc8572e, transparent 15rem), radial-gradient(circle at 16% 14%, #61a66f2e, transparent 18rem), linear-gradient(180deg, #eef5e4 0%, var(--reader-cream) 42%, #f5efe1 100%);font-family:Nunito,Avenir Next,Trebuchet MS,ui-rounded,Segoe UI,system-ui,sans-serif}.reader-shell:before{opacity:.8;background-color:#0000;background-image:linear-gradient(90deg,#6f604607 1px,#0000 1px),linear-gradient(#6f604606 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;display:block}.reader-header{color:var(--reader-ink);background:linear-gradient(135deg, #fffdf6f7, #f4f8eceb), var(--reader-paper);border-color:#2e7d5833;box-shadow:0 12px 28px #45371b14,inset 0 -2px #dfe8cfbf}.reader-header .brand-mark{background:#dfe8cf85;border-radius:8px;box-shadow:inset 0 0 0 1px #2e7d581f}.reader-header h1{color:var(--reader-forest-dark);font-weight:950}.reader-header h1:after{background:var(--reader-yellow)}.reader-tagline{color:var(--reader-brown);font-weight:780}.reader-library-button{color:#fff;background:linear-gradient(180deg, var(--reader-forest), var(--reader-forest-dark));border-color:#2e7d5847;box-shadow:0 5px 12px #2e7d582e,inset 0 1px #ffffff2e}.reader-library-button:hover,.reader-library-button:focus-visible{border-color:#2e7d5875;box-shadow:0 7px 16px #2e7d5838,0 0 0 3px #dfe8cfcc}.theme-toggle,.language-toggle{background:#fffdf6c2;border-color:#2e7d582e;box-shadow:inset 0 0 0 1px #dfe8cf7a}.theme-toggle button,.language-toggle button{color:var(--reader-forest-dark)}.theme-toggle button.is-active,.language-toggle button.is-active{color:#2d250d;background:linear-gradient(180deg, #ffd876, var(--reader-yellow));box-shadow:inset 0 -2px #90600a21}.reader-card{background:radial-gradient(circle at 50% 48%,#ffc8571f,#0000 27rem),linear-gradient(#fffdf69e,#dfe8cf47);border-color:#2e7d5829;box-shadow:0 24px 56px #45371b29,inset 0 1px #ffffffa3}.book-stage{background:radial-gradient(circle at 50% 42%,#fffdf69e,#0000 27rem),linear-gradient(#2e7d5814,#dfe8cf38),#fffdf68f;border-color:#2e7d5824;box-shadow:inset 0 0 0 1px #fffdf661,0 12px 32px #45371b14}.book-stage:before,.book-stage:after{border-top-color:#2e7d5833;border-left-color:#2e7d5833}.book-spine{background:linear-gradient(90deg,#2e7d5824,#ffc8574d 44%,#2e7d585c 50%,#2e7d5824)}.reader-controls{background:linear-gradient(#fffdf6e6,#f4f8ecd1);border-color:#2e7d5829;box-shadow:0 12px 26px #45371b1a,inset 0 1px #ffffff9e}.reader-controls button,.reader-progress{color:var(--reader-forest-dark);border-color:#2e7d5829;box-shadow:0 4px #45371b14,inset 0 1px #ffffff8c}.reader-progress{color:var(--reader-brown);background:#dfe8cf94;font-weight:850}.previous-control,.next-control{background:radial-gradient(circle at 78% 18%, #ffffffa8, transparent 24%), linear-gradient(180deg, #eef7e8, var(--reader-sage))}.next-control{color:#2d250d;background:radial-gradient(circle at 78% 18%, #ffffffb8, transparent 24%), linear-gradient(180deg, #ffd876, var(--reader-yellow))}.home-control{color:var(--reader-forest-dark);background:radial-gradient(circle at 78% 18%,#ffffffa8,#0000 24%),linear-gradient(#eff7ea,#cfe1bd)}.read-all-control,.play-button,.closing-burst{color:#2d250d;background:radial-gradient(circle at 78% 18%, #ffffffb3, transparent 24%), linear-gradient(180deg, #ffd876, var(--reader-yellow));box-shadow:0 5px #90600a21,0 0 0 4px #ffc85729}.reader-controls button:disabled{color:#6f60467a;box-shadow:none;background:#dfe8cf6b}.reader-shell.theme-night{color:#f8fafc;background:radial-gradient(circle at 82% 12%,#ffc85724,#0000 14rem),radial-gradient(circle at 16% 14%,#61a66f38,#0000 17rem),linear-gradient(#173422 0%,#10251b 54%,#07140f 100%)}.reader-shell.theme-night:before{opacity:.22}.reader-shell.theme-night .reader-header,.reader-shell.theme-night .reader-controls{background:linear-gradient(135deg,#1f5f42d1,#10251be6);border-color:#dfe8cf29;box-shadow:0 14px 34px #0000003d,inset 0 1px #ffffff14}.reader-shell.theme-night .reader-header h1,.reader-shell.theme-night .theme-toggle button,.reader-shell.theme-night .language-toggle button{color:#f8fafc}.reader-shell.theme-night .reader-header h1:after{background:var(--reader-yellow)}.reader-shell.theme-night .reader-tagline{color:#faf6eac7}.reader-shell.theme-night .reader-card{background:radial-gradient(circle at 50% 46%,#ffc8571a,#0000 27rem),#0a1e15b3;border-color:#dfe8cf24}.reader-shell.theme-night .book-stage{background:radial-gradient(circle at 50% 42%,#61a66f2e,#0000 27rem),#07140f99;border-color:#dfe8cf21}.reader-shell.theme-night .book-spine{background:linear-gradient(90deg,#dfe8cf1f,#ffc85757 44%,#61a66f8a 50%,#dfe8cf1f)}.reader-shell.theme-night .theme-toggle,.reader-shell.theme-night .language-toggle,.reader-shell.theme-night .reader-progress{background:#fffdf614;border-color:#dfe8cf29}.reader-shell.theme-night .theme-toggle button.is-active,.reader-shell.theme-night .language-toggle button.is-active,.reader-shell.theme-night .reader-progress{color:#2d250d;background:radial-gradient(circle at 76% 18%, #ffffff47, transparent 24%), linear-gradient(180deg, #ffd876, var(--reader-yellow));box-shadow:0 4px #0003,inset 0 1px #ffffff47}.reader-shell.theme-night .previous-control,.reader-shell.theme-night .next-control,.reader-shell.theme-night .home-control{color:#f8fafc;background:radial-gradient(circle at 78% 18%,#ffffff1f,#0000 24%),linear-gradient(#2e7d58,#1f5f42);border-color:#dfe8cf24}.reader-shell.theme-night .read-all-control,.reader-shell.theme-night .play-button,.reader-shell.theme-night .closing-burst{color:#2d250d;background:radial-gradient(circle at 78% 18%, #ffffffb3, transparent 24%), linear-gradient(180deg, #ffd876, var(--reader-yellow));box-shadow:0 5px #0003,0 0 0 4px #ffc85724}.admin-shell,.admin-shell-wizard{--admin-green:#2e7d58;--admin-green-dark:#1f5f42;--admin-leaf:#61a66f;--admin-sage:#dfe8cf;--admin-gold:#ffc857;--admin-coral:#e05a4e;--admin-cream:#faf6ea;--admin-paper:#fffef9;--admin-surface:#fff;--admin-ink:#28282b;--admin-muted:#6f6046;--admin-border:#42634229;--admin-soft:#f5f8ee;--admin-shadow:0 8px 22px #45371b0e;--sf-purple:var(--admin-green);--sf-purple-700:var(--admin-green-dark);--sf-purple-950:var(--admin-green-dark);--sf-yellow:var(--admin-gold);--sf-ink:var(--admin-ink);--sf-muted:var(--admin-muted);--sf-line:var(--admin-border);--sf-card:var(--admin-paper);--sf-lavender:var(--admin-soft);--sf-green:var(--admin-leaf);color:var(--admin-ink);background:linear-gradient(90deg, #6f604607 1px, transparent 1px), linear-gradient(#6f604606 1px, transparent 1px), radial-gradient(circle at 12% 10%, #61a66f1a, transparent 18rem), linear-gradient(180deg, #dfe8cf57, transparent 17rem), var(--admin-cream);background-size:24px 24px,24px 24px,auto,auto,auto,auto;font-family:Nunito,Avenir Next,Trebuchet MS,ui-rounded,Segoe UI,system-ui,sans-serif}.admin-books-shell,.admin-creation-shell{background:linear-gradient(90deg, #6f604607 1px, transparent 1px), linear-gradient(#6f604606 1px, transparent 1px), radial-gradient(circle at 16% 12%, #61a66f14, transparent 20rem), var(--admin-cream);background-size:24px 24px,24px 24px,auto,auto,auto}.admin-books-workspace{color:var(--admin-ink)}.admin-side-nav{color:var(--admin-paper);background:linear-gradient(180deg, var(--admin-green-dark) 0%, #1b4f39 100%);box-shadow:inset -1px 0 #fffdf61f,8px 0 20px #1f5f4214}.admin-side-brand,.admin-side-user{border-radius:8px}.admin-side-logo,.admin-side-user>span{color:#2d250d;background:#ffd876;box-shadow:0 4px 10px #2d250d1f}.admin-side-brand strong{color:#fff;letter-spacing:0}.admin-side-brand small,.admin-side-user strong,.admin-side-user button{color:#fffdf6c7}.admin-side-nav nav button{color:#fffdf6d1;border:1px solid #0000;font-weight:780}.admin-side-nav nav button:hover:not(:disabled){color:#fff;background:#fffdf61c}.admin-side-nav nav button.is-active{color:#2d250d;background:#fff7dc;border-color:#ffc85761;box-shadow:0 6px 14px #10251b1f,inset 0 1px #ffffff94}.admin-side-nav nav button:disabled{color:#fffdf66b;opacity:1}.admin-side-user{background:#fffdf614;border:1px solid #fffdf621}.admin-side-user strong{color:#fff}.admin-header,.admin-books-heading,.admin-book-table,.admin-wizard-card,.admin-login-card,.admin-info-panel,.admin-audio-source-note,.admin-generation-panel,.admin-publish-panel,.admin-batch-upload-panel,.admin-bulk-text-panel,.admin-full-audio-panel,.admin-page-card,.admin-action-card,.admin-empty-state{border-color:var(--admin-border);background:var(--admin-surface);box-shadow:var(--admin-shadow), inset 0 1px 0 #ffffffd1;border-radius:8px}.admin-books-heading{border-color:#2e7d5824;margin-bottom:16px;padding:14px 16px}.admin-brand-block h1,.admin-books-heading h2,.admin-edit-hero h2,.admin-section-heading h2,.admin-page-heading h3,.admin-book-row h3,.admin-book-title-cell h3,.admin-wizard-sidebar h3,.admin-wizard-card-header h3,.admin-generation-panel h4,.admin-publish-panel h4,.admin-info-panel strong,.admin-audio-source-note strong{color:var(--admin-green-dark);letter-spacing:0}.admin-books-heading h2{font-size:clamp(1.32rem,2vw,1.72rem);font-weight:900}.admin-kicker,.admin-creation-shell .admin-kicker{color:var(--admin-green);letter-spacing:.08em}.admin-brand-block p:not(.admin-kicker),.admin-header p,.admin-section-heading p,.admin-page-heading p,.admin-book-row p,.admin-message,.admin-storage-note,.admin-edit-hero p,.admin-wizard-card-header p,.admin-wizard-sidebar p,.admin-info-panel p,.admin-generation-panel p,.admin-publish-panel p,.admin-book-title-cell p,.admin-field-note{color:var(--admin-muted)}.admin-primary-button{color:#2d250d;background:linear-gradient(180deg, #ffd876, var(--admin-gold));border:1px solid #8a62005c;box-shadow:0 4px #90600a21,inset 0 1px #ffffff75}.admin-primary-button:hover:not(:disabled){background:linear-gradient(#ffdc84,#ffc147);border-color:#8a62007a;transform:translateY(-1px)}.admin-secondary-button,.admin-link-button,.admin-icon-button,.admin-ghost-button{color:var(--admin-green-dark);background:#fffdf6db;border-color:#2e7d582e}.admin-secondary-button:hover:not(:disabled),.admin-link-button:hover:not(:disabled),.admin-icon-button:hover:not(:disabled),.admin-ghost-button:hover:not(:disabled){color:var(--admin-green-dark);background:#f3f7e9db;border-color:#61a66f75}.admin-danger-button{color:#9f3d34;background:#e05a4e14;border-color:#e05a4e47}.admin-primary-button:focus-visible,.admin-secondary-button:focus-visible,.admin-link-button:focus-visible,.admin-icon-button:focus-visible,.admin-ghost-button:focus-visible,.admin-side-nav nav button:focus-visible,.admin-wizard-sidebar-step:focus-visible{outline-offset:2px;outline:3px solid #ffc8579e}.admin-book-table{background:var(--admin-surface);box-shadow:var(--admin-shadow);border-color:#2e7d5824;overflow:auto hidden}.admin-book-table-head{color:var(--admin-green-dark);letter-spacing:.03em;background:#f7f2e7;padding:9px 12px;font-size:.7rem;font-weight:850}.admin-book-table-row{color:var(--admin-muted);background:var(--admin-surface);border-top-color:#4263421f;padding:10px 12px;font-size:.8rem}.admin-book-table-row:hover{background:#fffdf7}.admin-book-thumbnail{color:#fff;background:radial-gradient(circle at 74% 18%, #ffc85775, transparent 28%), linear-gradient(135deg, var(--admin-green-dark), var(--admin-leaf));box-shadow:inset 0 0 0 1px #fffdf64d,0 7px 14px #2e7d5829}.admin-book-title-cell code,.admin-storage-note code,.admin-book-row code,.admin-page-path,.admin-timing-status code,.admin-empty-state code{color:#1f5f42e6;background:#dfe8cf6b}.admin-table-actions{justify-self:end;align-items:center}.admin-status-chip{border-radius:999px;min-height:24px;padding:0 9px;font-size:.7rem;font-weight:850}.admin-status-draft{color:#7b5b00;background:#fff4c7;border-color:#ffc8577a}.admin-status-published{color:var(--admin-green-dark);background:linear-gradient(90deg,#fffdf680,#0000 44%),#61a66f29;border-color:#61a66f70}.admin-status-archived,.admin-status-neutral{color:#667085;background:#f2f4f0;border-color:#6f60462e}.admin-creation-topbar{background:#fffdf6db;border-bottom-color:#42634226;box-shadow:0 8px 22px #45371b0d}.admin-creation-title-block span,.admin-creation-email,.admin-creation-progress{color:var(--admin-muted)}.admin-creation-title-block strong{color:var(--admin-green-dark);letter-spacing:0}.admin-creation-title-block code{color:#6f6046c7}.admin-creation-progress div{background:#dfe8cfdb}.admin-creation-progress i{background:linear-gradient(90deg, var(--admin-green), var(--admin-gold))}.admin-creation-shell .admin-wizard-sidebar{color:var(--admin-ink)}.admin-creation-shell .admin-wizard-sidebar>div:first-child,.admin-wizard-sidebar>div:first-child{border-bottom-color:#42634224}.admin-wizard-sidebar-step,.admin-creation-shell .admin-wizard-sidebar-step{color:var(--admin-muted)}.admin-wizard-sidebar-step:hover,.admin-creation-shell .admin-wizard-sidebar-step:hover{background:#dfe8cf6b}.admin-wizard-sidebar-step-current,.admin-creation-shell .admin-wizard-sidebar-step-current{border-left-color:var(--admin-green);color:var(--admin-green-dark);box-shadow:none;background:#dfe8cf8f}.admin-wizard-sidebar-step>span,.admin-creation-shell .admin-wizard-sidebar-step>span{color:var(--admin-green-dark);background:#dfe8cfb3}.admin-wizard-sidebar-step strong,.admin-creation-shell .admin-wizard-sidebar-step strong{color:var(--admin-green-dark)}.admin-wizard-sidebar-step em,.admin-wizard-sidebar-step small{color:#6f6046d1}.admin-wizard-sidebar-step-complete>span,.admin-creation-shell .admin-wizard-sidebar-step-complete>span{color:#fff;background:var(--admin-green)}.admin-wizard-sidebar-step-in-progress>span,.admin-creation-shell .admin-wizard-sidebar-step-in-progress>span{color:#2d250d;background:var(--admin-gold)}.admin-wizard-sidebar-step-needs-attention>span,.admin-creation-shell .admin-wizard-sidebar-step-needs-attention>span{color:#fff;background:var(--admin-coral)}.admin-wizard-sidebar-step-complete em{color:var(--admin-green-dark)}.admin-wizard-sidebar-step-in-progress em{color:#7b5b00}.admin-wizard-sidebar-step-needs-attention em{color:#9f3d34}.admin-creation-shell .admin-wizard-card,.admin-wizard-card,.admin-login-card{border-color:var(--admin-border);background:var(--admin-surface);border-radius:8px;box-shadow:0 12px 30px #45371b13,inset 0 1px #ffffffbd}.admin-creation-shell .admin-wizard-card:before{content:none}.admin-creation-shell .admin-wizard-card-header h3,.admin-wizard-card-header h3{max-width:none;color:var(--admin-green-dark);letter-spacing:0;font-size:clamp(1.5rem,2.7vw,2.25rem);font-weight:900;line-height:1.05}.admin-form input,.admin-form select,.admin-form textarea,.admin-login-form input,.admin-page-grid input,.admin-page-grid select,.admin-page-grid textarea,.admin-bulk-textarea,.admin-creation-shell .admin-form input,.admin-creation-shell .admin-form select,.admin-creation-shell .admin-form textarea,.admin-creation-shell .admin-page-grid input,.admin-creation-shell .admin-page-grid select,.admin-creation-shell .admin-page-grid textarea,.admin-creation-shell .admin-bulk-textarea{color:var(--admin-ink);background:#fffdf6e0;border-color:#2e7d582e}.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus,.admin-login-form input:focus,.admin-page-grid input:focus,.admin-page-grid select:focus,.admin-page-grid textarea:focus,.admin-bulk-textarea:focus{border-color:var(--admin-green);outline:3px solid #ffc8576b}.admin-info-panel,.admin-audio-source-note,.admin-generation-panel,.admin-publish-panel,.admin-upload-control,.admin-timing-status,.admin-batch-upload-control,.admin-full-audio-upload,.admin-readiness-list span{background:linear-gradient(180deg, #fffdf6e0, #f3f7e99e), var(--admin-paper);border-color:#2e7d5824}.admin-upload-control,.admin-timing-status,.admin-batch-upload-control,.admin-full-audio-upload,.admin-creation-shell .admin-batch-upload-control,.admin-creation-shell .admin-full-audio-upload{border-color:#2e7d5838}.admin-upload-control small,.admin-timing-status small,.admin-upload-result,.admin-narration-guide ul,.admin-readiness-list span{color:var(--admin-muted)}.admin-upload-control em,.admin-batch-upload-control em,.admin-full-audio-upload em,.admin-creation-shell .admin-upload-control em{color:var(--admin-green-dark);background:#dfe8cf8f}.admin-status-summary span,.admin-book-metrics span{color:var(--admin-muted);background:#fffdf6c7;border-color:#2e7d5824}.admin-status-summary strong,.admin-book-metrics strong{color:var(--admin-green-dark)}.admin-asset-status{color:#9f3d34;background:#e05a4e14;border-color:#e05a4e42}.admin-asset-status strong{color:var(--admin-muted)}.admin-asset-status-ready{color:var(--admin-green-dark);background:#61a66f1f;border-color:#61a66f6b}.admin-image-preview-card,.admin-image-preview-card-empty,.admin-image-preview-card-warning{background:#fffdf6c7;border-color:#2e7d5824}.admin-image-preview{background:var(--admin-paper);border-color:#2e7d5829}.admin-ready-message,.admin-readiness-list .admin-readiness-ready{color:var(--admin-green-dark)!important}.admin-readiness-list .admin-readiness-ready i{color:#fff;background:var(--admin-green)}.admin-warning-list{color:#9f3d34}.admin-error-message{color:#9f3d34;background:#fff8f6;border-color:#e05a4e52}.admin-success-message{color:var(--admin-green-dark);background:#f5fbf4;border-color:#61a66f61}.admin-action-card svg,.admin-empty-state svg{color:var(--admin-green)}.admin-action-card:hover{border-color:#61a66f80;transform:translateY(-2px);box-shadow:0 13px 24px #45371b17,0 0 0 3px #dfe8cfc2}.admin-generation-copy,.admin-generation-settings{gap:12px;display:grid}.admin-generation-settings{border-top:1px solid #2e7d581f;padding-top:12px}.admin-padding-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-padding-grid label{min-width:0;color:var(--admin-green-dark);gap:6px;font-size:.76rem;font-weight:850;display:grid}.admin-padding-grid input{width:100%;min-height:38px;color:var(--admin-ink);font:inherit;background:#fffdf6e6;border:1px solid #2e7d582e;border-radius:8px;padding:0 10px}.admin-padding-grid small{color:var(--admin-muted);font-size:.7rem;font-weight:760}.route-status-shell{--route-green:#2e7d58;--route-green-dark:#1f5f42;--route-cream:#faf6ea;--route-paper:#fffdf6;--route-gold:#ffc857;--route-coral:#e05a4e;--route-ink:#28282b;--route-muted:#6f6046;isolation:isolate;min-height:100svh;color:var(--route-ink);background:linear-gradient(#2e7d580e 1px, transparent 1px), linear-gradient(90deg, #2e7d580e 1px, transparent 1px), radial-gradient(circle at 50% -16rem, #ffc8576b, transparent 31rem), linear-gradient(180deg, var(--route-cream) 0%, #f2f7e8 58%, var(--route-paper) 100%);background-size:32px 32px,32px 32px,auto,auto;place-items:center;padding:clamp(22px,5vw,54px);display:grid;position:relative}.route-status-shell:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(135deg,#ffc85721,#0000 34%),linear-gradient(315deg,#61a66f21,#0000 38%);border:1px solid #2e7d581f;border-radius:8px;position:fixed;inset:clamp(14px,3.5vw,42px)}.route-status-card{background:linear-gradient(180deg, #fffdf6f7, #faf6eaf0), var(--route-paper);border:1px solid #2e7d582e;border-radius:8px;gap:13px;width:min(100%,430px);padding:clamp(24px,5vw,34px);position:relative;overflow:hidden;box-shadow:0 18px 40px #45371b1a,inset 0 1px #ffffffb8}.route-status-card:before{content:"";background:linear-gradient(90deg, var(--route-green), var(--route-gold) 58%, var(--route-coral));height:7px;position:absolute;top:0;left:0;right:0}.route-status-card-loading:after{content:"";background:linear-gradient(90deg, var(--route-green), var(--route-gold));border-radius:0 999px 999px 0;width:56%;height:4px;animation:1.35s ease-in-out infinite route-status-progress;position:absolute;bottom:0;left:0}.route-status-logo{background:#fffdf6eb;border:1px solid #2e7d5826;border-radius:8px;width:clamp(72px,10vw,92px);padding:8px;box-shadow:0 10px 22px #45371b14,inset 0 1px #ffffffbd}.route-status-card h1{color:var(--route-green-dark);letter-spacing:0;margin:2px 0 0;font-size:clamp(2.1rem,8vw,3.25rem);font-weight:1000;line-height:.95}.route-status-card p{max-width:28ch;color:var(--route-muted);align-items:center;gap:9px;font-size:clamp(1rem,2.4vw,1.12rem);line-height:1.35;display:inline-flex}.route-status-card-loading p:before{content:"";background:var(--route-gold);border-radius:999px;flex:none;width:9px;height:9px;box-shadow:0 0 0 5px #ffc8573d}.route-status-card button{color:#2d250d;background:linear-gradient(180deg, #ffd876, var(--route-gold));border:1px solid #90600a2e;border-radius:8px;min-height:42px;margin-top:2px;padding:0 20px;box-shadow:0 5px #90600a24,inset 0 1px #ffffff73}.route-status-card button:hover:not(:disabled),.route-status-card button:focus-visible{color:#fff;background:linear-gradient(180deg, #3f946a, var(--route-green));box-shadow:0 5px #1f5f422e,0 0 0 3px #ffc8574d}@keyframes route-status-progress{0%{transform:translate(-80%)}50%{transform:translate(38%)}to{transform:translate(184%)}}@media (prefers-reduced-motion:reduce){.route-status-card-loading:after{animation:none;transform:translate(0)}}.reader-shell .loading-screen{color:var(--reader-ink)}.reader-shell .loading-screen h1{color:var(--reader-forest-dark);letter-spacing:0}.reader-shell .loading-card{border:1px solid var(--reader-border);background:linear-gradient(180deg, #fffdf6f5, #faf6eaeb), var(--reader-paper);border-radius:8px;width:min(100%,520px);position:relative;overflow:hidden;box-shadow:0 18px 40px #45371b1a,inset 0 1px #ffffffb8}.reader-shell .loading-card:before{content:"";background:linear-gradient(90deg, var(--reader-forest), var(--reader-yellow) 62%, var(--reader-coral));height:7px;position:absolute;top:0;left:0;right:0}.reader-shell .loading-book{background:linear-gradient(#e7ddc6,#d8caaa);border:1px solid #2e7d5829;position:relative;box-shadow:0 16px 28px #45371b1f,inset 0 0 0 1px #ffffff6b}.reader-shell .loading-book:before{content:"";z-index:1;background:linear-gradient(#0000,#2e7d5838,#0000);width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.reader-shell .loading-book div{background:linear-gradient(90deg, transparent 82%, #2e7d5814), var(--reader-paper)}.reader-shell .loading-book div+div{background:linear-gradient(270deg, transparent 82%, #2e7d5814), var(--reader-paper)}.reader-shell .loading-tagline{color:var(--reader-forest)}.reader-shell .loading-message{color:var(--reader-ink)}.reader-shell .loading-bar{background:linear-gradient(180deg, #fffdf6bd, #dfe8cfd1), var(--reader-sage);border:1px solid #2e7d5829;height:14px;box-shadow:inset 0 1px 2px #2e7d581f}.reader-shell .loading-bar span{background:linear-gradient(90deg, var(--reader-forest-dark), var(--reader-forest), var(--reader-yellow));box-shadow:0 0 16px #ffc85740}.reader-shell .loading-progress{color:var(--reader-brown)}@media (width>=721px){.admin-books-shell{grid-template-columns:minmax(184px,210px) minmax(0,1fr);display:grid}.admin-side-nav{min-height:100svh}.admin-side-nav nav{grid-template-columns:none}.admin-book-table-head{display:grid}.admin-book-table-head,.admin-book-table-row{grid-template-columns:minmax(220px,1.85fr) minmax(52px,.42fr) minmax(58px,.46fr) minmax(58px,.46fr) minmax(68px,.52fr) minmax(82px,.62fr) minmax(84px,.66fr) minmax(142px,.85fr);align-items:center;gap:9px;min-width:840px}.admin-book-table-row>span{white-space:nowrap;min-width:0;display:block}.admin-book-table-row>span:before{content:none}.admin-table-actions{flex-wrap:nowrap;justify-content:flex-end}}@media (width<=720px){.admin-padding-grid{grid-template-columns:1fr}.route-status-shell{padding:14px}.route-status-shell:before{inset:8px}.admin-book-table-row>span:before{color:var(--admin-green-dark)}}
