/*! tailwindcss v4.2.1 | 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-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}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--spacing:.25rem;--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,ui-sans-serif, system-ui, 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{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}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.contents{display:contents}.hidden{display:none}.table{display:table}.italic{font-style:italic}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}:root{--ink:#112b46;--ink-2:#1f4262;--teal:#287b78;--teal-pale:#e7f1ee;--paper:#f5f1e8;--card:#fffdfa;--line:#dcd6ca;--muted:#697581;--amber:#be8334;--danger:#a84c47;--shadow:0 18px 46px #13273c1f}*{box-sizing:border-box}html{background:#dfe5e4}body{color:var(--ink);font-family:var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", sans-serif;background:radial-gradient(circle at 15% 10%,#ffffffe6,#0000 30%),linear-gradient(140deg,#edf0ed,#d8e2e1);margin:0}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{min-height:100svh}.phone-frame{background:var(--paper);width:min(100%,520px);min-height:100svh;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 70px #12293e29}.topbar{z-index:30;color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#112b46fa;grid-template-columns:48px 1fr auto;align-items:center;gap:10px;min-height:72px;padding:11px 18px;display:grid;position:sticky;top:0;box-shadow:0 5px 22px #071b2e24}.brand-mark{color:#f0cc91;border:1px solid #ffffff54;border-radius:12px;place-items:center;width:46px;height:38px;font-family:Georgia,serif;font-size:14px;font-style:italic;font-weight:700;display:grid}.brand-copy{flex-direction:column;min-width:0;display:flex}.brand-copy strong{letter-spacing:.02em;font-family:Georgia,Songti SC,serif;font-size:16px}.brand-copy span{color:#aec0cf;letter-spacing:.08em;margin-top:2px;font-size:10px}.sound-toggle{cursor:pointer;color:#cfdae2;flex-direction:column;align-items:center;gap:3px;font-size:9px;display:flex}.sound-toggle input{width:30px;height:17px;accent-color:var(--teal);margin:0}.header-settings{align-items:center;gap:9px;display:flex}.target-pill{color:#f0cc91;white-space:nowrap;border:1px solid #ffffff2e;border-radius:999px;padding:5px 8px;font-size:9px}.completion-share{cursor:pointer;color:#f5d9aa;white-space:nowrap;background:#f0cc9114;border:1px solid #f0cc916b;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:800}.view{min-height:calc(100svh - 72px);padding:18px 16px 112px}.study-view{padding-bottom:154px}.session-row{justify-content:space-between;align-items:flex-end;padding:0 2px 10px;display:flex}.session-row>div:first-child{flex-direction:column;display:flex}.session-row strong{margin-top:2px;font-size:19px}.eyebrow,.section-kicker{color:var(--teal);letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:800}.session-score{color:var(--muted);align-items:center;gap:5px;font-size:10px;display:flex}.known-dot,.unknown-dot{border-radius:50%;width:7px;height:7px}.known-dot{background:var(--teal);margin-left:7px}.unknown-dot{background:var(--danger);margin-left:7px}.progress-track{background:#ddd8cd;border-radius:20px;height:4px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg, var(--teal), #5aa39c);height:100%;transition:width .3s;display:block}.word-card,.complete-card,.loading-card{background:var(--card);box-shadow:var(--shadow);border:1px solid #bdb5a7b8;border-radius:26px;margin-top:16px}.word-card{padding:22px 20px 24px;overflow:hidden}.word-card:not(.is-revealed){min-height:410px}.card-topline{justify-content:space-between;align-items:center;gap:8px;min-height:24px;display:flex}.area-chip{letter-spacing:.05em;width:fit-content;color:var(--teal);background:var(--teal-pale);border-radius:999px;align-items:center;padding:5px 9px;font-size:9px;font-weight:800;display:inline-flex}.chip-group{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.learning-chip{color:#8f423d;background:#f8e2df;border-radius:999px;align-items:center;padding:5px 9px;font-size:9px;font-weight:800;display:inline-flex}.review-chip{color:#2b6175;background:#e5f0f5;border-radius:999px;align-items:center;padding:5px 9px;font-size:9px;font-weight:800;display:inline-flex}.word-heading{justify-content:center;align-items:center;gap:11px;margin:24px 0 12px;display:flex}.word-heading h1{overflow-wrap:anywhere;letter-spacing:-.025em;text-align:center;min-width:0;max-width:calc(100% - 45px);margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,9.5vw,50px);font-weight:500;line-height:1.03}.speaker{cursor:pointer;width:34px;height:34px;color:var(--teal);background:var(--teal-pale);border:0;border-radius:50%;flex:none;place-items:center;font-size:12px;transition:transform .15s,background .15s;display:grid}.speaker:active{background:#d2e7e2;transform:scale(.92)}.ipa-line{color:#73828d;letter-spacing:.025em;text-align:center;margin:-2px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:14px;display:block}.sheet-ipa{text-align:left;margin-top:-5px;margin-bottom:16px}.question-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:46px 2px 12px;display:flex}.question-state p{max-width:280px;color:var(--muted);margin:23px 0 24px;font-size:13px;line-height:1.7}.question-state small{color:#8b7b68;margin-top:13px;font-size:10px}.balance-line{color:#bf9b63;align-items:center;gap:10px;width:72%;display:flex}.balance-line span{background:linear-gradient(90deg,#0000,#d7c4a6);flex:1;height:1px}.balance-line span:last-child{background:linear-gradient(90deg,#d7c4a6,#0000)}.balance-line b{font-family:Georgia,serif;font-size:13px;font-style:italic;font-weight:700}.reveal-button,.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:14px;font-weight:750}.reveal-button{color:#fff;background:var(--ink);min-width:230px;padding:14px 20px;box-shadow:0 8px 18px #112b462e}.answer-state{animation:.24s ease-out reveal}@keyframes reveal{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.definition-block{background:#faf7f0;border-top:1px solid #e8e1d6;margin:21px -20px 0;padding:20px}.definition-block h2{margin:7px 0 9px;font-family:Georgia,Songti SC,serif;font-size:21px;line-height:1.4}.definition-block p,.content-section p,.exam-tip p{color:#526270;margin:0;font-size:12.5px;line-height:1.78}.plain-explanation{border-left:3px solid var(--teal);background:#eef7f4;border-radius:0 12px 12px 0;margin-top:14px;padding:14px 15px}.plain-explanation>span{color:var(--teal);letter-spacing:.12em;margin-bottom:6px;font-size:10px;font-weight:900;display:block}.plain-explanation p{color:#405562;margin:0;font-size:12.5px;line-height:1.78}.sheet-explanation{margin:14px 0 18px}.content-section{padding-top:21px}.section-title{color:var(--ink);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;font-weight:800;display:flex}.section-title small{color:#919aa2;font-size:9px;font-weight:500}.extension-list{gap:9px;display:grid}.extension-item{background:#fff;border:1px solid #e1ddd4;border-radius:13px;padding:12px 13px}.extension-item>div{flex-wrap:wrap;align-items:baseline;gap:6px 9px;display:flex}.extension-item strong{color:var(--ink);font-family:Georgia,serif;font-size:14px}.extension-item b{color:var(--teal);font-size:11px}.extension-item p{margin-top:5px;font-size:11px;line-height:1.55}.example-section blockquote,.entry-sheet blockquote{color:#233d56;background:#f8f2e8;border-left:3px solid #ca9b59;border-radius:0 10px 10px 0;margin:0;padding:12px 14px;font-family:Georgia,serif;font-size:14px;line-height:1.65}.example-section>p,.entry-sheet>p{margin-top:8px}.exam-tip{color:#6f542d;background:#f7ead4;border-radius:12px;grid-template-columns:auto 1fr;gap:10px;margin-top:18px;padding:12px;display:grid}.exam-tip span{white-space:nowrap;font-size:10px;font-weight:800}.exam-tip p{color:#6f5f4a;font-size:11px;line-height:1.55}.curation-note{color:#786b58;background:#f1ece2;border-radius:12px;margin:18px 0 0;padding:12px 14px;font-size:10px;line-height:1.65}.answer-dock{z-index:22;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdfaf0;border:1px solid #cbc4b9cc;border-radius:20px;grid-template-columns:1fr 1fr .82fr;gap:10px;width:min(100% - 26px,494px);padding:11px;display:grid;position:fixed;bottom:65px;left:50%;transform:translate(-50%);box-shadow:0 12px 35px #0f25392e}.answer-dock button{cursor:pointer;text-align:left;border:1px solid;border-radius:13px;grid-template-rows:auto auto;grid-template-columns:24px 1fr;align-items:center;padding:10px 9px;display:grid}.answer-dock button>span{text-align:center;grid-row:1/3;font-size:19px}.answer-dock button strong{font-size:13px}.answer-dock button small{opacity:.7;font-size:8px}.answer-dock button:disabled{cursor:not-allowed;filter:grayscale(.7);opacity:.42}.unknown-button{color:var(--danger);background:#fff4f2;border-color:#e5c5c1!important}.known-button{color:#267267;background:#eef8f4;border-color:#bedbd4!important}.undo-button{color:#6c5c46;background:#f6f1e9;border-color:#d9cdbd!important}.review-dock{grid-template-columns:1.25fr 1fr}.review-next-button{color:#246d65;background:#e9f5f1;border-color:#bad9d4!important}.review-exit{cursor:pointer;color:#f0d7ad;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff3d;border-radius:10px;padding:7px 10px;font-size:9px;font-weight:800}.complete-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:475px;padding:34px;display:flex}.complete-icon{color:#fff;background:var(--teal);border-radius:50%;place-items:center;width:64px;height:64px;margin-bottom:18px;font-size:27px;display:grid;box-shadow:0 10px 24px #287b783b}.complete-card h1{margin:8px 0 5px;font-family:Georgia,Songti SC,serif;font-size:28px}.complete-card>p{max-width:310px;color:var(--muted);font-size:12px;line-height:1.7}.complete-stats{border-block:1px solid #e7e1d7;grid-template-columns:1fr 1fr;width:100%;margin:23px 0;display:grid}.complete-stats div{flex-direction:column;gap:2px;padding:15px;display:flex}.complete-stats div+div{border-left:1px solid #e7e1d7}.complete-stats strong{font-size:24px}.complete-stats span{color:var(--muted);font-size:10px}.primary-button{color:#fff;background:var(--ink);width:100%;padding:14px}.loading-card{min-height:410px;color:var(--muted);place-items:center;display:grid}.day-done-card{background:var(--card);min-height:410px;box-shadow:var(--shadow);text-align:center;border:1px solid #bdb5a7b8;border-radius:26px;flex-direction:column;justify-content:center;align-items:center;margin-top:16px;padding:34px;display:flex}.day-done-card h1{margin:8px 0 7px;font-family:Georgia,Songti SC,serif;font-size:27px}.day-done-card p{max-width:300px;color:var(--muted);margin:0 0 25px;font-size:11px;line-height:1.7}.share-completion-button{cursor:pointer;color:#246d65;background:#e9f5f1;border:1px solid #bad9d4;border-radius:14px;width:100%;margin-bottom:9px;padding:14px;font-weight:800}.undo-completion-button{cursor:pointer;color:#69563d;background:#f7f0e6;border:1px solid #d7c8b3;border-radius:14px;width:100%;margin-bottom:9px;padding:13px;font-weight:800}.today-words-button{cursor:pointer;color:#28516e;background:#edf3f7;border:1px solid #cbd5df;border-radius:14px;width:100%;margin-bottom:9px;padding:13px;font-weight:800}.page-heading{padding:10px 4px 15px}.page-heading h1{letter-spacing:-.02em;margin:5px 0 4px;font-family:Georgia,Songti SC,serif;font-size:29px}.page-heading p{color:var(--muted);margin:0;font-size:11px}.search-box{background:#fffdfa;border:1px solid #d7d2c8;border-radius:14px;align-items:center;gap:9px;margin:5px 0 15px;padding:12px 14px;display:flex;box-shadow:0 7px 20px #112b460d}.search-box span{color:var(--teal);font-size:20px}.search-box input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:12px}.library-list{background:#fffdfa;border:1px solid #dcd6cb;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px #112b4612}.load-more-button{cursor:pointer;width:100%;color:var(--teal);background:#fffdfae6;border:1px solid #cfdad6;border-radius:14px;margin-top:12px;padding:13px;font-size:11px;font-weight:800}.library-row{cursor:pointer;width:100%;color:var(--ink);text-align:left;background:0 0;border:0;border-bottom:1px solid #ebe5dc;grid-template-columns:28px minmax(0,1fr) auto 12px;align-items:center;gap:9px;padding:13px 12px;display:grid}.library-row:last-child{border-bottom:0}.library-row:active{background:#f4f7f4}.word-index{color:#aa9b89;font-family:Georgia,serif;font-size:10px}.row-main{flex-direction:column;gap:3px;min-width:0;display:flex}.row-main strong{text-overflow:ellipsis;font-family:Georgia,serif;font-size:15px;overflow:hidden}.row-main em{color:#73828d;font-family:Georgia,serif;font-size:9px;font-style:normal}.row-main small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.row-status{border-radius:20px;padding:4px 7px;font-size:8px}.row-status.known{color:#267267;background:#e6f2ee}.row-status.unknown{color:var(--danger);background:#f8e6e4}.row-status.new{color:#7a7d80;background:#eeeae3}.chevron{color:#aaa298;font-size:18px}.today-summary-card{color:#fff;background:linear-gradient(135deg,#173b59,#2f7f7b);border:1px solid #d8d3c9;border-radius:19px;grid-template-columns:1fr auto;align-items:center;gap:14px;margin-bottom:12px;padding:18px;display:grid;box-shadow:0 12px 30px #112b4624}.today-summary-card>div{align-items:baseline;gap:7px;display:flex}.today-summary-card span,.today-summary-card small{color:#c7d9df;font-size:10px}.today-summary-card strong{font-family:Georgia,serif;font-size:34px}.today-summary-card button,.today-empty-card button{cursor:pointer;color:#173b59;background:#fff;border:0;border-radius:12px;padding:11px 14px;font-size:10px;font-weight:850}.today-summary-card button:disabled{cursor:not-allowed;opacity:.45}.today-list{margin-bottom:12px}.today-empty-card{min-height:370px;box-shadow:var(--shadow);text-align:center;background:#fffdfa;border:1px solid #dcd6cb;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;padding:32px;display:flex}.today-empty-card>span{width:58px;height:58px;color:var(--teal);background:var(--teal-pale);border-radius:50%;place-items:center;font-size:28px;display:grid}.today-empty-card h2{margin:16px 0 6px;font-family:Georgia,Songti SC,serif;font-size:22px}.today-empty-card p{color:var(--muted);margin:0 0 20px;font-size:11px}.today-empty-card button{color:#fff;background:var(--teal)}.stat-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stat-grid article{background:#fffdfa;border:1px solid #dcd6cb;border-radius:18px;flex-direction:column;justify-content:center;min-height:126px;padding:17px;display:flex;position:relative;overflow:hidden;box-shadow:0 9px 25px #112b460f}.stat-grid article>span{color:var(--muted);font-size:10px}.stat-grid article>strong{margin-top:5px;font-family:Georgia,serif;font-size:30px}.stat-grid article>strong small{color:#89949c;font-size:12px}.stat-grid article>small{color:#8c959c;font-size:8.5px}.stat-grid .hero-stat{color:#fff;background:linear-gradient(135deg,#112b46,#214e68);border:0;grid-column:1/-1;min-height:150px}.stat-grid .hero-stat>span,.stat-grid .hero-stat>small{color:#b9cad5}.stat-grid .hero-stat>strong{font-size:42px}.ring{--pct:0deg;background:conic-gradient(#66b7aa var(--pct), #ffffff1f 0);border-radius:50%;width:80px;height:80px;position:absolute;right:28px}.ring:after{content:"";background:#1b435f;border-radius:50%;position:absolute;inset:8px}.system-card{background:#fffdfa;border:1px solid #dcd6cb;border-radius:18px;margin-top:11px;padding:19px}.system-card h2{margin:7px 0 13px;font-family:Georgia,Songti SC,serif;font-size:20px}.rule-row{border-top:1px solid #ece5db;grid-template-columns:58px 1fr;gap:10px;padding:10px 0;display:grid}.rule-row b{color:var(--teal);font-size:11px}.rule-row:first-of-type b{color:var(--danger)}.rule-row p{color:var(--muted);margin:0;font-size:10.5px;line-height:1.55}.secondary-button{color:#fff;background:var(--teal);width:100%;margin-top:12px;padding:14px}.target-card{background:#fffdfa;border:1px solid #dcd6cb;border-radius:18px;margin-bottom:11px;padding:18px;box-shadow:0 9px 25px #112b460f}.account-card{background:#fffdfa;border:1px solid #dcd6cb;border-radius:18px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;margin-bottom:11px;padding:14px;display:grid;box-shadow:0 9px 25px #112b460f}.account-avatar{color:#f4d49d;background:var(--ink);border-radius:14px;place-items:center;width:42px;height:42px;font-family:Georgia,serif;font-size:19px;display:grid}.account-card>div:nth-child(2){flex-direction:column;min-width:0;display:flex}.account-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.account-card span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:9px;overflow:hidden}.account-card small{color:var(--teal);margin-top:3px;font-size:8px}.account-card button{cursor:pointer;color:var(--muted);background:#f7f3eb;border:1px solid #d9d4ca;border-radius:10px;padding:7px 9px;font-size:9px}.target-card>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.target-card strong{color:var(--ink);font-family:Georgia,serif;font-size:30px}.target-card strong small{color:var(--muted);font-family:var(--font-geist-sans), sans-serif;font-size:10px;font-weight:500}.target-number{align-items:baseline;gap:5px;display:flex}.target-number input{width:88px;color:var(--ink);text-align:right;background:#fffdfa;border:1px solid #d6d2c9;border-radius:10px;padding:5px 7px;font-family:Georgia,serif;font-size:25px}.target-number small{color:var(--muted);font-size:9px}.target-card>p{color:var(--muted);margin:11px 0 0;font-size:10px;line-height:1.55}.target-stepper{grid-template-columns:36px 1fr 36px;align-items:center;gap:9px;margin-top:14px;display:grid}.target-stepper button{cursor:pointer;width:36px;height:36px;color:var(--teal);background:var(--teal-pale);border:1px solid #cfd9d6;border-radius:50%;place-items:center;font-size:19px;display:grid}.target-stepper input{width:100%;accent-color:var(--teal)}.persistent-share-button{cursor:pointer;color:#fff;background:linear-gradient(135deg,#287b78,#3d9487);border:0;border-radius:16px;width:100%;margin:0 0 11px;padding:14px;font-weight:800;box-shadow:0 9px 24px #287b782e}.bottom-nav{z-index:25;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdfaf7;border-top:1px solid #c9c3b9e6;grid-template-columns:repeat(4,1fr);width:min(100%,520px);height:66px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 24px #112b4614}.bottom-nav button{cursor:pointer;color:#8b9298;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:9px;display:flex}.bottom-nav button span{font-size:19px;line-height:1}.bottom-nav button.active{color:var(--teal);font-weight:800}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0819277a;justify-content:center;align-items:flex-end;padding-top:35px;display:flex;position:fixed;inset:0}.entry-sheet{background:var(--card);border-radius:25px 25px 0 0;width:min(100%,520px);max-height:92svh;padding:24px 20px 35px;animation:.24s ease-out sheetUp;position:relative;overflow-y:auto;box-shadow:0 -12px 48px #061a2b33}@keyframes sheetUp{0%{opacity:.6;transform:translateY(25px)}}.sheet-close{cursor:pointer;width:32px;height:32px;color:var(--muted);background:#eeeae4;border:0;border-radius:50%;place-items:center;font-size:20px;display:grid;position:absolute;top:15px;right:16px}.entry-sheet .word-heading{justify-content:flex-start;margin:20px 0 10px}.entry-sheet .word-heading h1{text-align:left;font-size:37px}.entry-sheet>h2{margin:0 0 9px;font-family:Georgia,Songti SC,serif;font-size:19px}.sheet-background{color:#526270;font-size:12px;line-height:1.75}.entry-sheet .extension-list{margin:18px 0}.entry-sheet>p{color:#526270;font-size:12px;line-height:1.7}.due-note{color:var(--teal);text-align:center;margin-top:15px;display:block}.celebration-page{isolation:isolate;color:#fff;background:linear-gradient(155deg, var(--sky-a), var(--sky-b));place-items:center;min-height:100svh;display:grid;position:relative;overflow:hidden}.celebration-page:before{z-index:-3;content:"";background:radial-gradient(circle at 50% 28%,#fff3,#0000 38%),linear-gradient(#0000 48%,#05101d80);position:absolute;inset:0}.celebration-page:after{z-index:5;pointer-events:none;content:"";border:9px solid #ffffff14;position:absolute;inset:0}.celebration-sky{z-index:-1;position:absolute;inset:0;overflow:hidden}.sun{top:var(--sun-y);left:var(--sun-x);background:var(--sun);width:92px;height:92px;box-shadow:0 0 35px var(--sun), 0 0 100px #ffffff4d;opacity:.78;border-radius:50%;position:absolute}.cloud{top:var(--cloud-y);left:var(--cloud-x);width:190px;height:45px;transform:scale(var(--cloud-scale));filter:blur(8px);background:#ffffff24;border-radius:60%;position:absolute;box-shadow:58px -18px 0 5px #ffffff1c,116px 2px 0 -4px #ffffff1a}.star{color:#ffffffb8;text-shadow:0 0 12px #ffffffb3;position:absolute}.star-a{font-size:18px;top:14%;left:16%}.star-b{font-size:31px;top:23%;left:28%}.ridge{width:136%;height:50%;transform:rotate(var(--ridge-tilt));border-radius:50% 42% 0 0/63% 56% 0 0;position:absolute;bottom:-12%;left:-18%}.ridge-back{background:var(--ridge);width:150%;height:39%;bottom:4%;left:-35%}@supports (color:color-mix(in lab, red, red)){.ridge-back{background:color-mix(in srgb, var(--ridge) 54%, transparent)}}.ridge-back{filter:blur(1px);opacity:.55}.ridge-front{background:linear-gradient(155deg, var(--ridge), var(--ridge))}@supports (color:color-mix(in lab, red, red)){.ridge-front{background:linear-gradient(155deg, color-mix(in srgb, var(--ridge) 68%, #07131e), var(--ridge))}}.ridge-front{box-shadow:0 -22px 70px #030e1838}.scene-1 .ridge{background:linear-gradient(to bottom, #ffffff2e, var(--ridge));border-radius:50% 50% 0 0/35% 35% 0 0;height:39%;bottom:-25%}@supports (color:color-mix(in lab, red, red)){.scene-1 .ridge{background:linear-gradient(to bottom, #ffffff2e, color-mix(in srgb, var(--ridge) 70%, #082f49))}}.scene-1 .ridge-back{opacity:.34;bottom:-9%}.scene-2:before{background:radial-gradient(at 45% 18%,#99ffd540,#0000 42%),linear-gradient(115deg,#0000 25%,#abffe11f 43%,#0000 62%),linear-gradient(#0000 48%,#05101d8c)}.scene-2 .ridge-front{border-radius:38% 60% 0 0/78% 52% 0 0}.scene-3 .ridge{background:linear-gradient(165deg, var(--sun), var(--ridge));border-radius:65% 35% 0 0/42% 40% 0 0;height:42%;bottom:-18%}@supports (color:color-mix(in lab, red, red)){.scene-3 .ridge{background:linear-gradient(165deg, color-mix(in srgb, var(--sun) 48%, var(--ridge)), var(--ridge))}}.scene-3 .ridge-back{opacity:.46;height:31%;bottom:0;left:-10%}.moon,.aurora,.water,.skyline,.forest,.petals,.shooting-star{display:none;position:absolute}.moon{background:#fff4cf;border-radius:50%;width:92px;height:92px;box-shadow:0 0 42px #fff5d199,inset -19px -8px #afbed733}.aurora{filter:blur(18px);mix-blend-mode:screen;opacity:.58;border-radius:50%;width:82%;height:36%}.water{transform-origin:bottom;background:repeating-radial-gradient(at 50% 0,#ffffff30 0 2px,#0000 3px 24px),linear-gradient(#78d7dc33,#042035c7);height:42%;bottom:-2%;left:-10%;right:-10%;transform:perspective(220px)rotateX(14deg)}.skyline{clip-path:polygon(0 42%,5% 42%,5% 20%,12% 20%,12% 53%,18% 53%,18% 29%,26% 29%,26% 60%,32% 60%,32% 12%,40% 12%,40% 48%,48% 48%,48% 25%,56% 25%,56% 58%,65% 58%,65% 34%,73% 34%,73% 50%,82% 50%,82% 18%,90% 18%,90% 43%,100% 43%,100% 100%,0 100%);background:repeating-linear-gradient(90deg,#071927 0 7%,#0000 7% 9%,#0b2233 9% 14%,#0000 14% 16%);height:34%;bottom:0;left:-5%;right:-5%;box-shadow:0 -22px 70px #ffbe6e1f}.forest{clip-path:polygon(0 100%,0 56%,5% 31%,9% 56%,14% 18%,20% 57%,27% 29%,32% 58%,39% 12%,46% 56%,52% 25%,58% 58%,65% 19%,72% 56%,79% 33%,84% 58%,91% 14%,97% 55%,100% 42%,100% 100%);background:repeating-linear-gradient(98deg,#0000 0 5%,#051b1fe6 5.5% 6.5%,#0000 7% 12%),linear-gradient(0deg,#071f25 0 34%,#0000 35%);height:48%;bottom:-2%;left:-5%;right:-5%}.petals{color:#ffeef5c7;letter-spacing:.7em;text-shadow:0 0 14px #ffc8dc80;width:110%;font-size:clamp(22px,7vw,48px);line-height:3.2;top:11%;right:-3%;transform:rotate(-12deg)}.shooting-star{background:linear-gradient(90deg,#0000,#ffffffeb);width:180px;height:2px;top:17%;left:11%;transform:rotate(-27deg);box-shadow:70px 0 16px #ffffff7a}.scene-1 .water{display:block}.scene-1 .ridge{opacity:.42}.scene-2 .aurora{display:block}.scene-2 .aurora-a{background:linear-gradient(100deg,#0000,#68ffcca3,#6da9ff66,#0000);top:4%;left:-5%;transform:rotate(14deg)}.scene-2 .aurora-b{background:linear-gradient(95deg,#0000,#c271ff7a,#66ffd257,#0000);top:17%;right:-22%;transform:rotate(-15deg)}.scene-4{background:linear-gradient(145deg,#693f67,#d78493 55%,#f0b58f)}.scene-4 .petals{animation:13s ease-in-out infinite alternate petalDrift;display:block}.scene-4 .ridge{background:linear-gradient(155deg,#4b294180,#2c3048)}.scene-5{background:linear-gradient(160deg,#071a3a,#174d66 58%,#2e7880)}.scene-5 .sun{display:none}.scene-5 .moon{display:block;top:9%;right:14%}.scene-5 .water{opacity:.76;display:block}.scene-5 .ridge{opacity:.25}.scene-6{background:linear-gradient(155deg,#365a66,#78a97d 55%,#d5ba70)}.scene-6 .forest{opacity:.7;filter:saturate(.75);height:31%;display:block}.scene-6 .star{color:#fff2a4;text-shadow:8vw 19vh 8px #fff2a4,31vw 8vh 5px #fff2a4,58vw 28vh 7px #fff2a4,70vw 12vh 5px #fff2a4}.scene-7{background:linear-gradient(155deg,#171b42,#523b6d 52%,#d07f68)}.scene-7 .skyline{display:block}.scene-7 .ridge{display:none}.scene-8{background:linear-gradient(155deg,#4b6f8e,#a8c4cf 54%,#e8d9c8)}.scene-8 .ridge-front{clip-path:polygon(0 100%,0 72%,18% 39%,31% 62%,51% 18%,66% 59%,78% 35%,100% 68%,100% 100%);background:linear-gradient(155deg,#fffffff5,#8298aa 64%,#314c65);border-radius:0}.scene-8 .ridge-back{clip-path:polygon(0 100%,0 68%,28% 28%,49% 72%,74% 24%,100% 64%,100% 100%);background:#f0f9ffb8;border-radius:0}.scene-9{background:radial-gradient(circle at 70% 18%,#614590,#0000 26%),linear-gradient(155deg,#080b27,#211a55 58%,#49315f)}.scene-9 .shooting-star{animation:5s ease-in-out infinite shooting;display:block}.scene-9 .star-a{text-shadow:18vw 10vh 5px #fff,42vw 19vh 5px #fff,68vw 4vh 7px #fff,77vw 31vh 4px #fff}.scene-10{background:linear-gradient(160deg,#1f4550,#5d7d75 54%,#adb59e)}.scene-10 .forest{filter:blur(.4px);display:block}.scene-10:before{background:repeating-linear-gradient(0deg,#0000 0 10%,#ffffff14 11% 13%),linear-gradient(#e1f5ef2e,#03161c8c)}.scene-10 .ridge{display:none}.scene-11{background:conic-gradient(from 210deg at 20% 20%,#1e3759,#69518b,#d27678,#2b7c7b,#1e3759)}.scene-11:before{background:radial-gradient(circle at 18% 22%,#ffffff47,#0000 19%),radial-gradient(circle at 82% 16%,#ffe0a93b,#0000 24%),linear-gradient(120deg,#0000 25%,#ffffff14 26% 31%,#0000 32% 58%,#ffffff14 59% 64%,#0000 65%)}.scene-11 .aurora{background:linear-gradient(100deg,#0000,#ffffff3d,#0000);display:block;top:23%;left:8%}.scene-11 .ridge{opacity:.3}@keyframes petalDrift{to{transform:translate(-7%,9%)rotate(-4deg)}}@keyframes shooting{0%,68%{opacity:0;transform:translate(-160px,-80px)rotate(-27deg)}72%{opacity:1}to{opacity:0;transform:translate(520px,250px)rotate(-27deg)}}.celebration-content{z-index:2;text-align:center;text-shadow:0 2px 18px #03121f59;flex-direction:column;justify-content:center;align-items:center;width:min(88%,560px);min-height:82svh;padding:42px 18px 28px;display:flex;position:relative}.celebration-date{color:#ffffffb3;letter-spacing:.16em;margin-bottom:16px;font-size:11px}.celebration-seal{color:#ffffffe6;letter-spacing:.12em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff59;border-radius:999px;padding:7px 13px;font-size:9px;font-weight:800}.celebration-content blockquote{max-width:510px;margin:42px 0 28px}.celebration-content blockquote p{margin:0;font-family:Georgia,Songti SC,serif}.celebration-content blockquote p:first-child{font-size:clamp(25px,6.8vw,43px);font-style:italic;line-height:1.22}.celebration-content blockquote p:last-child{color:#ffffffe0;margin-top:18px;font-size:clamp(15px,4.2vw,21px);line-height:1.65}.celebration-content blockquote cite{color:#ffffffad;letter-spacing:.08em;margin-top:18px;font-family:Georgia,Songti SC,serif;font-size:11px;font-style:normal;display:block}.celebration-actions{flex-wrap:wrap;justify-content:center;gap:9px;display:flex}.celebration-actions button{cursor:pointer;border-radius:14px;min-width:142px;padding:12px 17px;font-size:11px;font-weight:800}.share-button{color:#15374c;background:#fffffff2;border:0;box-shadow:0 9px 24px #0415222e}.save-image-button{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff8c}.save-image-control{flex-direction:column;align-items:center;gap:7px;display:flex}.save-image-control .share-notice{margin-top:0}.undo-celebration-button{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0516242e;border:1px solid #ffffff5c}.ghost-button{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #fff6}.share-page-home{color:#15374c;background:#fffffff2;border-radius:14px;min-width:190px;padding:13px 20px;font-size:11px;font-weight:800;text-decoration:none;box-shadow:0 9px 24px #0415222e}.share-notice{color:#ffffffd6;background:#03121f2e;border-radius:999px;margin-top:12px;padding:5px 9px;font-size:9px}.celebration-maker{color:#ffffff94;letter-spacing:.18em;margin-top:24px;font-size:9px}.login-page{background:radial-gradient(circle at 70% 12%,#56a5975c,#0000 31%),linear-gradient(155deg,#0d2239,#183d60 58%,#276f72);place-items:center;min-height:100svh;padding:24px;display:grid;overflow:hidden}.login-card{color:#fff;text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#091f348c;border:1px solid #fff3;border-radius:34px;flex-direction:column;justify-content:center;align-items:center;width:min(100%,430px);min-height:min(720px,100svh - 48px);padding:42px 30px 30px;display:flex;position:relative;overflow:hidden;box-shadow:0 28px 80px #03101d59}.login-card:before{content:"";border:1px solid #f0cc9133;border-radius:50%;width:260px;height:260px;position:absolute;top:-95px;right:-80px;box-shadow:0 0 0 40px #ffffff06,0 0 0 85px #ffffff05}.login-logo{z-index:1;color:#f4d49d;background:linear-gradient(145deg,#ffffff21,#ffffff08);border:1px solid #f0cc91a6;border-radius:32px;place-items:center;width:112px;height:112px;margin-bottom:25px;font-family:Georgia,serif;font-size:31px;font-style:italic;font-weight:700;display:grid;position:relative;box-shadow:0 15px 38px #020f1b40}.login-kicker{color:#89c7bd;letter-spacing:.25em;font-size:10px;font-weight:800}.login-card h1{margin:12px 0 15px;font-family:Georgia,Songti SC,serif;font-size:clamp(31px,8vw,43px);font-weight:500;line-height:1.28}.login-card>p{color:#c2d1db;max-width:330px;margin:0 0 29px;font-size:12px;line-height:1.8}.login-button{color:#17354c;background:#fffdfa;border-radius:15px;width:100%;padding:15px 18px;font-size:13px;font-weight:850;text-decoration:none;box-shadow:0 12px 30px #04132038}.login-benefits{color:#a9c5cf;flex-wrap:wrap;justify-content:center;gap:8px 13px;margin-top:19px;font-size:9px;display:flex}.maker-mark{color:#ffffff80;letter-spacing:.18em;font-size:9px;position:absolute;bottom:22px}@media (width>=680px){.phone-frame{border:1px solid #fffc;border-radius:30px;min-height:calc(100svh - 32px);margin:16px auto}.topbar{border-radius:30px 30px 0 0}.bottom-nav{border-radius:0 0 30px 30px;bottom:16px;overflow:hidden}.answer-dock{bottom:82px}.modal-backdrop{align-items:center}.entry-sheet{border-radius:25px}}@media (width<=360px){.brand-copy span{display:none}.topbar{grid-template-columns:44px 1fr auto;padding-inline:12px}.view{padding-inline:11px}.word-card{padding-inline:16px}.definition-block{margin-inline:-16px;padding-inline:16px}.target-pill{display:none}.celebration-actions{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@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}
