/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:"Inter", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.block{display:block}.flex{display:flex}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{font-family:var(--font-sans);color:#293b35;font-synthesis:none;--green:#276557;--muted:#7a8580;--line:#e6eae3;--cream:#f7f8f4;background:#f7f8f4;font-size:14px;font-weight:400;line-height:1.65}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:#fff;border:1px solid #dce3db;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:550;transition:background .15s,transform .15s;display:inline-flex}button:hover{background:#f1f5ee}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #c19a50}a{color:var(--green);text-underline-offset:3px}h1,h2,h3,p{margin:0}h1{letter-spacing:.02em;font-size:29px;font-weight:650;line-height:1.5}h2{font-size:17px;font-weight:650}h3{font-size:14px;font-weight:600}p{color:#738079}svg{flex-shrink:0}input,textarea,select{color:#293b35;background:#fff;border:1px solid #dce3db;border-radius:8px;outline:none;width:100%;min-width:0;padding:11px 13px}input:focus,textarea:focus,select:focus{border-color:#5a8b72;box-shadow:0 0 0 3px #dfece3}textarea{resize:vertical;min-height:90px}input::placeholder,textarea::placeholder{color:#98a199}ruby{ruby-align:center}rt{font-family:var(--font-sans);letter-spacing:.03em;color:#74897b;font-size:.4em;font-weight:400}input[type=checkbox]{width:17px;height:17px;accent-color:var(--green)}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:30;overscroll-behavior:contain;background:#fcfdf9;flex-direction:column;width:235px;padding:33px 21px 22px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.sidebar>*{flex-shrink:0}.brand{align-items:center;gap:11px;text-decoration:none;display:flex}.brand-mark{background:var(--green);color:#fff9e8;border-radius:12px;place-items:center;width:43px;height:47px;font-family:serif;font-size:28px;display:grid}.brand strong{letter-spacing:2px;font-size:23px;line-height:1.2}.brand strong span{letter-spacing:1px;margin-left:4px;font-family:Georgia,serif;font-size:23px}.brand small{color:#8a9389;letter-spacing:1px;margin-top:5px;font-size:9px;display:block}.sidebar-label{color:#9aa397;letter-spacing:1.3px;margin:48px 13px 16px;font-size:9px}.nav-item{color:#758078;white-space:nowrap;background:0 0;border:0;justify-content:flex-start;gap:13px;width:100%;margin-bottom:7px;padding:12px 15px;font-size:13px;display:flex}.nav-item.active{color:#2e6856;background:#eaf0e4;font-weight:650}.nav-item.active:before{content:"";background:#557d55;border-radius:0 4px 4px 0;width:3px;height:22px;position:absolute;left:0}.nav-item b{background:#dde7d4;border-radius:5px;min-width:22px;margin-left:auto;padding:0 5px;font-size:11px}.sidebar-challenge{background:#f2f4eb;border:1px solid #e7ebdf;border-radius:11px;margin-top:55px;padding:20px 15px}.sidebar-challenge>svg{color:#7b8e64}.sidebar-challenge p{color:#59694e;margin:9px 0 3px;font-size:12px;font-weight:600}.sidebar-challenge small{color:#929b84;font-size:10px}.sidebar-challenge>span{letter-spacing:1px;color:#6b7b57;margin-top:8px;font-size:10px;display:block}.sidebar-challenge>span span{float:right;color:#a5ae96}.thin-track,.progress-track{background:#e3e9db;border-radius:6px;height:5px;margin-top:20px;overflow:hidden}.thin-track i,.progress-track i{background:#82986d;border-radius:6px;min-width:3px;height:100%;display:block}.settings-link{margin-top:auto;padding-top:30px}.local-note{border-top:1px solid var(--line);color:#84907e;padding:15px 10px 0;font-size:10px;line-height:1.8}.local-note small{color:#a4ab9d;margin-left:14px;font-size:9px;display:block}.status-dot{vertical-align:middle;background:#72945a;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.workspace{width:calc(100% - 235px);margin-left:235px}.topbar{border-bottom:1px solid var(--line);background:#fbfcf8;justify-content:space-between;align-items:center;height:78px;padding:0 42px;display:flex}.topbar>div{align-items:center;gap:15px;display:flex}.breadcrumb{color:#8f998f;align-items:center;gap:14px;font-size:11px;display:flex}.breadcrumb strong{color:#657360;font-weight:500}.top-status{gap:21px!important}.offline-label{color:#84927a;align-items:center;gap:6px;font-size:10px;display:flex}.avatar{color:#6a7c55;background:#e9eddf;border-radius:50%;place-items:center;width:29px;height:29px;font-size:11px;display:grid}.main-content{max-width:1450px;margin:auto;padding:38px 42px 20px}.page-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:27px;display:flex}.eyebrow{letter-spacing:1.7px;color:#7d9272;font-size:9px;font-weight:650;display:block}.page-heading h1{margin:8px 0}.page-heading p{color:#8a9386;letter-spacing:.02em;font-size:12px}.date-label{color:#8a9484;white-space:nowrap;align-self:flex-end;margin-bottom:9px;font-size:11px}.hero{background:#e9efdf;border:1px solid #dfe7d3;border-radius:16px;min-height:310px;margin-bottom:24px;padding:34px 38px;display:flex;position:relative;overflow:hidden}.hero-copy{z-index:2;position:relative}.hero h2{letter-spacing:.1em;color:#30583e;margin:15px 0 9px;font-size:31px;line-height:1.55}.hero p{color:#7a886d;letter-spacing:.03em;font-size:12px;line-height:1.9}.tag{white-space:nowrap;color:#688255;background:#edf3e8;border-radius:5px;align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:500;line-height:1.6;display:inline-flex}.tag.light{color:#829570;letter-spacing:.04em;background:#f7f9ee;border:1px solid #e0e8d2;padding:4px 10px;font-size:9px}.tag.blue{color:#638393;background:#edf3f6}.tag.orange{color:#ac814d;background:#fbf0df}.hero-button{color:#fffdf4;background:#2e6651;border:0;border-radius:7px;gap:28px;margin:22px 0 11px;padding:12px 20px;font-size:12px;box-shadow:0 4px 8px #426b4a14}.hero-button:hover,.primary:hover{background:#1f5445}.hero-meta{letter-spacing:.02em;color:#879379;font-size:9px;display:block}.hero-meta span{color:#a7b296;margin:0 7px}.hero-art{width:360px;height:100%;position:absolute;top:0;right:6%}.art-orbit{border:1px solid #d8e2c9;border-radius:50%;width:325px;height:325px;position:absolute;top:20px;left:30px}.art-orbit:after{content:"";border:1px dashed #d5dfc3;border-radius:50%;position:absolute;inset:20px}.art-sun{opacity:.65;background:#e7cf92;border-radius:50%;width:100px;height:100px;position:absolute;top:33px;right:10px}.art-card{border-radius:9px;width:183px;height:234px;position:absolute;top:45px;left:80px}.art-card.back{background:#f1f4e7;border:1px solid #d3ddc6;top:53px;left:56px;transform:rotate(-12deg)}.art-card.front{background:#fffdf5;border:1px solid #e7e8d8;flex-direction:column;align-items:center;padding:21px 10px;display:flex;transform:rotate(8deg);box-shadow:8px 16px 32px #78925b12}.art-card small{letter-spacing:2px;color:#b4b49a;font-size:8px}.art-kanji{letter-spacing:9px;color:#6b7e53;margin:9px 0 0 7px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:58px;line-height:1.4}.art-reading{letter-spacing:4px;color:#9ca58d;font-size:10px}.art-divider{background:#e3e6d5;width:100px;height:1px;margin:15px 0 12px}.art-card.front>span:last-of-type{letter-spacing:1px;color:#a1a78d;font-size:8px}.art-card svg{color:#9aab80;margin-top:11px}.floating-label{writing-mode:vertical-rl;color:#9ba88b;letter-spacing:6px;font-size:12px;position:absolute;top:130px;right:0}.art-spark{color:#b9c6a3;font-size:40px;position:absolute;top:180px;left:20px}.panel{border:1px solid var(--line);background:#fffefb;border-radius:12px;padding:23px}.stat-grid{grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:27px;display:grid}.stat{padding:19px 21px 17px}.stat>div{justify-content:space-between;align-items:center;display:flex}.stat>div>span:first-child{color:#8b9686;font-size:11px}.round-icon{color:#89966e;background:#f2f3e9;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.round-icon svg{width:18px;height:18px}.round-icon.green{color:#729267;background:#edf3e7}.round-icon.orange{color:#ce9f5b;background:#fcf0e0}.round-icon.blue{color:#79a3a3;background:#ebf3f3}.round-icon.purple{color:#a198b6;background:#f0edf6}.stat>strong{color:#344a3b;letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin-top:3px;font-size:32px;font-weight:600;line-height:1.4;display:block}.stat>strong small{letter-spacing:0;color:#9ca390;margin-left:7px;font-size:11px;font-weight:400}.stat>p{color:#a0a894;margin-top:7px;font-size:9px}.dashboard-grid{grid-template-columns:minmax(0,1.7fr) minmax(270px,1fr);gap:23px;display:grid}.dashboard-left,.dashboard-right{flex-direction:column;gap:22px;display:flex}.section-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px;display:flex}.section-title h2{color:#526448;align-items:center;gap:9px;font-size:14px;display:flex}.section-title h3{color:#66775a;font-size:12px}.text-button{color:#91a07d;background:0 0;border:0;gap:7px;padding:0;font-size:10px}.text-button:hover{color:var(--green);background:0 0}.rhythm-row{align-items:center;gap:13px;margin:7px 0 23px;display:flex}.rhythm-row h3{color:#526647;font-size:12px}.rhythm-row p{color:#9ba58f;margin-top:3px;font-size:10px}.rhythm-row>svg{color:#a6b496;margin-left:auto}.rhythm-row .round-icon{width:40px;height:42px}.new-card-progress{color:#8d9a7c;justify-content:space-between;font-size:10px;display:flex}.new-card-progress strong{color:#617951;font-weight:500}.new-card-progress strong span{color:#a3ac97}.progress-track{background:#f0f2e9;height:6px;margin:10px 0 11px}.small{font-size:10px}.muted{color:#95a08a}.section-divider{background:#edf0e7;height:1px;margin:22px 0}.activity-grid{grid-template-columns:repeat(14,1fr);gap:7px;display:grid}.activity-cell{aspect-ratio:1;color:#fff;background:#f0f3e9;border:1px solid #e8eddf;border-radius:4px;place-items:center;display:grid}.activity-cell>span{background:#c8d1bb;border-radius:50%;width:3px;height:3px}.activity-cell.filled,.activity-caption i.filled{background:#8da779;border-color:#8da779}.activity-cell.current{border-width:2px;border-color:#a8bb94}.activity-caption{color:#a6ae9b;justify-content:space-between;gap:10px;margin-top:13px;font-size:8px;display:flex}.activity-caption i{background:#eff2e7;border-radius:2px;width:7px;height:7px;margin:0 4px 0 7px;display:inline-block}.distribution-bar{border-radius:4px;gap:3px;height:8px;margin:25px 0 20px;display:flex;overflow:hidden}.daily{background:#8da67a}.work{background:#d4b77c}.broader{background:#9ab4b2}.topic-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.topic-grid>div{padding-left:13px;position:relative}.topic-dot{border-radius:2px;width:6px;height:6px;position:absolute;top:5px;left:0}.topic-grid strong{color:#8e9b80;font-size:10px;font-weight:500;display:block}.topic-grid b{color:#657955;margin-top:4px;font-size:20px;font-weight:500;display:block}.topic-grid b small{color:#a4ad99;margin-left:2px;font-size:9px}.topic-grid>div>span:last-child{color:#a7af9a;font-size:9px}.word-feature{background:#fafbf4;padding:23px 25px}.word-feature .section-title{margin-bottom:14px}.word-feature .section-title>svg{color:#b2bd99}.word-feature .eyebrow{letter-spacing:1.6px;color:#99a486;font-size:8px}.featured-japanese{text-align:center;color:#4a6040;margin:24px 0 3px;font-size:36px;font-weight:500;line-height:1.7;display:block}.word-feature>h3{text-align:center;color:#758367;font-size:13px}.word-feature>p{text-align:center;margin-top:4px;font-size:9px}.feature-example{background:#f3f5ec;border-radius:7px;margin:19px 0 16px;padding:15px 16px}.feature-example>span{color:#617951;font-size:15px;line-height:2;display:block}.feature-example>p{color:#a1ac92;margin-top:6px;font-size:10px}.word-feature>.text-button{color:#83956c;margin-top:3px}.tip-card{color:#a59c74;background:#f4f1e8;border:1px solid #ebe7da;border-radius:10px;gap:12px;padding:19px 18px;display:flex}.tip-card h3{color:#8e8666;margin:2px 0 8px;font-size:12px}.tip-card p{color:#a59e86;font-size:10px;line-height:1.9}.tip-card .round-icon{color:#ab9c6b;background:#ede8d8;flex-shrink:0;width:31px;height:31px}.seed-note{color:#a0aa92;gap:8px;padding:0 12px;font-size:9px;line-height:1.9;display:flex}.seed-note svg{margin-top:3px}.footer{color:#adb4a4;letter-spacing:.04em;justify-content:space-between;padding:30px 0 0;font-size:9px;display:flex}.footer>span:first-child{color:#96a18a}.footer span span{color:#bbc1b2;margin:0 7px}.mobile-menu,.mobile-only{display:none}.primary{background:var(--green);color:#fff;border-color:var(--green);padding:11px 19px;font-size:12px}.icon-btn{background:0 0;border:0;padding:4px}.banner{white-space:pre-wrap;background:#eff3e8;border:1px solid #dce5d1;border-radius:8px;align-items:center;gap:10px;margin-bottom:17px;padding:11px 14px;font-size:12px;display:flex}.banner span{flex:1}.banner.error{color:#994c36;background:#fff0eb;border-color:#edc9bb}.banner.success{color:#467151}.banner button{padding:3px 7px}.loading{flex-direction:column;align-items:center;gap:16px;padding:15vh 30px;display:flex}.empty{text-align:center;color:#8ca677;max-width:650px;margin:auto;padding:48px 20px 34px}.empty>svg{margin:auto auto 14px}.empty h2{margin-bottom:13px;font-size:21px}.empty p{font-size:13px;line-height:1.9}.center-actions{text-align:center;padding-bottom:28px}.review-wrap{max-width:790px;margin:0 auto}.review-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.review-panel{padding:32px 42px}.review-prompt{text-align:center;padding:10px 0 30px}.review-japanese{margin:30px 0 8px;font-size:57px;line-height:1.5;display:block}.review-chinese{margin:30px 0 15px;font-size:35px;font-weight:500}.field{color:#65755c;flex-direction:column;gap:8px;margin:20px 0;font-size:12px;font-weight:500;display:flex}.field>span{align-items:center;gap:7px;display:flex}.field input,.field textarea,.field select{font-size:14px;font-weight:400}.sentence-practice small{color:#929d87;font-size:10px}.sentence-practice .field{margin-bottom:6px}.reveal-button{width:100%;margin-top:24px}.answer-section{border-top:1px solid var(--line);margin-top:28px;padding-top:25px}.answer-heading{color:#648656;align-items:center;gap:8px;font-size:12px;display:flex}.answer-word{margin-top:18px;font-size:29px;display:block}.answer-section>h3{color:#657557;margin-top:7px;font-size:17px}.usage-note{font-size:12px}.source-link{align-items:center;gap:5px;margin-top:10px;font-size:10px;display:inline-flex}.rating-intro{margin:27px 0 17px}.rating-intro p{color:#8a9681;margin-top:6px;font-size:11px}.ratings{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.rating{flex-direction:column;gap:2px;padding:12px 6px}.rating strong{font-size:12px;font-weight:500}.rating span{opacity:.7;font-size:10px}.rating-1{color:#a16d5e;background:#fff3ef;border-color:#efdbd0}.rating-2{color:#a08b54;background:#fcf7e9;border-color:#e9e0c8}.rating-3{color:#618457;background:#eaf2e5;border-color:#d6e3cc}.rating-4{color:#52867a;background:#ebf4f2;border-color:#d6e4df}.review-footnote{color:#97a18e;justify-content:center;align-items:center;gap:6px;margin:20px 0;font-size:10px;display:flex}.library-tools{justify-content:space-between;align-items:center;gap:20px;margin-bottom:23px;display:flex}.search-field{border:1px solid var(--line);color:#9aa68d;background:#fffefb;border-radius:8px;align-items:center;gap:10px;min-width:250px;padding:2px 13px;display:flex}.search-field input{box-shadow:none;background:0 0;border:0;padding:9px 0;font-size:12px}.filters{flex-wrap:wrap;gap:5px;display:flex}.filters button{color:#8c987e;background:0 0;border-color:#0000;padding:7px 12px;font-size:11px}.filters button.selected{color:#58724d;background:#e7eddf}.word-list{flex-direction:column;gap:11px;display:flex}.library-word{padding:0;overflow:hidden}.word-summary{text-align:left;background:0 0;border:0;border-radius:0;justify-content:flex-start;gap:25px;width:100%;padding:24px}.word-summary>span[lang]{color:#536c46;min-width:140px;font-size:24px}.word-meaning{flex:1}.word-meaning strong{font-size:13px;font-weight:500;display:block}.word-meaning small{color:#99a38b;font-size:10px}.word-summary>svg{color:#9caa8d}.rotate{transform:rotate(90deg)}.word-details{border-top:1px solid var(--line);padding:0 26px 25px}.word-details>p{font-size:12px}.provenance{background:#f8f9f4;border-radius:7px;margin-top:20px;padding:15px;font-size:10px}.provenance a{align-items:center;gap:5px;display:flex}.provenance p{overflow-wrap:anywhere;margin-top:6px}.provenance small{color:#8c9981;margin-top:8px;display:block}.verification-form{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.verification-form>p{margin:7px 0 16px;font-size:12px}.checkbox{align-items:flex-start;gap:9px;margin:18px 0;font-size:12px;font-weight:400;display:flex}.checkbox input{flex-shrink:0;margin-top:3px}.button-row{flex-wrap:wrap;gap:9px;margin-top:15px;display:flex}.danger-text{color:#ab725b}.provenance-note{margin:22px 0;font-size:11px}.history-list{flex-direction:column;gap:13px;margin-bottom:20px;display:flex}.history-item>div{align-items:center;gap:20px;display:flex}.history-item>div>span[lang]{font-size:23px}.history-item>div>span:nth-child(2){color:#718264;flex:1;font-size:12px}.history-item>p{margin-top:12px;font-size:10px}.history-item>p.history-answer{color:#60754f;white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f7ef;border-radius:5px;margin-top:10px;padding:9px 12px;font-size:12px}.data-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:23px;display:grid}.data-side{flex-direction:column;gap:22px;display:flex}.data-side p{margin:14px 0;font-size:12px;line-height:1.9}.data-side p.small{font-size:10px}.full-width{width:100%}.segmented{background:#f0f3ea;border-radius:8px;gap:3px;margin-bottom:15px;padding:4px;display:flex}.segmented button{background:0 0;border:0;flex:1;padding:8px;font-size:12px}.segmented button.selected{color:var(--green);background:#fff;box-shadow:0 1px 5px #364b3612}.upload-zone{color:#8aa074;cursor:pointer;background:#f8faf3;border:1px dashed #bac9ae;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;margin-top:20px;padding:24px 10px;display:flex;position:relative}.upload-zone strong{margin:8px 0 2px;font-size:12px;font-weight:500}.upload-zone span{color:#a0ad92;font-size:10px}.upload-zone input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.upload-zone:focus-within{outline:3px solid #a9bd94}.code-input{tab-size:2;min-height:170px;font-family:ui-monospace,monospace;line-height:1.7;font-size:11px!important}.inline-error{color:#9e5742;white-space:pre-wrap;background:#fff0eb;border:1px solid #f0d5c8;border-radius:7px;margin-top:18px;padding:13px;font-size:11px}.import-preview{background:#f4f8ee;border:1px solid #cddcbd;border-radius:9px;margin-top:23px;padding:17px}.import-preview h3{color:#648253;align-items:center;gap:7px;display:flex}.import-preview p,.import-preview ul{margin-top:10px;font-size:12px}.import-preview ul{padding-left:20px;list-style:outside}.import-preview li{padding:4px 0}.import-preview>button{margin-top:15px}.lesson-guide>h2{margin:13px 0 12px;font-size:15px}.lesson-guide ol{color:#8a967d;padding-left:20px;font-size:11px;line-height:1.9;list-style:decimal}.lesson-guide li{margin-bottom:9px;padding-left:3px}.lesson-guide>button{margin-top:10px;font-size:11px}.lesson-guide code{color:#6f855b;font-size:10px}.settings-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:23px;display:grid}.settings-grid .panel>h2{margin-bottom:16px}.settings-grid .panel>p{margin:15px 0;font-size:12px;line-height:1.9}.settings-grid .panel>.round-icon{margin-bottom:15px}.settings-grid .tip-card{margin-top:22px}.settings-grid .tip-card>svg{margin-top:4px}.settings-grid .field .small{font-size:10px;font-weight:400}.settings-grid .field:first-child{margin-top:0}@media (width>=1500px){.main-content{padding-top:46px}.hero{min-height:340px}.hero h2{font-size:36px}.hero-art{transform-origin:50%;right:12%;transform:scale(1.08)}.stat>p{font-size:11px}.stat>div>span:first-child{font-size:12px}.section-title h2{font-size:16px}.small{font-size:11px}.feature-example>span{font-size:17px}}@media (width<=1150px){.sidebar{width:205px;padding:28px 15px}.workspace{width:calc(100% - 205px);margin-left:205px}.main-content{padding:30px 26px 18px}.topbar{padding:0 26px}.hero{padding:30px 28px}.hero-art{opacity:.85;right:-35px;transform:scale(.88)}.hero h2{font-size:28px}.hero p{font-size:11px}.stat-grid{gap:12px}.stat{padding:15px}.stat .round-icon{border-radius:8px;width:28px;height:28px}.stat>strong{font-size:29px}.stat>p{font-size:8px}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(235px,1fr);gap:17px}.panel{padding:20px}.date-label{display:none}.activity-grid{gap:5px}.activity-caption{flex-direction:column;gap:5px}.library-tools{flex-wrap:wrap}.library-word{padding:0}.data-grid{grid-template-columns:minmax(0,1.2fr) minmax(240px,1fr)}.topic-grid b{font-size:18px}.word-summary>span[lang]{min-width:120px}}@media (width<=900px){.sidebar{width:190px;padding:28px 12px}.workspace{width:calc(100% - 190px);margin-left:190px}.brand{gap:8px}.brand strong{font-size:20px}.brand strong span{font-size:21px}.brand small{letter-spacing:0;font-size:8px}.brand-mark{width:37px;height:43px}.sidebar-label{font-size:8px}.nav-item{gap:10px;padding-left:12px;font-size:12px}.hero-art{opacity:.6;right:-95px}.hero-copy{max-width:70%}.hero h2{letter-spacing:.03em;font-size:27px}.hero-meta{font-size:8px}.stat-grid{grid-template-columns:repeat(2,1fr)}.stat>p{font-size:9px}.dashboard-grid{grid-template-columns:1fr}.dashboard-right{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.word-feature{grid-row:span 2}.tip-card{padding:16px}.seed-note{padding:0}.activity-grid{grid-template-columns:repeat(14,1fr)}.activity-caption{flex-direction:row}.data-grid,.settings-grid{grid-template-columns:1fr}.word-summary{gap:15px;padding:22px 18px}.word-summary>span[lang]{min-width:100px;font-size:21px}.review-panel{padding:25px}.review-toolbar>.small{font-size:9px}.data-side{grid-template-columns:1fr 1fr;align-items:start;display:grid}.data-side .button-row>button{padding:8px}.footer{font-size:8px}.page-heading h1{font-size:25px}.page-heading p{font-size:11px}.page-heading{flex-wrap:wrap}}@media (width<=680px){.sidebar{width:235px;transition:transform .2s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-scrim{z-index:25;background:#263a3466;border:0;border-radius:0;position:fixed;inset:0}.workspace{width:100%;margin-left:0}.topbar{height:62px;padding:0 20px}.topbar>div{gap:9px}.mobile-menu{display:inline-flex}.breadcrumb{gap:8px;font-size:10px}.top-status{gap:12px!important}.offline-label{font-size:9px}.offline-label svg{width:12px}.avatar{width:26px;height:26px}.main-content{padding:26px 20px 20px}.page-heading{margin-bottom:23px}.page-heading h1{letter-spacing:0;font-size:25px;line-height:1.5}.page-heading p{max-width:90%;font-size:10px;line-height:1.9}.eyebrow{letter-spacing:1.3px;font-size:8px}.hero{border-radius:13px;min-height:306px;margin-bottom:18px;padding:27px 25px}.hero-copy{max-width:100%}.hero h2{letter-spacing:.05em;margin-top:17px;font-size:26px}.hero p{max-width:210px;font-size:10px}.hero-art{opacity:.5;transform-origin:100%;top:40px;right:-103px;transform:scale(.67)}.hero-art .art-orbit,.hero-art .floating-label{display:none}.hero-button{gap:20px;margin-top:20px;padding:11px 17px;font-size:11px}.hero-meta{font-size:8px}.hero-meta span{margin:0 4px}.hero .tag{font-size:8px}.stat-grid{gap:11px;margin-bottom:20px}.stat{padding:16px}.stat>div>span:first-child{font-size:10px}.stat>strong{margin-top:5px;font-size:29px}.stat>strong small{font-size:9px}.stat>p{font-size:8px}.dashboard-grid,.dashboard-left,.dashboard-right{gap:19px}.dashboard-right{display:flex}.panel{padding:20px}.section-title h2{font-size:14px}.activity-grid{gap:5px}.activity-caption{flex-direction:column;gap:6px;font-size:8px}.rhythm-row{gap:10px}.rhythm-row p{font-size:9px}.word-feature .featured-japanese{margin-top:23px;font-size:40px}.word-feature .feature-example{text-align:center}.tip-card p{font-size:11px}.seed-note{font-size:10px}.footer{align-items:center;gap:12px;font-size:8px}.footer>span:last-child{text-align:right;max-width:110px}.review-toolbar{gap:5px}.review-toolbar .tag{font-size:9px}.review-toolbar>.small{font-size:8px}.review-panel{padding:23px 20px}.review-japanese{font-size:48px}.review-chinese{font-size:30px}.ratings{grid-template-columns:repeat(2,1fr);gap:9px}.rating{padding:12px 8px}.review-footnote{align-items:flex-start;font-size:9px}.search-field{width:100%;min-width:0}.library-tools{gap:12px;margin-bottom:17px}.filters{gap:3px}.filters button{padding:6px 12px;font-size:10px}.library-word{padding:0}.word-summary{flex-wrap:wrap;gap:10px;padding:23px 17px 18px}.word-summary>span[lang]{min-width:105px;font-size:22px}.word-meaning{min-width:75px}.word-meaning strong{font-size:12px}.word-summary .tag{font-size:8px}.word-summary>svg{width:15px}.word-details{padding:0 18px 20px}.history-item>div{flex-wrap:wrap;gap:12px}.history-item>div>span[lang]{font-size:22px}.data-side{display:flex}.settings-grid,.data-grid{gap:18px}.page-heading>.primary{padding:9px 13px;font-size:11px}.field{font-size:11px}.field input,.field select,.field textarea{font-size:16px}.code-input{font-size:12px!important}.hero-meta{color:#768765}.small.muted{color:#89977d}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.page-heading p,.muted,.provenance p,.seed-note,.review-footnote,.usage-note{color:#718167}.stat>p,.hero-meta,.new-card-progress,.rhythm-row p,.feature-example>p,.topic-grid>div>span:last-child{color:#7a896e}.field,.rating-intro p,.verification-form>p,.data-side p,.settings-grid .panel>p{color:#68795e}@media (width>=681px){.stat>p,.small,.rhythm-row p,.topic-grid strong,.feature-example>p{font-size:11px}.offline-label,.nav-item{font-size:12px}}@media (width<=680px){.stat>p,.rhythm-row p,.hero-meta,.hero p,.small,.seed-note,.review-footnote,.page-heading p,.feature-example>p{font-size:11px}.hero-copy{max-width:90%}.hero-art{opacity:.25}.hero-meta{max-width:220px}.hero{min-height:326px}.dashboard-right{align-items:stretch}.hero-meta{text-wrap:balance;max-width:none}.sidebar:not(.open){visibility:hidden}}.lessons-page{gap:20px;min-width:0;display:grid}.lessons-page .page-heading{margin-bottom:0}.lessons-page .panel{min-width:0}.lesson-controls .field{max-width:720px}.lessons-page p,.lessons-page li{overflow-wrap:anywhere;line-height:2}.lessons-page ruby{ruby-align:center}.lessons-page rt{font-size:.58em}.lesson-overview li{margin:14px 0}.lesson-overview details{color:var(--muted,#647269);font-size:.85rem}.lessons-page summary{cursor:pointer;padding:10px 0;font-weight:650}.lesson-sections{flex-wrap:wrap;gap:8px;display:flex}.lesson-sections button[aria-current=step]{color:#fff;background:#276557;border-color:#276557}.lesson-prose{overflow-wrap:anywhere;line-height:2}.lesson-prose h4{margin:24px 0 12px;font-size:1.08rem;line-height:2}.lesson-prose p{margin:14px 0}.lesson-prose ul,.lesson-prose ol,.lesson-activity>details ol{padding-left:24px}.lesson-table{max-width:100%;overflow-x:auto}.lesson-table table{border-collapse:collapse;min-width:100%}.lesson-table td{border:1px solid #dbe4dd;padding:10px}.lesson-vocabulary{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.lesson-vocabulary article,.lesson-free-practice{background:#f7faf6;border:1px solid #dbe4dd;border-radius:14px;padding:20px}.lesson-vocabulary h4{font-size:1.2rem;line-height:2}.lesson-vocabulary p{margin:6px 0}.lesson-question{border-top:1px solid #dbe4dd;margin-top:24px;padding-top:20px}.lesson-question>h4{color:#276557}.lesson-answer{background:#f0f6f1;border-left:3px solid #276557;margin-top:14px;padding:16px}.teacher-material{background:#fff5df;border:1px solid #dfc184;border-radius:12px;margin-top:24px;padding:20px}.lesson-help{background:#f5f1e6;border-radius:10px;padding:14px}.lesson-dialogues article{margin:24px 0}.dialogue-turn{background:#f7faf6;border-radius:10px;gap:16px;margin:14px 0;padding:12px;display:flex}.dialogue-turn p{color:#647269;margin:8px 0 0}.lesson-file-button{cursor:pointer;border:1px solid #dbe4dd;border-radius:8px;padding:10px 16px;font-size:.875rem;position:relative}.lesson-file-button input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.lesson-file-button:focus-within{outline-offset:2px;outline:2px solid #276557}.lesson-free-practice{margin-top:20px}.lessons-page textarea{min-height:100px}@media (width<=700px){.lesson-vocabulary{grid-template-columns:minmax(0,1fr)}.lesson-sections button{flex:40%;font-size:.85rem}.lessons-page .button-row{flex-wrap:wrap}.lessons-page .button-row>button{white-space:normal;max-width:100%}.teacher-material,.lesson-answer{padding:12px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
