.reading-prose{overflow-wrap:anywhere}.reading-prose strong{font-weight:680;color:var(--ink, #28242e)}.reading-prose .reading-keyword{color:#6945ac;font-weight:650}.reading-prose .reading-highlight{color:inherit;background:none;text-decoration:underline;text-decoration-color:#dfd0ef;text-decoration-thickness:7px;text-underline-offset:-3px;text-decoration-skip-ink:none}.reading-prose .reading-underline{text-decoration:underline;text-decoration-color:#b9adca;text-decoration-thickness:2px;text-underline-offset:5px;text-decoration-skip-ink:auto}.reading-prose .reading-dots{text-emphasis:filled dot #8564b9;text-emphasis-position:under right;-webkit-text-emphasis:filled dot #8564b9;-webkit-text-emphasis-position:under right}.reading-prose .reading-italic{color:#62596c;font-style:italic}.reading-prose .reading-short{white-space:nowrap}.reading-prose blockquote{font-style:normal}.reading-prose .reading-role{padding:5px 0 5px 17px;border-left:3px solid #d8c9e8;margin:28px 0}.reading-prose .reading-role-principle{border:0;border-radius:16px;background:#f5f1fa;padding:20px 22px}.reading-prose .reading-role-boundary{border-left-color:#9e8cae}.reading-annotation-label{display:block;font-size:14px;line-height:1.5;font-weight:650;color:#76618e;margin-bottom:8px;letter-spacing:.04em}.reading-prose a{color:#6843ac;font-weight:550;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.reading-prose a:focus-visible{outline:2px solid #7850be;outline-offset:4px;border-radius:2px}.reading-prose.reading-summary{margin:18px 0 26px;padding:18px 20px;background:#f7f4fb;border-radius:16px}.reading-prose.reading-summary>:first-child,.reading-prose.reading-next>:first-child,.reading-prose.reading-item>:first-child{margin-top:0}.reading-prose.reading-summary>:last-child,.reading-prose.reading-next>:last-child,.reading-prose.reading-item>:last-child{margin-bottom:0}.reading-prose.reading-next{border-left:3px solid #b89ad9;padding:4px 0 4px 17px;margin:26px 0 22px}.feedback .reading-feedback-list{list-style:none;padding:0;display:grid;gap:17px;margin:12px 0 28px}.reading-feedback-list>li{display:grid;grid-template-columns:19px minmax(0,1fr);gap:10px;align-items:start}.reading-feedback-list>li>svg{margin-top:7px;color:#8a6aaf}.reading-feedback-list.reading-adjustments>li>svg{color:#766780}.feedback .reading-feedback-list .prose{font-size:inherit}.feedback .reading-evidence{font-style:normal;border-left:2px solid #d7cce3}.feedback .reading-evidence .prose{font-size:inherit}@media(max-width:380px){.reading-prose .reading-role-principle,.reading-prose.reading-summary{padding:17px 16px;border-radius:14px}.reading-prose .reading-role{margin-block:24px}}@font-face{font-family:Elocen Newsreader;src:url(/brand/Newsreader.ttf) format("truetype");font-style:normal;font-weight:200 800;font-display:swap}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-synthesis:none;color:#25232d;background:#eeedf2;font-size:16px;--purple: #7050c7;--purple-dark: #6040b1;--soft: #f1ebfa;--line: #eae7f0;--muted: #746c80;line-height:1.65;--page: #fcfbfe;--surface: #fff;--card-line: #ece8f2;--text: #25232d;--focus: #b39be3;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}html{scroll-padding-top:calc(80px + env(safe-area-inset-top));scroll-padding-bottom:100px}button,input,textarea{font:inherit}a{color:var(--purple-dark);text-decoration:none}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b6a2f1;outline-offset:3px}button svg,a svg,summary svg{flex-shrink:0}svg{vertical-align:middle}h1,h2,h3,p{margin-top:0}h1{font-size:26px;line-height:1.45;letter-spacing:-.55px;margin-bottom:24px;text-wrap:pretty;font-weight:650}h2{font-size:20px;line-height:1.45;margin-bottom:16px;font-weight:650;letter-spacing:-.25px}h3{font-size:18px;line-height:1.5;margin-bottom:8px;font-weight:600;text-wrap:pretty}p{margin-bottom:18px}ul,ol{padding-left:1.35em}li{margin:8px 0}.shell{max-width:780px;min-height:100dvh;background:var(--page);margin:auto;padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.shell:has(>.bottom-nav){display:flex;flex-direction:column;padding-bottom:0}.pad{padding:28px 22px 40px}.home-content{padding-bottom:36px;padding-top:25px}.brand{display:flex;align-items:center;gap:12px;margin-bottom:27px;font-size:24px}.brand-lockup{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;color:var(--text);line-height:1}.brand-mark{display:block;width:30px;height:30px;flex-shrink:0}.brand-wordmark{font-family:Elocen Newsreader,Georgia,serif;font-size:35px;font-weight:550;font-variation-settings:"opsz" 60;letter-spacing:-1.2px;line-height:1.15}.login-brand{margin-bottom:28px}.brand-loading{display:flex;flex-direction:column;align-items:center;gap:20px}.brand-loading p{font-size:16px;margin:0}.brand>a{margin-left:auto;display:grid;place-items:center;background:#f0edf6;border-radius:50%;width:44px;height:44px;color:#68577d}.hero{background:var(--purple);border-radius:25px;padding:23px 23px 21px;color:#fff;position:relative;overflow:hidden;box-shadow:0 8px 22px #60409510}.hero-label{font-size:14px;color:#f0e9ff;margin-bottom:12px;line-height:1.5}.hero h2{max-width:calc(100% - 36px);font-size:26px;margin-bottom:12px;font-weight:650;line-height:1.35;letter-spacing:-.5px;position:relative;z-index:1}.hero p{max-width:100%;margin-bottom:23px;color:#f4eefe;font-size:15px;line-height:1.65;position:relative;z-index:1}.hero-art{position:absolute;right:18px;top:28px;width:68px;height:68px;opacity:.28;pointer-events:none;color:#e7dafa}.hero-art svg{width:68px;height:68px;position:absolute;transform:rotate(-10deg)}.hero-long h2{max-width:100%}.hero-long .hero-art{display:none}.primary{display:flex;align-items:center;justify-content:center;gap:12px;min-height:52px;width:100%;border-radius:14px;background:var(--purple);color:#fff;font-weight:600;padding:12px 18px;font-size:16px;text-align:center;line-height:1.5}.primary:hover{background:var(--purple-dark)}.primary.inverted{color:var(--purple-dark);background:#fff}.secondary{background:var(--soft);color:var(--purple-dark);min-height:48px;padding:12px 20px;border-radius:14px;font-weight:600;font-size:16px}.section{margin-top:30px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.section-heading h2{margin:0}.section-more{display:inline-flex;align-items:center;gap:2px;min-height:44px;font-size:14px;color:var(--muted);white-space:nowrap}.section-more svg{width:16px}.title-phrase{display:inline-block;max-width:100%}.home-content>h1{font-size:25px;margin-bottom:21px}.home-content .primary.inverted{min-height:50px}.daily-card{display:flex;align-items:center;gap:14px;padding:18px 16px;border:1px solid var(--card-line);border-radius:19px;background:var(--surface);color:inherit}.daily-icon{width:42px;height:48px;display:grid;place-items:center;flex-shrink:0;border-radius:12px;background:var(--soft);color:#7958b9}.daily-icon svg{width:22px;height:22px;stroke-width:1.7}.daily-card>div{flex:1;min-width:0}.daily-card h3{font-size:16px;line-height:1.5;margin:0 0 5px}.daily-card p{font-size:14px;line-height:1.6;margin:0;color:var(--muted);text-wrap:pretty}.daily-card>svg{width:17px;color:#9d94a7}.daily-card:hover{border-color:#d8cbed}.card-list{display:grid;gap:12px}.course-card{display:flex;align-items:center;gap:15px;background:var(--surface);border:1px solid var(--card-line);border-radius:19px;padding:17px 16px;color:inherit;box-shadow:0 2px 5px #30214302}.course-card:hover{border-color:#d8cbed}.course-card>div{flex:1;min-width:0}.course-card h3{margin:0 0 5px;font-size:17px;line-height:1.5;letter-spacing:-.3px}.course-card p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.course-card>svg{color:#9d94a7;width:17px}.book-cover{flex-shrink:0;display:grid;place-items:center;width:55px;height:74px;background:#ece4fa;border-left:4px solid #c7b2e7;border-radius:5px 12px 12px 5px;color:#7453b5;box-shadow:inset -2px 0 #ddd0ef}.book-cover svg{width:25px;height:25px;stroke-width:1.7}.course-card:nth-child(2n) .book-cover,.book-cover.secondary-cover{background:#eeebf4;border-left-color:#c7bdd8;color:#7d7097;box-shadow:inset -2px 0 #e0daea}.rows>.row:last-child{border-bottom:0}.practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.scenario{padding:18px 16px;background:#f0ebf8;border-radius:19px;color:inherit;border:1px solid #e9e1f3;min-height:155px}.scenario:nth-child(2){background:#f2f1f7;border-color:#eae8f0}.scenario>svg{color:#7352b0;background:#e4daf4;padding:8px;box-sizing:content-box;border-radius:11px;margin-bottom:15px;width:20px;height:20px;stroke-width:1.7}.scenario h3{font-size:17px;line-height:1.4;margin-bottom:6px}.scenario p{color:var(--muted);margin:0;font-size:14px;line-height:1.6;text-wrap:pretty}.bottom-nav{margin-top:auto;flex-shrink:0;position:sticky;bottom:0;background:#fffffff7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);padding:10px 14px max(13px,env(safe-area-inset-bottom));z-index:5}.bottom-nav a{display:flex;flex-direction:column;gap:5px;align-items:center;padding:5px 0;color:#827a8d;font-size:13px;min-height:49px;line-height:1.3}.bottom-nav a.active{color:var(--purple);font-weight:600}.top{height:66px;padding:0 20px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:8;gap:10px}.top>span{font-size:15px;font-weight:600}.back{display:flex;align-items:center;gap:4px;min-height:44px;font-size:15px}.pause{justify-self:end;display:flex;align-items:center;min-height:44px;font-size:15px}.eyebrow{font-size:14px;color:var(--muted);margin-bottom:10px;display:flex;align-items:center;gap:7px}.lead{font-size:16px;color:var(--muted);margin-bottom:25px;line-height:1.75}.course-heading h1{margin-bottom:14px}.large-icon{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;color:var(--purple);background:var(--soft);margin-bottom:22px}.goals{list-style:none;padding:0;margin:0 0 28px}.goals li{display:flex;align-items:flex-start;gap:11px;margin:15px 0;line-height:1.7}.goals svg{color:var(--purple);flex-shrink:0;margin-top:3px}.rows{border:1px solid var(--card-line);border-radius:18px;background:var(--surface);padding:0 16px;overflow:hidden}.row{display:flex;align-items:center;gap:12px;min-height:68px;padding:17px 0;border-bottom:1px solid var(--line);color:inherit}.row>span:not(.num):not(.record-mark){flex:1;min-width:0}.row>svg:last-child{color:#8c809e;width:19px}.row small{display:block;font-size:14px;color:var(--muted);margin-top:5px;line-height:1.6}.num{min-width:27px;font-size:15px;color:#8870ac;align-self:flex-start;padding-top:2px}.reading{font-size:18px;line-height:1.9;background:var(--surface)}.reading h1{font-size:27px;margin-bottom:28px;line-height:1.5}.prose{overflow-wrap:anywhere}.prose p{margin-bottom:22px}.prose h2{margin:34px 0 16px;font-size:22px;line-height:1.5}.prose h3{margin:28px 0 15px;font-size:19px;line-height:1.6}.prose h4{font-size:18px;margin:24px 0 14px}.prose blockquote{background:#f6f2fb;border-left:3px solid #c7b2e7;padding:16px 18px;margin:24px 0;color:#4d415d;border-radius:0 14px 14px 0}.prose blockquote p:last-child{margin-bottom:0}.prose strong{font-weight:600;color:#3b304c}.prose a{text-decoration:underline;text-underline-offset:3px}.prose hr{border:0;border-top:1px solid var(--line);margin:32px 0}.prose pre{white-space:pre-wrap;background:#f4f2f8;padding:18px;border-radius:14px;font-size:15px}.prose table{display:block;width:100%;overflow:auto;border-collapse:collapse;font-size:16px;margin:24px 0;line-height:1.7}.prose th,.prose td{border:1px solid var(--line);padding:12px;text-align:left;min-width:115px;vertical-align:top}.prose th{background:#f3eff9}.ask-row{border:1px solid var(--card-line);border-radius:16px;padding:16px 18px;display:flex;gap:12px;align-items:center;font-size:16px;margin:32px 0 18px;background:var(--surface)}.ask-row span{flex:1}.disclosure{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:26px 0;font-size:16px}.disclosure+.disclosure{border-top:0;margin-top:-26px}.disclosure>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:60px;padding:15px 0;color:#665775;list-style:none;font-size:16px;font-weight:500}.disclosure summary::-webkit-details-marker{display:none}.disclosure>summary>span{display:flex;gap:9px;align-items:center}.disclosure[open]>summary>svg:last-child{transform:rotate(180deg)}.disclosure>div,.disclosure>form{padding:10px 0 20px}.disclosure .row:last-child{border-bottom:0}.lesson-footer{border-top:1px solid var(--line);margin-top:36px;padding-top:22px;display:grid;gap:12px;text-align:center;font-size:16px}.lesson-footer>a:not(.primary){display:grid;place-items:center;min-height:44px;color:var(--muted)}.scenario-context{background:var(--surface);border:1px solid var(--card-line);border-radius:19px;padding:20px;margin:24px 0 28px}.scenario-context .prose{font-size:16px;line-height:1.85}.scenario-context .prose p:last-child{margin-bottom:0}.scenario-context .prose h3{font-size:18px;margin-top:20px}.scenario-context .prose blockquote{padding:14px;margin:16px 0}form{display:grid;gap:12px}label{font-size:16px;font-weight:600}input:not([type=radio]):not([type=checkbox]),textarea{display:block;width:100%;padding:14px 16px;border:1px solid #ded7e8;border-radius:15px;color:var(--text);background:#fff;font-size:16px;line-height:1.8;resize:vertical}textarea{min-height:126px;scroll-margin-block:20px 100px}input::placeholder,textarea::placeholder{color:#91899b}textarea:focus,input:focus{border-color:var(--purple);outline:2px solid #e5daf8;outline-offset:1px}.radio-group{display:flex;flex-wrap:wrap;gap:14px;border:0;margin:0 0 4px;padding:0}.radio-group legend{position:absolute;width:1px;height:1px;overflow:hidden}.radio-group label{font-size:15px;font-weight:400;display:flex;gap:6px;align-items:center;min-height:44px}.radio-group input{accent-color:var(--purple);width:17px;height:17px}.save-status{font-size:14px;line-height:1.65;color:var(--muted);margin:0 0 8px;min-height:23px}.help-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.help-actions button{padding:13px 10px;min-height:48px;border:1px solid var(--card-line);border-radius:14px;color:var(--purple-dark);background:var(--surface);font-size:15px}.help-content{background:#f5f1fa;border-radius:16px;padding:20px!important;margin:18px 0 5px}.help-content .prose p:last-child{margin:0}.center-link{min-height:48px;display:flex;align-items:center;justify-content:center;margin-top:24px;color:var(--muted);text-align:center}.notice{display:flex;align-items:flex-start;gap:10px;background:#f5f1fa;border:1px solid #e7dff1;border-radius:16px;padding:16px;margin:20px 0;color:#665574;font-size:15px;line-height:1.75}.notice>svg{flex-shrink:0;margin-top:4px}.notice p:last-child{margin:0}.notice strong{color:#4e3b60}.notice a{display:inline-flex;align-items:center;gap:5px;padding-top:4px}.notice-error{background:#fff5ef;border-color:#edd9cd;color:#8b4b2c}.notice-error strong{color:#8b4b2c}.muted{color:var(--muted);font-size:15px}.narrow{max-width:540px;margin:auto}.narrow form{gap:13px}.narrow form label:not(:first-child){margin-top:10px}.answer{margin:14px 0 28px;border-radius:18px;background:#f1ebf8;padding:19px 20px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:17px;line-height:1.85;color:#3d3545}.feedback{margin-top:30px;font-size:17px;line-height:1.8}.feedback h2{display:flex;gap:12px;align-items:flex-start;font-size:22px;margin-bottom:20px;line-height:1.5}.status-icon{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:#eee6fa;color:var(--purple)}.status-icon svg{width:20px}.feedback h3{margin-top:24px;font-size:18px}.feedback blockquote{margin:14px 0;padding:14px 16px;background:#f5f2f9;border-left:2px solid #c7b2e7;border-radius:0 12px 12px 0}.help-label{display:flex;align-items:flex-start;gap:7px;font-size:14px;color:var(--muted);margin:24px 0}.help-label svg{flex-shrink:0;margin-top:5px}.processing{text-align:center;background:var(--surface);border-radius:19px;padding:28px 20px;margin:24px 0;border:1px solid var(--card-line)}.processing h2{font-size:20px}.processing p{font-size:16px;color:var(--muted);margin-bottom:0}.pulse{display:block;width:28px;height:28px;border-radius:50%;border:3px solid #dfd3f6;border-top-color:var(--purple);margin:0 auto 18px;animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.action-list{display:grid}.action-list>a,.action-list>button{display:flex;align-items:center;justify-content:space-between;min-height:54px;text-align:left;color:var(--purple-dark);background:transparent;border-bottom:1px solid var(--line);padding:12px 0;line-height:1.6;gap:14px}.action-list>:last-child{border:0}.subtle-row{display:flex;justify-content:space-between;min-height:48px;align-items:center;font-size:15px;color:var(--muted)}.record-row strong{font-size:16px;font-weight:550}.record-mark{flex-shrink:0;display:grid;place-items:center;width:38px;height:42px;border-radius:12px;background:#eee7f8;color:var(--purple)}.profile-heading{display:flex;gap:16px;align-items:center;margin-bottom:28px}.profile-heading .large-icon,.profile-heading h1{margin:0}.profile-heading h1{font-size:25px}.profile-heading .eyebrow{margin:0}.empty{background:var(--surface);padding:28px 20px;border-radius:19px;text-align:center;color:var(--muted);border:1px solid var(--card-line);line-height:1.75}.empty svg{color:#ad95d2}.empty p{margin:14px 0 0}.logout{display:flex;align-items:center;gap:9px;background:transparent;color:var(--muted);padding:14px 0;min-height:48px;margin-top:28px;font-size:15px}.loading{min-height:100dvh;display:grid;place-items:center;color:var(--purple)}@media(min-width:700px){.shell{box-shadow:0 0 45px #33245608}.pad{padding:40px 54px 52px}.hero{padding:32px}.hero h2{font-size:28px}.hero-art{right:38px;top:35px}.hero .primary{width:240px}.hero p{margin-bottom:28px}.course-card{padding:22px}.bottom-nav{padding-left:48px;padding-right:48px}.top{padding:0 38px}.reading{padding-left:68px;padding-right:68px}.exercise,.feedback-page{padding-left:58px;padding-right:58px}.practice-grid{gap:20px}.scenario{padding:25px}.section{margin-top:38px}}@media(max-width:359px){.home-content>h1{font-size:22px}.daily-card{padding:16px 13px;gap:11px}.daily-card h3{font-size:15px}.section-heading h2{font-size:19px}.pad{padding:24px 18px 34px}h1{font-size:25px}.hero{padding:20px}.hero h2{font-size:23px}.hero-art{opacity:.24;right:12px}.course-card{gap:12px;padding:17px 13px}.course-card h3{font-size:16px}.book-cover{width:47px;height:67px}.scenario{padding:17px 14px}.scenario h3{font-size:16px}.top{padding:0 14px;gap:8px}.top>span{font-size:15px}.scenario-context{padding:16px}.reading{font-size:18px}.feedback h2{font-size:21px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}.draft-conflict{border:1px solid #d9cbe9;background:#f9f6fd;border-radius:18px;padding:20px;margin:24px 0}.draft-conflict h2{font-size:21px}.draft-conflict h3{font-size:16px}.draft-conflict .answer{font-size:16px;max-height:220px;overflow:auto}.draft-conflict .help-actions button{background:#fff}main h1[tabindex="-1"]:focus{outline:none}.history-toggle{display:block;margin:10px auto 0;min-height:44px;padding:8px 16px;color:var(--purple);background:transparent;border:0;font-size:14px}main[data-route-focus=true]:focus{outline:none}.reading-practice{margin:34px 0;scroll-margin-top:90px}.practice-inline{margin:12px 0 8px;width:fit-content}.reference-disclosure{margin-top:12px}.reference-disclosure>.prose{padding-top:8px}.reading-note{color:var(--muted, #716b79);line-height:1.7;margin:18px 0 26px}.completion-note{display:flex;gap:9px;align-items:center;color:var(--purple, #7046cf);line-height:1.6}.understanding-check{margin:36px 0;padding:24px 0;border-top:1px solid var(--line, #e9e6ee);border-bottom:1px solid var(--line, #e9e6ee)}.understanding-check h2{font-size:22px;margin:12px 0}.understanding-check p{line-height:1.8}.check-options{display:grid;gap:12px;margin:18px 0}.check-options button{text-align:left;white-space:normal;justify-content:flex-start;line-height:1.65;padding:15px 18px}.check-options button.selected{border-color:var(--purple, #7046cf);background:#f6f2fc}.check-feedback{padding:18px;background:#f8f6fb;border-radius:16px}.check-feedback p:last-child{margin-bottom:0}.top{height:calc(66px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.shell:not(:has(>.top))>.pad{padding-top:calc(28px + env(safe-area-inset-top))}.shell:not(:has(>.top))>.home-content{padding-top:calc(25px + env(safe-area-inset-top))}.shell.pad{padding-top:calc(28px + env(safe-area-inset-top))}@media(min-width:700px){.shell:not(:has(>.top))>.pad,.shell.pad{padding-top:calc(40px + env(safe-area-inset-top))}}.rp-app{position:fixed;top:var(--rp-offset, 0px);left:0;right:0;height:var(--rp-height, 100dvh);max-width:780px;margin:auto;background:var(--page);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.rp-header{display:flex;align-items:center;gap:6px;min-height:72px;padding:8px 16px;border-bottom:1px solid var(--line);background:#fff}.rp-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border-radius:50%;padding:0;color:#716482;background:transparent}.rp-icon:hover{background:var(--soft)}.rp-title{flex:1;min-width:0;padding:3px 4px;min-height:44px;text-align:left;background:none;color:var(--text)}.rp-title>span{display:flex;align-items:center;gap:7px;font-size:16px;font-weight:650;line-height:1.4}.rp-title small{display:block;font-size:12px;color:var(--muted);margin-top:4px}.rp-end{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:48px;background:none;padding:0 4px;font-size:14px;white-space:nowrap;color:var(--purple-dark)}.rp-scroll{overflow:auto;min-height:0;overscroll-behavior:contain;padding:24px 24px 28px;scrollbar-width:thin;scroll-padding-block:18px}.rp-scroll:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.rp-history{display:grid;gap:20px}.rp-history-note{font-size:12px;color:var(--muted);text-align:center;margin:0 0 4px}.rp-exchange{display:grid;gap:16px}.rp-message{max-width:90%;border-radius:19px;padding:12px 16px;overflow-wrap:anywhere}.rp-message p{margin:0;white-space:pre-wrap;font-size:16px;line-height:1.65}.rp-user{justify-self:end;background:#eee7f8;border-bottom-right-radius:5px}.rp-partner{justify-self:start;background:#f1eff5;border-bottom-left-radius:5px}.rp-audio-button{display:inline-flex;gap:6px;align-items:center;min-height:44px;margin:3px 0 -7px;padding:0 4px 0 0;font-size:13px;background:transparent;color:var(--purple-dark)}.rp-turn-status,.rp-status{font-size:13px;color:var(--muted);line-height:1.65;margin:0;overflow-wrap:anywhere}.rp-login{display:block;min-height:44px;padding-top:10px}.rp-intro{padding-top:8px}.rp-course-label{display:block;text-align:center;color:var(--muted);font-size:13px}.rp-intro-mark{display:grid;place-items:center;width:60px;height:60px;margin:28px auto 18px;border-radius:22px;background:var(--soft);color:var(--purple)}.rp-intro h1{font-size:25px;text-align:center;margin:0 0 10px;line-height:1.4;letter-spacing:-.4px}.rp-intro-copy{font-size:15px;text-align:center;color:var(--muted);margin-bottom:26px}.rp-scenario{border:1px solid var(--line);border-radius:19px;padding:8px 16px;background:var(--surface)}.rp-scenario summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;min-height:44px;font-size:14px;font-weight:600;list-style:none}.rp-scenario p{font-size:14px;line-height:1.8;margin:6px 0 10px;color:#60566d}.rp-dock{position:relative;border-top:1px solid var(--line);padding:10px 20px max(12px,env(safe-area-inset-bottom));background:#fff;max-height:min(52dvh,420px);overflow-y:auto;scrollbar-width:thin}.rp-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:12px}.rp-mode{display:inline-flex;background:#f0edf6;padding:3px;border-radius:13px}.rp-mode button{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent;color:var(--muted);min-height:44px;padding:0 14px;border-radius:10px;font-size:14px}.rp-mode button[aria-pressed=true]{background:#fff;color:var(--purple-dark);box-shadow:0 1px 4px #34234612}.rp-tools{display:flex;align-items:center}.rp-dock .primary{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;min-height:52px;padding:12px 18px;border-radius:16px;margin:0;font-size:16px;font-weight:600}.rp-first-hint{font-size:12px;text-align:center;color:var(--muted);margin:8px 0 0}.rp-record-row{display:flex;align-items:center;gap:12px}.rp-cancel{background:#f0edf6;color:#61546f;border-radius:15px;display:flex;align-items:center;justify-content:center;gap:5px;min-height:52px;padding:0 14px;flex-shrink:0}.rp-stage{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:2px 4px 8px;font-size:14px;color:var(--purple-dark)}.rp-stage>span{display:flex;align-items:center;gap:9px}.rp-stage time{font-variant-numeric:tabular-nums;font-size:17px;white-space:nowrap}.rp-stage small{font-size:12px;color:var(--muted)}.rp-stage button{background:var(--soft);color:var(--purple-dark);width:44px;min-height:44px;border-radius:12px}.rp-record-dot{width:8px;height:8px;border-radius:50%;background:var(--purple);flex-shrink:0}.rp-spinner{animation:rp-spin 1.2s linear infinite;flex-shrink:0}@keyframes rp-spin{to{transform:rotate(360deg)}}.rp-text-form{display:flex;align-items:flex-end;gap:10px;background:#f8f6fb;border:1px solid var(--card-line);border-radius:18px;padding:9px}.rp-text-form textarea{border:0;box-shadow:none;background:transparent;color:var(--text);flex:1;min-width:0;width:100%;min-height:50px;max-height:140px;padding:5px 6px;margin:0;resize:none;font-size:16px;line-height:1.5;border-radius:8px}.rp-send{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;background:var(--purple);color:#fff;border-radius:50%}.rp-send:disabled{background:#d5cbe7;opacity:1}.rp-draft-note{margin-top:7px}.rp-dock-notice{display:flex;align-items:flex-start;gap:8px;border-radius:12px;background:#fff3ef;color:#8b4535;padding:10px 12px;font-size:14px;line-height:1.6;margin-bottom:8px}.rp-dock-notice svg{flex-shrink:0;margin-top:3px}.rp-recovery-action{font-size:13px;margin-bottom:8px}.rp-recovery-action p{margin:4px 0;color:var(--muted)}.rp-recovery-action button{background:var(--soft);color:var(--purple-dark);min-height:44px;border-radius:12px;padding:8px 14px;font-weight:600}.rp-new-reply{display:flex;align-items:center;justify-content:center;gap:6px;margin:0 auto 8px;padding:5px 16px;min-height:44px;background:var(--soft);color:var(--purple-dark);border-radius:25px;font-size:13px}.rp-view-switch{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:0;padding-inline:24px}.rp-view-switch button{min-height:48px;padding:8px 14px;color:var(--muted);background:transparent;font-size:14px;border-bottom:2px solid transparent}.rp-view-switch button[aria-pressed=true]{color:var(--purple-dark);border-bottom-color:var(--purple);font-weight:650}.rp-feedback{overflow-wrap:anywhere}.rp-feedback-symbol{display:grid;place-items:center;width:52px;height:52px;border-radius:18px;color:var(--purple);background:var(--soft);margin-bottom:16px}.rp-feedback h1{font-size:27px;letter-spacing:-.5px;line-height:1.35;margin:0 0 20px}.rp-feedback .prose{font-size:16px;line-height:1.8}.rp-feedback .prose p{margin:0 0 16px}.rp-improvements{margin:24px 0}.rp-improvements h2{font-size:17px;margin:0 0 12px}.rp-improvements ul{margin:0}.rp-next{border-left:3px solid #c7b2e7;padding:0 0 0 15px;margin:24px 0}.rp-next>span{color:var(--muted);font-size:13px;display:block;margin-bottom:6px}.rp-next .prose p{margin-bottom:0}.rp-feedback-details{border-top:1px solid var(--line)}.rp-feedback-details summary{list-style:none;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;font-weight:550;font-size:15px}.rp-feedback-details summary::-webkit-details-marker,.rp-scenario summary::-webkit-details-marker{display:none}.rp-feedback-details[open] summary svg{transform:rotate(180deg)}.rp-feedback-details .prose{color:#62576f;font-size:15px}.rp-feedback-details blockquote{padding:12px 15px;margin:4px 0 18px;border-left:2px solid #c7b2e7;background:#f5f1fa;font-size:15px;line-height:1.8}.rp-scope-note{margin:22px 0 4px}.rp-review-actions{display:grid;gap:4px}.rp-review-actions>a{min-height:44px;display:flex;align-items:center;justify-content:center;font-size:14px}.rp-review-actions>a.primary{font-size:16px}.rp-repeat{min-height:44px;padding:10px 14px;background:transparent;color:var(--purple-dark);font-size:14px}.rp-recovery{padding:16px;margin:20px 0 0;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.rp-recovery textarea{width:100%;margin:12px 0}.rp-recovery .secondary{font-size:14px}.rp-panel{border:1px solid var(--line);padding:0;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 48px);border-radius:24px;background:var(--surface);color:var(--text);box-shadow:0 24px 90px #26123e26}.rp-panel::backdrop{background:#21172f66}.rp-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 8px 24px}.rp-panel h2{font-size:20px;margin:0}.rp-panel-content{padding:8px 24px 24px;overflow-wrap:anywhere}.rp-panel-content>p{font-size:15px;line-height:1.8}.rp-panel-content .rp-status{font-size:13px}.rp-auto{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:60px;margin:0 0 18px;border-bottom:1px solid var(--line);font-size:15px;font-weight:500}.rp-auto input{appearance:none;position:relative;width:44px;height:27px;padding:0;border:0;flex-shrink:0;background:#ccc5d5;border-radius:18px;margin:0;cursor:pointer}.rp-auto input:after{content:"";position:absolute;height:21px;width:21px;border-radius:50%;background:#fff;top:3px;left:3px;box-shadow:0 1px 3px #0002}.rp-auto input:checked{background:var(--purple)}.rp-auto input:checked:after{left:20px}.rp-panel-leave{display:flex;align-items:center;min-height:44px;border-top:1px solid var(--line);padding-top:12px;font-size:14px}.rp-restart{margin:20px 0 16px;padding-top:20px;border-top:1px solid var(--line)}.rp-restart .secondary{width:100%;white-space:normal}.rp-restart p{margin:10px 0 0;line-height:1.7}.rp-panel audio{width:100%;margin-bottom:14px}.rp-panel details summary{min-height:44px;cursor:pointer;font-size:14px}@media(min-width:760px){.rp-app{border-inline:1px solid var(--line)}.rp-scroll{padding-inline:48px}.rp-header{padding-inline:28px}.rp-dock{padding-inline:36px}.rp-message{max-width:82%}}@media(max-width:350px){.rp-header{padding-inline:8px;gap:2px}.rp-title>span{font-size:14px}.rp-scroll{padding:20px 17px 24px}.rp-dock{padding-inline:14px}.rp-message{max-width:95%;padding:11px 14px}.rp-mode button{padding-inline:12px}.rp-feedback h1{font-size:24px}}@media(prefers-reduced-motion:reduce){.rp-spinner{animation:none}.rp-app *,.rp-panel *{scroll-behavior:auto}}.rp-dock .rp-asr-recovery .primary{background:var(--purple);color:#fff}.rp-asr-recovery p{margin:8px 0 0}.rp-rerecord{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:8px 12px;background:transparent;color:var(--purple-dark);font-size:14px}.rp-app{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.rp-header{padding-top:calc(8px + env(safe-area-inset-top))}.rp-dock{max-height:min(calc(var(--rp-height, 100dvh) * .6),420px)}.rp-panel{max-height:max(160px,calc(var(--rp-height, 100dvh) - 48px - env(safe-area-inset-top) - env(safe-area-inset-bottom)))}.profile-page{max-width:640px;margin:0 auto}.profile-page .lead{margin-bottom:28px}.profile-emblem{display:inline-flex;align-items:center;justify-content:center;color:var(--purple-dark);background:var(--soft);width:56px;height:56px;border-radius:18px;margin-bottom:24px;padding:13px}.profile-group{padding:28px 0;border-top:1px solid var(--line)}.profile-facts{margin:0}.profile-facts>div{padding:16px 0;border-bottom:1px solid var(--line)}.profile-facts>div:last-child{border-bottom:0}.profile-facts dt{color:var(--muted);font-size:14px;margin-bottom:6px}.profile-facts dd{margin:0;font-size:17px;white-space:pre-wrap;overflow-wrap:anywhere}.profile-caption{font-size:14px;color:var(--muted);line-height:1.7;margin:14px 0 22px}.profile-empty{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:24px;margin:28px 0}.profile-empty>svg{color:var(--purple);margin-bottom:18px}.profile-empty .center-link{margin-bottom:0}.profile-progress{display:flex;align-items:center;gap:18px;color:var(--muted);margin-bottom:25px}.profile-progress>div{display:flex;gap:6px;flex:1}.profile-progress i{flex:1;height:3px;border-radius:4px;background:var(--line)}.profile-progress i.active{background:var(--purple)}.profile-options{border:0;padding:0;margin:0 0 28px;min-width:0}.profile-option{display:flex;align-items:flex-start;gap:13px;padding:17px 18px;border:1px solid var(--line);border-radius:15px;background:var(--surface);margin:10px 0;cursor:pointer;font-weight:400;line-height:1.6}.profile-option.chosen{background:#f8f5fe;border-color:var(--purple)}.profile-option input,.profile-check input{width:19px;height:19px;margin:4px 0 0;flex:0 0 19px;accent-color:var(--purple)}.profile-option:has(input:disabled){opacity:.65}.profile-option span{overflow-wrap:anywhere}.profile-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px}.profile-actions .center-link{margin-top:4px}.profile-step-actions{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.profile-page .text-button,.personal-context .text-button{background:transparent;color:var(--purple-dark);min-height:44px;padding:8px 0;text-align:left}.profile-page .primary{min-height:52px}.profile-edit-field{margin:28px 0}.profile-edit-field label{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.profile-edit-field label span{color:var(--muted);font-size:14px;font-weight:400}.profile-check{display:flex;align-items:flex-start;gap:12px;margin:22px 0;font-weight:400}.profile-alert{background:#fff6f1;border:1px solid #e8d1c2;border-radius:14px;padding:16px 18px;margin:20px 0;color:#754a32;overflow-wrap:anywhere}.profile-status{padding:14px 18px;background:var(--soft);border-radius:14px;margin:20px 0}.profile-conflict{border:1px solid var(--line);padding:20px;border-radius:18px;margin:24px 0}.profile-management{padding-top:18px}.profile-group summary{cursor:pointer;min-height:44px}.profile-custom{margin-top:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.personal-context{margin:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0}.personal-context>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;color:var(--purple-dark);font-weight:500}.personal-context .context-body{padding:12px 0 8px}.personal-context .profile-facts{margin-bottom:20px}.personal-context .profile-facts dt{font-size:14px}.personal-context .profile-facts dd{font-size:16px}.personal-context textarea{margin-bottom:12px}.personal-context .profile-check{margin:12px 0;font-size:15px}.personal-context .context-scope{border:0;padding:0;margin:14px 0 24px}.personal-context .context-scope legend{font-size:15px;font-weight:600}.personal-context .context-existing{margin:0 0 16px}.personal-context .context-existing>summary,.context-evidence>summary,.context-preference>summary{min-height:44px;padding:8px 0;cursor:pointer}.personal-context .context-note{white-space:pre-wrap;overflow-wrap:anywhere}.personal-context .subtle-row{margin-top:16px}.context-obsolete{margin:20px 0;border-left:3px solid var(--purple);padding:14px 18px;background:var(--soft)}@media(max-width:360px){.profile-option{padding:15px 14px}.profile-empty{padding:20px}}.mentor-page{padding-bottom:36px}.mentor-page h1{margin-bottom:28px}.mentor-speaker{color:var(--muted);font-size:14px;font-weight:600;margin:0 0 10px}.mentor-question{margin:0 0 28px;padding:18px 20px;border-radius:18px;background:var(--soft);color:var(--text);font-size:17px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.mentor-response{margin-top:28px}.mentor-response>.reading-prose>:first-child{margin-top:0}.mentor-history{margin:0 0 28px}.mentor-history-turn{padding:22px 0;border-top:1px solid var(--line)}.mentor-history-turn:first-of-type{border-top:0}.mentor-history-turn .mentor-question{margin-bottom:20px}.mentor-history-source{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-top:8px;font-size:15px}.mentor-context-note{font-size:15px;line-height:1.7;color:var(--muted);padding-bottom:16px}.mentor-wait{display:flex;align-items:center;gap:10px;color:var(--purple-dark);font-size:16px;margin:20px 0 12px}.mentor-pulse{width:15px;height:15px;border:2px solid #ded4f2;border-top-color:var(--purple);border-radius:50%;animation:spin 1.2s linear infinite;flex-shrink:0}.mentor-wait-note{margin:0;color:var(--muted);font-size:15px;line-height:1.7}.mentor-alert{margin:20px 0;padding:18px;background:#f8f5fa;border:1px solid var(--line);border-radius:14px;font-size:16px}.mentor-alert p{margin:8px 0}.mentor-alert .text-button{display:inline-flex;align-items:center;gap:8px}.mentor-composer{margin-top:28px;padding-top:24px;border-top:1px solid var(--line);gap:14px}.mentor-composer textarea{min-height:112px;margin:0}.mentor-composer .personal-context{margin:0}.mentor-send-row{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap}.mentor-send-row .primary{width:auto;min-width:104px;min-height:46px;padding:11px 18px;margin:0}.mentor-send-row .text-button{margin-right:auto}.mentor-action-error{color:#8b4b2c;font-size:15px;margin:0}.mentor-back{display:flex;align-items:center;justify-content:center;gap:9px;min-height:48px;margin-top:24px}.mentor-restart{margin-top:24px}@media(min-width:760px){.mentor-page{padding-left:58px;padding-right:58px}}@media(prefers-reduced-motion:reduce){.mentor-pulse{animation:none}}.pwa-entry-section{margin:28px 0}.pwa-entry-section .row{border:1px solid var(--line);border-radius:18px}.pwa-page{max-width:620px;margin:auto}.pwa-back{width:fit-content;margin-bottom:28px}.pwa-brand-icon{border-radius:16px;display:block;margin-bottom:24px}.pwa-page h1{font-size:clamp(26px,6.6vw,32px);margin-bottom:14px}.pwa-page .lead{margin-bottom:30px}.pwa-install{border:1px solid var(--line);border-radius:20px;padding:24px 22px}.pwa-install h2,.pwa-update h2{font-size:19px}.pwa-steps{list-style:none;margin:0;padding:0;display:grid;gap:20px}.pwa-steps li{display:flex;align-items:flex-start;gap:12px;margin:0;font-size:16px;line-height:1.8}.pwa-steps svg{margin-top:4px;color:var(--purple);flex-shrink:0}.pwa-step-number{flex:0 0 22px;display:grid;place-items:center;margin-top:3px;height:24px;background:var(--soft);border-radius:7px;color:var(--purple-dark);font-size:14px;font-weight:650}.pwa-page .pwa-footnote{color:var(--muted);font-size:15px;line-height:1.7;margin:20px 0 0}.pwa-update{margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}.pwa-update p{font-size:16px;line-height:1.8}.pwa-update .secondary{width:auto;min-height:48px;display:inline-flex;align-items:center;gap:9px}.pwa-page .primary{display:flex;align-items:center;justify-content:center;gap:10px}.pwa-installed{display:flex;align-items:center;gap:10px;color:var(--purple-dark);background:var(--soft);padding:18px 20px;border-radius:16px}.pwa-update .pwa-notice{margin-top:18px;padding:14px 16px;border-radius:12px;background:var(--soft);color:var(--purple-dark);font-size:15px}.pwa-page .pwa-connectivity{margin-top:32px}
