@import "https://fonts.googleapis.com/css2?family=Caveat:wght@500;600;700&family=Patrick+Hand&display=swap";
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) 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;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.isolate{isolation:isolate}.block{display:block}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--blue:#2864db;--ink:#192b48;--muted:#748198;--line:#e8edf4;--bg:#f5f7fb;--green:#229a77;--font-handwriting:"Patrick Hand", "Caveat", "Chalkboard SE", "Comic Neue", "Segoe Print", "Bradley Hand", cursive, sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #8eb4ff}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-1px;margin-bottom:10px;font-size:30px;line-height:1.3}h2{letter-spacing:-.5px;margin-bottom:12px;font-size:20px;line-height:1.4}h3{margin-bottom:4px;font-size:15px;line-height:1.5}p{margin-bottom:14px}ul,ol{padding-left:22px}strong{font-weight:700}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f0f3f8;border-radius:10px;padding:18px;font-size:12px}fieldset{border:1px solid var(--line);border-radius:10px}summary{cursor:pointer;padding:12px 0;font-weight:600}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:20;background:#fff;flex-direction:column;width:250px;padding:32px 20px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-1px;align-items:center;gap:10px;font-size:23px;font-weight:750;line-height:1.3;display:flex}.brand-mark{background:var(--blue);color:#fff;border-radius:11px;padding:10px;display:flex}.brand-sub{letter-spacing:1.6px;color:var(--muted);margin-top:5px;font-size:8px;font-weight:600;display:block}.nav-label{letter-spacing:1.6px;color:#9aa6b8;margin:44px 12px 14px;font-size:9px;font-weight:700}.sidebar nav{flex-direction:column;gap:5px;display:flex}.sidebar nav a{color:#69778e;border-radius:9px;align-items:center;gap:13px;padding:12px 14px;font-size:13px;font-weight:600;display:flex}.sidebar nav a.active,.sidebar nav a:hover{color:var(--blue);background:#edf3ff}.sidebar-bottom{margin-top:auto;padding-top:40px}.parent-card{color:#456bb4;background:#eef4ff;border-radius:12px;padding:20px 17px}.parent-card strong{color:#27477e;margin:10px 0 7px;font-size:13px;display:block}.parent-card p{font-size:11px;line-height:1.8}.parent-card a{align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.sidebar-foot{color:#9ca8b9;margin:18px 10px 0;font-size:9px;line-height:1.9}.main-wrap{width:calc(100% - 250px);margin-left:250px}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:20px;height:80px;padding:0 38px;display:flex}.topbar-label{color:#8a96a7;font-size:11px}.topbar-label span{color:#c0c8d5;margin:0 12px}.topbar-label strong{color:#4b5a70;font-weight:500}.topbar-right{align-items:center;gap:12px;display:flex}.topbar-right form{align-items:center;gap:6px;display:flex}.topbar-right select{max-width:160px;padding:6px 8px;font-size:11px}.family-badge{color:#6e7b8e;font-size:10px}.text-button{color:var(--blue);background:0 0;border:0;font-size:11px}main{max-width:1500px;min-height:80vh;margin:auto;padding:35px 38px 50px}.footer{color:#909caf;padding:0 38px 25px;font-size:10px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.page-heading p{margin-bottom:0}.eyebrow{letter-spacing:1.8px;color:var(--blue);margin-bottom:9px;font-size:9px;font-weight:750}.muted{color:var(--muted)}.small{font-size:12px}.center{text-align:center}.button{background:var(--blue);color:#fff;border:1px solid var(--blue);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:11px 18px;font-size:12px;font-weight:650;line-height:1.5;display:inline-flex}.button:hover{filter:brightness(.96);transform:translateY(-1px)}.button.secondary{color:#52617a;background:#fff;border-color:#dee5ef}.button.white{color:#255ecb;background:#fff;border-color:#fff}.small-button{padding:8px 14px;font-size:11px}.text-link{color:var(--blue);align-items:center;gap:7px;font-size:11px;font-weight:650;display:inline-flex}.hero{color:#fff;background:#235dce radial-gradient(at 88% 100%,#4179dc 0%,#0000 55%);border-radius:16px;min-height:308px;margin-bottom:26px;display:flex;position:relative;overflow:hidden}.hero-copy{z-index:2;flex:1;padding:30px 35px}.hero h2{letter-spacing:-.8px;margin:18px 0 12px;font-size:30px;line-height:1.4}.hero-copy>p{color:#d5e2fc;max-width:395px;margin-bottom:21px;font-size:12px;line-height:1.9}.pill{color:#3567be;letter-spacing:.3px;background:#edf3ff;border-radius:6px;align-items:center;gap:7px;padding:5px 9px;font-size:9px;font-weight:650;display:inline-flex}.pill.light{color:#eff5ff;letter-spacing:1.3px;background:#ffffff1c;border:1px solid #ffffff25;font-size:8px}.dot{background:#a3e1b8;border-radius:50%;width:5px;height:5px}.hero-meta{color:#d1e0fb;gap:22px;margin-top:18px;font-size:10px;display:flex}.hero-meta span{align-items:center;gap:6px;display:flex}.hero-art{flex-shrink:0;width:340px;position:relative}.orbit{border:1px solid #ffffff18;border-radius:50%;width:320px;height:320px;position:absolute;top:30px;left:0}.orbit-two{width:235px;height:235px;top:72px;left:42px}.art-card{border-radius:12px;position:absolute;box-shadow:0 15px 30px #143f8b30}.art-book{color:#275bb6;background:#e3efff;border-left:7px solid #afc9f6;flex-direction:column;justify-content:center;align-items:center;gap:15px;width:151px;height:193px;display:flex;top:70px;left:15px;transform:rotate(-12deg)}.art-book span{letter-spacing:1px;font-size:9px;line-height:1.8}.art-level{color:#b0792a;background:#fff7e6;width:118px;height:143px;padding:18px;top:66px;left:168px;transform:rotate(10deg)}.art-level>span{letter-spacing:1px;font-size:6px;font-weight:700}.art-level strong{color:#ce9643;font-size:55px;line-height:1.2;display:block}.art-dots{letter-spacing:3px;font-size:10px}.art-audio{color:#4270be;background:#fff;align-items:center;gap:10px;padding:14px 18px;font-size:9px;display:flex;top:235px;left:113px;transform:rotate(-5deg)}.art-spark{color:#e5bc69;font-size:35px;position:absolute;top:23px;left:140px}.art-star{color:#a9c9f8;font-size:45px;position:absolute;top:220px;left:280px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:28px;display:grid}.stat-card{border:1px solid var(--line);background:#fff;border-radius:12px;flex-direction:column;padding:20px;display:flex;position:relative}.stat-icon{border-radius:10px;justify-content:center;align-items:center;width:39px;height:39px;display:flex}.blue{color:#4077d9;background:#edf3ff}.green{color:#2e9d81;background:#eaf8f1}.orange{color:#cb9350;background:#fff5e8}.purple{color:#8b72cc;background:#f3eefd}.stat-card .stat-icon{margin-bottom:14px}.stat-label{color:#7b879a;font-size:11px}.stat-card strong{margin:4px 0;font-size:28px;line-height:1.4}.stat-card small{color:#97a2b3;font-size:9px}.panel{border:1px solid var(--line);background:#fff;border-radius:12px;padding:25px}.dashboard-grid{grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:22px;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;display:flex}.section-heading h2,.section-heading .eyebrow{margin-bottom:0}.lesson-list{margin-top:22px}.lesson-row{border:1px solid var(--line);border-radius:10px;align-items:center;gap:15px;margin:12px 0;padding:16px;display:flex}.lesson-row:hover{background:#fbfcff;border-color:#a7c1f3}.lesson-row>div{flex:1}.lesson-row h3{margin:3px 0;font-size:13px}.lesson-row p{color:#8995a6;margin:0;font-size:10px}.lesson-row .small{letter-spacing:.7px;font-size:8px}.lesson-number{color:#5880c9;background:#edf3ff;border-radius:9px;justify-content:center;align-items:center;width:43px;height:49px;font-size:17px;font-weight:650;display:flex}.lesson-number.done{color:var(--green);background:#e9f7ef}.lesson-row>svg{color:#8c9ab0}.progress-ring{border-radius:50%;width:148px;height:148px;margin:22px auto 14px;padding:11px}.progress-ring>div{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.progress-ring strong{font-size:32px}.progress-ring span{color:#929eb0;font-size:9px}.journey-panel>.muted{font-size:10px}.progress-track{background:#edf2f8;border-radius:8px;height:7px;overflow:hidden}.progress-track>span{background:#339a7c;border-radius:8px;height:100%;display:block}.soft-note{background:#f7f9fc;border-radius:9px;gap:10px;margin:20px 0;padding:14px;display:flex}.soft-note p{color:#8390a2;margin:0;font-size:10px;line-height:1.8}.parent-banner{background:#fffcf5;border:1px solid #f1eadc;border-radius:11px;align-items:center;gap:16px;margin-top:24px;padding:22px;display:flex}.parent-banner>div:nth-child(2){flex:1}.parent-banner h3{font-size:13px}.parent-banner p{color:#8d8c88;margin:0;font-size:11px}.empty-state{text-align:center;color:#6e7d94;background:#fff;border:1px dashed #d7e0ed;border-radius:12px;padding:55px 25px}.empty-state>svg{color:#668bd2;margin:0 auto 15px}.empty-state h3{color:var(--ink);font-size:18px}.empty-state p{max-width:490px;margin:12px auto 24px}.level-tabs{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:25px;display:grid}.level-tabs a{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:12px;padding:15px 20px;display:flex}.level-tabs a.active{background:var(--blue);color:#fff;border-color:var(--blue)}.level-tabs strong{font-size:23px}.level-tabs span{font-size:11px}.notice{color:#9b763d;background:#fffbf2;border:1px solid #f1dfb9;border-radius:9px;padding:15px 18px;font-size:12px;line-height:1.9}.week-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.week-card h2{margin-top:12px;font-size:18px}.week-card>p{color:#7d8ba0;font-size:12px}.week-sessions{border-top:1px solid var(--line);padding-top:10px}.week-sessions>a,.week-sessions>div{align-items:center;gap:9px;padding:10px 0;font-size:11px;display:flex}.week-sessions>a{color:var(--blue)}.week-sessions span:first-child{color:#9aa8ba;font-size:9px}.week-sessions span:last-child{margin-left:auto;font-size:9px}.green-pill{color:#2e987a;background:#eaf7f1}.two-columns{grid-template-columns:1fr 1fr;gap:23px;display:grid}.auth-panel{max-width:490px;margin:35px auto;padding:35px}.auth-panel>p{font-size:12px}.auth-panel>.text-link{margin-top:20px}.segmented{background:#f1f4f9;border-radius:8px;gap:3px;margin:25px 0;padding:4px;display:flex}.segmented button{color:#8793a5;background:0 0;border:0;border-radius:6px;flex:1;padding:10px;font-size:12px}.segmented button.selected{color:var(--blue);background:#fff;box-shadow:0 2px 5px #182d4d0a}.form-stack{flex-direction:column;gap:18px;margin-top:22px;display:flex}.form-stack label{color:#647289;flex-direction:column;gap:7px;font-size:12px;font-weight:600;display:flex}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #dde4ee;border-radius:7px;min-width:0;padding:11px 12px}textarea{resize:vertical;line-height:1.8}.form-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.message{border-radius:8px;margin:0;padding:12px;font-size:12px}.error{color:#b84e4e;background:#fff0f0}.success{color:#26845d;background:#eef9f3}.student-row{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:20px 0;display:flex}.student-row>div{flex:1}.student-row p{margin:0;font-size:11px}.avatar{color:#4878d4;background:#e9f0ff;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;font-size:20px;display:flex}.days{flex-wrap:wrap;gap:14px;display:flex}.days label{flex-direction:row;align-items:center}.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}.lesson-layout{grid-template-columns:minmax(0,1fr) 260px;gap:22px;display:grid}.lesson-sections{flex-direction:column;gap:20px;display:flex}.lesson-sections .panel{scroll-margin-top:20px}.lesson-aside{align-self:start;position:sticky;top:20px}.lesson-aside a{color:#6f8098;padding:8px 0;font-size:12px;display:block}.lesson-aside .button{color:#fff;margin-top:15px;display:flex}.section-number{color:var(--blue);margin-right:9px;font-size:11px}.vocab-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.vocab-item{border:1px solid var(--line);border-radius:8px;padding:15px}.vocab-item h3{font-size:16px}.vocab-item p{margin:6px 0;font-size:12px}.ipa{color:#9b8bb5;font-size:11px}.english-text{color:#34465f;white-space:pre-line;font-family:Georgia,Times New Roman,serif;font-size:17px;line-height:1.95}.formula{color:#3867b9;background:#eef4ff;border-radius:8px;margin:16px 0;padding:15px;font-weight:600}.quiz-container{flex-direction:column;gap:20px;display:flex}.quiz-question-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:24px 20px;transition:all .2s}.quiz-question-card fieldset{border:0;margin:0;padding:0}.quiz-legend-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.skill-pill{color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}.skill-vocabulary{color:#92400e;background:#fef3c7}.skill-grammar{color:#4338ca;background:#e0e7ff}.skill-reading{color:#065f46;background:#ecfdf5}.skill-listening{color:#9d174d;background:#fdf2f8}.question-num{color:#94a3b8;font-size:12px;font-weight:600}.question-prompt{color:#1e293b;margin:8px 0 16px;font-size:16px;font-weight:700;line-height:1.5}.quiz-options-group{flex-direction:column;gap:10px;display:flex}.quiz-option-item{border:2px solid var(--line);cursor:pointer;background:#f8fafc;border-radius:12px;justify-content:space-between;align-items:center;padding:14px 18px;font-size:15px;font-weight:500;transition:all .2s;display:flex}.quiz-option-item:hover{background:#fff;border-color:#93c5fd;transform:translateY(-1px)}.quiz-option-item input{accent-color:var(--blue);width:18px;height:18px;margin-right:12px}.option-text{flex:1}.option-selected{font-weight:600;color:#1d4ed8!important;background:#eff6ff!important;border-color:#3b82f6!important}.option-correct{box-shadow:0 0 0 1px #10b981;color:#065f46!important;background:#ecfdf5!important;border-color:#10b981!important;font-weight:700!important}.option-incorrect{color:#991b1b!important;background:#fef2f2!important;border-color:#ef4444!important;font-weight:700!important}.option-dimmed{opacity:.6}.option-status-badge{border-radius:999px;flex-shrink:0;padding:4px 10px;font-size:12px;font-weight:700}.correct-badge{color:#fff;background:#10b981}.incorrect-badge{color:#fff;background:#ef4444}.quiz-explanation-box{border-radius:10px;margin-top:16px;padding:14px 18px;font-size:14px;line-height:1.6}.box-correct{color:#166534;background:#f0fdf4;border:1px solid #86efac}.box-incorrect{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.explanation-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.explanation-icon{font-size:18px}.explanation-text{margin:0}.quiz-result-banner{background:linear-gradient(135deg,#ecfdf5 0%,#d1fae5 100%);border:2px solid #34d399;border-radius:16px;align-items:center;gap:20px;margin-top:20px;padding:24px 28px;display:flex;box-shadow:0 4px 20px #10b98126}.result-trophy-col{flex-shrink:0;font-size:44px}.result-text-col{flex:1}.result-text-col h3{color:#065f46;margin:0 0 6px;font-size:22px;font-weight:800}.result-text-col p{color:#047857;margin:0;font-size:14px}.submit-quiz-btn{margin-top:20px;padding:14px 28px!important;font-size:16px!important;font-weight:700!important}.student-finish-panel{text-align:center;background:linear-gradient(135deg,#eff6ff 0%,#e0e7ff 100%);border:2px solid #93c5fd;border-radius:16px;padding:32px 24px}.student-finish-panel h2{color:#1d4ed8;margin-bottom:8px;font-size:24px;font-weight:800}.student-finish-panel p{color:#3b82f6;max-width:500px;margin:0 auto;font-size:15px}.word-card{text-align:center;border:1px solid var(--line);background:linear-gradient(120deg,#f2f6ff,#fff);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:270px;padding:35px;display:flex}.word-card h2{color:var(--blue);font-size:34px}.word-card p{margin:6px 0}.card-controls{justify-content:center;align-items:center;gap:18px;margin:20px 0;display:flex}.card-controls button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 18px}.recording{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.recording audio{max-width:100%}.recording .message{width:100%}.resource-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.resource-grid h3{font-size:17px}.resource-grid p{color:var(--muted);font-size:12px}.skill-row{margin:20px 0}.skill-row>div:first-child{justify-content:space-between;margin-bottom:7px;font-size:12px;display:flex}.calendar-list{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.calendar-item{border:1px solid var(--line);background:#fff;border-radius:10px;padding:18px}.calendar-item time{color:var(--blue);margin-bottom:8px;font-weight:700;display:block}.calendar-item h3{font-size:12px}.note{border-top:1px solid var(--line);white-space:pre-wrap;padding:16px 0}.note time{color:var(--muted);font-size:10px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:14px}th{color:var(--muted);font-size:10px}.loading-dot{border:3px solid #dfe8f7;border-top-color:var(--blue);border-radius:50%;width:20px;height:20px;margin:0 auto 15px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width:1500px){.hero-art{margin-right:70px}.hero-copy{padding:38px 42px}.hero h2{font-size:34px}}@media (max-width:1200px){.sidebar{width:215px;padding:28px 14px}.main-wrap{width:calc(100% - 215px);margin-left:215px}main{padding:28px 25px}.topbar{padding:0 25px}.hero-art{transform-origin:100%;width:285px;transform:scale(.85)}.hero-copy{padding:28px}.hero h2{font-size:26px}.hero-copy>p{font-size:11px}.stat-card{padding:16px}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(245px,1fr)}.family-badge{display:none}.resource-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:980px){.sidebar{width:75px;padding:25px 12px}.brand>span:last-child,.nav-label,.sidebar-bottom{display:none}.brand{justify-content:center}.sidebar nav{margin-top:30px}.sidebar nav a{gap:0;padding:15px;font-size:0}.sidebar nav a svg{flex-shrink:0;width:21px}.main-wrap{width:calc(100% - 75px);margin-left:75px}.hero-art{width:270px}.topbar-label{display:none}.topbar{justify-content:flex-end;height:65px}.stats-grid{gap:12px}.dashboard-grid{grid-template-columns:1fr 270px}.page-heading h1{font-size:26px}.lesson-layout{grid-template-columns:1fr}.lesson-aside{flex-wrap:wrap;grid-row:1;gap:15px;display:flex;position:static}.lesson-aside h3{width:100%}.lesson-aside .button{margin:0}.parent-banner>.text-link,.level-tabs span{display:none}}@media (max-width:740px){main{padding:24px 18px}.topbar{padding:0 18px}.hero{min-height:300px}.hero-copy{padding:25px}.hero h2{font-size:27px}.hero-art{display:none}.hero-copy>p{font-size:12px}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.two-columns,.week-grid{grid-template-columns:1fr}.page-heading{flex-direction:column;align-items:flex-start;gap:15px}.page-heading h1{font-size:25px}.page-heading>.button{font-size:10px}.journey-panel{display:none}.level-tabs{gap:8px}.level-tabs a{justify-content:center;padding:12px}.resource-grid{grid-template-columns:1fr}.calendar-list{grid-template-columns:repeat(2,1fr)}.vocab-grid{grid-template-columns:1fr}.topbar-right{gap:8px}.topbar-right select{max-width:130px}.student-row{flex-wrap:wrap}.panel{padding:20px}.auth-panel{margin:0 auto;padding:25px}.lesson-row{padding:12px}.hero-meta{gap:12px;font-size:9px}.footer{padding:0 20px 25px}.parent-banner{padding:17px}.parent-banner p{font-size:10px}.topbar-right .small-button{padding:7px 12px}}@media (max-width:430px){.sidebar{width:57px;padding:20px 6px}.brand-mark{padding:7px}.brand-mark svg{width:21px}.sidebar nav a{padding:14px 12px}.main-wrap{width:calc(100% - 57px);margin-left:57px}main{padding:20px 13px}.hero-copy{padding:22px 19px}.hero h2{font-size:24px}.hero-meta{flex-direction:column;gap:7px}.stat-label{font-size:10px}.stat-card small{font-size:8px}.page-heading h1{font-size:23px}.stat-card{padding:14px}.calendar-list{grid-template-columns:1fr}}@media print{.sidebar,.topbar,.footer,.no-print,.tts-button,.speed-toggle-btn{display:none!important}.main-wrap{width:100%;margin:0}main{padding:0}.panel{break-inside:avoid;border:0;padding:12px 0}.lesson-layout{display:block}body{color:#000;background:#fff;font-size:11pt}.lesson-aside,.recording,.button{display:none!important}@page{size:A4;margin:16mm}}.lesson-banner-card{border:1px solid var(--line);background:#fff;border-radius:16px;margin-bottom:24px;overflow:hidden;box-shadow:0 4px 20px #0000000a}.lesson-banner-img-wrap{background:#f1f5f9;width:100%;height:280px;position:relative;overflow:hidden}.lesson-banner-img{object-fit:cover;width:100%;height:100%;display:block}.lesson-banner-overlay{pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:14px;left:14px;right:14px}.lesson-banner-badges{flex-wrap:wrap;gap:8px;display:flex}.badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.level-badge{color:#fff;background:#2563ebe6}.time-badge{color:#1e293b;background:#ffffffe6;border:1px solid #00000014}.tts-badge{color:#fff;background:#10b981e6}.lesson-banner-info{background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.lesson-banner-title{color:#0f172a;margin:0 0 4px;font-size:24px;font-weight:700}.lesson-banner-topic{color:#64748b;margin:0;font-size:14px}.lesson-banner-action{flex-shrink:0}.bilingual-audio-group{flex-direction:column;align-items:flex-end;gap:8px;display:flex}@media (max-width:768px){.bilingual-audio-group{align-items:flex-start;width:100%}}.bilingual-play-btn{color:#fff;cursor:pointer;background:#2563eb;border:1px solid #1d4ed8;border-radius:10px;align-items:center;gap:8px;padding:8px 16px;font-size:13.5px;font-weight:600;transition:all .15s ease-in-out;display:inline-flex;box-shadow:0 2px 8px #2563eb40}.bilingual-play-btn:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 12px #2563eb59}.bilingual-play-btn.playing{background:#10b981;border-color:#059669;animation:1.4s infinite pulse-audio}.bilingual-label{font-size:13.5px;font-weight:600}.individual-stream-btns{align-items:center;gap:6px;display:flex}.tts-button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:600;line-height:1;transition:all .15s ease-in-out;display:inline-flex}.tts-button:hover{color:#1d4ed8;background:#eff6ff;border-color:#93c5fd;transform:translateY(-1px)}.tts-button.playing{color:#fff;background:#2563eb;border-color:#2563eb;animation:1.4s infinite pulse-audio}.tts-btn-sm{border-radius:6px;padding:4px 6px;font-size:11px}.tts-btn-md{border-radius:8px;padding:6px 10px;font-size:13px}.tts-btn-lg{border-radius:10px;padding:10px 18px;font-size:14px}.tts-icon{justify-content:center;align-items:center;display:inline-flex}.tts-label{white-space:nowrap}.tts-wave-anim{animation:.8s ease-in-out infinite alternate wave-expand}@keyframes wave-expand{0%{transform:scale(.9)}to{transform:scale(1.15)}}@keyframes pulse-audio{0%{box-shadow:0 0 #2563eb66}70%{box-shadow:0 0 0 8px #2563eb00}to{box-shadow:0 0 #2563eb00}}.flashcard-topbar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.speed-toggle-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:4px 10px;font-size:12px;transition:all .15s}.speed-toggle-btn:hover{background:#f1f5f9}.speed-toggle-btn.active{color:#92400e;background:#fef3c7;border-color:#f59e0b;font-weight:600}.word-card{cursor:pointer;min-height:320px;transition:transform .2s,box-shadow .2s;position:relative}.word-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #2563eb14}.word-card-illustration-wrap{margin-bottom:12px}.word-card-header{align-items:center;gap:12px;margin-bottom:4px;display:flex}.word-card-header h2{margin:0}.word-card-back{flex-direction:column;align-items:center;gap:8px;width:100%;margin-top:16px;display:flex}.meaning-row{align-items:center;gap:10px;display:flex}.meaning-row h3{color:#047857;margin:0;font-size:20px}.example-row{align-items:center;gap:10px;margin-top:6px;display:flex}.example-text{color:#1e293b;margin:0;font-size:15px;font-weight:500}.card-prompt{margin-top:18px;font-size:13px}.flashcard-footer{text-align:center;margin-top:12px}.vocab-item{flex-direction:column;gap:8px;transition:border-color .15s;display:flex}.vocab-item:hover{border-color:#93c5fd}.vocab-item-top{align-items:center;gap:14px;display:flex}.vocab-item-meta{flex:1}.vocab-item-title-row{align-items:center;gap:8px;display:flex}.vocab-item-title-row h3{color:var(--blue);margin:0;font-size:17px}.vocab-meaning-row{align-items:center;gap:8px;display:flex}.meaning-badge{color:#047857;background:#ecfdf5;border-radius:6px;padding:2px 8px;font-size:13px;font-weight:600}.vocab-example-box{background:#f8fafc;border-left:3px solid #38bdf8;border-radius:6px;padding:8px 10px}.vocab-example-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.vocab-example-head p{margin:0 0 3px;font-size:12px;font-weight:500}.reading-header-box{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;display:flex}.reading-header-box h3{margin:0 0 4px;font-size:18px}.audio-voice-badge{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;align-items:center;margin-bottom:10px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.custom-audio-player{width:100%;margin-top:6px}.model-dialogue-header{margin-bottom:12px}.dialogue-box{border-left:4px solid var(--blue);background:#f8fafc;border-radius:0 8px 8px 0;padding:14px 18px}.student-space-pill{color:#1d4ed8;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #93c5fd;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 2px 6px #2563eb14}.student-space-pill:hover{color:#1e40af;background:linear-gradient(135deg,#dbeafe,#bfdbfe);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb26}.student-space-wrap{flex-direction:column;gap:28px;display:flex}.student-hero-banner{color:#fff;background:linear-gradient(135deg,#1e3a8a 0%,#2563eb 60%,#3b82f6 100%);border-radius:20px;justify-content:space-between;align-items:flex-start;gap:24px;padding:32px 36px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #2563eb33}.student-hero-content{max-width:680px}.student-tag{letter-spacing:.5px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff3;border-radius:999px;align-items:center;gap:6px;margin-bottom:12px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-flex}.student-hero-banner h1{color:#fff;margin:0 0 10px;font-size:28px;font-weight:800;line-height:1.3}.student-hero-banner p{color:#dbeafe;margin:0 0 20px;font-size:14px;line-height:1.6}.student-meta-pills{flex-wrap:wrap;gap:10px;display:flex}.student-pill{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;display:inline-flex}.student-pill strong{color:#fff}.student-parent-switch{flex-shrink:0}.switch-to-parent-btn{color:#1e3a8a;background:#fff;border-radius:999px;align-items:center;padding:8px 16px;font-size:12px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #0000001a}.switch-to-parent-btn:hover{background:#f8fafc;transform:translateY(-1px)}.today-mission-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:24px 28px;box-shadow:0 6px 24px #0000000d}.mission-badge-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.mission-pill{color:#92400e;background:#fef3c7;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:800}.session-pill{color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600}.tts-pill{color:#047857;background:#ecfdf5;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600}.mission-body{grid-template-columns:360px 1fr;align-items:center;gap:28px;display:grid}.mission-image-col{background:#f1f5f9;border-radius:14px;height:220px;overflow:hidden}.mission-img{object-fit:cover;width:100%;height:100%}.mission-info-col{flex-direction:column;gap:8px;display:flex}.mission-title-row{align-items:center;gap:12px;display:flex}.mission-title-row h2{color:#0f172a;margin:0;font-size:22px;font-weight:800}.mission-topic{color:#2563eb;margin:0;font-size:14px;font-weight:600}.mission-desc{color:#64748b;margin:0;font-size:13px;line-height:1.6}.mission-vocab-preview{margin:8px 0}.mini-vocab-list{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.mini-vocab-pill{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-flex}.mission-action-row{flex-wrap:wrap;gap:12px;margin-top:14px;display:flex}.start-mission-btn{color:#fff;background:#2563eb;border-radius:12px;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #2563eb40}.start-mission-btn:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:0 6px 18px #2563eb59}.flashcard-mission-btn{color:#475569;background:#fff;border:1px solid #cbd5e1;border-radius:12px;align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.flashcard-mission-btn:hover{background:#f8fafc;border-color:#94a3b8}.student-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.student-feature-card{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;padding:24px;transition:all .2s;display:flex}.student-feature-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0000000f}.feature-icon{margin-bottom:12px;font-size:32px}.student-feature-card h3{color:#0f172a;margin:0 0 8px;font-size:17px;font-weight:700}.student-feature-card p{color:#64748b;margin:0 0 16px;font-size:13px;line-height:1.6}.feature-mini-preview{gap:8px;margin-bottom:16px;display:flex}.preview-icon-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.level-steps-preview{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;display:flex}.step-badge{color:#64748b;background:#f1f5f9;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:600}.step-badge.active{color:#fff;background:#2563eb}.step-arrow{color:#cbd5e1;font-size:11px}.audio-feature-badge{color:#1d4ed8;background:#eff6ff;border-radius:6px;align-items:center;gap:6px;margin-bottom:16px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.feature-link{color:#2563eb;margin-top:auto;font-size:13px;font-weight:700;text-decoration:none}.feature-link:hover{text-decoration:underline}.student-lessons-progress{border:1px solid var(--line);background:#fff;border-radius:18px;padding:24px 28px}.section-head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.section-head h2{margin:0;font-size:20px;font-weight:800}.student-lesson-cards{flex-direction:column;gap:12px;display:flex}.student-lesson-item{border:1px solid var(--line);color:inherit;border-radius:12px;align-items:center;gap:16px;padding:14px 18px;text-decoration:none;transition:all .15s;display:flex}.student-lesson-item:hover{background:#f8fafc;border-color:#93c5fd;transform:translate(4px)}.student-lesson-item.current{background:#eff6ff;border-color:#3b82f6}.student-lesson-item.done{border-color:#a7f3d0}.lesson-item-status{flex-shrink:0}.status-circle{background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.status-circle.done{background:#ecfdf5}.status-circle.current{background:#dbeafe}.lesson-item-info{flex:1}.lesson-item-num{color:#64748b;font-size:11px;font-weight:600;display:block}.lesson-item-info h4{color:#0f172a;margin:2px 0;font-size:15px;font-weight:700}.lesson-item-action{flex-shrink:0}.badge-tag{border-radius:6px;padding:4px 10px;font-size:12px;font-weight:700}.badge-tag.done{color:#047857;background:#ecfdf5}.badge-tag.current{color:#fff;background:#2563eb}.badge-tag.ready{color:#475569;background:#f1f5f9}.achievements-section{border:1px solid var(--line);background:#fff;border-radius:18px;padding:24px 28px}.achievements-section h2{margin:0 0 4px;font-size:20px;font-weight:800}.badges-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-top:18px;display:grid}.badge-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:18px;display:flex}.badge-card.unlocked{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#fde68a}.badge-card.locked{opacity:.6;background:#f8fafc}.badge-icon{margin-bottom:4px;font-size:32px}.badge-card strong{color:#1e293b;font-size:14px}.badge-card p{color:#64748b;margin:0;font-size:11px;line-height:1.4}.badge-status{color:#d97706;margin-top:4px;font-size:11px;font-weight:700}.badge-card.locked .badge-status{color:#94a3b8}@media (max-width:900px){.mission-body,.student-grid{grid-template-columns:1fr}.badges-grid{grid-template-columns:repeat(2,1fr)}}.writing-notebook-container{background:#fff;border:1.5px solid #cbd5e1;border-radius:14px;margin:14px 0 16px;transition:border-color .2s,box-shadow .2s;overflow:hidden;box-shadow:0 4px 6px -1px #0000000d,0 10px 15px -3px #0000000d}.writing-notebook-container:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626,0 10px 20px -3px #00000014}.writing-notebook-header{background:linear-gradient(#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.writing-notebook-title{align-items:center;gap:10px;display:flex}.notebook-icon{font-size:26px;line-height:1}.writing-notebook-title strong{color:#1e293b;font-size:15px;display:block}.notebook-sub{color:#64748b;margin-top:1px;font-size:12px;display:block}.notebook-sub strong{color:#2563eb;display:inline}.writing-header-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.font-size-picker{background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:2px;padding:2px 4px;display:inline-flex}.picker-label{color:#64748b;padding:0 4px;font-size:11px;font-weight:600}.font-size-btn{color:#475569;cursor:pointer;background:0 0;border:none;border-radius:5px;padding:3px 8px;font-size:11px;font-weight:600;transition:all .15s}.font-size-btn:hover{color:#1e293b;background:#f1f5f9}.font-size-btn.active{color:#fff;background:#2563eb}.listen-writing-btn{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.listen-writing-btn:hover:not(:disabled){color:#1d4ed8;background:#eff6ff;border-color:#93c5fd;transform:translateY(-1px)}.listen-writing-btn:disabled{opacity:.5;cursor:not-allowed}.listen-writing-btn.playing{color:#fff;background:#10b981;border-color:#059669;animation:1.4s infinite pulse-audio}.writing-paper-wrapper{background:#fdfdfc;position:relative}.notebook-margin-line{pointer-events:none;z-index:2;background:#ef444447;width:2px;position:absolute;top:0;bottom:0;left:48px}.writing-handwriting-area{width:100%;min-height:240px;font-family:var(--font-handwriting);color:#1e3a8a;resize:vertical;box-sizing:border-box;letter-spacing:.02em;background:repeating-linear-gradient(#0000,#0000 35px,#e2e8f0 35px 36px),#fdfdfc;border:none;outline:none;padding:16px 20px 16px 62px}.writing-handwriting-area::placeholder{color:#94a3b8;font-style:italic;font-family:var(--font-handwriting)}.font-handwriting-md{font-size:1.15rem;line-height:36px}.font-handwriting-lg{font-size:1.3rem;font-weight:500;line-height:36px}.font-handwriting-xl{font-size:1.45rem;font-weight:600;line-height:36px}.writing-counter-panel{background:#f8fafc;border-top:1px solid #e2e8f0;flex-direction:column;gap:10px;padding:12px 18px;display:flex}.counter-main-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.counter-badges-group{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.word-count-badge{border-radius:9999px;align-items:baseline;gap:4px;padding:4px 12px;font-weight:700;transition:all .2s;display:inline-flex}.word-count-badge .badge-num{font-size:17px;line-height:1}.word-count-badge .badge-unit{text-transform:uppercase;letter-spacing:.04em;font-size:12px}.word-count-badge.count-empty{color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0}.word-count-badge.count-under{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.word-count-badge.count-good{color:#047857;background:#ecfdf5;border:1.5px solid #10b981}.word-count-badge.count-over{color:#b45309;background:#fffbeb;border:1.5px solid #f59e0b}.count-sub-stats{color:#64748b;align-items:center;gap:8px;font-size:13px;display:flex}.target-pill{background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:3px 8px}.target-pill strong{color:#1e293b}.char-count{color:#94a3b8;font-size:12px}.writing-progress-bar-wrap{background:#e2e8f0;border-radius:9999px;flex:1;min-width:140px;max-width:240px;height:8px;overflow:hidden}.writing-progress-bar-fill{border-radius:9999px;height:100%;transition:width .25s cubic-bezier(.4,0,.2,1),background-color .25s}.writing-progress-bar-fill.count-empty{background:#94a3b8}.writing-progress-bar-fill.count-under{background:#3b82f6}.writing-progress-bar-fill.count-good{background:#10b981}.writing-progress-bar-fill.count-over{background:#f59e0b}.writing-feedback-hint{border-radius:6px;align-items:center;gap:6px;margin:0;padding:6px 10px;font-size:13px;font-weight:500;display:flex}.writing-feedback-hint.count-empty{color:#64748b;background:#f8fafc}.writing-feedback-hint.count-under{color:#1e40af;background:#eff6ff}.writing-feedback-hint.count-good{color:#065f46;background:#ecfdf5}.writing-feedback-hint.count-over{color:#92400e;background:#fffbeb}.writing-model-card{background:#fafaf9;border:1px dashed #d6d3d1;border-radius:10px;margin:12px 0;padding:14px 18px}.writing-model-badge{color:#78716c;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:11px;font-weight:700}.writing-model-text{font-family:var(--font-handwriting);color:#292524;margin:0;font-size:1.25rem;line-height:1.7}.writing-preview-text{font-family:var(--font-handwriting);color:#1e3a8a;background:#faf9f6;border-left:3px solid #3b82f6;border-radius:8px;margin:8px 0;padding:10px 14px;font-size:1.2rem;line-height:1.6}@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}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
