:root{color:#1d2433;background:#f4f6fb;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button{font:inherit}.app-shell{width:min(100% - 32px,760px);margin:0 auto;padding:56px 0 72px}.page-header{margin-bottom:28px}.header-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.brand,.eyebrow{color:#6658e8;letter-spacing:.09em;text-transform:uppercase;font-size:.8rem;font-weight:800}.brand{margin:0 0 10px}h1{letter-spacing:-.04em;margin:0;font-size:clamp(2rem,5vw,3rem)}.page-header>p:last-child{color:#596275;margin:12px 0 0}.auth-panel{min-height:40px}.auth-user{color:#596275;align-items:center;gap:8px;font-size:.82rem;display:flex}.auth-user button{color:#394150;cursor:pointer;background:#fff;border:1px solid #d5d9e4;border-radius:7px;padding:6px 9px}.auth-error{color:#bb2443;text-align:right;max-width:220px;margin:0;font-size:.78rem}.library-message{color:#596275;text-align:center;margin:18px 0;font-size:.9rem}.flashcard{background:#fff;border:1px solid #e1e5ef;border-radius:20px;overflow:hidden;box-shadow:0 16px 45px #2c334917}.card-face{width:100%;min-height:240px;color:inherit;cursor:pointer;text-align:center;background:linear-gradient(135deg,#fdfdff,#f1efff);border:0;place-content:center;gap:18px;padding:32px;display:grid}.card-face:hover{background:linear-gradient(135deg,#fff,#eae7ff)}.card-face:focus-visible{outline-offset:-5px;outline:3px solid #6658e8}.phrase{letter-spacing:-.05em;font-size:clamp(2.2rem,10vw,4.8rem);line-height:1}.card-action{color:#596275;font-size:.9rem}.card-details{padding:24px}.video-panel{background:#171923;border-radius:12px;overflow:hidden}.video-frame{aspect-ratio:16/9;width:100%}.video-frame iframe{border:0;width:100%;height:100%}.player-error{color:#fff;margin:0;padding:12px;font-size:.9rem}.subtitles{gap:16px;margin:24px 0 16px;display:grid}.subtitles div{background:#f7f8fc;border-radius:12px;padding:16px}.subtitles dt{color:#6658e8;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;font-weight:800}.subtitles dd{margin:7px 0 0;font-size:1.08rem;line-height:1.6}.current-word{color:#171923;background:#ffdd73;border-radius:.18em;font-weight:800}mark{color:inherit;background:#ffdd73;border-radius:.18em;padding:0 .12em}.video-meta{color:#6b7280;margin:0;font-size:.8rem;line-height:1.5}.auth-user .purchase-button{color:#fff;background:#6658e8;border-color:#6658e8;font-weight:700}.access-status{color:#198754;font-weight:700}.checkout-error{color:#bb2443}.checkout-message{border-radius:10px;margin:0 0 18px;padding:12px 16px;font-size:.9rem}.checkout-success{color:#176b3a;background:#e7f7ed}.checkout-cancelled{color:#7a5700;background:#fff4dc}.auth-debug{color:#46516a;background:#fff;border:1px dashed #aeb7cc;border-radius:8px;margin-top:10px;padding:10px 12px;font-size:.72rem;line-height:1.7}.auth-user{flex-wrap:wrap}.header-top{align-items:flex-start}@media (width<=600px){.header-top{flex-direction:column}.auth-panel{width:100%}}.legal-footer{border-top:1px solid #dce0ea;flex-wrap:wrap;gap:12px 20px;margin-top:36px;padding-top:20px;font-size:.78rem;display:flex}.legal-footer a{color:#596275}.target-word{color:#49318d;text-underline-offset:.18em;background:#e8e0ff;font-weight:700;-webkit-text-decoration:underline #8a66d9;text-decoration:underline #8a66d9}.current-word .target-word{color:#171923;background:#ffdd73}.install-banner{background:#fff;border:1px solid #dedaf8;border-radius:14px;align-items:center;gap:12px;margin:0 0 24px;padding:14px 16px;display:flex}.install-banner img,.install-heading img,.install-finish img{border-radius:14px}.install-banner div{flex:1}.install-banner strong,.install-banner span{display:block}.install-banner strong{font-size:.9rem}.install-banner span{color:#596275;margin-top:3px;font-size:.8rem}.install-banner a{color:#5444d1;white-space:nowrap;font-size:.88rem;font-weight:700}.install-guide{max-width:680px}.install-guide a{color:#5444d1}.install-heading{text-align:center;margin:32px 0}.install-heading h1{margin:12px 0;font-size:clamp(2rem,7vw,2.8rem);line-height:1.3}.install-heading>p:last-child{color:#596275;line-height:1.8}.install-heading img{box-shadow:0 8px 24px #6658e82b}.install-guide h2{font-size:1.25rem}.install-guide p{line-height:1.8}.install-direct{text-align:center;background:#eeebff;border-radius:16px;margin-bottom:24px;padding:20px}.install-primary,.install-back{cursor:pointer;background:#6658e8;border:0;border-radius:12px;min-height:48px;padding:14px 22px;font-weight:700;text-decoration:none;display:inline-block;color:#fff!important}.install-primary:disabled{opacity:.6}.install-notice{color:#176b3a;background:#e7f7ed;border-radius:10px;padding:14px}.install-devices{gap:8px;margin:28px 0;display:flex}.install-devices button{color:#46516a;cursor:pointer;background:#fff;border:1px solid #d9dbe8;border-radius:10px;flex:1;min-height:48px;padding:10px 8px}.install-devices button[aria-pressed=true]{color:#fff;background:#6658e8;border-color:#6658e8}.install-note{color:#6c531f;background:#fff6df;border-radius:10px;padding:14px;font-size:.9rem}.install-steps{gap:18px;margin:24px 0;padding:0;list-style:none;display:grid}.install-steps li{background:#fff;border:1px solid #e1e5ef;border-radius:16px;gap:14px;padding:22px;display:flex}.install-number{color:#5444d1;background:#ece8ff;border-radius:50%;flex-shrink:0;place-content:center;width:32px;height:32px;font-weight:800;display:grid}.install-steps li>div{flex:1;min-width:0}.install-steps h3{margin:2px 0 8px;font-size:1.05rem;line-height:1.5}.install-steps p{color:#596275;margin:8px 0 14px;font-size:.92rem}.install-steps small{color:#6b7280;margin-top:8px;font-size:.75rem;line-height:1.6;display:block}.install-address{overflow-wrap:anywhere;background:#f4f6fb;border-radius:8px;padding:12px;font-size:.9rem}.install-copy{cursor:pointer;color:#5444d1;background:#fff;border:1px solid #d9dbe8;border-radius:8px;min-height:44px;margin-top:8px;padding:10px 14px}.install-demo{background:#f4f6fb;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;font-size:.75rem;display:flex}.install-demo-target{color:#5444d1;background:#eeebff;border:2px solid #6658e8;border-radius:10px;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:32px;font-weight:700;display:grid}.install-demo-target svg{width:26px;height:28px}.install-menu-example{color:#40347c;background:#f5f2ff;border:2px solid #6658e8;border-radius:10px;align-items:center;gap:14px;min-height:56px;padding:12px;font-size:.9rem;display:flex}.install-menu-example span{font-size:25px}.install-finish{background:#f4f6fb;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:18px;font-size:.8rem;display:flex}.install-help{color:#596275;border-top:1px solid #dce0ea;margin-top:32px;padding-top:20px;font-size:.9rem}.install-back{margin-top:16px}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #aa8df4}@media (width<=480px){.install-steps li{gap:10px;padding:16px 12px}.install-banner{gap:8px;padding:12px}.install-banner img{width:32px;height:32px}.install-banner strong{font-size:.8rem}.install-banner span{font-size:.72rem}.install-banner a{font-size:.8rem}.install-guide{padding-top:24px}.install-devices button{font-size:.85rem}}.study-shell{color:#f4f6fb;width:100%;height:100dvh;min-height:360px;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:#10131c;flex-direction:column;margin:0;display:flex;overflow:hidden}.study-header{z-index:5;background:#181c29;border-bottom:1px solid #303548;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:8px 20px;display:flex}.study-brand{align-items:center;gap:16px;min-width:0;display:flex}.study-brand>a{color:#c5baff;letter-spacing:.04em;font-size:1.15rem;font-weight:800;text-decoration:none}.study-brand>span{color:#9da7bf;font-size:.78rem}.study-actions{align-items:center;gap:10px;display:flex}.study-actions>a{color:#d4ceff;white-space:nowrap;font-size:.8rem}.study-actions>button,.study-menu>summary{color:#f4f6fb;cursor:pointer;white-space:nowrap;background:#242a3d;border:1px solid #454c66;border-radius:8px;min-height:36px;padding:8px 12px;font-size:.82rem}.study-menu{position:relative}.study-menu-panel{color:#1d2433;background:#fff;border:1px solid #dce0ea;border-radius:12px;width:min(380px,100vw - 24px);max-height:70dvh;padding:20px;position:absolute;top:calc(100% + 12px);right:0;overflow:auto;box-shadow:0 12px 40px #0006}.study-menu-panel .install-banner{flex-wrap:wrap;margin-top:18px}.study-menu-panel .legal-footer{margin-top:16px}.study-notices:empty{display:none}.study-notices{flex-shrink:0;font-size:.85rem}.study-notices>p{margin:0;padding:8px 20px}.study-stage{flex:1;width:100%;min-height:0;display:flex}.study-shell .flashcard{width:100%;height:100%;min-height:0;box-shadow:none;background:#10131c;border:0;border-radius:0;flex-direction:column;display:flex}.study-shell .card-face{color:#f4f6fb;background:radial-gradient(#34305c,#151928);flex:1;gap:16px;min-height:0}.study-shell .card-face .phrase{font-size:clamp(2.6rem,7vw,6rem);line-height:1.15}.study-shell .card-face[aria-expanded=true]{background:#1c2030;flex:none;justify-content:center;align-items:center;gap:18px;min-height:54px;padding:9px 20px;display:flex}.study-shell .card-face[aria-expanded=true] .phrase{letter-spacing:-.02em;font-size:clamp(1.1rem,2.2vw,1.8rem)}.study-shell .card-face .eyebrow{color:#b8a9ff}.study-shell .card-face .card-action{color:#aeb7d0;font-size:.75rem}.study-shell .card-details{flex-direction:column;flex:1;min-height:0;padding:0;display:flex}.study-shell .card-details[hidden]{display:none}.study-shell .player-layout{flex-direction:column;flex:1;min-height:0;display:flex}.study-shell .video-panel{background:#000;border-radius:0;flex:1;order:1;grid-template-rows:minmax(0,1fr) auto;width:100%;min-height:0;display:grid}.study-shell .video-frame{aspect-ratio:auto;width:100%;height:100%;min-height:0}.study-shell .video-frame iframe{display:block}.study-shell .subtitles{background:#191e2d;flex:none;order:2;grid-template-columns:1fr 1fr;gap:20px;margin:0;padding:12px 24px;display:grid}.study-shell .subtitles div{background:0 0;border-radius:0;min-width:0;padding:0}.study-shell .subtitles dt{color:#a89aff;font-size:.65rem}.study-shell .subtitles dd{margin:4px 0 0;font-size:clamp(.9rem,1.25vw,1.15rem);line-height:1.5}.study-shell .carousel-controls{background:#171b28;flex-shrink:0;justify-content:center;align-items:center;gap:20px;padding:6px 16px;font-size:.8rem;display:flex}.study-shell .carousel-controls button,.study-card-controls button{color:#e5e8f4;cursor:pointer;background:#262d42;border:1px solid #454e6a;border-radius:8px;min-height:34px;padding:7px 14px}.study-shell .video-meta{color:#8995ae;text-align:center;white-space:nowrap;text-overflow:ellipsis;background:#171b28;flex-shrink:0;padding:4px 12px;font-size:.68rem;overflow:hidden}.study-card-controls{color:#b6bfd3;background:#1c2030;border-top:1px solid #303548;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 20px;font-size:.8rem;display:flex}.study-locked{text-align:center;color:#c5cce0;background:#24283a;margin:0;padding:6px 16px;font-size:.75rem}.study-shell .player-error{padding:8px 16px;font-size:.8rem}.study-shell .player-error p{margin:0 0 6px}.study-shell .target-word{color:#f0eaff;background:#4b3d7e}.study-shell .current-word .target-word{color:#171923;background:#ffdd73}.study-shell .current-word{color:#171923}@media (height<=600px) and (orientation:landscape){.study-header{min-height:40px;padding:4px 12px}.study-brand>span{display:none}.study-shell .card-face[aria-expanded=true]{min-height:36px;padding:4px 12px}.study-shell .card-face[aria-expanded=true] .phrase{font-size:1.05rem}.study-shell .subtitles{gap:12px;padding:6px 14px}.study-shell .subtitles dt{display:none}.study-shell .subtitles dd{margin:0;font-size:.85rem}.study-shell .carousel-controls{gap:12px;padding:3px 10px}.study-shell .video-meta{display:none}.study-card-controls{padding:4px 12px;font-size:.72rem}.study-shell .carousel-controls button,.study-card-controls button{min-height:30px;padding:4px 12px}.study-shell .card-face .card-action{display:none}}@media (width<=600px) and (orientation:portrait){.study-shell{height:auto;min-height:100dvh;overflow:visible}.study-header{gap:8px;padding:8px 12px}.study-brand>span{display:none}.study-brand>a{font-size:1rem}.study-actions{gap:6px}.study-actions>button,.study-menu>summary{padding:8px}.study-shell .flashcard{min-height:calc(100dvh - 110px)}.study-shell .card-face[aria-expanded=true]{flex-wrap:wrap;gap:6px 12px}.study-shell .subtitles{grid-template-columns:1fr;gap:10px;padding:14px 16px}.study-shell .video-panel{flex:none}.study-shell .video-frame{aspect-ratio:16/9;height:auto;min-height:200px}.study-shell .carousel-controls{gap:12px;padding:8px}.study-card-controls{padding:10px 12px}.study-shell .card-details{justify-content:center}}.study-shell .video-panel{display:block;position:relative}.study-shell .player-error{z-index:1;background:#0a0c14e6;position:absolute;bottom:0;left:0;right:0}@media (height<=600px) and (orientation:landscape){.study-header{min-height:34px;padding:2px 12px}.study-actions>button,.study-menu>summary{min-height:30px;padding:5px 8px;font-size:.75rem}.study-shell .card-face[aria-expanded=true]{min-height:30px;padding:3px 12px}.study-shell .subtitles{padding:5px 14px}.study-shell .subtitles dd{font-size:.8rem}}
