:root{color:#1f2933;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}.build-footer{color:#68716c;text-align:center;border-top:1px solid #dce2de;flex-wrap:wrap;justify-content:center;gap:6px;padding:18px 16px;font-size:12px;line-height:1.4;display:flex}.build-footer code{color:inherit;font:inherit}.build-footer--dark{color:#ffffffc7;border-color:#ffffff3d}button,input,textarea,select{font:inherit}.install-prompt{z-index:1000;right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));color:#1f2933;background:#fff;border:1px solid #dce2de;border-radius:14px;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:14px;width:min(440px,100vw - 32px);padding:14px 44px 14px 14px;display:grid;position:fixed;box-shadow:0 18px 48px #12352d47}.install-prompt>img{border-radius:12px;display:block}.install-prompt-copy{min-width:0}.install-prompt-copy strong{color:#173b32;font-size:16px;line-height:1.2;display:block}.install-prompt-copy p{color:#52616f;margin:4px 0 0;font-size:14px;font-weight:650;line-height:1.35}.install-prompt-share{color:#1f7a5a}.install-prompt-action{color:#fff;cursor:pointer;background:#1f7a5a;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:0 14px;font-weight:850;display:inline-flex}.install-prompt-close{color:#52616f;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;display:grid;position:absolute;top:7px;right:7px}.install-prompt-action:focus-visible,.install-prompt-close:focus-visible{outline-offset:2px;outline:3px solid #1f7a5a4d}@media (width<=420px){.install-prompt{right:10px;bottom:max(10px, env(safe-area-inset-bottom));grid-template-columns:48px minmax(0,1fr);gap:10px;width:calc(100vw - 20px);padding:12px 42px 12px 12px}.install-prompt>img{border-radius:10px;width:48px;height:48px}.install-prompt-share,.install-prompt-action{grid-column:2;justify-self:start}}.app-shell{color:#1f2933;background:linear-gradient(90deg,#121916c2 0%,#1f241d9c 48%,#163f364d 100%),url(/login-culture-desktop.jpg) 50%/cover no-repeat;flex-direction:column;min-height:100vh;display:flex}.top-nav{justify-content:space-between;align-items:center;gap:24px;width:min(1120px,100% - 40px);margin:0 auto;padding:22px 0;display:flex}.brand{color:#fff;letter-spacing:0;align-items:center;gap:10px;font-size:22px;font-weight:800;text-decoration:none;display:inline-flex}.brand img{border-radius:9px;width:34px;height:34px}.target-language{color:#ffffffd1;font-size:14px;font-weight:700}.login-panel{flex:1;grid-template-columns:minmax(0,1fr) minmax(320px,400px);align-items:center;gap:clamp(28px,5vw,56px);width:min(1120px,100% - 40px);margin:0 auto;padding:44px 0 88px;display:grid}.hero-copy{color:#fff;grid-template-columns:minmax(0,1fr) clamp(190px,20vw,260px);align-items:end;column-gap:clamp(18px,3vw,34px);display:grid}.eyebrow{color:#173025;text-transform:uppercase;background:#95e469;border-radius:4px;grid-column:1/-1;margin:0 0 18px;padding:6px 10px;font-size:13px;font-weight:800;display:inline-flex}.hero-copy h1{color:#fff;text-wrap:balance;overflow-wrap:normal;word-break:normal;grid-column:1/-1;max-width:720px;margin:0;font-size:clamp(48px,6.2vw,82px);font-weight:900;line-height:1.02}.hero-copy h1 span{color:#fff200}.hero-text{color:#ffffffe6;text-wrap:pretty;max-width:700px;margin:24px 0 0;font-size:20px;line-height:1.45}.login-mascot{object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 24px #17302533);grid-column:2;width:100%;max-height:340px}.login-card{background:#fffffff0;border:1px solid #ffffffb8;border-radius:8px;gap:24px;padding:24px;display:grid;box-shadow:0 18px 48px #1f293333}.login-card fieldset{border:0;min-width:0;margin:0;padding:0}.login-card legend{color:#1f2933;margin-bottom:14px;font-size:18px;font-weight:800}.language-options{gap:10px;display:grid}.language-option{color:#1f2933;cursor:pointer;background:#fff;border:1px solid #d5dde5;border-radius:7px;align-items:center;gap:12px;min-height:54px;padding:0 14px;font-size:17px;font-weight:800;display:flex}.language-option.selected{border-color:#1f7a5a;box-shadow:0 0 0 3px #1f7a5a29}.language-option input{accent-color:#1f7a5a;width:18px;height:18px;margin:0}.flag{width:32px;font-size:25px;line-height:1}.email-field{color:#1f2933;gap:8px;font-size:15px;font-weight:800;display:grid}.email-field input{color:#1f2933;min-width:0;min-height:50px;font:inherit;background:#fff;border:1px solid #d5dde5;border-radius:7px;padding:0 14px;font-size:16px;font-weight:700}.email-field input:focus{border-color:#1f7a5a;outline:3px solid #1f7a5a29}.bot-check{background:#f8fafc;border:1px solid #d5dde5;border-radius:7px;gap:10px;min-width:0;padding:14px;display:grid}.bot-check>span{color:#1f2933;font-size:15px;font-weight:800}.bot-check p{color:#52616f;margin:0;font-size:14px;font-weight:700;line-height:1.35}.turnstile-widget{min-height:65px}.primary-action{color:#fff;cursor:pointer;background:#1f7a5a;border:0;border-radius:6px;justify-content:center;align-items:center;min-height:48px;padding:0 18px;font-weight:900;display:inline-flex}.primary-action:disabled{cursor:not-allowed;opacity:.55}.form-status{color:#52616f;margin:-8px 0 0;font-size:14px;font-weight:700;line-height:1.35}.code-card h2,.code-instructions{margin:0}.code-instructions{color:#52616f;margin-top:8px;line-height:1.45}.code-card .email-field input{letter-spacing:.24em;text-align:center;font-size:24px}.text-action{color:#1f6b50;cursor:pointer;min-height:48px;font:inherit;background:0 0;border:0;padding:0 12px;font-weight:800}.session-card{align-content:start}.session-card h2{color:#1f2933;overflow-wrap:break-word;margin:0;font-size:24px;line-height:1.18}.session-card p{color:#52616f;margin:0;font-size:15px;font-weight:700;line-height:1.4}.session-card .session-kicker{color:#1f7a5a;text-transform:uppercase;font-size:13px;font-weight:900}.primary-action:focus-visible,.language-option:focus-within{outline-offset:2px;outline:3px solid #fff200b8}@media (width<=760px){.app-shell{background:linear-gradient(#0e1816ad 0%,#13282266 46%,#14332bb8 100%),url(/login-culture-mobile.jpg) top/cover no-repeat;min-height:100svh}.top-nav{flex-direction:column;align-items:flex-start;gap:8px;width:min(100% - 32px,1120px);padding:18px 0 0}.brand{font-size:20px}.target-language{font-size:13px}.login-panel{grid-template-columns:1fr;gap:24px;width:min(100% - 32px,1120px);min-height:auto;padding:40px 0 28px}.eyebrow{margin-bottom:14px;font-size:12px}.hero-text{max-width:420px;margin-top:18px;font-size:17px;line-height:1.35}.hero-copy h1{max-width:420px;font-size:clamp(38px,10.4vw,48px);line-height:1.04}.hero-copy{grid-template-columns:minmax(0,1fr) 128px;align-items:start;column-gap:14px}.login-mascot{max-height:176px}.login-card{gap:18px;padding:18px}.login-card legend{margin-bottom:12px;font-size:17px}.language-options{gap:8px}.language-option{min-height:48px;padding:0 12px;font-size:16px}.flag{width:28px;font-size:22px}.primary-action{min-height:46px}.email-field input{min-height:48px}.bot-check{padding:12px}}@media (width<=420px){.login-panel{padding-top:34px}.hero-copy h1{max-width:340px;font-size:clamp(34px,9.2vw,40px)}.hero-text{font-size:16px}.hero-copy{grid-template-columns:minmax(0,1fr) 108px;column-gap:10px}.login-mascot{max-height:154px}}.paint-gift-dialog{box-sizing:border-box;color:#294d3e;text-align:center;background:#fffdf6;border:1px solid #e3ddc9;border-radius:28px;width:min(420px,100% - 24px);max-height:calc(100dvh - 24px);padding:28px 30px 16px;overflow-y:auto;box-shadow:0 24px 90px #193e3640}.paint-gift-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#163c4c80}.paint-gift-close{color:#53685b;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:48px;height:48px;padding:0;display:grid;position:absolute;top:8px;right:8px}.paint-gift-close:hover{background:#edf1e7}.paint-gift-art{width:204px;height:184px;margin:0 auto 16px;position:relative}.paint-gift-art img{object-fit:contain;width:180px;height:180px;margin:auto;display:block;position:relative}.paint-gift-wash{background:radial-gradient(#f6dfae88,#e8efdc66 55%,#0000 73%);border-radius:50%;position:absolute;inset:12px -10px -4px}.paint-gift-seal{color:#377355;background:#edf3e6;border:3px solid #fffdf6;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;bottom:0;right:3px}.paint-gift-dialog h2{text-wrap:balance;max-width:310px;margin:0 auto 12px;font-size:27px;font-weight:700;line-height:1.18}.paint-gift-dialog h2:focus{outline:none}.paint-gift-dialog p{margin:0;line-height:1.5}.paint-gift-description{color:#40594b;font-size:17px}.paint-gift-name{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:100%;display:inline-block;overflow:hidden}.paint-gift-dialog .paint-gift-balance{color:#637064;margin-top:14px;font-size:14px}.paint-gift-status{color:#685342;margin:12px 0;font-size:14px;line-height:1.45}.paint-gift-status:empty{margin:20px 0 0}.paint-gift-actions{gap:3px;display:grid}.paint-gift-actions button{justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;margin:0;display:flex}.paint-gift-actions .primary-action{border-radius:13px}.paint-gift-actions .text-action{color:#5c6b5e}.paint-gift-dialog.is-sent{padding-bottom:28px}.paint-gift-drop{color:#e0a449;fill:currentColor;opacity:0;animation:.9s ease-out paint-gift-flight;position:absolute}.paint-gift-drop.drop-0{top:85px;left:5px}.paint-gift-drop.drop-1{color:#7d9f6a;animation-delay:80ms;top:36px;left:26px}.paint-gift-drop.drop-2{color:#77a8be;animation-delay:.14s;top:64px;right:10px}.paint-gift-drop.drop-3{animation-delay:.22s;top:15px;right:38px}.paint-gift-drop.drop-4{color:#7d9f6a;animation-delay:.28s;top:4px;left:90px}@keyframes paint-gift-flight{0%{opacity:0;transform:translateY(20px)scale(.5)}30%{opacity:.9}to{opacity:0;transform:translateY(-28px)scale(1.1)rotate(15deg)}}@media (width<=380px),(height<=650px){.paint-gift-dialog{border-radius:22px;padding:20px 20px 12px}.paint-gift-art{width:164px;height:144px;margin-bottom:12px}.paint-gift-art img{width:140px;height:140px}.paint-gift-dialog h2{font-size:24px}.paint-gift-description{font-size:16px}}@media (prefers-reduced-motion:reduce){.paint-gift-drop{animation:none}}.paint-vessel{flex:none;width:78px;height:90px;overflow:visible}.paint-liquid{transform:translateY(var(--paint-y))}.paint-falling-drops{display:none}.is-filling .paint-liquid{animation:1.5s cubic-bezier(.2,.65,.25,1) both paint-fill}.is-filling .paint-falling-drops{display:block}.is-filling .paint-drop{animation:.9s ease-in both paint-fall}.is-filling .paint-drop.second{animation-delay:.21s}.is-filling .paint-drop.third{animation-delay:.39s}.is-filling .paint-ripple{transform-origin:50px 0;animation:1.7s ease-out .45s both paint-sway}.paint-answer{color:#315e60;background:radial-gradient(at 12% 80%,#dceee6 0,#0000 65%),#fafbf4;border:1px solid #d9e6da;border-radius:18px;align-items:center;gap:12px;margin:14px 0 20px;padding:8px 14px 8px 6px;display:flex}.paint-answer-copy{gap:3px;min-width:0;display:grid}.paint-answer-label{color:#5c746b;font-size:.76rem}.paint-answer-copy strong{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:10px;font-size:1.2rem;display:flex}.paint-answer-plus{color:#397758;background:#deeee0;border-radius:20px;padding:2px 8px;font-size:.85rem;animation:.78s ease-out .52s both paint-earned-pop}.paint-answer-copy small{color:#63766b;font-size:.76rem;line-height:1.4}.paint-sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.paint-wallet>.paint-vessel{width:60px;height:70px}.paint-wallet .paint-surface{animation:2.8s ease-in-out infinite alternate paint-surface-flow}@keyframes paint-surface-flow{0%{transform:translate(-18px)}to{transform:translate(18px)}}@media (prefers-reduced-motion:reduce){.paint-wallet .paint-surface{animation:none}}.atlas-detail .paint-wallet>.paint-vessel{width:40px;height:46px}@keyframes paint-fill{0%{transform:translateY(calc(var(--paint-y) + var(--paint-rise)))}to{transform:translateY(var(--paint-y))}}@keyframes paint-fall{0%{opacity:0;transform:translateY(-5px)scale(.8)}15%{opacity:1}80%{opacity:1}to{opacity:0;transform:translateY(var(--drop-travel)) scale(.6)}}@keyframes paint-sway{0%,to{transform:scaleY(1)}25%{transform:scaleY(-.8)}55%{transform:scaleY(.6)}80%{transform:scaleY(-.2)}}@keyframes paint-earned-pop{0%{opacity:0;transform:translateY(5px)scale(.9)}to{opacity:1;transform:none}}@media (width<=400px){.paint-answer{gap:8px;padding-right:10px}.paint-answer .paint-vessel{width:64px;height:76px}.paint-answer-copy strong{font-size:1.05rem}}@media (prefers-reduced-motion:reduce){.is-filling .paint-liquid,.is-filling .paint-ripple,.paint-answer-plus{animation:none}.is-filling .paint-falling-drops{display:none}}.exercise-toolbar .paint-answer{gap:6px;max-width:340px;margin:0;padding:3px 10px 3px 2px}.exercise-toolbar .paint-vessel{width:46px;height:58px}.exercise-toolbar .paint-answer-copy{gap:2px}.exercise-toolbar .paint-answer-copy strong{gap:6px;font-size:.9rem}.paint-session-label{font-size:.7rem;font-weight:400}.exercise-toolbar .paint-answer-copy small,.exercise-toolbar .paint-answer-label{font-size:.7rem}.exercise-toolbar .paint-answer-plus{padding:1px 5px;font-size:.7rem}@media (width<=600px){.exercise .exercise-toolbar{grid-template-columns:auto minmax(0,1fr) auto;gap:8px 12px;margin-bottom:12px;display:grid}.exercise-toolbar .paint-answer{grid-column:1/-1;max-width:none}.exercise-toolbar .paint-answer-copy{flex:1}.exercise-toolbar .paint-vessel{width:38px;height:46px}}.souvenir-dialog{color:#293b30;background:#fffdf7;border:1px solid #d9dfce;border-radius:20px;width:min(880px,100vw - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:24px;overflow-y:auto}.souvenir-dialog::backdrop{background:#172c24a6}.souvenir-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.souvenir-heading h2{margin:0;font-size:1.45rem;line-height:1.25}.souvenir-close{min-width:48px;min-height:48px;color:inherit;background:#edf1e7;border:0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.souvenir-balance,.souvenir-entry h2{align-items:center;gap:8px;display:flex}.souvenir-balance{color:#2d634b;margin:14px 0;font-weight:650}.souvenir-intro{color:#64735e;font-size:.94rem;line-height:1.6}.souvenir-recipient{align-items:center;gap:14px;margin:18px 0;display:flex}.souvenir-recipient select{min-width:0;min-height:48px;color:inherit;font:inherit;background:#fff;border:1px solid #ccd6c4;border-radius:10px;flex:1;padding:10px}.souvenir-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.souvenir-card{background:#fffefa;border:1px solid #e1e4d8;border-radius:16px;flex-direction:column;align-items:stretch;min-width:0;padding:14px;display:flex}.souvenir-card img{aspect-ratio:1;object-fit:contain;border-radius:10px;width:100%;height:auto;display:block}.souvenir-card h3{margin:12px 0 6px;font-size:1rem;line-height:1.35}.souvenir-card p,.souvenir-card time{color:#687562;margin:8px 0;font-size:.83rem;line-height:1.5}.souvenir-card .secondary-action{justify-content:center;min-height:48px;margin-top:auto}.souvenir-price{color:#2b654b}.souvenir-locked{align-items:center;gap:6px;display:flex}.souvenir-confirm,.souvenir-reveal{text-align:center;max-width:480px;margin:12px auto;line-height:1.55}.souvenir-confirm>img,.souvenir-reveal>img{aspect-ratio:1;object-fit:contain;width:min(100%,270px);height:auto;margin:8px auto;display:block}.souvenir-confirm h3,.souvenir-reveal h3{margin:12px 0;font-size:1.25rem}.souvenir-confirm .primary-action,.souvenir-reveal .primary-action{justify-content:center;min-width:160px;min-height:48px}.souvenir-parcel,.souvenir-wrapped{color:#ba793f;aspect-ratio:1;background:radial-gradient(circle,#f6e8ca,#0000 70%);place-items:center;display:grid}.souvenir-parcel{max-width:260px;margin:auto}.souvenir-error{background:#fff0df;border-radius:10px;padding:12px;line-height:1.5}.souvenir-entry{background:#f2f5ec;border:1px solid #dce3d2;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin:26px 0;padding:22px;display:flex}.souvenir-entry h2{margin:0 0 8px;font-size:1.25rem}.souvenir-entry p{color:#65735e;margin:0;line-height:1.5}.souvenir-unwrapped{animation:.65s ease-out both souvenir-unwrapping}.owl-souvenir-preview{object-fit:contain;border-radius:12px;width:110px;height:110px}.atlas-souvenir{color:#385c40;min-height:48px;font:inherit;background:#fffdf2;border:1px solid #b5c59f;border-radius:14px;justify-content:center;align-items:center;gap:5px;padding:7px 12px;font-size:12px;display:inline-flex;box-shadow:0 2px 8px #233b2420}.atlas-stops li .atlas-souvenir{margin-top:4px}@keyframes souvenir-unwrapping{0%{opacity:0;transform:translateY(12px)scale(.94)}to{opacity:1;transform:none}}@media (width<=650px){.souvenir-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.souvenir-dialog{padding:18px}.souvenir-entry{flex-direction:column;align-items:stretch}.souvenir-entry button{justify-content:center}}@media (width<=380px){.souvenir-grid{grid-template-columns:1fr}.souvenir-card{padding:16px}.souvenir-card img{align-self:center;max-width:200px}.souvenir-recipient{flex-direction:column;align-items:stretch;gap:6px}.souvenir-heading h2{font-size:1.25rem}}@media (prefers-reduced-motion:reduce){.souvenir-unwrapped{animation:none}}.atlas-stops li .atlas-souvenir--stop{border-radius:50%;width:48px;height:48px;min-height:48px;margin:0;padding:0;position:absolute;top:0;right:-46px}.atlas-stops li .atlas-souvenir--left{left:-46px;right:auto}@media (width<=600px){.atlas-stops li .atlas-souvenir--stop{left:auto;right:-40px}.atlas-stops li .atlas-souvenir--phone-left{left:-40px;right:auto}.atlas-footer{flex-wrap:wrap;gap:4px}}.souvenir-recipient select{appearance:none;box-sizing:border-box;background-image:linear-gradient(45deg,#0000 50%,#62735f 50%),linear-gradient(135deg,#62735f 50%,#0000 50%);background-position:calc(100% - 17px) 21px,calc(100% - 12px) 21px;background-repeat:no-repeat;background-size:5px 5px;height:48px;padding:10px 32px 10px 12px;line-height:1.4}.souvenir-entry{display:block}.souvenir-entry-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.souvenir-entry-heading h2{margin:0}.souvenir-entry .souvenir-card img{align-self:center;max-width:170px}.souvenir-entry .souvenir-wrapped{align-self:center;width:170px;max-width:100%}.souvenir-person{align-items:center;gap:10px;min-width:0;margin-top:12px;display:flex}.souvenir-person img{object-fit:contain;width:44px;height:44px}.souvenir-person strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.souvenir-purpose{justify-content:center;gap:10px;margin:16px 0;display:flex}.souvenir-purpose button{flex:1;justify-content:center;min-height:48px}.souvenir-purpose [aria-pressed=true]{color:#295339;background:#e8efdf;border-color:#8ba67c}.souvenir-card .souvenir-status{color:#2b654b;align-items:center;gap:5px;display:flex}.souvenir-card button:disabled{opacity:.65;cursor:default}.souvenir-heading h2{min-width:0}@media (width<=650px){.souvenir-entry-heading{flex-direction:column;align-items:flex-start}.souvenir-entry .souvenir-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=380px){.souvenir-entry .souvenir-grid{grid-template-columns:1fr}.souvenir-purpose{flex-direction:column}}.souvenir-paint-gifts{border-bottom:1px solid #dce3d2;margin:20px 0 24px;padding-bottom:24px}.souvenir-paint-gifts h3{margin:0 0 6px;font-size:1rem}.souvenir-paint-gifts>p{color:#64735e;margin:0 0 14px;font-size:.88rem;line-height:1.5}.souvenir-paint-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.souvenir-paint-card{color:#2d634b;min-width:0;font:inherit;cursor:pointer;background:radial-gradient(at 50% 40%,#e1f0e6,#0000 70%),#fffefa;border:1px solid #ccdccc;border-radius:16px;flex-direction:column;justify-content:flex-start;align-items:center;gap:6px;padding:12px 8px;display:flex}.souvenir-paint-card .paint-vessel{width:64px;height:74px}.souvenir-paint-card strong{font-size:1rem;line-height:1.4}.souvenir-paint-card small{color:#64735e;font-size:.76rem;line-height:1.4}.souvenir-paint-card:disabled{cursor:default;background:#f4f5ef;border-color:#e1e4d8}.souvenir-paint-card:disabled .paint-vessel{opacity:.55}.souvenir-paint-card:not(:disabled):hover{background-color:#eff6e8;border-color:#709b7b}.souvenir-paint-card:focus-visible{outline-offset:3px;outline:3px solid #407c63}.souvenir-card .souvenir-origin span{font-weight:600;display:block}@media (width<=380px){.souvenir-paint-grid{gap:8px}.souvenir-paint-card{padding:10px 4px}.souvenir-paint-card strong{font-size:.85rem}.souvenir-paint-card small{font-size:.72rem}.souvenir-paint-card .paint-vessel{width:52px;height:62px}}.souvenir-dialog.souvenir-dialog--celebration{background:radial-gradient(at 50% 35%,#fff6df 0,#fffdf7 63%);border-radius:28px;width:min(540px,100vw - 24px);padding:18px 24px 22px;box-shadow:0 24px 90px #102c3150}.souvenir-dialog--celebration .souvenir-heading h2{color:#63756a;font-size:.92rem;font-weight:550}.gift-celebration.souvenir-reveal{max-width:440px;margin:0 auto}.gift-eyebrow{color:#947344;letter-spacing:.08em;text-transform:uppercase;justify-content:center;align-items:center;gap:7px;margin:0 0 3px;font-size:.75rem;display:flex}.gift-scene{isolation:isolate;aspect-ratio:1.22;width:100%;max-width:390px;margin:auto;position:relative;overflow:hidden}.gift-sunwash{background:radial-gradient(at 48% 44%,#f6d89380,#fae8bc60 42%,#0000 71%);border-radius:46% 54% 60% 40%;animation:3.6s ease-out both gift-glow;position:absolute;inset:2% 5% 7%}.gift-sea{background:radial-gradient(#90bec377,#c7dedf55 48%,#0000 72%);border-radius:50%;animation:3.6s ease-out both gift-glow;position:absolute;inset:69% 8% 3%}.gift-waves{stroke:#85b1b8;stroke-width:1.5px;opacity:.55;width:94%;height:22%;animation:3.6s ease-in-out both gift-wave;position:absolute;bottom:6%;left:3%}.gift-art{transform-origin:50% 82%;width:79%;animation:4.8s ease-in-out both gift-sailing;position:absolute;top:0;left:10.5%}.gift-art img{width:100%;height:auto;display:block;-webkit-mask-image:radial-gradient(#000 57%,#0000 73%);mask-image:radial-gradient(#000 57%,#0000 73%)}.gift-spark{left:var(--x);top:var(--y);opacity:0;width:7px;height:12px;transform:rotate(var(--angle));animation:gift-sparkle 2.7s ease-out calc(.4s + var(--i)*65ms) both;background:#d6a75a;border-radius:70% 30% 60% 40%;position:absolute}.gift-spark:nth-of-type(3n){background:#84b0ad;width:5px;height:9px}.gift-mail-seal{color:#bc8350;background:#fff3d9;border:1px solid #c8ad79;border-radius:4px;place-items:center;width:46px;height:36px;animation:3.7s ease-in-out both gift-mail;display:grid;position:absolute;bottom:13%;right:17%;transform:rotate(-9deg);box-shadow:0 4px 10px #735d3020}.gift-mail-seal:before{content:"";border-bottom:1px solid #c8ad79;height:15px;position:absolute;top:0;left:7px;right:7px;transform:skewY(-14deg)}.gift-mail-seal svg{z-index:1}.gift-ribbon{transform-origin:50%;background:linear-gradient(#e4b96c,#c48b46);border-radius:3px;width:74%;height:15px;display:none;position:absolute;top:44%;left:13%;box-shadow:0 2px 4px #9a6c2620}.gift-celebration--received .gift-ribbon,.gift-celebration--self .gift-ribbon{animation:1.25s ease-in-out both gift-ribbon-left;display:block}.gift-celebration--received .gift-ribbon--right,.gift-celebration--self .gift-ribbon--right{animation-name:gift-ribbon-right;transform:rotate(90deg)}.gift-celebration--received .gift-art,.gift-celebration--self .gift-art{animation-name:gift-unwrapping}.gift-celebration .gift-story h3{text-wrap:balance;color:#294e43;max-width:360px;margin:0 auto 7px;font-size:clamp(1.45rem,4.8vw,1.85rem);line-height:1.2}.gift-item-name{color:#8b795e;margin:0;font-size:.84rem}.gift-address{text-align:left;background:#f0f3e9;border-radius:40px;justify-content:center;align-items:center;gap:10px;width:fit-content;max-width:100%;margin:16px auto 10px;padding:8px 16px 8px 10px;display:flex}.gift-address img{object-fit:contain;width:42px;height:42px}.gift-address span{min-width:0;max-width:240px;line-height:1.3}.gift-address small{color:#75806c;margin-bottom:2px;font-size:.72rem;display:block}.gift-address strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;display:block;overflow:hidden}.gift-address svg{color:#bd8a50;flex-shrink:0;margin-left:6px}.gift-caption{color:#64766a;text-wrap:balance;max-width:320px;margin:12px auto 18px;font-size:.9rem;line-height:1.55}.gift-celebration .gift-done{border-radius:16px;min-width:184px;box-shadow:0 5px 14px #2b745321}.gift-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:0 14px;margin-top:8px;display:flex}.gift-controls button{color:#63786c;min-height:48px;font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:5px 0;font-size:.78rem;display:flex}.gift-controls button:hover{color:#1c6e55}.gift-controls button:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #407c63}.gift-audio-note{color:#6a786e;margin:0;font-size:.75rem}@keyframes gift-sailing{0%{opacity:0;transform:translate(-24px,14px)rotate(-7deg)scale(.88)}18%{opacity:1;transform:translate(3px,-3px)rotate(3deg)scale(1.02)}40%{transform:translate(-5px,3px)rotate(-3deg)}65%{transform:translate(4px,-2px)rotate(2deg)}85%{transform:translate(-2px,1px)rotate(-1deg)}to{opacity:1;transform:none}}@keyframes gift-unwrapping{0%,10%{opacity:0;transform:translateY(18px)scale(.75)}30%{opacity:1;transform:translateY(-5px)rotate(-4deg)scale(1.03)}55%{transform:translateY(2px)rotate(3deg)}80%{transform:rotate(-1deg)}to{opacity:1;transform:none}}@keyframes gift-glow{0%{opacity:0;transform:scale(.75)}35%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:none}}@keyframes gift-wave{0%{opacity:0;transform:translate(-12px)}30%{opacity:.65;transform:translate(6px)}65%{transform:translate(-6px)}to{opacity:.55;transform:none}}@keyframes gift-sparkle{0%{opacity:0;transform:translateY(25px) rotate(var(--angle)) scale(.3)}24%{opacity:.85}to{opacity:0;transform:translateY(-35px) rotate(calc(var(--angle) + 80deg)) scale(.8)}}@keyframes gift-mail{0%,25%{opacity:0;transform:translate(-40px,16px)rotate(-20deg)scale(.5)}55%{opacity:1;transform:translate(5px,-7px)rotate(5deg)scale(1.08)}to{opacity:1;transform:rotate(-9deg)}}@keyframes gift-ribbon-left{0%,20%{opacity:1;transform:scaleX(.8)rotate(-8deg)}to{opacity:0;transform:translate(-130%)rotate(-35deg)}}@keyframes gift-ribbon-right{0%,20%{opacity:1;transform:scaleX(.8)rotate(82deg)}to{opacity:0;transform:translate(100%,-35%)rotate(115deg)}}@media (width<=380px){.souvenir-dialog.souvenir-dialog--celebration{border-radius:22px;padding:12px 16px 14px}.gift-eyebrow{font-size:.65rem}.gift-address{margin-top:12px}.gift-caption{margin-bottom:14px}.gift-controls{gap:0 10px}.gift-controls button{font-size:.74rem}}@media (height<=600px){.gift-scene{max-width:240px}.gift-address{margin:8px auto}.gift-caption{margin:8px auto 12px}.gift-eyebrow{margin:0}}@media (prefers-reduced-motion:reduce){.gift-scene *{animation:none!important}.gift-ribbon{display:none!important}.gift-spark{display:none}.gift-art{opacity:1;transform:none}.gift-mail-seal,.gift-sunwash,.gift-sea{opacity:1}}.gift-celebration--stroopwafel .gift-sunwash{background:radial-gradient(#efd19c99,#f9e7c166 45%,#0000 72%)}.gift-celebration--seashell .gift-sunwash{background:radial-gradient(#b1d9dc88,#e2eee866 45%,#0000 72%)}.gift-celebration--tulips .gift-sunwash{background:radial-gradient(#f2c9b788,#f9e2ce66 45%,#0000 72%)}.gift-celebration--windmill .gift-sunwash{background:radial-gradient(#d4dfad99,#f4e5ba66 45%,#0000 72%)}.gift-celebration--lighthouse .gift-sunwash{background:radial-gradient(#f2ce8e99,#f7e4bd77 45%,#0000 72%)}.gift-celebration--stroopwafel .gift-waves,.gift-celebration--tulips .gift-waves,.gift-celebration--windmill .gift-waves{display:none}.gift-celebration--stroopwafel .gift-sea{background:radial-gradient(#d4ae6755,#0000 70%)}.gift-celebration--tulips .gift-sea,.gift-celebration--windmill .gift-sea{background:radial-gradient(#b5c99855,#0000 70%)}.gift-celebration--stroopwafel .gift-spark{background:#bd8b42;border-radius:50%;width:5px;height:5px}.gift-celebration--tulips .gift-spark{background:#d79a86;border-radius:90% 15% 80% 20%;width:10px;height:15px}.gift-celebration--windmill .gift-spark{background:#99b275}.gift-celebration--stroopwafel.gift-celebration--sent .gift-art{animation-name:gift-bounce}.gift-celebration--seashell.gift-celebration--sent .gift-art{animation-name:gift-shimmer}.gift-celebration--tulips.gift-celebration--sent .gift-art{animation-name:gift-bouquet}.gift-celebration--windmill.gift-celebration--sent .gift-art{animation-name:gift-bounce}.gift-celebration--lighthouse.gift-celebration--sent .gift-art{animation-name:gift-shimmer}.gift-lightbeam{transform-origin:0;clip-path:polygon(0 50%,100% 0,100% 100%);background:linear-gradient(90deg,#f7d37777,#0000);width:65%;height:48%;animation:4.8s ease-in-out both gift-beacon;display:none;position:absolute;top:20%;left:50%}.gift-celebration--lighthouse .gift-lightbeam{display:block}.gift-wrap{background:linear-gradient(135deg,#f8ecd4,#e7cda5);border:1px solid #c9ae7e;border-radius:8px;animation:1.4s ease-in-out both gift-paper;display:none;position:absolute;inset:20% 18% 14%;box-shadow:0 8px 16px #725a3022}.gift-celebration--received .gift-wrap,.gift-celebration--self .gift-wrap{display:block}@keyframes gift-bounce{0%{opacity:0;transform:translateY(22px)scale(.82)}20%{opacity:1;transform:translateY(-10px)scale(1.03)}38%{transform:translateY(4px)scale(.99)}55%{transform:translateY(-4px)}75%{transform:translateY(1px)}to{opacity:1;transform:none}}@keyframes gift-shimmer{0%{opacity:0;transform:translateY(16px)scale(.86)}30%{opacity:1;transform:translateY(-4px)scale(1.03)}65%{transform:translateY(2px)scale(.99)}to{opacity:1;transform:none}}@keyframes gift-bouquet{0%{opacity:0;transform:translateY(20px)rotate(-9deg)scale(.88)}23%{opacity:1;transform:rotate(5deg)scale(1.03)}48%{transform:rotate(-4deg)}72%{transform:rotate(2deg)}to{opacity:1;transform:none}}@keyframes gift-beacon{0%{opacity:0;transform:rotate(-55deg)}25%{opacity:.9}65%{opacity:.8;transform:rotate(15deg)}to{opacity:0;transform:rotate(50deg)}}@keyframes gift-paper{0%,20%{opacity:1;transform:scale(.9)rotate(-5deg)}55%{opacity:.7;transform:scale(1.06)rotate(4deg)}to{opacity:0;transform:translateY(50px)scale(.8)rotate(12deg)}}@media (prefers-reduced-motion:reduce){.gift-wrap,.gift-lightbeam{display:none!important}}.friends-dialog{color:#24474b;background:#fffdf6;border:1px solid #dddccd;border-radius:24px;width:min(620px,100% - 24px);max-height:calc(100dvh - 32px);padding:24px;box-shadow:0 20px 80px #19353d33}.friends-dialog::backdrop{background:#163c4c66}.friends-dialog header,.friends-dialog h2{align-items:center;gap:12px;display:flex}.friends-dialog header{justify-content:space-between}.friends-dialog h2{margin:0;font-size:24px}.friends-dialog h3{font-size:20px;line-height:1.4}.friends-dialog p{line-height:1.5}.friends-dialog button{min-height:48px}.friends-dialog .primary-action,.friends-dialog .secondary-action{justify-content:center;align-items:center;gap:8px;display:flex}.friend-current,.friend-row{align-items:center;gap:14px;min-width:0;padding:12px 0;display:flex}.friend-current strong,.friend-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.friend-portrait{flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:40px;display:inline-flex}.friend-portrait img{object-fit:contain;width:100%;height:100%}.friend-portrait-large{width:112px;height:112px}.friend-incoming{background:#f1f5eb;border:1px solid #d7dfcd;border-radius:20px;padding:20px}.friend-incoming h3,.friend-login-invitation h2{overflow-wrap:break-word}.friend-incoming label,.friend-invitation label{gap:8px;margin:12px 0;display:grid}.friends-dialog select,.friends-dialog input{width:100%;min-width:0;min-height:48px;color:inherit;font:inherit;background:#fff;border:1px solid #c9d5d2;border-radius:10px;padding:10px}.friend-note{color:#4c625b;font-size:14px}.friend-list{border-top:1px solid #dce0d3;margin-top:20px}.friend-invitation{border:1px solid #dce0d3;border-radius:16px;margin-top:12px;padding:16px}.friend-invitation small{line-height:1.5;display:block}.friend-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.friend-login-invitation{color:#24474b;background:#fffdf6;border-radius:20px;grid-column:1/-1;padding:24px}.friend-login-invitation h2{font-size:24px}.friend-entry{justify-content:center;align-items:center;gap:10px;margin:12px auto;display:flex}@media (width<=480px){.friends-dialog{padding:16px}.friends-dialog h2{font-size:22px}.friend-incoming{padding:14px}.friend-actions{flex-direction:column}.friend-actions button{width:100%}}.friends-overview{text-align:left;margin:0 0 32px}.friends-overview>header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.friends-overview h2{align-items:center;gap:10px;margin:0;font-size:22px;display:flex}.friends-count{color:#5b6b60;background:#edf2e8;border-radius:20px;padding:4px 9px;font-size:15px}.friends-overview .friend-entry{min-height:48px;margin:0}.friends-empty{color:#536457;border:1px dashed #cdd7c7;border-radius:16px;padding:20px;line-height:1.5}.friend-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),340px));gap:14px;margin:0;padding:0;list-style:none;display:grid}.friend-card{background:#fffef9;border:1px solid #dce0d3;border-radius:18px;align-items:center;gap:16px;min-width:0;padding:20px;display:flex}.friend-card-copy{min-width:0}.friend-card h3{text-overflow:ellipsis;white-space:nowrap;margin:0 0 8px;font-size:18px;overflow:hidden}.friend-card strong{color:#245b43;font-size:24px}.friend-card p{color:#536457;margin:5px 0 0;font-size:14px}@media (width<=480px){.friends-overview>header{flex-direction:column;align-items:stretch;gap:12px}.friend-cards{grid-template-columns:minmax(0,1fr)}.friend-card{padding:16px}}.friend-card{display:block}.friend-card-identity{align-items:center;gap:14px;display:flex}.friend-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0;display:grid}.friend-stats dt{color:#536457;font-size:13px}.friend-stats dd{color:#245b43;margin:4px 0 0;font-size:22px;font-weight:700}.friend-puzzle-trigger{cursor:zoom-in;background:#fffdf6;border:1px solid #dce0d3;border-radius:12px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.friend-puzzle-trigger:focus-visible{outline-offset:3px;outline:3px solid #62844f}.friend-puzzle-trigger .coloring-picture{width:100%;height:auto;display:block}.friend-puzzle-zoom{color:#245b43;background:#fffef9ed;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:absolute;bottom:8px;right:8px}.friend-puzzle-caption{gap:5px;margin-top:10px;font-size:14px;line-height:1.4;display:grid}.friend-puzzle-caption strong{font-size:14px}.friend-puzzle-dialog{box-sizing:border-box;color:#24474b;background:#fffdf6;border:1px solid #dce0d3;border-radius:20px;width:min(880px,100% - 24px);max-height:calc(100dvh - 24px);padding:24px;overflow-y:auto}.friend-puzzle-dialog::backdrop{background:#163c4c99}.friend-puzzle-dialog header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.friend-puzzle-dialog header p{margin:0 0 8px;font-size:14px}.friend-puzzle-dialog h2{margin:0;font-size:24px}.friend-puzzle-dialog .icon-button{flex-shrink:0;min-width:48px;min-height:48px}.friend-puzzle-dialog .coloring-picture{border-radius:12px;width:100%;height:auto;margin:16px 0;display:block}@media (width<=480px){.friend-puzzle-dialog{padding:16px}.friend-puzzle-dialog h2,.friend-stats dd{font-size:20px}}.friend-mail-actions button{justify-content:center;align-items:center;gap:8px;min-height:48px;display:flex}.owl-mail-refresh{align-items:center;gap:8px;margin:0;display:flex}.owl-mail-setting{align-items:center;gap:12px;min-height:48px;line-height:1.5;display:flex}.owl-mail-setting input{accent-color:#376852;flex-shrink:0;width:22px;height:22px;min-height:22px}.owl-mail-letters{gap:12px;margin:18px 0;padding:0;list-style:none;display:grid}.owl-mail-letters li{background:#fffef9;border:1px solid #dce0d3;border-radius:16px;padding:16px}.owl-mail-letters li.unread{background:#f0f5e9;border-color:#aabc9b}.owl-mail-letters p{margin:0 0 8px}.owl-mail-letters time{color:#536457;font-size:12px}.owl-mail-letters .friend-card-identity{align-items:flex-start}.owl-mail-letters .friend-card-identity>div{min-width:0}.owl-mail-sent{border-top:1px solid #dce0d3;padding-top:8px}.friend-mail-actions{border-top:1px solid #dce0d3;margin-top:16px;padding-top:4px}.friend-mail-actions .friend-actions{flex-direction:column}.friend-mail-actions button{width:100%}@media (width<=480px){.owl-mail-letters li{padding:12px}.owl-mail-letters .friend-portrait{width:42px;height:42px}}.owl-mail-name{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:100%;display:inline-block;overflow:hidden}.owl-mail-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 16px;margin:12px 0 18px;display:flex}.owl-mail-balance{color:#4c625b;align-items:center;gap:7px;margin:0;font-size:14px;display:flex}.owl-mail-balance svg{flex-shrink:0}.owl-mail-page section>h2{margin:0 0 12px;font-size:17px}.owl-mail-empty{color:#536457;border:1px dashed #cdd7c7;border-radius:14px;align-items:center;gap:14px;padding:20px 16px;display:flex}.owl-mail-empty svg{flex-shrink:0}.owl-mail-empty p{margin:0}.owl-mail-letters{margin:0 0 20px}.owl-mail-letters li{box-shadow:0 3px 8px #354b3b06}.owl-mail-letters li.unread{background:#fffef9;border-left:4px solid #62844f}.owl-letter-heading{border-bottom:1px solid #e7e7dc;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:12px;display:flex}.owl-letter-heading .friend-portrait{width:44px;height:44px}.owl-letter-address{flex:1;gap:3px;min-width:0;display:grid}.owl-letter-address strong{min-width:0;font-size:15px;display:block}.owl-letter-stamp{color:#899985;box-sizing:content-box;border:1px dashed #c5ceb9;border-radius:5px;flex-shrink:0;padding:7px;transform:rotate(8deg)}.owl-letter-subject{flex-wrap:wrap;align-items:center;gap:7px;margin:0 0 10px;font-size:14px;font-weight:650;display:flex}.owl-letter-subject>svg{color:#657c55;flex-shrink:0}.owl-letter-new{color:#376852;align-items:center;gap:5px;font-size:12px;display:inline-flex}.owl-letter-new:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.owl-mail-sent{margin-top:20px;padding-top:20px}.owl-mail-settings{border-top:1px solid #dce0d3;margin-top:20px;padding-top:14px;font-size:14px}.owl-mail-refresh .is-refreshing{animation:1s linear infinite owl-mail-spin}@keyframes owl-mail-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.owl-mail-refresh .is-refreshing{animation:none}}.owl-mail-day h3{color:#536457;align-items:center;gap:12px;margin:20px 0 10px;font-size:14px;font-weight:600;display:flex}.owl-mail-day h3:after{content:"";background:#dce0d3;flex:1;height:1px}.owl-mail-letters .owl-letter{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:12px;display:grid}.owl-letter>.friend-portrait{width:44px;height:44px}.owl-letter-content{border-radius:6px;min-width:0}.owl-letter-content:focus-visible{outline-offset:5px;outline:2px solid #62844f}.owl-letter-meta{flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;margin-bottom:6px;display:flex}.owl-letter-meta strong{flex:1;min-width:60px;font-size:15px}.owl-letter-meta time{white-space:nowrap;font-size:13px}.owl-letter-meta .owl-letter-new{white-space:nowrap;font-weight:600}.owl-letter-content .owl-letter-event{align-items:baseline;gap:7px;margin:0;font-size:16px;font-weight:600;line-height:1.45;display:flex}.owl-letter-event svg{color:#657c55;flex-shrink:0;align-self:flex-start;margin-top:3px}.owl-letter-content .owl-letter-event--paint{color:#24664c;font-size:18px}.owl-letter--thanks .owl-letter-event{font-weight:400}.owl-letter--thanks .owl-letter-event svg{color:#946347}.owl-letter-content .owl-letter-note{color:#4c625b;margin:4px 0 0;font-size:14px;line-height:1.5}.owl-letter-content .owl-letter-acknowledged{color:#376852;align-items:center;gap:6px;margin:7px 0 0;font-size:14px;line-height:1.5;display:flex}.owl-letter-acknowledged svg{flex-shrink:0}.owl-letter-actions{flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:10px;display:flex}.owl-letter-actions button{max-width:100%;min-height:48px}.owl-letter-actions .text-action{margin:0;font-size:14px}@media (width<=480px){.owl-mail-letters .owl-letter{grid-template-columns:36px minmax(0,1fr);gap:10px}.owl-mail-letters .owl-letter>.friend-portrait{width:36px;height:36px}.owl-letter-meta{column-gap:8px}.owl-letter-actions{flex-direction:column;align-items:stretch}.owl-letter-actions button{width:100%}}.owl-mail-link{color:#345747;background:#fffef9;border:1px solid #dce2de;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-width:48px;min-height:48px;padding:8px 12px;font-weight:650;text-decoration:none;display:inline-flex}.owl-mail-link[aria-current=page]{background:#eaf1e5;border-color:#aabc9b}.owl-mail-link:hover{background:#f0f5e9}.owl-mail-link:focus-visible{outline-offset:3px;outline:3px solid #62844f}.owl-mail-courier,.owl-mail-envelope{object-fit:contain;flex-shrink:0;display:block}.owl-mail-envelope{width:36px;height:36px}.owl-mail-heading .owl-mail-courier{width:64px;height:64px;animation:.65s ease-out owl-mail-arrive}@keyframes owl-mail-arrive{0%{opacity:0;transform:translate(-12px,5px)rotate(-6deg)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.owl-mail-heading .owl-mail-courier{animation:none}}.owl-mail-count{color:#fff;background:#376852;border-radius:12px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 5px;font-size:12px;display:inline-flex}.owl-mail-page{max-width:760px;margin:0 auto}.owl-mail-back{align-items:center;gap:8px;min-height:48px;margin-bottom:4px;display:inline-flex}.owl-mail-heading{align-items:center;gap:14px;display:flex}.owl-mail-heading>div{flex:1;min-width:0}.owl-mail-page .owl-mail-heading h1{margin:0}.owl-mail-page h1:focus{outline:none}.owl-mail-owner{color:#536457;flex-wrap:wrap;align-items:baseline;gap:0 .3em;margin:4px 0 0;font-size:14px;display:flex}.owl-mail-page .owl-mail-toolbar{margin:8px 0 12px}.owl-mail-owner .owl-mail-name{min-width:0}.owl-mail-sent>summary{cursor:pointer;align-items:center;gap:10px;min-height:48px;font-size:17px;font-weight:650;display:flex}.owl-mail-sent>summary:before{content:"▸"}.owl-mail-sent[open]>summary:before{content:"▾"}.owl-mail-sent>.owl-mail-letters{margin-top:12px}.owl-mail-empty .text-action{min-height:48px;margin-top:4px}@media (width<=760px){.owl-mail-link{padding:8px;position:relative}.owl-mail-link-label{display:none}.owl-mail-count{position:absolute;top:-5px;right:-5px}}.sentence-assembly{max-width:700px;margin:0 auto;padding:clamp(16px,3vw,32px)}.sentence-assembly-heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:12px;display:flex}.sentence-assembly h1{margin:6px 0 12px;font-size:clamp(1.4rem,4vw,2rem);line-height:1.2}.sentence-native{margin:24px 0;font-size:clamp(1.2rem,3vw,1.6rem);line-height:1.45}.sentence-answer,.sentence-bank{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.sentence-answer{background:#f3f7ee;border:2px dashed #a7bdb4;border-radius:18px;min-height:92px;padding:14px}.sentence-bank{padding:22px 0}.sentence-answer button,.sentence-bank button{color:#244b45;min-height:48px;font:inherit;cursor:pointer;background:#fffdf7;border:1px solid #a8b7af;border-radius:12px;padding:10px 16px;font-weight:650;box-shadow:0 3px #dce3d6}.sentence-answer button:disabled{color:#244b45;-webkit-text-fill-color:#244b45;opacity:1;cursor:default}.sentence-bank button:disabled{opacity:.3;box-shadow:none;cursor:default}.sentence-answer button:focus-visible,.sentence-bank button:focus-visible{outline-offset:3px;outline:3px solid #ad6b37}.sentence-tools-row,.sentence-actions{flex-wrap:wrap;gap:12px;margin:10px 0;display:flex}.sentence-tools-row button{min-height:48px}.sentence-feedback{background:#fff3dc;border-radius:18px;margin-top:24px;padding:18px}.sentence-feedback.is-correct{background:#edf4e7}.sentence-feedback h2{margin-top:0;font-size:1.2rem}.sentence-feedback p{line-height:1.55}.sentence-correct{font-size:1.2rem;font-weight:650}.sentence-correct button{vertical-align:middle;margin-left:8px}.sentence-note{margin:22px 0 0;font-size:.85rem;line-height:1.5}.sentence-statistics-disclosure{margin:4px 0}.sentence-statistics-disclosure>summary{box-sizing:border-box;color:#697365;cursor:pointer;width:fit-content;max-width:100%;min-height:48px;padding:15px 0;font-size:12px;line-height:1.5}.sentence-statistics-disclosure>summary:focus-visible{outline-offset:3px;border-radius:4px;outline:3px solid #789349}.sentence-statistics{border-top:1px solid #bacbbb;margin:0 0 18px;padding-top:16px;font-size:.9rem}.sentence-statistics h3{margin:0 0 8px;font-size:1rem}.sentence-statistics p{margin:6px 0}.sentence-statistics dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;margin:12px 0;display:grid}.sentence-statistics dl>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.sentence-statistics dt{line-height:1.4}.sentence-statistics dd{margin:0;font-weight:700}.sentence-statistics-error button{min-height:48px}@media (width<=420px){.sentence-statistics dl{grid-template-columns:1fr;gap:6px}.sentence-assembly{padding:16px 12px}.sentence-answer{padding:10px}.sentence-answer button,.sentence-bank button{padding:10px 13px}.sentence-actions>button{flex:110px}}.speaking-card{text-align:center;background:#fffcf5;border:1px solid #e5decb;border-radius:28px;max-width:680px;margin:12px auto;padding:clamp(16px,3vw,30px);box-shadow:0 12px 40px #61533a0a}.speaking-heading h2{margin:10px 0 0;font-size:clamp(21px,3vw,27px);line-height:1.25}.speaking-badge{color:#647153;letter-spacing:.03em;font-size:12px}.speaking-lesson{text-align:left;grid-template-columns:165px minmax(0,1fr);align-items:center;gap:22px;max-width:530px;margin:22px auto 16px;display:grid}.speaking-owl{object-fit:contain;width:100%;height:165px}.speaking-prompt{min-width:0}.speaking-card .speaking-expected{color:#2f4439;margin:0 0 7px;font-size:clamp(28px,4vw,36px);font-weight:650;line-height:1.25}.speaking-card .speaking-translation{color:#657066;margin:0 0 12px;font-size:17px;line-height:1.4}.speaking-hidden{color:#49654a;align-items:center;gap:8px;display:flex}.speaking-listen{color:#435c3e;min-height:44px;font:inherit;cursor:pointer;background:#f0f3e7;border:1px solid #d9dfcc;border-radius:22px;justify-content:center;align-items:center;gap:7px;padding:10px 14px;font-size:14px;font-weight:600;display:inline-flex}.speaking-listen svg,.speaking-actions svg{flex-shrink:0}.speaking-listen:hover:not(:disabled){background:#e5ebd8}.speaking-card .speaking-text-toggle{color:#6a7469;min-height:38px;padding:9px 0 0;font-size:12px;font-weight:400;display:block}.speaking-capture{flex-direction:column;align-items:center;padding:10px 0 0;display:flex}.speaking-record{color:#fffaf2;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#a7502e;border:5px solid #f0dfbf;border-radius:50%;place-items:center;width:84px;height:84px;display:grid;box-shadow:0 4px 14px #99512420}.speaking-record:hover:not(:disabled){background:#914022}.speaking-record.is-recording{background:#87412e;border-color:#ddb48c;box-shadow:0 0 0 6px #f4e9d4}.speaking-record:disabled{opacity:.6;cursor:default}.speaking-record-status{gap:4px;margin-top:12px;display:grid}.speaking-record-status strong{font-size:17px}.speaking-record-status span{color:#697368;font-size:13px;line-height:1.4}.speaking-live{align-items:center;gap:12px;margin-top:12px;display:flex}.speaking-live meter{accent-color:#7f994f;width:85px;height:12px}.speaking-card .speaking-cancel{background:#f3ebde;border-radius:12px;align-items:center;gap:5px;min-height:48px;padding:10px 18px;font-size:13px;display:inline-flex}.speaking-feedback{padding:12px 0 4px}.speaking-feedback h3{justify-content:center;align-items:center;gap:8px;margin:0 0 10px;font-size:19px;line-height:1.35;display:flex}.speaking-feedback h3 svg{flex-shrink:0}.speaking-feedback.is-success h3{color:#436536}.speaking-tokens{flex-wrap:wrap;justify-content:center;gap:7px;margin:12px 0;padding:0;list-style:none;display:flex}.speaking-tokens li{background:#eff2e6;border-radius:12px;flex-direction:column;gap:4px;padding:8px 11px;display:flex}.speaking-tokens li:not(.speech-matched){background:#f7e8d5}.speaking-tokens strong{font-size:17px}.speaking-tokens span{font-size:12px}.speaking-own{margin:4px 0 16px}.speaking-own audio{display:none}.speaking-review-help{color:#435c3e;margin:0 0 12px;font-size:15px;line-height:1.45}.speaking-own.needs-listen .primary-action{white-space:normal;background:#57783f;border-radius:14px;width:100%;min-height:48px}.speaking-own button svg{flex-shrink:0}.speaking-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin:8px 0 20px;display:flex}.speaking-actions button{white-space:normal;border-radius:14px;min-height:48px;font-size:15px}.speaking-actions .primary-action{background:#57783f}.speaking-footer{border-top:1px solid #e9e5d7;margin-top:12px;padding-top:8px}.speaking-exits{flex-wrap:wrap;justify-content:center;gap:2px 18px;display:flex}.speaking-card .speaking-exits button{color:#66705e;min-height:44px;font-size:13px;font-weight:400}.speaking-details{color:#697365;font-size:12px;line-height:1.5}.speaking-details summary{cursor:pointer;width:fit-content;max-width:100%;margin:auto;padding:10px 0;display:list-item}.speaking-details p{text-align:left;max-width:480px;margin:8px auto}.speaking-error{color:#85442f;max-width:430px;margin:12px auto;font-size:14px;line-height:1.4}.speaking-card button:focus-visible,.speaking-details summary:focus-visible{outline-offset:4px;outline:3px solid #789349}@media (width<=480px){.speaking-card{border-radius:22px;margin:8px auto;padding:18px 16px 12px}.speaking-lesson{text-align:center;grid-template-columns:1fr;gap:6px;margin:12px auto 8px}.speaking-owl{justify-self:center;width:112px;height:112px}.speaking-card .speaking-text-toggle{margin:auto}.speaking-card .speaking-translation{margin-bottom:8px;font-size:15px}.speaking-actions{flex-direction:column;margin-bottom:12px}.speaking-actions button{justify-content:center}.speaking-card .speaking-exits button{font-size:12px}.speaking-exits{gap:0 12px}}@media (prefers-reduced-motion:reduce){.speaking-card *{transition:none;animation:none}}.speaking-local-note{color:#697368;flex-basis:100%;margin:0;font-size:13px;line-height:1.4}.speaking-paint{text-align:left;max-width:420px;margin:12px auto 18px}.speaking-paint .paint-answer{margin-bottom:6px}.speaking-paint>p{color:#5c746b;margin:0 6px;font-size:13px;line-height:1.4}.speaking-step{color:#647153;margin-top:6px;font-size:13px;display:block}.speaking-paint .paint-answer{border-radius:14px;gap:8px;padding:3px 12px 3px 4px}.speaking-paint .paint-vessel{width:38px;height:46px}.speaking-paint .paint-answer-copy strong{font-size:16px}.speaking-paint .paint-answer-copy small{display:none}.speaking-paint>.speaking-paint-remaining{margin-top:5px;font-weight:600}.speaking-next-hint{color:#647153;max-width:430px;margin:8px auto 12px;font-size:14px;line-height:1.45}.speaking-token-label{color:#647153}.speaking-microphone{text-align:left;gap:5px;min-width:0;max-width:420px;margin:12px auto 18px;display:grid}.speaking-microphone label{color:#435c3e;font-size:13px;font-weight:600}.speaking-microphone select{appearance:none;color:#2f4439;width:100%;min-width:0;min-height:48px;font:inherit;text-overflow:ellipsis;background:#fffef9 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23435c3e' stroke-width='2'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") right 12px center no-repeat;border:1px solid #d9dfcc;border-radius:12px;padding:10px 36px 10px 12px;font-size:14px}.speaking-microphone select:focus-visible{outline-offset:3px;outline:3px solid #789349}.speaking-microphone p{color:#697368;margin:0;font-size:12px;line-height:1.4}.speaking-microphone .speaking-microphone-used{color:#435c3e}.speaking-silent-choice{max-width:430px;margin:18px auto 20px}.speaking-silent-choice .secondary-action{color:#435c3e;white-space:normal;background:#eef3e8;border-color:#d9dfcc;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;padding:10px 12px;font-size:14px;display:flex}.speaking-silent-choice svg{flex-shrink:0}.speaking-silent-choice p{color:#697368;margin:7px 0 0;font-size:12px;line-height:1.4}@media (width<=480px){.speaking-silent-choice .secondary-action{gap:6px;padding:10px 8px;font-size:13px}}.speaking-effort{color:#435c3e;background:#f3f0df;border-radius:22px;max-width:430px;margin:14px auto 20px;padding:22px 18px}.speaking-effort-flower{color:#b66b72;fill:#f7ddd5}.speaking-effort h3{margin:10px 0 8px;font-size:21px;line-height:1.3}.speaking-effort p{margin:0;font-size:15px;line-height:1.5}.speaking-word-credit{color:#436536;background:#eff3e6;border-radius:14px;justify-content:center;align-items:center;gap:8px;max-width:430px;margin:12px auto;padding:12px 14px;font-size:15px;line-height:1.4;display:flex}.speaking-word-credit svg{flex-shrink:0}.speaking-review-disclosure{max-width:430px;margin:4px auto}.speaking-review-disclosure>summary{box-sizing:border-box;color:#697365;cursor:pointer;width:fit-content;max-width:100%;min-height:48px;margin:auto;padding:15px 4px;font-size:12px;line-height:1.5}.speaking-review-disclosure>summary:focus-visible{outline-offset:3px;border-radius:4px;outline:3px solid #789349}.speaking-review{text-align:left;color:#435c3e;background:#f8faf3;border:1px solid #d9dfcc;border-radius:14px;margin:0 0 14px;padding:14px 16px}.speaking-review h3{margin:0 0 10px;font-size:16px;line-height:1.35}.speaking-review h4{margin:0 0 4px;font-size:13px;font-weight:500;line-height:1.4}.speaking-review p{margin:4px 0;font-size:14px;line-height:1.45}.speaking-review-direction+.speaking-review-direction{border-top:1px solid #e2e7d8;margin-top:12px;padding-top:10px}.speaking-review .speaking-review-counts,.speaking-review .speaking-review-note{color:#697365;font-size:12px}.speaking-review .speaking-review-note{margin:10px 0 0}.speaking-review .text-action{white-space:normal;min-height:48px}@media (width<=600px),(height<=750px){.speaking-card{border-radius:20px;margin:6px auto;padding:12px;position:relative}.speaking-card .speaking-heading h2{margin:4px 0 0;font-size:18px;line-height:1.25}.speaking-badge{font-size:11px}.speaking-step{margin:0 0 0 6px;font-size:12px;display:inline}.speaking-owl{justify-self:center;width:112px;height:112px}.speaking-lesson{text-align:center;grid-template-columns:1fr;gap:6px;max-width:100%;margin:8px auto 6px;display:grid}.speaking-card .speaking-expected{margin-bottom:5px;font-size:25px;line-height:1.25}.speaking-card .speaking-translation{margin-bottom:6px;font-size:14px;line-height:1.35}.speaking-listen{min-height:48px;padding:8px 12px}.speaking-card .speaking-text-toggle{min-height:48px;margin:0;padding:8px;display:inline-block}.speaking-capture{padding-top:6px}.speaking-record-status{margin-top:8px}.speaking-live{justify-content:center;margin-top:8px}.speaking-own{margin:8px 0}.speaking-review-help{margin-bottom:6px;font-size:14px}.speaking-actions{flex-direction:row;gap:6px;margin:6px 0 8px}.speaking-actions button{flex:120px}.speaking-footer{margin-top:12px}.speaking-silent-choice{margin:0 auto 4px}.speaking-silent-choice p{margin-top:4px}.speaking-microphone{margin:8px auto}.speaking-model-actions{justify-content:center;align-items:center;gap:4px;display:flex}.speaking-model-actions .speaking-listen{min-width:0;font-size:13px}.speaking-card .speaking-text-toggle{white-space:normal;flex-shrink:0;max-width:72px}.speaking-card .speaking-actions button{flex:1 1 0;gap:4px;min-width:0;padding:8px 6px;font-size:14px}.speaking-actions button svg{width:16px}}.vocabulary-journey{background:#fffef9;border:1px solid #e0e3d6;border-radius:20px;margin:0 0 28px;overflow:hidden}.vocabulary-hero{grid-template-columns:minmax(160px,260px) minmax(0,1fr) 150px;align-items:center;gap:28px;padding:28px;display:grid}.vocabulary-owl{text-align:center;margin:0}.vocabulary-owl img{mix-blend-mode:multiply;border-radius:16px;width:100%;height:auto;display:block}.vocabulary-owl figcaption{color:#576452;margin-top:8px;font-size:14px}.vocabulary-copy{min-width:0}.vocabulary-copy h2{margin:6px 0 10px;font-size:clamp(24px,3vw,36px)}.vocabulary-copy .vocabulary-count{color:#245b43;letter-spacing:-.03em;font-size:clamp(32px,4vw,48px)}.vocabulary-copy>p{margin:8px 0 12px}.vocabulary-explanation{color:#536457;font-size:14px;line-height:1.5}.vocabulary-explanation summary{cursor:pointer;text-underline-offset:3px;align-items:center;min-height:44px;text-decoration:underline;display:flex}.vocabulary-explanation p{margin:0 0 12px}.vocabulary-explanation p>strong{margin-bottom:4px;display:block}.vocabulary-count-label{letter-spacing:normal;font-size:20px;font-weight:600;line-height:1.4;display:block}.vocabulary-next{color:#59605a;cursor:pointer;font:inherit;background:#f3f3ef;border:1px dashed #b9bdb6;border-radius:14px;flex-direction:column;align-items:center;gap:7px;padding:12px;display:flex}.vocabulary-next:hover{background:#eeeeea;border-color:#929a91}.vocabulary-next:focus-visible{outline-offset:3px;outline:3px solid #9bb58f}.vocabulary-next img{filter:grayscale(.82)saturate(.2);opacity:.62;mix-blend-mode:multiply;border-radius:10px;width:100%;height:auto}.vocabulary-next>span,.vocabulary-next small{font-size:12px}.vocabulary-next strong{font-size:14px}.vocabulary-next-status{color:#697069;justify-content:center;align-items:center;gap:4px;line-height:1.25;display:flex}.vocabulary-next.future{color:#626762;background:#eeeeeb}.vocabulary-next.future img{filter:grayscale();opacity:.5}.owl-journey{border-top:1px solid #e0e3d6}.owl-journey>summary{cursor:pointer;color:#365e45;align-items:center;gap:10px;min-height:52px;padding:10px 24px;font-weight:650;display:flex}.journey-chevron{flex-shrink:0;margin-left:auto}.owl-journey[open] .journey-chevron{transform:rotate(180deg)}.owl-journey>summary::-webkit-details-marker{display:none}.owl-levels{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0 20px 20px;list-style:none;display:grid}.owl-levels li{text-align:center;background:#fff;border:1px solid #e0e3d6;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:12px;display:flex}.owl-levels li[aria-current]{border:2px solid #62844f}.owl-levels img{width:100%;max-width:160px;height:auto}.owl-levels .locked img{filter:saturate(.2);opacity:.65}.owl-levels strong{font-size:14px}.owl-levels small{color:#62705c;align-items:center;gap:4px;display:flex}.owl-levels time{color:#62705c;font-size:11px}.achievement-notice{text-align:left;background:#fff7e3;border-bottom:1px solid #e3d5ac;align-items:center;gap:20px;padding:20px;animation:.5s ease-out owl-arrival;display:flex}.achievement-notice img{mix-blend-mode:multiply;border-radius:12px;width:120px;height:auto}.achievement-notice h3{margin:4px 0;font-size:22px}.achievement-notice p{margin:6px 0 12px}.vocabulary-result{text-align:left;background:#f1f6e9;border-radius:16px;align-items:center;gap:18px;margin:20px 0;padding:18px;display:flex}.vocabulary-result img{mix-blend-mode:multiply;border-radius:12px;width:112px;height:auto}.vocabulary-result p{margin:5px 0}.vocabulary-added{color:#235d42;font-size:20px}@keyframes owl-arrival{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=1099px){.vocabulary-hero{grid-template-columns:clamp(150px,22vw,220px) minmax(0,1fr);gap:18px;padding:20px}.vocabulary-next{text-align:left;grid-column:1/-1;grid-template-columns:60px minmax(0,1fr) auto;display:grid}.vocabulary-next img{grid-area:1/1/4;width:60px}.vocabulary-next>span,.vocabulary-next strong{grid-column:2}.vocabulary-next small{grid-area:1/3/3}.vocabulary-next .vocabulary-next-status{grid-area:3/2/auto/4;justify-content:flex-start}}@media (width<=480px){.vocabulary-hero{grid-template-columns:minmax(0,1fr);gap:14px;padding:16px}.vocabulary-owl{justify-self:center;width:150px}.vocabulary-copy h2{font-size:25px}.vocabulary-copy .vocabulary-count{font-size:36px}.vocabulary-copy>.primary-action{width:100%}.vocabulary-next{grid-template-columns:48px minmax(0,1fr)}.vocabulary-next img{grid-row:1/5;width:48px}.vocabulary-next small{grid-area:3/2}.vocabulary-next .vocabulary-next-status{grid-area:4/2}.owl-levels{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 12px 12px}.owl-levels li{padding:8px}.owl-journey>summary{padding:10px 16px}.achievement-notice{flex-direction:column;gap:10px;padding:16px}.vocabulary-result{flex-direction:column;align-items:flex-start;padding:14px}.vocabulary-result img{align-self:center;width:96px}}@media (prefers-reduced-motion:reduce){.achievement-notice{animation:none}}.quick-actions{gap:10px;margin-top:16px;display:grid}.quick-actions>button{white-space:normal;width:100%;min-height:48px}.quick-actions>small{color:var(--muted,#647069);line-height:1.5}.daily-plan{background:#f0f5ec;border-radius:14px;margin-top:18px;padding:18px}.daily-plan h3{color:#245b43;align-items:center;gap:8px;margin:0 0 8px;font-size:20px;display:flex}.daily-plan p{margin:8px 0;line-height:1.5}.daily-plan .quick-actions{margin-top:12px}.daily-plan h3 svg{flex-shrink:0}.vocabulary-hero{grid-template-columns:minmax(140px,190px) minmax(0,1fr) minmax(180px,230px);gap:24px;padding:24px}.vocabulary-next{text-align:left;grid-template-columns:52px minmax(0,1fr);gap:6px 10px;display:grid}.vocabulary-next img{grid-area:1/1/4;width:52px}.vocabulary-next>span,.vocabulary-next strong,.vocabulary-next small{grid-column:2}.vocabulary-next .vocabulary-next-status{grid-column:1/-1;justify-content:flex-start;line-height:1.4}.vocabulary-distance{max-width:340px;margin:12px 0 4px}.vocabulary-distance p{color:#536457;margin:0 0 8px;font-size:14px;line-height:1.5}.vocabulary-distance progress{accent-color:#62844f;background:#e6eadf;border:none;border-radius:8px;width:100%;height:8px;display:block;overflow:hidden}.vocabulary-distance progress::-webkit-progress-bar{background:#e6eadf}.vocabulary-distance progress::-webkit-progress-value{background:#62844f;border-radius:8px}.vocabulary-distance progress::-moz-progress-bar{background:#62844f}@media (width<=1099px){.vocabulary-hero{grid-template-columns:150px minmax(0,1fr);gap:18px;padding:20px}.vocabulary-next{grid-column:1/-1}.vocabulary-next small,.vocabulary-next .vocabulary-next-status{grid-row:auto}}@media (width<=480px){.vocabulary-hero{grid-template-columns:72px minmax(0,1fr);align-items:start;gap:12px;padding:16px}.vocabulary-owl{width:72px}.vocabulary-owl figcaption{font-size:11px}.vocabulary-copy .vocabulary-count{font-size:30px}.vocabulary-copy h2{font-size:22px}.vocabulary-copy .section-label{font-size:12px}.vocabulary-distance p{font-size:13px}}.vocabulary-consolidated{color:#245b43;margin:8px 0 0;font-size:18px;line-height:1.5}.vocabulary-consolidated strong{font-size:24px}.vocabulary-hero{grid-template-areas:"owl copy next""owl details next";row-gap:0}.vocabulary-owl{grid-area:owl}.vocabulary-copy{grid-area:copy}.vocabulary-details{grid-area:details;min-width:0}.vocabulary-next{grid-area:next}@media (width<=1099px){.vocabulary-hero{grid-template-areas:"owl copy""owl details""next next"}.vocabulary-next{margin-top:18px}}@media (width<=480px){.vocabulary-hero{grid-template-columns:96px minmax(0,1fr);grid-template-areas:"owl copy""details details""next next"}.vocabulary-owl{width:96px}.vocabulary-count-label{font-size:18px}.vocabulary-distance{max-width:none;margin-top:18px}.vocabulary-next{margin-top:12px}}.training-shell{color:#242b29;background:#fafbfa;flex-direction:column;min-height:100svh;display:flex}.training-shell--library{background:linear-gradient(#fafbfa85,#fafbfa85),url(/delft-tile-background-v2.jpg) top/900px 900px}.training-nav{background:#fff;border-bottom:1px solid #dce2de;justify-content:space-between;align-items:center;gap:16px;min-height:80px;padding:12px max(20px,50% - 640px);display:flex}.training-shell--library .training-nav{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffe6}.training-brand{color:#1b654d;font-size:22px;font-weight:900;text-decoration:none}.training-controls{flex-shrink:0;align-items:center;gap:12px;display:flex}.training-controls select{appearance:none;max-width:160px;height:48px;min-height:48px;color:inherit;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2335443b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 8px center no-repeat;border:1px solid #dce2de;border-radius:6px;padding:0 32px 0 10px}.training-content{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:40px 20px 64px}.training-shell--library .training-content{background:#fafbfaed;box-shadow:0 0 42px #264f6814}.training-content--exercise{padding-top:24px}.training-content h1{margin:8px 0 20px;font-size:32px;line-height:1.2}.training-content h2{margin:0 0 12px;font-size:22px;line-height:1.3}.training-content p{line-height:1.5}.section-label{color:#666f69;margin:0;font-size:13px;font-weight:700}.section-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.account-email{color:#646d68;overflow-wrap:break-word;max-width:40%;font-size:13px}.library-layout{border-top:1px solid #dce2de;grid-template-columns:264px minmax(0,1fr);gap:36px;margin-top:24px;display:grid}.library-main{min-width:0;padding-top:24px}.training-shell .catalog-mobile-trigger,.catalog-backdrop{display:none}.catalog-sidebar{border-right:1px solid #dce2de;min-width:0;padding:24px 24px 40px 0}.catalog-sidebar-header{justify-content:space-between;align-items:center;gap:12px;min-height:48px;display:flex}.catalog-sidebar-header>strong{font-size:18px}.catalog-sidebar .catalog-close{display:none}.catalog-search{color:#646d68;background:#fff;border:1px solid #cbd5ce;border-radius:6px;align-items:center;gap:8px;height:48px;margin:10px 0 20px;padding:0 12px;display:flex}.catalog-search input{color:#242b29;background:0 0;border:0;outline:0;width:100%;min-width:0}.catalog-tree{gap:14px;display:grid}.catalog-level,.catalog-topic{gap:4px;display:grid}.catalog-branch-row{border-left:3px solid #0000;grid-template-columns:32px minmax(0,1fr);align-items:stretch;min-height:40px;display:grid}.catalog-branch-row.topic{color:#4f5a54;padding-left:15px;font-size:14px}.catalog-branch-row:hover{background:#edf3ef}.catalog-branch-row.active{color:#145a43;background:#e6f1eb;border-left-color:#278362}.catalog-expand,.catalog-branch-select{color:inherit;cursor:pointer;background:0 0;border:0}.catalog-expand{justify-content:center;align-items:center;padding:0;display:inline-flex}.catalog-expand[aria-expanded=false] svg{transform:rotate(-90deg)}.catalog-branch-select{text-align:left;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:6px 10px 6px 2px;display:flex}.catalog-branch-select span,.catalog-branch-select strong{min-width:0}.catalog-branch-select small{color:#68716c;flex-shrink:0;font-weight:600}.catalog-branch-row.active .catalog-branch-select{font-weight:700}.catalog-set{color:#35403a;text-align:left;cursor:pointer;background:0 0;border:0;border-left:3px solid #0000;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:44px;padding:7px 10px 7px 42px;display:flex}.catalog-set:hover{background:#edf3ef}.catalog-set.active{color:#145a43;background:#e6f1eb;border-left-color:#278362;font-weight:700}.catalog-set span{min-width:0}.catalog-set small{color:#68716c;flex-shrink:0;font-weight:600}.catalog-empty{font-size:14px}.breadcrumbs{color:#68716c;flex-wrap:wrap;align-items:center;gap:5px;font-size:13px;display:flex}.set-overview{border-bottom:1px solid #dce2de;padding:20px 0 28px}.set-title{align-items:center;gap:28px;display:flex}.set-title>div{min-width:0}.set-title h2{margin:6px 0 0;font-size:30px}.set-title img{aspect-ratio:4/3;object-fit:contain;border-radius:12px;flex-shrink:0;width:clamp(200px,25vw,300px);height:auto}.mode-selector{border:0;min-width:0;margin:24px 0 0;padding:0}.mode-selector-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;margin-bottom:16px;display:flex}.mode-selector-heading h3{color:#26312c;margin:0;font-size:18px}.mode-selector-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.mode-card{color:#26312c;background:#ffffffe6;border:1px solid #cdd8d1;border-radius:12px;grid-template-rows:1fr auto;min-width:0;padding:16px;transition:border-color .15s,background .15s;display:grid;position:relative}.mode-card:has(.mode-card-select:hover:not(:disabled)){background:#f7fbf8;border-color:#8bb8a5}.mode-card.selected{background:#edf7f1;border-color:#278362;box-shadow:inset 0 0 0 1px #278362}.mode-card.unavailable{background:#f3f5f3}.mode-card-select{width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:56px minmax(0,1fr);align-items:start;gap:12px;padding:0;display:grid}.training-shell .mode-card-select:disabled{opacity:1;color:#68716c;cursor:default}.mode-card.unavailable .mode-card-illustration{opacity:.55}.mode-card-select:not(:disabled):after{content:"";border-radius:12px;position:absolute;inset:0}.mode-card-select:focus-visible{outline-offset:5px;border-radius:4px;outline:3px solid #278362}.mode-card-illustration{place-items:center;width:56px;height:56px;display:grid;position:relative}.mode-card-illustration .mode-illustration{width:56px;height:56px}.mode-card.selected .mode-card-illustration{animation:.48s cubic-bezier(.2,.8,.3,1.2) mode-card-select}.mode-card-check{color:#fff;background:#278362;border:2px solid #edf7f1;border-radius:50%;place-items:center;width:22px;height:22px;display:grid;position:absolute;bottom:-2px;right:-2px}.mode-card-copy{gap:5px;min-width:0;display:grid}.mode-card-copy strong{font-size:15px;line-height:1.3}.mode-card-copy>span{color:#59635d;font-size:13px;line-height:1.4}.mode-card-copy small{color:#68716c;margin-top:3px;font-size:12px;font-weight:700}.mode-card-action{justify-content:flex-end;align-items:center;min-height:48px;margin-top:12px;display:flex}.mode-card-action .primary-action{z-index:1;min-height:48px;position:relative}.mode-card-action>small{color:#59635d;font-size:12px;line-height:1.4}.set-mastery{grid-template-columns:minmax(150px,1fr) auto;align-items:end;gap:8px 16px;margin-top:24px;display:grid}.set-mastery>div{grid-column:1/-1;justify-content:space-between;gap:16px;font-size:14px;display:flex}.set-mastery>div span,.set-mastery small{color:#646d68}.set-mastery progress{appearance:none;background:#dfe6e1;border:0;border-radius:4px;width:100%;height:8px;overflow:hidden}.set-mastery progress::-webkit-progress-bar{background:#dfe6e1}.set-mastery progress::-webkit-progress-value{background:#278362}.set-mastery progress::-moz-progress-bar{background:#278362}.progress-summary{border-top:1px solid #e3e8e5;border-bottom:1px solid #e3e8e5;grid-template-columns:repeat(4,minmax(0,1fr));margin:20px 0 0;display:grid}.progress-summary>div{border-right:1px solid #e3e8e5;min-width:0;padding:14px 12px;position:relative}.progress-summary>div:first-child{padding-left:0}.progress-summary>div:last-child{border-right:0}.progress-summary dt{color:#646d68;font-size:12px;line-height:1.3}.progress-summary dd{align-items:center;gap:3px;margin:4px 0 0;font-size:20px;font-weight:800;display:flex}.progress-summary .due dd{color:#875c16}.metric-help{display:inline-flex}.metric-help-button{color:#66736c;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex}.metric-help-button:hover,.metric-help-button:focus-visible{color:#1b654d;background:#e8efea;outline:none}.metric-help-button:focus-visible{box-shadow:0 0 0 2px #8bb8a5}.metric-explanation{z-index:10;color:#35403a;white-space:pre-line;opacity:0;visibility:hidden;pointer-events:none;background:#fff;border:1px solid #cdd8d1;border-radius:6px;width:min(360px,100vw - 32px);max-height:min(520px,100vh - 32px);padding:12px 14px;font-size:13px;font-weight:400;line-height:1.45;transition:opacity .15s,transform .15s,visibility 0s linear .15s;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;transform:translateY(-3px);box-shadow:0 10px 28px #141e1829}.progress-metric:last-child .metric-explanation{left:auto;right:0}.metric-help:hover .metric-explanation,.metric-help:focus-within .metric-explanation,.metric-help.open .metric-explanation{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;transform:translateY(0)}.availability-state{border-top:1px solid #dce2de;border-bottom:1px solid #dce2de;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:24px;padding:18px 0;display:grid}.availability-state>svg{color:#796184}.availability-state p{color:#646d68;margin:4px 0 0;font-size:14px}.availability-state.set-complete{grid-template-columns:196px minmax(0,1fr);gap:24px;padding:22px 0}.completion-celebration{color:#1b654d;justify-items:center;gap:8px;display:grid}.completion-award{color:#966710;opacity:0;background:#fff2c9;border-radius:50%;place-items:center;width:52px;height:52px;animation:.45s cubic-bezier(.2,.8,.3,1.3) .78s forwards completion-award;display:grid;transform:scale(.65)rotate(-8deg);box-shadow:0 0 0 6px #fff9e8}.completion-modes{gap:8px;display:flex}.completion-mode{opacity:0;background:#edf6f1;border:1px solid #cdded5;border-radius:50%;place-items:center;width:42px;height:42px;animation:.3s ease-out forwards completion-mode;display:grid;position:relative;transform:translateY(6px)scale(.9)}.completion-mode .mode-illustration{width:38px;height:38px}.completion-mode:nth-child(2){animation-delay:.14s}.completion-mode:nth-child(3){animation-delay:.28s}.completion-mode:nth-child(4){animation-delay:.42s}.completion-check{color:#fff;background:#278362;border:2px solid #fafbfa;border-radius:50%;place-items:center;width:18px;height:18px;animation:.25s cubic-bezier(.2,.8,.3,1.35) .2s forwards completion-check;display:grid;position:absolute;bottom:-3px;right:-3px;transform:scale(0)}.completion-mode:nth-child(2) .completion-check{animation-delay:.34s}.completion-mode:nth-child(3) .completion-check{animation-delay:.48s}.completion-mode:nth-child(4) .completion-check{animation-delay:.62s}.completion-copy>strong{font-size:18px}.availability-state .completion-copy>p{margin-top:5px}.availability-state .completion-next-review{color:#48534d;margin-top:10px;font-weight:700}@keyframes completion-mode{to{opacity:1;transform:translateY(0)scale(1)}}@keyframes completion-check{to{transform:scale(1)}}@keyframes completion-award{to{opacity:1;transform:scale(1)rotate(0)}}@keyframes mode-card-select{0%{transform:scale(.88)rotate(-4deg)}55%{transform:scale(1.06)rotate(2deg)}to{transform:scale(1)rotate(0)}}.training-shell button{gap:8px;line-height:1.4}.training-shell button:focus-visible,.training-shell select:focus-visible,.training-shell input:focus-visible,.word-preview summary:focus-visible{outline-offset:3px;outline:3px solid #c096cf}.icon-button{color:#35443b;cursor:pointer;background:#fff;border:1px solid #dce2de;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.icon-button:hover,.secondary-action:hover{background:#edf3ef}.secondary-action,.text-action{color:#38453c;cursor:pointer;background:#fff;border:1px solid #cbd5ce;border-radius:6px;justify-content:center;align-items:center;min-height:48px;padding:10px 16px;font-weight:600;display:inline-flex}.text-action{color:#76606a;background:0 0;border-color:#0000}.training-shell button:disabled{opacity:.5;cursor:not-allowed}.training-shell .primary-action{padding:12px 20px}.mode-illustration{object-fit:contain;flex:none;display:block}.modal-backdrop{z-index:50;background:#19221d8c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.leave-dialog{background:#fff;border:1px solid #dce2de;border-radius:8px;width:min(100%,440px);padding:32px;position:relative;box-shadow:0 24px 64px #141e183d}.leave-dialog-icon{color:#8b3f5c;align-items:center;width:40px;height:40px;margin-bottom:16px;display:flex}.leave-dialog h2{margin:0 44px 8px 0;font-size:24px}.leave-dialog p{color:#59635d;margin:0}.leave-dialog-close{border-color:#0000;width:40px;height:40px;position:absolute;top:20px;right:20px}.leave-dialog-actions{justify-content:flex-end;gap:10px;margin-top:28px;display:flex}.danger-action{color:#fff;cursor:pointer;background:#8b3f5c;border:1px solid #8b3f5c;border-radius:6px;justify-content:center;align-items:center;min-height:48px;padding:10px 18px;font-weight:700;display:inline-flex}.danger-action:hover{background:#75334c;border-color:#75334c}.word-preview{border-bottom:1px solid #dce2de;padding:20px 0}.word-preview summary{cursor:pointer;padding:10px 0;font-weight:600}.word-grid{grid-template-columns:1fr 1fr;gap:0 32px;margin-top:16px;display:grid}.word-row{border-top:1px solid #e5e9e6;justify-content:space-between;gap:16px;min-width:0;padding:12px 0;display:flex}.word-copy,.word-progress{flex-direction:column;min-width:0;display:flex}.word-copy span,.word-progress small{color:#646d68;margin-top:4px;font-size:13px}.word-progress{text-align:right;align-items:flex-end}.word-progress strong{color:#1b654d;font-size:13px}.history-section{margin-top:36px}.muted{color:#646d68}.calendar-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;display:flex}.calendar-heading h2{margin:0}.calendar-navigation{grid-template-columns:48px minmax(150px,1fr) 48px;align-items:center;gap:8px;display:grid}.calendar-navigation strong{text-align:center;text-transform:capitalize}.training-calendar{table-layout:fixed;border-spacing:0;border-collapse:separate;background:#fff;border:1px solid #dce2de;border-radius:8px;width:100%;overflow:hidden}.training-calendar th{color:#646d68;text-transform:capitalize;border-bottom:1px solid #dce2de;height:38px;padding:6px;font-size:12px;font-weight:700}.calendar-day{vertical-align:top;color:#35403a;border-bottom:1px solid #e3e8e5;border-right:1px solid #e3e8e5;height:64px;padding:8px;position:relative}.training-calendar th:last-child,.calendar-day:last-child{border-right:0}.training-calendar tbody tr:last-child .calendar-day{border-bottom:0}.calendar-day time{border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;display:inline-flex}.calendar-day.today time{color:#145a43;font-weight:800;box-shadow:inset 0 0 0 2px #278362}.calendar-day.activity{background:#edf7f1}.calendar-day.activity time{color:#fff;background:#278362;font-weight:800}.calendar-day.activity.today time{box-shadow:0 0 0 2px #fff,0 0 0 4px #278362}.calendar-count{color:#145a43;background:#d8ebe0;border-radius:11px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:12px;font-weight:800;display:inline-flex;position:absolute;bottom:8px;right:9px}.calendar-empty{margin:12px 0 0;font-size:14px}.answer-review{margin:0;padding:0;list-style:none}.exercise{max-width:640px;margin:0 auto}.feedback-reaction{z-index:40;pointer-events:none;background:#12231c61;place-items:center;padding:24px;animation:1.8s both feedback-reaction;display:grid;position:fixed;inset:0}.feedback-bouquet{aspect-ratio:1;background:#fffdf5;border-radius:36px;width:min(220px,65vw);animation:1.8s both feedback-bloom;box-shadow:0 18px 56px #10231a40}.feedback-bouquet img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.feedback-title{flex-wrap:wrap}.feedback-praise{color:#426b58;font-size:14px;font-weight:400}.completion-postcard{opacity:0;background:#fffdf5;border-radius:20px;width:min(100%,420px);margin:0 auto 24px;animation:.62s cubic-bezier(.2,.8,.3,1) forwards completion-postcard-enter;overflow:hidden;transform:translateY(10px)scale(.975);box-shadow:0 12px 34px #1f43311a}.completion-art{aspect-ratio:3/2;position:relative;overflow:hidden}.completion-postcard img{object-fit:cover;width:100%;height:100%;animation:5.5s ease-out forwards completion-postcard-image;display:block;transform:scale(1)}.completion-postcard figcaption{color:#276349;text-align:center;padding:12px 16px 18px;font-size:18px;font-weight:600}.completion-petals{pointer-events:none;position:absolute;inset:0;overflow:hidden}.completion-petals span{top:-12%;left:var(--petal-left);opacity:0;width:9px;height:14px;transform:rotate(var(--petal-rotation));animation:completion-petal 1.35s var(--petal-delay) cubic-bezier(.25, .65, .45, 1) forwards;background:#ed826d;border-radius:80% 15% 75% 20%;position:absolute}.completion-petals span:nth-child(3n+2){background:#f2b24f;width:7px;height:11px}.completion-petals span:nth-child(3n){background:#e9a1a6}@keyframes completion-postcard-enter{to{opacity:1;transform:translateY(0)scale(1)}}@keyframes completion-postcard-image{to{transform:scale(1.025)}}@keyframes completion-petal{0%{opacity:0;translate:0 -8px}14%{opacity:.9}to{opacity:0;translate:18px 310px;rotate:240deg}}@keyframes feedback-reaction{0%,to{opacity:0}12%,66%{opacity:1}}@keyframes feedback-bloom{0%{transform:scale(.86)}18%,66%{transform:scale(1)}to{transform:scale(.98)}}.exercise.has-feedback{grid-template-columns:minmax(280px,2fr) minmax(480px,3fr);column-gap:40px;max-width:920px;display:grid}.exercise.has-feedback .exercise-toolbar,.exercise.has-feedback progress,.exercise.has-feedback .exercise-mode{grid-column:1/-1}.exercise.has-feedback .exercise-mode{flex-wrap:wrap;grid-area:3/1}.exercise.has-feedback .exercise-question{grid-area:4/1;margin:24px 0}.exercise.has-feedback form{grid-area:5/1}.exercise-toolbar{align-items:center;gap:16px;margin-bottom:20px;font-size:14px;display:flex}.exercise-toolbar>span{flex:1}.exercise-toolbar>strong{white-space:nowrap}:is(.exercise,.session-header) progress{appearance:none;background:#e0e7e1;border:0;border-radius:3px;width:100%;height:6px;display:block;overflow:hidden}:is(.exercise,.session-header) progress::-webkit-progress-bar{background:#e0e7e1}:is(.exercise,.session-header) progress::-webkit-progress-value{background:#278362}:is(.exercise,.session-header) progress::-moz-progress-bar{background:#278362}.exercise-mode{align-items:center;gap:12px;min-width:0;margin-top:18px;display:flex}.exercise-mode .mode-illustration{width:58px;height:58px}.exercise-mode>div{gap:2px;min-width:0;display:grid}.exercise-mode>div span{color:#68716c;font-size:12px;font-weight:600}.exercise-mode>div strong{color:#26312c;font-size:15px;line-height:1.3}.exercise-voice-toggle{color:#285b46;cursor:pointer;background:#fff;border:1px solid #b9c8c0;border-radius:7px;justify-content:center;align-items:center;min-height:48px;margin-left:auto;padding:8px 11px;font-size:13px;font-weight:800;display:inline-flex}.exercise-voice-toggle+.exercise-mode-reinforcement{margin-left:0}.exercise-mode-reinforcement{color:#6f4b12;white-space:nowrap;background:#fff3d6;border:1px solid #d8bd84;border-radius:999px;align-items:center;gap:5px;margin-left:auto;padding:5px 8px;font-size:12px;font-weight:700;display:inline-flex}.introduction-card{grid-template-columns:minmax(220px,300px) minmax(0,1fr);align-items:start;gap:32px;margin-top:22px;display:grid}.introduction-image{aspect-ratio:1;object-fit:cover;background:#edf0ee;border-radius:6px;width:100%;height:auto;display:block}.introduction-details{min-width:0}.introduction-word{align-items:center;gap:12px;display:flex}.introduction-word h1{flex:1;min-width:0;margin:8px 0;font-size:38px}.introduction-translation{margin:4px 0 16px;font-size:22px;display:block}.introduction-definition{color:#4e5953;margin:0 0 16px}.interesting-fact{color:#51431e;background:#fffaf0;border:1px solid #ead59e;border-radius:8px;margin:0 0 16px;padding:12px 14px}.interesting-fact>div{color:#785b15;align-items:center;gap:8px;display:flex}.interesting-fact svg{flex:none}.interesting-fact strong{font-size:14px}.interesting-fact p{overflow-wrap:break-word;margin:6px 0 0;line-height:1.45}.introduction-continue{margin-top:12px}.reinforcement progress::-webkit-progress-value{background:#9a6818}.reinforcement progress::-moz-progress-bar{background:#9a6818}.exercise-question{margin:24px 0 28px}.answer-word-type{font-weight:600;display:block}.reinforcement .exercise-question{margin-top:18px}.exercise-question h1{margin:14px 0;font-size:38px}.prompt-word{align-items:center;gap:12px;display:flex}.prompt-word h1{min-width:0}.word-context{color:#334b58;background:#f4f8fa;border:1px solid #cbd9e1;border-radius:7px;align-items:flex-start;gap:8px;width:fit-content;max-width:100%;margin:0 0 14px;padding:9px 11px;font-size:14px;line-height:1.4;display:flex}.word-context svg{flex:none;margin-top:1px}.word-context>span{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.definition-reveal{align-items:center;gap:12px;display:flex}.definition-reveal p{flex:1;min-width:0}.question-image{aspect-ratio:1;object-fit:cover;background:#edf0ee;border-radius:6px;width:min(100%,360px);height:auto;margin:18px 0;display:block}.answer-label{margin-bottom:10px;font-size:14px;font-weight:600;display:block}.answer-input{color:#242b29;background:#fff;border:1px solid #a9b8ae;border-radius:6px;width:100%;min-height:60px;padding:12px 16px;font-size:22px}.answer-input:focus{border-color:#278362;outline:3px solid #d4e9de}.answer-input:disabled{color:#57625b;background:#f0f3f1}.exercise-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.assistant-action{gap:8px;padding-block:6px}.owl-assistant-avatar{object-fit:cover;border-radius:9px;flex:none;width:30px;height:30px}.hint-text{color:#785b15;flex-wrap:wrap;align-items:baseline;gap:6px 14px;font-weight:700;display:flex}.hint-word{white-space:nowrap;gap:5px;display:inline-flex}.hint-word.hint-article{gap:0}.hint-space{display:none}.hint-repeat-notice{color:#785b15;align-items:center;gap:7px;width:fit-content;margin-top:10px;font-size:14px;font-weight:600;line-height:1.4;display:flex}.hint-repeat-notice svg{flex-shrink:0}.exercise.keyboard-open .exercise-toolbar{margin-bottom:8px}.exercise.keyboard-open .exercise-mode{margin-top:8px}.exercise.keyboard-open .exercise-mode .mode-illustration{width:44px;height:44px}.exercise.keyboard-open .exercise-question{margin-top:12px;margin-bottom:12px;scroll-margin-top:8px}.exercise.keyboard-open .exercise-question h1,.exercise.keyboard-open .question-image{width:clamp(132px,40vw,160px);margin-block:6px}.exercise.keyboard-open .exercise-question .muted{margin-block:6px}.exercise.keyboard-open .word-context{margin-bottom:6px;padding-block:6px}.exercise.keyboard-open .answer-label{margin-bottom:6px}.exercise.keyboard-open .answer-input{min-height:52px}.exercise.keyboard-open .exercise-actions{margin-top:10px}@media (width>=700px){.exercise.keyboard-open:has(.question-image){grid-template-columns:minmax(180px,220px) minmax(0,1fr);column-gap:28px;max-width:760px;display:grid}.exercise.keyboard-open:has(.question-image) .exercise-toolbar{grid-column:1/-1}.exercise.keyboard-open:has(.question-image) progress{grid-column:1/-1}.exercise.keyboard-open:has(.question-image) .exercise-mode{grid-column:1/-1}.exercise.keyboard-open:has(.question-image) .exercise-mode{grid-row:3}.exercise.keyboard-open:has(.question-image) .exercise-question{grid-area:4/1}.exercise.keyboard-open:has(.question-image) form{grid-area:4/2;margin-top:12px}.exercise.keyboard-open:has(.question-image) .question-image{width:100%}}.answer-feedback{border-top:2px solid #278362;margin-top:28px;padding:24px 0}.has-feedback .answer-feedback{grid-area:3/2/6;margin-top:24px;padding-top:16px}.answer-feedback.incorrect{border-color:#9c5c73}.feedback-title{color:#1b654d;align-items:center;gap:10px;display:flex}.incorrect .feedback-title{color:#8b3f5c}.feedback-content{grid-template-columns:minmax(180px,220px) minmax(0,1fr);align-items:start;gap:24px;margin-top:16px;display:grid}.feedback-content.without-image{grid-template-columns:1fr}.feedback-details{min-width:0}.word-image{aspect-ratio:1;object-fit:cover;background:#edf0ee;border-radius:6px;width:100%;height:auto;margin:0;display:block}.answer-reveal{align-items:center;gap:12px;font-size:24px;display:flex}.answer-comparison{gap:10px;margin:0;display:grid}.answer-comparison-row{grid-template-columns:96px minmax(0,1fr);align-items:baseline;gap:12px;display:grid}.answer-comparison-row dt{color:#68736d;font-size:13px;font-weight:600}.answer-comparison-row dd{align-items:center;gap:12px;min-width:0;margin:0;font-size:24px;font-weight:700;display:flex}.answer-comparison-text{overflow-wrap:break-word;min-width:0}.answer-comparison del,.answer-comparison mark{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:2px;padding:1px 2px}.answer-comparison del{color:#923d54;background:#fae9ee;text-decoration-thickness:2px}.answer-comparison mark{color:#176347;background:#dff2e8}.feedback-progress{color:#2f4a3d;background:#f3f8f5;border:1px solid #cfe1d8;border-radius:8px;gap:4px;margin:14px 0 16px;padding:12px 14px;display:grid}.feedback-progress>strong{color:#1b654d;font-size:16px}.feedback-progress>span{font-size:14px}.easy-action{color:#654b0d;text-align:left;cursor:pointer;background:#fffaf0;border:1px solid #d4b15b;border-radius:7px;align-items:center;gap:10px;width:100%;min-height:48px;margin-top:8px;padding:9px 12px;display:flex}.easy-action:hover,.easy-action[aria-pressed=true]{background:#fff3d7;border-color:#b8891f}.easy-action svg{flex-shrink:0}.easy-action span{gap:1px;display:grid}.easy-action strong{font-size:14px}.easy-action small{font-size:12px;font-weight:500;line-height:1.3}.answer-feedback>p{margin:8px 0 24px}.word-definition{color:#4e5953;margin:12px 0 16px}.word-definition p{margin:0}.sentence-reveal{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;margin:8px 0 16px;display:grid}.sentence-reveal p{flex:1;margin:0}.sentence-tools{flex-shrink:0;gap:8px;display:flex}.sentence-translation{color:#26332c;background:#edf7f2;border-left:3px solid #278362;grid-column:1/-1;padding:9px 11px;font-size:14px;font-weight:500;line-height:1.4;display:none}.sentence-reveal.translation-open .sentence-translation{display:block}.sentence-reveal:has(.sentence-translation-control:hover) .sentence-translation{display:block}.sentence-reveal:has(.sentence-translation-control:focus-within) .sentence-translation{display:block}.sentence-translation-button[aria-expanded=true]{color:#1b654d;background:#edf7f2;border-color:#278362}.session-result{max-width:640px;margin:0 auto}.result-count{color:#1b654d;margin-top:32px;font-size:68px;font-weight:800;line-height:1.1}.result-count strong{font:inherit}.result-count .result-total{color:#818a84;font-size:30px}.result-actions{flex-wrap:wrap;gap:12px;margin:24px 0 36px;display:flex}.answer-review li{border-top:1px solid #dce2de;align-items:center;gap:16px;padding:16px 0;display:flex}.answer-review li>svg{flex-shrink:0}.answer-review li>span{flex:1;min-width:0}.answer-review-tag{color:#6f4b12;background:#fff3d6;border:1px solid #d8bd84;border-radius:4px;align-items:center;gap:5px;width:fit-content;margin-bottom:7px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1.3;display:inline-flex}.answer-review-tag svg{flex-shrink:0}.answer-review-prompt{display:block}.answer-review strong{margin-top:6px;font-size:15px;display:block}.answer-review small{overflow-wrap:break-word;text-align:right;color:#646d68;max-width:40%}.training-error{color:#923d54}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1099px){.training-content:not(.training-content--exercise){max-width:960px}.training-shell .catalog-mobile-trigger{margin-top:4px;display:inline-flex}.library-layout{margin-top:16px;display:block}.catalog-backdrop{z-index:20;background:#19221d73;border:0;width:100%;height:100%;padding:0;display:block;position:fixed;inset:0}.catalog-sidebar{z-index:21;box-sizing:border-box;visibility:hidden;background:#fafbfa;border:0;width:min(380px,100vw - 32px);max-width:calc(100vw - 32px);padding:20px;transition:transform .18s,visibility 0s linear .18s;position:fixed;inset:0 auto 0 0;overflow-y:auto;transform:translate(-105%);box-shadow:12px 0 36px #141e182e}.catalog-sidebar.open{visibility:visible;transition-delay:0s;transform:translate(0)}.catalog-sidebar .catalog-close{display:inline-flex}}@media (width<=860px){.exercise.has-feedback{max-width:640px;display:block}.has-feedback .answer-feedback{margin-top:28px;padding-top:24px}.feedback-content{grid-template-columns:1fr;gap:20px;margin-top:20px}.word-image{width:min(100%,360px)}}@media (width<=600px){.training-shell--library{background-size:720px 720px}.training-shell--library .training-content{box-shadow:none;background:#fafbfaeb}.training-nav{grid-template-columns:auto minmax(0,1fr);gap:8px 12px;padding:12px 16px;display:grid}.training-nav .family-bar{width:100%}.training-nav .training-controls{grid-column:1/-1;justify-content:flex-end}.training-brand{font-size:18px}.training-controls{gap:6px}.training-controls select{width:128px;max-width:128px;font-size:14px}.training-content{padding:28px 16px 48px}.training-content--exercise{padding-top:16px}.training-content h1{font-size:28px}.section-heading{flex-direction:column;align-items:flex-start;gap:0;padding-bottom:20px}.account-email{max-width:100%}.set-title h2{font-size:26px}.set-title{flex-direction:column;align-items:stretch;gap:16px}.set-title img{align-self:center;width:100%;max-width:360px}.mode-selector-options{grid-template-columns:1fr}.mode-selector-heading{flex-direction:column;align-items:stretch}.mode-card-action .primary-action{width:100%}.progress-summary{grid-template-columns:1fr 1fr}.progress-summary>div:nth-child(2){border-right:0}.progress-summary>div:nth-child(-n+2){border-bottom:1px solid #e3e8e5}.progress-summary>div:nth-child(3){padding-left:0}.progress-summary>div:nth-child(2n) .metric-explanation{left:auto;right:0}.progress-summary>div:nth-child(odd) .metric-explanation{left:0;right:auto}.availability-state{grid-template-columns:auto minmax(0,1fr);align-items:start}.availability-state.set-complete{text-align:center;grid-template-columns:1fr;gap:18px}.availability-state .primary-action{grid-column:1/-1;width:100%}.word-grid{grid-template-columns:1fr}.exercise-mode{align-items:center;gap:9px}.exercise-mode .mode-illustration{width:50px;height:50px}.exercise-voice-toggle{padding-inline:9px}.exercise-mode-reinforcement{padding-inline:7px}.exercise-question{margin-top:30px}.exercise-question h1{font-size:32px}.introduction-card{grid-template-columns:1fr;gap:20px;margin-top:24px}.introduction-image{width:min(100%,320px)}.introduction-word h1{font-size:32px}.introduction-continue,.exercise-actions>.primary-action{width:100%}.exercise-actions>.secondary-action{flex:1;padding-inline:10px;font-size:14px}.exercise-actions>.text-action{padding-inline:8px;font-size:14px}.answer-comparison-row{grid-template-columns:1fr;gap:3px}.modal-backdrop{align-items:end;padding:12px}.leave-dialog{padding:28px 20px 20px}.leave-dialog-actions{grid-template-columns:1fr;display:grid}.leave-dialog-actions .leave-dialog-stay{order:2}.calendar-heading{flex-direction:column;align-items:stretch;gap:10px}.calendar-navigation{grid-template-columns:48px minmax(0,1fr) 48px}.calendar-day{height:48px;padding:4px}.calendar-day time{width:28px;height:28px;font-size:13px}.calendar-count{min-width:16px;height:16px;padding:0 4px;font-size:10px;bottom:3px;right:3px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.completion-award,.completion-mode,.completion-check,.mode-card.selected .mode-card-illustration{opacity:1;animation:none;transform:none}.feedback-reaction{display:none}.completion-postcard,.completion-postcard img{opacity:1;animation:none;transform:none}.completion-petals{display:none}}.introduction-card.without-image{grid-template-columns:minmax(0,1fr)}.book-pilot-note{color:#566e69;font-size:.9rem;line-height:1.5}.form-instruction p{margin:0 0 10px}.form-base{font-size:1rem}.form-sentence{margin:12px 0 20px;font-size:clamp(1.15rem,3vw,1.65rem);line-height:2.8}.form-gap.answer-input{vertical-align:middle;width:9ch;max-width:100%;min-height:48px;font-size:inherit;margin:4px 6px;padding:8px;display:inline-block}.form-sentence-segment{white-space:normal}.form-word-translation{color:#31463b;margin:0 0 12px;font-size:18px;display:block}.letter-assembly{background:#f5faf6;border:1px solid #cdded5;border-radius:16px;min-width:0;margin:16px 0;padding:16px}.letter-assembly p{margin:0 0 12px;font-size:.9rem;line-height:1.5}.assembly-tiles,.assembly-articles,.assembly-controls{flex-wrap:wrap;gap:8px;display:flex}.letter-assembly button{color:#245d4d;min-width:48px;min-height:48px;font:inherit;cursor:pointer;background:#fff;border:1px solid #b9d1c3;border-radius:10px}.assembly-tiles button,.assembly-articles button{font-size:1.2rem;font-weight:700}.letter-assembly button:disabled{opacity:.35;cursor:default}.letter-assembly button:focus-visible{outline-offset:2px;outline:3px solid #297e65}.assembly-articles button[aria-pressed=true]{color:#fff;background:#245d4d}.assembly-slots{flex-wrap:wrap;align-items:center;gap:4px;margin:14px 0;display:flex}.assembly-word{flex-wrap:wrap;gap:3px;max-width:100%;display:flex}.assembly-slot{border-bottom:2px solid #9bbdaf;justify-content:center;align-items:center;width:25px;min-height:36px;font-size:1.25rem;font-weight:700;display:inline-flex}.assembly-space{width:10px}.assembly-controls{margin-top:12px}.assembly-controls button{padding:8px 10px;font-size:.85rem}.training-shell [hidden]{display:none!important}.library-navigation{background:#fffefb;border-bottom:1px solid #dce2de;gap:8px;padding:10px max(20px,50% - 620px);display:flex}.library-navigation a{color:#536259;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:10px 18px;font-weight:650;text-decoration:none;display:inline-flex}.library-navigation a[aria-current=page]{color:#23563f;background:#eaf1e5}.library-navigation a:focus-visible{outline-offset:2px;outline:3px solid #278362}.training-shell--library .training-content{padding-top:20px}.sets-section .library-layout{border-top:0;gap:28px;margin-top:0}.sets-section .library-main,.sets-section .catalog-sidebar{padding-top:0}.sets-section .set-overview{padding-top:16px;padding-bottom:16px}.sets-section .set-title{gap:16px}.sets-section .set-title img{width:80px;height:72px}.sets-section .set-title h1{margin:4px 0 0;font-size:28px}.sets-section .mode-selector{margin-top:22px}.sets-section .mode-selector legend{margin-bottom:10px;font-size:15px;font-weight:650}.sets-section .mode-card{padding:12px;display:block}.sets-section .mode-card-select{grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;min-height:52px}.sets-section .mode-card-illustration,.sets-section .mode-illustration{width:40px;height:40px}.sets-section .mode-card-copy{gap:3px}.sets-section .mode-card-copy small{margin:0;font-weight:400}.sets-section .mode-card-check{width:18px;height:18px}.additional-modes{margin-top:6px}.sets-section summary{cursor:pointer;color:#536259;min-height:48px;padding:14px 0;font-size:14px}.additional-modes summary span{color:#23563f}.set-launch{margin-bottom:20px}.set-launch>p{color:#59635d;margin:4px 0 12px;font-size:14px}.set-launch>div{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.set-launch span{color:#59635d;font-size:13px}.set-progress-details{border-top:1px solid #dce2de}.set-progress-details .set-mastery{margin-top:8px}.set-result-navigation{text-align:left;background:#fffefb;border:1px solid #dce2de;border-radius:12px;margin:0 0 24px;padding:16px}.set-result-navigation>p{margin:0 0 12px;font-weight:650}.set-result-navigation>div{flex-wrap:wrap;gap:12px;display:flex}@media (width>=1100px){.sets-section .catalog-sidebar{align-self:start;max-height:calc(100dvh - 32px);padding-bottom:16px;position:sticky;top:16px;overflow-y:auto}}@media (width<=1099px){.sets-section .catalog-sidebar{padding:20px}.sets-section .catalog-mobile-trigger{margin:0 0 16px}}@media (width<=600px){.training-shell--library{padding-bottom:calc(70px + env(safe-area-inset-bottom))}.training-shell--library .training-nav{min-height:64px;padding:8px 12px}.training-shell--library .training-brand{font-size:18px}.training-shell--library .training-controls{gap:6px}.training-shell--library .training-controls select{max-width:118px;padding:0 28px 0 6px}.library-navigation{z-index:15;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border-top:1px solid #dce2de;border-bottom:0;justify-content:space-around;gap:4px;position:fixed;inset:100dvh 0 auto;transform:translateY(-100%)}.library-navigation a{flex-direction:column;flex:1;gap:3px;padding:6px 4px;font-size:12px}.training-shell--library .training-content{padding:16px 12px 28px}.sets-section .breadcrumbs{font-size:12px}.sets-section .set-title{flex-direction:row;align-items:center}.sets-section .set-title img{width:52px;height:52px}.sets-section .set-title h1{font-size:23px}.sets-section .mode-selector{margin-top:18px}.sets-section .mode-selector-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sets-section .mode-card{padding:10px 8px}.sets-section .mode-card-select{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.sets-section .mode-card-copy strong{font-size:13px}.sets-section .mode-card-copy small{font-size:12px}.sets-section .mode-card-illustration,.sets-section .mode-illustration{width:32px;height:32px}.set-launch>div{gap:8px}.set-launch .primary-action{justify-content:center;width:100%}.set-result-navigation>div{flex-direction:column}}@media (width<=380px){.training-shell--library .training-content{padding-top:12px}.sets-section .catalog-mobile-trigger{margin-bottom:8px}.sets-section .set-title h1{font-size:22px}.sets-section .mode-selector{margin-top:12px}.sets-section .mode-card{padding-top:8px;padding-bottom:8px}.set-launch>p{margin-bottom:10px;font-size:13px}}.set-launch small{color:#59635d;flex-basis:100%;line-height:1.4}.session-saving{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:60svh;display:flex}.session-result h1:focus{outline:none}.short-learning-dialog{border:0;width:min(480px,100% - 32px);max-height:calc(100dvh - 32px);margin:auto;position:fixed;overflow-y:auto}.short-learning-dialog::backdrop{background:#1b2b2373}.short-learning-dialog .leave-dialog-actions{flex-direction:column}.short-learning-dialog .leave-dialog-actions button{white-space:normal;min-height:48px}.short-learning-dialog p+p{margin-top:12px}.free-practice-note{color:#66766c;margin:8px 0 14px;font-size:.82rem;line-height:1.45}.free-practice-counts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0;display:grid}.free-practice-counts>div{background:#fffdf7;border:1px solid #d7dfd2;border-radius:16px;padding:16px 12px}.free-practice-counts dt{color:#52695c;font-size:.9rem;line-height:1.45}.free-practice-counts dd{margin:8px 0 0;font-size:1.7rem;font-weight:650}.free-practice-result .result-actions{flex-wrap:wrap}.free-practice-result .result-actions button{min-height:48px}.free-practice-coverage{font-size:1.2rem}.free-practice-loading{text-align:center;color:#52695c}.session-header{z-index:8;background:#fafbfa;grid-column:1/-1;padding:10px 0 0;position:sticky;top:0}.exercise-toolbar.session-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;margin-bottom:12px;display:grid}.session-heading{gap:3px;min-width:0;display:grid}.session-heading>span{color:#68736b;font-size:13px}.session-heading>strong{font-size:15px;line-height:1.4}.session-toolbar .session-finish{white-space:normal;border-radius:10px;gap:6px;min-height:48px;padding:9px 12px;font-size:14px}.session-toolbar>.paint-answer{border-radius:14px;grid-column:1/-1;width:fit-content;max-width:100%;padding:2px 12px 2px 4px}.session-toolbar .paint-vessel{width:32px;height:38px}.session-toolbar .paint-answer-copy strong{font-size:15px}.session-toolbar .paint-answer-copy small{display:none}.session-header progress{margin-bottom:16px}.speech-session-header{z-index:8;max-width:680px;margin:0 auto;position:sticky;top:0}.session-speech-notice{background:#eef3e8;border-radius:12px;grid-column:1/-1;align-items:center;gap:10px;margin:0 0 20px;padding:10px 12px;display:flex}.session-speech-notice>svg{color:#49654a;flex-shrink:0}.session-speech-notice>div{flex:1;gap:3px;font-size:14px;display:grid}.session-speech-notice span{color:#68736b;font-size:12px}.session-speech-notice button{min-height:48px;padding:8px 4px;font-size:13px}.session-finish-dialog{background:#fffcf5;border-radius:22px;max-height:calc(100dvh - 32px);overflow-y:auto}.session-finish-dialog .leave-dialog-icon{color:#49654a;background:#eef3e8;border-radius:12px;justify-content:center;width:48px;height:48px}.session-finish-dialog .leave-dialog-close{min-width:48px;min-height:48px;top:12px;right:12px}.session-finish-dialog .leave-dialog-actions{flex-direction:column;gap:8px;margin-top:12px;display:flex}.session-finish-dialog .leave-dialog-stay{background:0 0;border-color:#0000;order:2}.session-finish-dialog .leave-dialog-actions button{white-space:normal;border-radius:11px;min-height:48px}.session-exit-summary{border-top:1px solid #dbe0d6;gap:18px;margin-top:20px;padding:18px 0 8px;display:flex}.session-exit-summary>span{color:#68736b;flex:1;gap:4px;font-size:12px;display:grid}.session-exit-summary strong{color:#2c3831;font-size:22px}@media (width<=480px){.session-heading>strong{font-size:13px}.session-heading>span{font-size:12px}.session-toolbar .session-finish{padding:8px;font-size:13px}.modal-backdrop:has(.session-finish-dialog){align-items:end;padding:8px}.session-finish-dialog{max-height:calc(100dvh - 16px);padding:28px 20px 20px}.session-exit-summary strong{font-size:20px}}.exercise .exercise-toolbar.session-toolbar{grid-template-columns:minmax(0,1fr) auto}.session-header .exercise-toolbar .paint-vessel{width:32px;height:38px}.session-header .exercise-toolbar .paint-answer-copy strong{font-size:15px}.session-header .exercise-toolbar .paint-answer{margin:0}.similar-words{color:#354538;background:#f8faf4;border:1px solid #d5dcd1;border-radius:10px;margin:14px 0;padding:14px;font-size:14px;line-height:1.5}.similar-words dl{margin:10px 0}.similar-words dl>div+div{margin-top:8px}.similar-words dt{font-weight:700}.similar-words dd{margin:2px 0 0}.similar-words p,.alternative-explanation p{margin:8px 0 0}.alternative-explanation{margin-bottom:14px;line-height:1.5}.translation-details{background:#f3f7f1;border-radius:14px;margin:12px 0;padding:14px 16px;line-height:1.5}.translation-details p{margin:0 0 12px}.translation-details ul{gap:10px;margin:8px 0 0;padding:0;list-style:none;display:grid}.translation-details li{gap:2px;display:grid}.translation-details li span[lang=nl]{font-weight:600}@media (width<=600px),(height<=750px){.training-content--exercise{padding-top:6px}.speech-session-header .session-toolbar{gap:6px 12px;margin-bottom:6px}.speech-session-header .session-header progress{margin-bottom:6px}}.start-learning-dialog{color:#28382f;background:#fffdf7;border:1px solid #dce2de;border-radius:18px;width:min(440px,100% - 24px);max-height:calc(100dvh - 24px);padding:28px 24px;overflow-y:auto;box-shadow:0 24px 64px #1420183d}.start-learning-dialog::backdrop{background:#19221d8c}.start-learning-dialog h2{margin:12px 36px 10px 0;font-size:23px;line-height:1.25}.start-learning-dialog p{color:#59635d;line-height:1.5}.start-learning-suggestion{background:#f0f4e8;border-radius:12px;margin:18px 0;padding:14px}.start-learning-suggestion h3{margin:0 0 10px;font-size:16px}.start-learning-suggestion ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.start-learning-suggestion li{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;line-height:1.4;display:flex}.start-learning-suggestion li span{color:#59635d}.start-learning-actions{gap:8px;margin-top:18px;display:grid}.start-learning-actions button{white-space:normal;min-height:48px}.answer-feedback.typo .typo-explanation{color:var(--text-muted,#59665d);margin:0 0 12px}.answer-feedback.typo .answer-comparison del{color:#79530d;background:#fff0cc}.personal-library{color:#344b47;max-width:1100px;margin:0 auto 32px}.personal-library h1{margin:8px 0 24px;font-size:clamp(1.6rem,4vw,2.3rem)}.word-set-personal progress{accent-color:#5c8979;width:100%;height:8px}.word-set-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.word-set-tile{background:#fffef9;border:1px solid #deddd1;border-radius:22px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 4px 16px #354c4610}.word-set-cover{cursor:pointer;background:#f6f2e9;border:0;width:100%;padding:0;position:relative}.word-set-cover img{object-fit:cover;width:100%;height:190px;display:block}.word-set-cover>span{color:#38584c;background:#fffdf2ed;border-radius:10px;padding:5px 10px;font-weight:650;position:absolute;top:12px;left:12px}.word-set-tile-body{flex-direction:column;flex:1;gap:10px;padding:18px;display:flex}.word-set-topic{color:#65726a;font-size:.82rem}.word-set-tile p,.word-set-tile h3{margin:0;line-height:1.45}.word-set-tile h3{font-size:1.2rem}.word-set-tile h3 button{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;min-height:48px;padding:0}.word-set-tile-body>p:not(.word-set-topic){font-size:.9rem}.word-set-actions{gap:8px;margin-top:auto;padding-top:8px;display:grid}.word-set-actions button{justify-content:center;width:100%;min-height:48px}.word-set-practice{gap:6px;display:grid}.word-set-practice small{color:#65726a;text-align:center;line-height:1.5}.word-set-detail-practice{justify-items:start;margin:0 0 24px}.word-set-detail-practice button{min-height:48px}.word-set-detail-practice small{text-align:left}.word-set-personal{flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.8rem;display:flex}.word-set-added{color:#466d53;justify-content:center;align-items:center;gap:8px;min-height:48px;font-size:.9rem;display:flex}.personal-library-filters{flex-wrap:wrap;gap:12px;margin:0 0 24px;display:flex}.personal-library-filters label{background:#fff;border:1px solid #c9d1c9;border-radius:13px;flex:200px;align-items:center;gap:10px;padding:0 14px;display:flex}.personal-library-filters input{width:100%;min-width:0;min-height:48px;color:inherit;font:inherit;background:0 0;border:0}.personal-library-filters select{max-width:100%;min-height:48px;color:inherit;font:inherit;background:#fff;border:1px solid #c9d1c9;border-radius:13px;padding:0 12px}.catalog-show-added{cursor:pointer;align-items:center;gap:12px;width:fit-content;max-width:100%;min-height:48px;margin:-12px 0 20px;line-height:1.45;display:flex}.catalog-show-added input{accent-color:#5c8979;flex-shrink:0;width:20px;height:20px}.catalog-empty{background:#edf4e9;border-radius:16px;padding:20px;line-height:1.5}.catalog-empty p{margin:0 0 16px}.catalog-empty button{min-height:48px}.catalog-breadcrumbs{margin:0 0 8px}.catalog-breadcrumbs ol{flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;padding:0;list-style:none;display:flex}.catalog-breadcrumbs li{color:#65726a;align-items:center;gap:8px;min-width:0;font-size:.88rem;line-height:1.5;display:flex}.catalog-breadcrumbs svg{flex-shrink:0}.catalog-breadcrumbs button{color:#356b55;min-height:48px;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:8px 2px;text-decoration:underline}.catalog-collection-entry{background:#fffef9;border:1px solid #deddd1;border-radius:22px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin:0 0 28px;display:grid;overflow:hidden}.catalog-collection-entry>img{object-fit:cover;width:100%;height:100%;min-height:260px;display:block}.catalog-collection-entry>div{flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;min-width:0;padding:28px;display:flex}.catalog-collection-entry h2{margin:0;font-size:clamp(1.3rem,2.6vw,1.7rem);line-height:1.3}.catalog-collection-entry p,.catalog-collection-intro p{color:#5a6b61;margin:0;line-height:1.6}.catalog-collection-entry button{text-align:center;justify-content:center;max-width:100%;min-height:48px}.catalog-collection-entry button svg{flex-shrink:0}.catalog-collection-intro{align-items:center;gap:24px;margin:0 0 24px;display:flex}.catalog-collection-intro img{object-fit:cover;border-radius:18px;flex-shrink:0;width:180px;height:135px}.catalog-collection-intro p{max-width:52ch}.catalog-collection-topics{gap:32px;display:grid}.catalog-topic>h2{margin:0 0 18px;font-size:clamp(1.2rem,2.5vw,1.45rem);line-height:1.4}.word-recommendations{padding-top:8px}.word-recommendations>p{margin:8px 0 20px;line-height:1.5}.word-recommendations .word-set-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:750px;margin:auto}.word-recommendations h2,.learning-complete h2{margin:0;font-size:1.35rem;line-height:1.35}.catalog-more{min-height:48px;margin:22px auto 0;display:flex}.library-notice,.learning-complete{background:#edf4e9;border-radius:16px;margin:16px 0;padding:18px;line-height:1.5}.library-notice p{margin:0 0 10px}.library-notice--error,.library-notice--conflict,.learning-limit{color:#84472d}.learning-complete{align-items:flex-start;gap:12px;display:flex}.learning-complete>svg{flex-shrink:0}.learning-complete p{margin-bottom:0}.word-set-detail-heading{align-items:center;gap:24px;margin:24px 0;display:flex}.word-set-detail-heading img{object-fit:cover;border-radius:22px;width:150px;height:150px}.word-set-detail-heading h2{margin:8px 0;font-size:clamp(1.4rem,4vw,2rem);line-height:1.25}.word-selection-tools{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.personal-word-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.personal-word{cursor:pointer;background:#fffef9;border:1px solid #deddd1;border-radius:14px;align-items:center;gap:12px;min-height:70px;padding:14px;display:flex}.personal-word input{accent-color:#567e67;flex-shrink:0;width:20px;height:20px}.personal-word>span{flex:1;gap:5px;min-width:0;display:grid}.personal-word small{text-align:right;color:#65726a;max-width:100px}.word-selection-save{background:#fffffff5;border:1px solid #d7dfd2;border-radius:18px;margin-top:20px;padding:16px;position:sticky;bottom:10px;box-shadow:0 3px 20px #243d3920}.word-selection-save p{margin:0 0 10px}.today-lesson-summary{text-align:center;max-width:1100px;margin:16px auto;line-height:1.5}@media (width<=900px){.word-set-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=540px){.catalog-collection-entry{grid-template-columns:minmax(0,1fr)}.catalog-collection-entry>img{height:180px;min-height:0}.catalog-collection-entry>div{gap:14px;padding:20px}.catalog-collection-entry button{width:100%}.catalog-collection-intro{align-items:flex-start;gap:14px}.catalog-collection-intro img{border-radius:14px;width:80px;height:80px}.catalog-collection-intro p{font-size:.9rem}.word-set-grid,.word-recommendations .word-set-grid,.personal-word-list{grid-template-columns:minmax(0,1fr)}.word-set-cover img{height:170px}.word-set-detail-heading{align-items:flex-start;gap:14px}.word-set-detail-heading img{border-radius:14px;width:80px;height:80px}.word-set-detail-heading p{margin:0;font-size:.85rem}.personal-word small{max-width:75px;font-size:.72rem}.word-selection-save{padding:12px}.library-navigation{gap:0!important}.library-navigation a{flex-direction:column;flex:1;gap:5px!important;padding:10px 4px!important;font-size:.75rem!important}}@media (width<=600px){.word-selection-save{bottom:calc(82px + env(safe-area-inset-bottom));z-index:10}}.catalog-guide{background:#fffdf7;border:1px solid #e3dfcf;border-radius:22px;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:22px;margin-bottom:24px;padding:18px 24px;display:grid}.catalog-guide-owl{object-fit:contain;transform-origin:50% 90%;width:112px;height:128px;animation:.9s ease-out both catalog-owl-settle;display:block}.catalog-guide-copy{min-width:0}.catalog-guide-copy h2{margin:0 0 6px;font-size:clamp(1.1rem,2.3vw,1.3rem);font-weight:650;line-height:1.3}.catalog-guide-copy>p{color:#5a6b61;max-width:54ch;margin:0;font-size:.94rem;line-height:1.5}.catalog-guide details{color:#647167;margin-top:2px;font-size:.8rem;line-height:1.5}.catalog-guide summary{cursor:pointer;text-underline-offset:3px;align-content:center;width:fit-content;min-height:44px;-webkit-text-decoration:underline #bcc8bb;text-decoration:underline #bcc8bb}.catalog-guide details p{max-width:58ch;margin:0 0 8px}.catalog-guide-action{text-align:center;justify-content:center;max-width:280px;min-height:48px}.catalog-guide-action svg{flex-shrink:0}@keyframes catalog-owl-settle{0%{transform:rotate(-4deg)translateY(2px)}40%{transform:rotate(3deg)}70%{transform:rotate(-1deg)}to{transform:none}}@media (width<=900px){.catalog-guide{grid-template-columns:100px minmax(0,1fr);gap:0 18px;padding:18px}.catalog-guide-owl{grid-row:1/3;align-self:start;width:100px;height:118px}.catalog-guide-action{grid-column:2;justify-self:start}}@media (width<=540px){.catalog-guide{border-radius:18px;grid-template-columns:72px minmax(0,1fr);gap:0 12px;padding:14px}.catalog-guide-owl{grid-row:1;width:72px;height:94px}.catalog-guide-copy>p{font-size:.86rem}.catalog-guide-action{grid-column:1/-1;width:100%;max-width:none;margin-top:6px}}@media (prefers-reduced-motion:reduce){.catalog-guide-owl{animation:none}}.word-availability{background:#fffdf7;border:1px solid #deddd1;border-radius:16px;margin:20px 0 16px;padding:18px;line-height:1.5}.word-availability p{max-width:720px;margin:0 0 10px}.word-availability p:last-child{margin-bottom:0}.word-availability-title{font-weight:650}.word-availability button{min-height:48px}.personal-word--static{cursor:default}.word-selection-save p{line-height:1.5}.paint-studio--celebrating{width:min(720px,100vw - 24px)}.unlock-celebration{text-align:center;padding:clamp(8px,2vw,24px) 0;overflow:hidden}.unlock-celebration>.section-label{color:#88612f;letter-spacing:.08em;margin:0 0 12px}.unlock-magic{isolation:isolate;aspect-ratio:4/3;place-items:center;width:min(100%,480px);margin:0 auto 20px;display:grid;position:relative;overflow:clip}.unlock-art{aspect-ratio:4/3;background:#fffaf0;border-radius:18px;width:86%;animation:3.4s cubic-bezier(.2,.65,.25,1) both unlock-art-arrive;position:relative;overflow:hidden;transform:scale(.92);box-shadow:0 12px 34px #876b3b1c}.unlock-art img{object-fit:cover;opacity:.23;width:100%;height:100%;display:block}.unlock-contours{width:100%;height:100%;position:absolute;inset:0}.unlock-contours path{fill:none;stroke:#b58b4b;stroke-width:4px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:unlock-trace 2.1s ease-out var(--piece-delay) both}.unlock-wash{border-radius:inherit;background:radial-gradient(#ffedb994,#b4d4c554 44%,#0000 70%);animation:3s ease-out both unlock-wash-bloom;position:absolute;inset:0}.unlock-aura{z-index:-1;background:radial-gradient(#ecd6a77a,#dcead254 45%,#0000 70%);animation:3.4s ease-out both unlock-aura-bloom;position:absolute;inset:-10%}.unlock-lock{color:#b58b4b;filter:drop-shadow(0 4px 12px #fff5d9);width:clamp(58px,14vw,88px);animation:1.9s ease-in-out both unlock-lock-away;position:absolute}.unlock-lock rect{fill:#fff9e7;stroke:currentColor;stroke-width:4px}.unlock-lock path,.unlock-lock circle{stroke:currentColor;stroke-width:4px;stroke-linecap:round}.unlock-shackle{transform-origin:71px 48px;animation:1.2s ease-in-out both unlock-shackle-turn}.unlock-pigment{background:var(--pigment);opacity:0;width:12px;height:18px;animation:unlock-pigment-flight 2.5s ease-out var(--delay) both;border-radius:65% 35% 60% 40%;position:absolute;top:50%;left:50%}.unlock-paint-seal{color:#337980;background:#f2f6eb;border:1px solid #d1ddd0;border-radius:99px;align-items:center;gap:8px;padding:10px 18px;font-weight:650;animation:1.5s ease-in-out both unlock-seal-rise;display:inline-flex;position:absolute;bottom:4%}.unlock-welcome{animation:2s ease-out both unlock-welcome-in}.unlock-welcome h3{color:#315d4c;margin:0;font-size:clamp(1.35rem,4vw,2rem);line-height:1.25}.unlock-welcome p{color:#657266;max-width:34ch;margin:12px auto 22px;line-height:1.5}.unlock-celebration>button{max-width:100%;min-height:48px;margin:0 auto}@keyframes unlock-art-arrive{0%,15%{transform:scale(.92)}65%,to{transform:scale(1)}}@keyframes unlock-trace{0%{stroke-dashoffset:1px;opacity:0}20%{opacity:.9}to{stroke-dashoffset:0;opacity:.6}}@keyframes unlock-wash-bloom{0%,15%{opacity:0;transform:scale(.25)}48%{opacity:1}to{opacity:0;transform:scale(1.4)}}@keyframes unlock-aura-bloom{0%{opacity:0;transform:scale(.6)}50%,to{opacity:1;transform:scale(1)}}@keyframes unlock-shackle-turn{0%,30%{transform:rotate(0)}65%,to{transform:rotate(32deg)translateY(-8px)}}@keyframes unlock-lock-away{0%,38%{opacity:1;transform:scale(1)}to{opacity:0;transform:translateY(-35px)scale(.8)}}@keyframes unlock-pigment-flight{0%{opacity:0;transform:translate(-50%,110px)scale(.5)}24%{opacity:.85;transform:translate(-50%,-50%)scale(1)}85%,to{opacity:0;transform:rotate(var(--angle)) translateY(calc(-1 * var(--distance))) rotate(55deg) scale(.6)}}@keyframes unlock-seal-rise{0%,15%{opacity:1;transform:translateY(0)}80%,to{opacity:0;transform:translateY(-70px)scale(.7)}}@keyframes unlock-welcome-in{0%,45%{opacity:0;transform:translateY(8px)}80%,to{opacity:1;transform:none}}@media (height<=650px){.unlock-magic{width:min(100%,42dvh);margin-bottom:10px}.unlock-welcome p{margin:8px auto 12px}}@media (prefers-reduced-motion:reduce){.unlock-celebration *,.unlock-celebration :before{animation:none!important}.unlock-art{transform:none}.unlock-lock,.unlock-paint-seal,.unlock-pigment,.unlock-wash{display:none}.unlock-contours path{stroke-dashoffset:0;opacity:.6}}.coloring-journey{color:#283b32;margin:1.5rem 0 2rem}.coloring-heading h2{margin:.3rem 0 .5rem;font-size:clamp(1.65rem,3vw,2.2rem);line-height:1.2}.coloring-heading>p:last-child{color:#667469;margin:0 0 1.2rem}.coloring-reward{color:#21634f;align-items:center;gap:.5rem;font-weight:600;display:flex}.coloring-card{background:#fffdf7;border:1px solid #dfe5d9;border-radius:22px;grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr);display:grid;overflow:hidden}.coloring-art{background:#fffef9;flex-direction:column;justify-content:center;min-width:0;margin:0;padding:14px 14px 0;display:flex}.coloring-picture{aspect-ratio:4/3;width:100%;height:auto;display:block}.coloring-brush{stroke-dasharray:1;stroke-dashoffset:1px}.coloring-brush--ready{animation:2.5s ease-in-out forwards coloring-brush-stroke}@keyframes coloring-brush-stroke{to{stroke-dashoffset:0}}.coloring-replay{color:#21634f;cursor:pointer;min-height:48px;font:inherit;background:#edf3e6;border:0;border-radius:8px;align-items:center;gap:.5rem;margin-top:.5rem;padding:.4rem .6rem;font-size:.85rem;display:inline-flex}.coloring-replay:hover{background:#dfead5}.coloring-replay:focus-visible{outline-offset:3px;outline:2px solid #21634f}.coloring-art figcaption{color:#68766d;flex-wrap:wrap;justify-content:space-between;gap:.35rem .8rem;padding:12px 10px 17px;font-size:.78rem;display:flex}.coloring-copy{border-left:1px solid #edf0e7;flex-direction:column;justify-content:center;gap:22px;min-width:0;padding:26px;display:flex}.coloring-copy h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.65rem,3vw,2.1rem);font-weight:400;line-height:1.16}.coloring-copy .coloring-story{color:#667469;margin:.65rem 0 0}.coloring-progress-label{justify-content:space-between;gap:8px;margin-bottom:10px;font-size:.9rem;display:flex}.coloring-progress-label strong{color:#21634f;white-space:nowrap}.coloring-strokes{grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;display:grid}.coloring-strokes span{background:#e5eadc;border-radius:3px 5px 2px 4px;height:9px;transform:rotate(-3deg)}.coloring-strokes .filled{background:#609174}.coloring-actions{gap:9px;display:grid}.coloring-actions button{justify-content:center;width:100%;min-height:48px}.coloring-empty{color:#667469}.coloring-empty small{margin-top:.6rem;display:block}.coloring-rules summary{color:#667469;cursor:pointer;min-height:44px;padding:10px 0;font-size:.85rem}.session-result:has(.coloring-journey){max-width:1100px}.vocabulary-journey.vocabulary-journey--compact .vocabulary-hero{grid-template-columns:95px minmax(0,1fr) 150px;align-items:center;gap:20px;padding:18px}.vocabulary-journey--compact .vocabulary-owl{width:95px}.vocabulary-journey--compact .vocabulary-owl figcaption{font-size:.75rem}.vocabulary-journey--compact .vocabulary-count{font-size:1.7rem}.vocabulary-journey--compact .vocabulary-next img{width:60px;height:60px}.vocabulary-journey--compact .vocabulary-next{gap:3px;padding:10px;font-size:.8rem}@media (width<=800px){.coloring-card{grid-template-columns:1fr}.coloring-copy{border-top:1px solid #edf0e7;border-left:0;padding:22px}.coloring-art{padding:8px 8px 0}}@media (width<=480px){.coloring-copy{gap:18px;padding:20px 16px}.vocabulary-journey.vocabulary-journey--compact .vocabulary-hero{grid-template-columns:100px minmax(0,1fr);gap:14px;padding:12px}.vocabulary-journey--compact .vocabulary-owl{width:100px}.vocabulary-journey--compact .vocabulary-owl figcaption{white-space:nowrap;font-size:.7rem}.vocabulary-journey--compact .vocabulary-next{grid-column:1/-1}.vocabulary-journey--compact .vocabulary-next img{width:48px;height:48px}}@media (prefers-reduced-motion:reduce){.coloring-brush{stroke-dashoffset:0;animation:none}}.puzzle-seam{stroke:#8b907d;stroke-width:1.2px;vector-effect:non-scaling-stroke;opacity:.6}.coloring-picture--complete .puzzle-seam{opacity:0;transition:opacity .5s 2.7s}.puzzle-tomorrow{color:#21634f;background:#edf3e6;border-radius:12px;margin:0;padding:14px 16px;line-height:1.5}@media (prefers-reduced-motion:reduce){.puzzle-seam{transition:none!important}}body:has(.puzzle-reveal[open]) #root{visibility:hidden}.puzzle-reveal[open]{visibility:visible;display:block}.puzzle-reveal{color:#283b32;background:#fffdf7;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.puzzle-reveal::backdrop{background:#fffdf7}.puzzle-reveal-content{display:contents}.puzzle-reveal-secondary{flex-wrap:wrap;justify-content:center;gap:4px 12px;max-width:100%;display:flex}.puzzle-reveal-stage{pointer-events:none;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.puzzle-reveal-stage .coloring-picture{width:min(100%,1100px,133.333dvh - 346.667px);height:auto;max-height:calc(100dvh - 260px);animation:.4s ease-out both puzzle-arrive}.puzzle-reveal-actions{flex-direction:column;align-items:center;gap:4px;animation:.3s ease-out both puzzle-arrive;display:flex;position:absolute;top:calc(50% + min(37.5vw - 12px,412.5px,50dvh - 130px) + 16px);left:16px;right:16px}.puzzle-reveal-actions .primary-action{justify-content:center;min-width:min(260px,100%);min-height:48px}.puzzle-reveal-actions .coloring-replay{margin:0}.puzzle-reveal button:focus-visible{outline-offset:3px;outline:2px solid #21634f}@keyframes puzzle-arrive{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.puzzle-reveal-stage .coloring-picture,.puzzle-reveal-actions{animation:none}}@media (height<=500px) and (width>=600px){.puzzle-reveal-stage .coloring-picture{width:min(100%,1100px,133.333dvh - 186.667px);max-height:calc(100dvh - 140px)}.puzzle-reveal-actions{top:auto;bottom:max(6px, env(safe-area-inset-bottom));flex-direction:row;justify-content:center;gap:12px}.puzzle-reveal-actions .primary-action{min-width:180px}}.puzzle-reveal-art{aspect-ratio:4/3;width:min(100%,1100px,133.333dvh - 346.667px);position:relative}.puzzle-reveal-stage .puzzle-reveal-art .coloring-picture{width:100%;max-height:none}.puzzle-magic{pointer-events:none;position:absolute;inset:0;overflow:hidden}.living-scene{width:100%;height:100%;position:absolute;inset:0}.puzzle-light{background:linear-gradient(110deg,#0000 35%,#fff3be66 48%,#fffbedaa 50%,#0000 65%);animation:2.8s ease-in-out both world-light;position:absolute;inset:-50%}.puzzle-petal{filter:blur(.6px);opacity:0;border-radius:80% 20% 75% 25%;width:12px;height:20px;animation:3.8s ease-in forwards world-petal;position:absolute;top:-8%}.puzzle-celebration-title{text-align:center;animation:.6s ease-out both puzzle-arrive;position:absolute;bottom:calc(50% + min(37.5vw - 12px,412.5px,50dvh - 130px) + 12px);left:16px;right:16px}.puzzle-celebration-title p{color:#95702f;margin:0 0 4px;font-weight:600}.puzzle-celebration-title h2{margin:0 0 4px;font:400 clamp(1.3rem,3vw,2rem)/1.15 Georgia,serif}.puzzle-celebration-title small{color:#667469}.puzzle-reveal--celebrate{overflow-y:auto}.puzzle-reveal--celebrate .puzzle-reveal-content{box-sizing:border-box;min-height:100%;padding:max(24px, env(safe-area-inset-top)) 16px max(24px, env(safe-area-inset-bottom));flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex}.puzzle-reveal--celebrate .puzzle-celebration-title{max-width:100%;position:static}.puzzle-reveal--celebrate .puzzle-celebration-title p{color:#8b6527;justify-content:center;align-items:center;gap:8px;margin-bottom:8px;font-size:clamp(1rem,2.2vw,1.25rem);display:flex}.puzzle-celebration-title p svg{flex-shrink:0}.puzzle-reveal--celebrate .puzzle-reveal-stage{justify-content:center;width:100%;padding:0;display:flex;position:static}.puzzle-reveal--celebrate .puzzle-reveal-art{border-radius:12px;width:min(100%,1100px,max(160px,133.333dvh - 440px));overflow:hidden;box-shadow:0 8px 28px #674d2012}.puzzle-reveal--celebrate .puzzle-reveal-actions{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex;position:static}.puzzle-reveal--celebrate .puzzle-reveal-actions .primary-action{box-sizing:border-box;background:#1f7a5a;border-radius:16px;gap:10px;width:min(100%,320px);min-width:0;min-height:52px;margin:0;box-shadow:0 4px #14583f,0 6px 14px #21634f18}.puzzle-reveal--celebrate .primary-action:hover{background:#196c4f}.puzzle-reveal--celebrate .primary-action:active{box-shadow:0 2px #14583f}.puzzle-reveal--celebrate .puzzle-reveal-actions .coloring-replay{background:0 0;justify-content:center;min-height:48px;font-size:.875rem}.puzzle-reveal--celebrate .coloring-replay:hover{background:#edf3e6}@media (height<=600px){.puzzle-reveal--celebrate .puzzle-reveal-content{padding-top:max(12px, env(safe-area-inset-top));padding-bottom:max(12px, env(safe-area-inset-bottom));gap:12px}.puzzle-reveal--celebrate .puzzle-reveal-art{width:min(100%,max(128px,133.333dvh - 320px))}}.scene-lamp{animation:4s ease-out both scene-lamp}.scene-ripples{animation:4s ease-in-out both scene-ripple}.scene-aroma{animation:4s ease-out both scene-aroma}.scene-butterfly{animation:4.5s ease-in-out both scene-flight}.scene-wings{transform-origin:900px 310px;animation:.35s ease-in-out 12 alternate scene-wing}.puzzle-magic--playing :is(.puzzle-light,.scene-lamp,.scene-ripples,.scene-aroma,.scene-butterfly,.scene-wings){animation-iteration-count:infinite}@keyframes world-light{0%{opacity:0;transform:translate(-70%)}20%{opacity:1}to{opacity:0;transform:translate(70%)}}@keyframes world-petal{0%{opacity:0;transform:translate(0)rotate(0)}15%{opacity:.8}85%{opacity:.6}to{opacity:0;transform:translate(65px,65vh)rotate(290deg)}}@keyframes scene-lamp{0%{opacity:0}40%{opacity:1}to{opacity:.55}}@keyframes scene-ripple{0%{opacity:0;transform:translate(-12px)}40%{opacity:.7}to{opacity:0;transform:translate(20px)}}@keyframes scene-aroma{0%{opacity:0;transform:translateY(12px)}30%{opacity:.7}to{opacity:0;transform:translateY(-45px)}}@keyframes scene-flight{0%{opacity:0;transform:translate(45px,30px)rotate(-15deg)}20%{opacity:1}60%{opacity:1;transform:translate(-30px,-10px)rotate(10deg)}to{opacity:0;transform:translate(-100px,-55px)rotate(-15deg)}}@keyframes scene-wing{to{transform:scaleX(.4)}}@media (height<=500px) and (width>=600px){.puzzle-reveal-art{width:min(100%,1100px,133.333dvh - 186.667px)}.puzzle-celebration-title{top:6px;bottom:auto}.puzzle-celebration-title h2{font-size:1.1rem}.puzzle-celebration-title p{margin:0;font-size:.8rem}.puzzle-celebration-title small{display:none}.puzzle-reveal--celebrate .puzzle-reveal-actions{display:flex}}@media (prefers-reduced-motion:reduce){.puzzle-light,.puzzle-petal,.living-scene{display:none}.puzzle-celebration-title{animation:none}}.coloring-picture[data-animating=false] .puzzle-seam{transition:none}.coloring-picture-replay{width:100%;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:block}.coloring-picture-replay:disabled{cursor:default}.coloring-picture-replay:focus-visible{outline-offset:3px;outline:2px solid #21634f}.coloring-practice-rule{color:var(--muted,#62716a);margin:0;font-size:.9rem;line-height:1.5}.coloring-picture--celebration .coloring-brush--ready{animation-duration:.45s}.coloring-picture--celebration.coloring-picture--complete .puzzle-seam{transition-delay:1.72s}@media (prefers-reduced-motion:reduce){.coloring-picture--celebration .coloring-brush{stroke-dashoffset:0;animation:none}}.coloring-rules p{color:#667469;font-size:.9rem}.paint-wallet{text-align:left;background:#f6f8ee;border:1px solid #d9dfcb;border-radius:20px;flex-wrap:wrap;align-items:center;gap:1rem;margin:1rem 0;padding:1rem 1.2rem;display:flex}.paint-jar{color:#397e86;background:linear-gradient(#f5fbf8 45%,#bbddd9 45%);border:2px solid #8eb8b6;border-radius:10px 10px 20px 20px;flex-shrink:0;place-items:center;width:56px;height:64px;display:grid}.paint-wallet-count{flex:1;gap:.2rem;min-width:130px;display:grid}.paint-wallet-count strong{color:#315d62;font-size:1.5rem}.paint-wallet-count small{font-size:.8rem;font-weight:400}.paint-wallet p{flex-basis:100%;margin:0}.paint-wallet button{min-height:48px}.paint-earned{color:#397e86;font-size:1.25rem;font-weight:650}.paint-studio{box-sizing:border-box;color:#394b44;background:#fffcf4;border:1px solid #dedac9;border-radius:24px;width:min(900px,100vw - 24px);max-height:calc(100dvh - 24px);padding:clamp(12px,3vw,28px);overflow-y:auto}.paint-studio::backdrop{background:#1a302eaa}.paint-studio header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.paint-studio h2{margin:.2rem 0;font-size:clamp(1.2rem,3vw,1.7rem)}.paint-studio .icon-button{min-width:48px;min-height:48px}.paint-studio-balance{color:#397e86;justify-content:center;align-items:center;gap:.5rem;display:flex}.paint-canvas{max-width:min(100%,66vh);margin:1rem auto;position:relative}.paint-choices{width:100%;height:100%;position:absolute;inset:0}.paint-choices path{-webkit-tap-highlight-color:transparent;fill:#0000;stroke:#0000;stroke-width:8px;cursor:pointer;outline:none}.paint-choices path:hover,.paint-choices path:focus-visible{fill:#efb96133;stroke:#aa723f;outline:none}.paint-choices path.selected{fill:#efb96155;stroke:#965d29}.paint-choices path[aria-disabled=true]{cursor:default}.paint-studio-actions{text-align:center;flex-direction:column;align-items:center;gap:.6rem;display:flex}.paint-studio-actions p{margin:0}.paint-studio-actions button{max-width:100%;min-height:48px}.assistant-action:disabled{opacity:.5;filter:grayscale();cursor:default}@media (width<=400px){.paint-wallet{gap:.7rem;padding:.8rem}.paint-wallet>button{justify-content:center;width:100%}}.atlas-detail .paint-wallet{grid-template-columns:auto minmax(0,1fr);gap:.5rem;margin:.6rem 0;padding:.65rem;display:grid}.atlas-detail .paint-wallet>.paint-jar{width:36px;height:44px}.atlas-detail .paint-wallet>.paint-wallet-count{min-width:0}.atlas-detail .paint-wallet-count strong{font-size:1.1rem}.atlas-detail .paint-wallet-count>small,.atlas-detail .paint-wallet>p{display:none}.paint-choices path:focus{outline:none}.paint-choices path:focus-visible{stroke:#74451e;stroke-width:10px;stroke-dasharray:18 9}.paint-canvas-picture{position:relative}.paint-piece-note{background:linear-gradient(120deg,#eff4e9,#fff8e9);border:1px solid #d7e3d4;border-radius:18px;align-items:center;gap:12px;margin-top:12px;padding:12px 16px;animation:.35s ease-out both paint-note-in;display:flex}.paint-piece-note img{object-fit:contain;flex:0 0 62px;width:62px;height:82px}.paint-piece-note strong{color:#337f85;font-size:1rem}.paint-piece-note p{margin:6px 0 0;font-size:.9rem;line-height:1.45}@keyframes paint-note-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.paint-piece-note{animation:none}}.paint-piece-drops{pointer-events:none;color:#337f85}.paint-piece-drops rect{fill:#fffcf4;stroke:#8ab4ac;stroke-width:3px}.paint-choices .paint-piece-drops path{fill:none;stroke:currentColor;stroke-width:2px}.paint-piece-drops text{fill:#337f85;font-size:70px;font-weight:700}.paint-wallet-actions{flex-wrap:wrap;flex-basis:100%;gap:12px;display:flex}@media (width<=400px){.paint-wallet-actions>button,.paint-wallet-launch,.paint-wallet-launch>button{justify-content:center;width:100%}}.atlas-detail .paint-wallet-launch{grid-column:1/-1}.atlas-detail .paint-wallet-launch>button{justify-content:center;width:100%}.puzzle-tomorrow p{align-items:flex-start;gap:8px;margin:0;display:flex}.puzzle-tomorrow p svg{flex-shrink:0;margin-top:3px}.puzzle-tomorrow .text-action{text-align:left;align-items:center;gap:8px;min-height:48px;padding:8px 0 0;display:inline-flex}.paint-studio--unlock{max-width:620px}.paint-studio--unlock>p{text-align:center;line-height:1.5}.paint-studio--unlock .paint-canvas{max-width:min(100%,360px);margin:18px auto 10px}.puzzle-unlock-details{text-align:center;max-width:440px;margin:0 auto 18px}.puzzle-unlock-details h3{margin:6px 0 10px;font-size:clamp(1.15rem,3vw,1.45rem);line-height:1.3}.puzzle-unlock-details>p:not(.section-label){font-size:.95rem;line-height:1.5}.puzzle-unlock-total{text-align:left;background:#f0f5eb;border:1px solid #d8e2d2;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.puzzle-unlock-total strong{color:#315d62;flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.puzzle-unlock-remaining{color:#526459;margin-bottom:0}.puzzle-unlocked{color:#21634f;background:#edf3e6;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px;line-height:1.5;display:flex}@media (width<=400px){.paint-studio--unlock .paint-studio-actions>button{justify-content:center;width:100%}.puzzle-unlock-total{padding:12px}}.paint-studio--unlock .paint-choices{display:none}@media (height<=800px){.paint-studio--unlock .paint-canvas{max-width:min(100%,28dvh);margin:12px auto 8px}.paint-studio--unlock>p{margin:10px 0}.paint-studio--unlock .puzzle-unlock-details{margin-bottom:12px}.paint-studio--unlock .puzzle-unlock-details>p:not(.section-label){margin:10px 0}}.journey-atlas{box-sizing:border-box;color:#293e35;background:#fcf9ef;border:1px solid #d5c299;border-radius:24px;width:min(1440px,100% - 32px);max-width:100%;height:min(900px,100dvh - 32px);max-height:100dvh;margin:auto;padding:0;overflow:hidden;box-shadow:0 24px 90px #233b3540}.journey-atlas[open]{flex-direction:column;display:flex}.journey-atlas::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#253e3870}.atlas-header{justify-content:space-between;align-items:center;gap:12px;padding:16px 24px 8px;display:flex}.atlas-header p{color:#72694f;letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:.72rem}.atlas-header h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.8rem;font-weight:400}.atlas-icon{color:#345949;cursor:pointer;background:#fffcf5;border:1px solid #c9c8b5;border-radius:50%;place-items:center;width:48px;min-width:48px;height:48px;display:grid}.atlas-navigation{border-bottom:1px solid #e5decc;justify-content:space-between;align-items:center;gap:12px;padding:0 24px 8px;display:flex}.atlas-world-link{color:#365a49;max-width:38%;min-height:44px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;font-size:.8rem;display:flex}.atlas-world-link svg{flex:none}.atlas-world-link:disabled{color:#647161;cursor:default}.atlas-page-status{text-align:center;color:#5d6859;font-size:.8rem}.atlas-main{flex:1;grid-template-columns:minmax(0,1fr) 270px;min-height:0;display:grid}.atlas-main--archive{grid-template-columns:1fr}.atlas-viewport{overscroll-behavior:contain;touch-action:pan-y;background:#f7f0db;min-height:0;overflow:hidden auto}.atlas-page{opacity:0}.atlas-page--ready{opacity:1;animation:.35s ease-out both atlas-enter}.atlas-landscape{aspect-ratio:3/2;width:100%;min-height:520px;position:relative}.atlas-world-art{pointer-events:none;position:absolute;inset:0}.atlas-world-art img{object-fit:fill;width:100%;height:100%;display:block}.atlas-route{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.atlas-route--phone{display:none}.atlas-road-edge{fill:none;stroke:#fff9e0d9;stroke-width:9px;stroke-linecap:round}.atlas-road{fill:none;stroke:#ad9c76;stroke-width:2.5px;stroke-dasharray:5 7;stroke-linecap:round}.atlas-road--done{stroke:#9e612d;stroke-width:3.5px;stroke-dasharray:none}.atlas-stops{margin:0;padding:0;list-style:none;position:absolute;inset:0}.atlas-stops li{left:var(--x);top:var(--y);width:max-content;max-width:24%;position:absolute;transform:translate(-50%,-10%)}.atlas-stop{color:#284837;cursor:pointer;text-align:center;background:0 0;border:0;flex-direction:column;align-items:center;width:100%;min-height:52px;padding:0;display:flex;position:relative}.atlas-stop-label{background:#fffbedf5;border:1px solid #c7b891;border-radius:24px;align-items:center;gap:6px;padding:4px 10px 4px 4px;display:flex;box-shadow:0 2px 6px #59412426}.atlas-stop strong{font-size:.9rem;line-height:1.2}.atlas-stop small{color:#4f5b47;background:#fffbedf5;border-radius:8px;align-items:center;gap:4px;margin-top:4px;padding:3px 7px;font-size:.7rem;display:flex}.atlas-number{color:#fff;background:#74654a;border-radius:50%;flex:none;place-items:center;width:25px;height:25px;font-size:.75rem;display:grid}.atlas-stop--done .atlas-number{background:#416c50}.atlas-stop--current .atlas-stop-label{background:#fff4d4;border:2px solid #ab6328}.atlas-stop--current .atlas-number{background:#a65e24}.atlas-stop--current small{color:#6a3f18;background:#fff4d4}.journey-atlas .atlas-stop:disabled{cursor:default;opacity:1}.atlas-stop:enabled:hover .atlas-stop-label{background:#fff2c9}.journey-atlas button:focus-visible,.atlas-launch:focus-visible{outline-offset:4px;outline:3px solid #21634f}.atlas-owl{object-fit:contain;filter:drop-shadow(0 3px 2px #66553540);pointer-events:none;width:72px;height:88px;position:absolute;bottom:calc(100% - 6px);right:-24px}.atlas-caption{text-align:center;color:#5f6958;padding:12px 24px;font-size:.85rem}.atlas-detail{background:#fffdf5;border-left:1px solid #e0d5ba;padding:20px;overflow-y:auto}.atlas-detail-heading{align-items:center;gap:12px;display:flex}.atlas-detail-heading>div{flex:1}.atlas-detail-heading p{color:#826037;margin:0 0 4px;font-size:.75rem}.atlas-detail-heading h3{margin:0;font-size:1.25rem}.atlas-detail-heading>strong{color:#416c50;font-size:.9rem}.atlas-expand{display:none}.atlas-detail-picture{margin-top:16px}.atlas-detail-picture .coloring-picture{border-radius:12px}.atlas-detail-picture p{color:#5a6758;font-size:.85rem;line-height:1.5}.atlas-next{color:#6c4f2d;margin:18px 0;font-size:.9rem;line-height:1.5}.atlas-detail-actions{gap:10px;display:grid}.atlas-detail-actions button{justify-content:center;width:100%;min-height:48px;font-size:.85rem}.atlas-no-piece,.atlas-no-practice{color:#66705e;font-size:.8rem;line-height:1.4}.atlas-sea{text-align:center;background:radial-gradient(at top,#d8e9e9,#fcf9ef 80%);min-height:100%;padding:24px}.atlas-sea-art{width:min(500px,100%);margin:auto;position:relative}.atlas-sea-art img{border-radius:18px;width:100%;display:block}.atlas-sea-art span{white-space:nowrap;background:#fff9e8f5;border-radius:20px;align-items:center;gap:8px;padding:10px 16px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.atlas-sea h3{margin:20px 0 12px;font-family:Georgia,serif;font-size:1.5rem}.atlas-sea p{max-width:580px;margin:12px auto;line-height:1.5}.atlas-sea-stops{color:#536961;font-size:.85rem}.atlas-sea button{margin:20px auto 0}.atlas-footer{background:#fffdf4;border-top:1px solid #e5decc;justify-content:space-between;align-items:center;gap:12px;padding:6px 20px;display:flex}.atlas-footer button,.coloring-world-controls .atlas-music button{color:#365a49;min-height:44px;font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:7px;font-size:.8rem;display:flex}.atlas-footer button svg{flex:none}.atlas-music{min-width:0}.atlas-music button[aria-pressed=true]{color:#83531f}.atlas-music-error{color:#8b432e;max-width:340px;font-size:.75rem;display:block}.coloring-topline{justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px;display:flex}.coloring-topline .coloring-heading{min-width:0}.coloring-topline .coloring-heading>p:last-child{margin-bottom:0}.coloring-world-controls{flex:0 0 380px;gap:4px;max-width:100%;display:grid}.coloring-world-controls .atlas-music{justify-self:end}.atlas-launch{text-align:left;color:#294837;cursor:pointer;background:#faf4e5;border:1px solid #bba16e;border-radius:16px;flex:0 0 380px;align-items:center;gap:12px;max-width:100%;min-height:94px;padding:10px 14px;display:flex}.atlas-launch:hover{background:#f7efd9;border-color:#876636}.atlas-launch>img{object-fit:contain;flex:none;width:64px;height:64px}.atlas-launch>span{flex:1;gap:5px;min-width:0;display:grid}.atlas-launch>svg{flex:none}.atlas-launch strong{text-underline-offset:3px;font-size:.96rem;line-height:1.3;text-decoration:underline;text-decoration-thickness:1px}.atlas-launch small{color:#53634f;font-size:.8rem;line-height:1.4}@keyframes atlas-enter{0%{opacity:0;transform:translateX(calc(var(--direction) * 18px))}to{opacity:1;transform:translate(0)}}@media (width>=1101px){.atlas-main .atlas-viewport{container-type:size}.atlas-main .atlas-page{place-items:center;min-height:100%;display:grid}.atlas-main .atlas-landscape{width:min(100%,150cqh);min-height:0}}@media (width<=1100px){.atlas-main{flex-direction:column;display:flex}.atlas-viewport{flex:1}.atlas-landscape{min-height:0}.atlas-detail{border-top:1px solid #e0d5ba;border-left:0;flex:none;max-height:48%;padding:10px 18px}.atlas-expand{display:grid}.atlas-expand svg{transition:transform .2s}.atlas-detail--expanded .atlas-expand svg{transform:rotate(180deg)}.atlas-detail-picture{display:none}.atlas-detail--expanded .atlas-detail-picture{grid-template-columns:150px minmax(0,1fr);align-items:center;gap:12px 16px;display:grid}.atlas-detail-picture>.coloring-picture{grid-area:1/1}.atlas-detail-picture>p{grid-area:1/2;margin:0}.atlas-detail-picture>.paint-wallet{grid-column:1/-1;margin:0}.atlas-detail-picture .coloring-picture{flex:none;width:150px}.atlas-detail-actions{flex-wrap:wrap;display:flex}.atlas-detail-actions button{flex:1;width:auto}.atlas-next{margin:8px 0;font-size:.8rem}.atlas-no-piece{margin:6px 0 0}.coloring-topline{align-items:flex-start}.coloring-world-controls{flex-basis:330px}}@media (width<=800px){.coloring-topline{gap:16px;display:grid}.coloring-world-controls{width:min(420px,100%)}.atlas-launch{width:100%}}@media (width<=600px){.journey-atlas{border:0;border-radius:0;width:100%;height:100dvh}.atlas-header{padding:10px 12px 4px}.atlas-header h2{font-size:1.3rem}.atlas-header p{font-size:.65rem}.atlas-navigation{grid-template-columns:1fr 1fr;gap:0 12px;padding:0 12px 6px;display:grid}.atlas-world-link{max-width:100%;font-size:.73rem}.atlas-world-link:last-child{text-align:right;justify-self:end}.atlas-page-status{text-align:left;grid-area:2/1/auto/-1;font-size:.72rem}.atlas-landscape{aspect-ratio:1/3}.atlas-route--wide{display:none}.atlas-route--phone{display:block}.atlas-road-edge{stroke-width:7px}.atlas-road{stroke-width:2px}.atlas-stops li{left:var(--phone-x);top:var(--phone-y);max-width:61%}.atlas-stop strong{font-size:.85rem}.atlas-stop small{font-size:.68rem}.atlas-owl{width:55px;height:68px;right:-17px}.atlas-detail{padding:8px 12px}.atlas-detail-heading h3{font-size:1.06rem}.atlas-detail--expanded .atlas-detail-picture{grid-template-columns:105px minmax(0,1fr)}.atlas-detail-picture .coloring-picture{width:105px}.atlas-detail-picture p{font-size:.75rem}.atlas-detail-actions{gap:6px}.atlas-detail-actions button{padding:8px;font-size:.76rem}.atlas-footer{gap:10px;padding:4px 10px}.atlas-footer button,.coloring-world-controls .atlas-music button{font-size:.72rem}.atlas-music button>svg:last-child{display:none}.atlas-return{max-width:120px}.atlas-sea{padding:16px}.atlas-launch{gap:8px;padding:10px}.atlas-launch>img{width:56px;height:64px}.atlas-launch strong{font-size:.88rem}.atlas-launch small{font-size:.75rem}}@media (height<=550px){.atlas-header p,.atlas-no-piece{display:none}.atlas-detail{max-height:45%}}@media (prefers-reduced-motion:reduce){.atlas-page--ready{animation:none}.atlas-expand svg{transition:none}}.puzzle-reveal--from-map .puzzle-reveal-art{animation:.45s cubic-bezier(.2,.7,.2,1) both atlas-picture-open}@keyframes atlas-picture-open{0%{opacity:.2;transform:translate(var(--picture-x), var(--picture-y)) scale(.2)}to{opacity:1;transform:translate(0)scale(1)}}@media (prefers-reduced-motion:reduce){.puzzle-reveal--from-map .puzzle-reveal-art{animation:none}}.atlas-part{color:#6c624c;margin-top:5px;font-size:.8rem;line-height:1.4;display:block}.atlas-page[data-world=delft] .atlas-owl{left:0;right:auto}.atlas-page[data-world=amsterdam] .atlas-owl{right:0}.family-bar{flex-direction:column;align-items:stretch;gap:6px;min-width:0;max-width:260px;margin-left:auto;display:flex}.family-trigger{color:#24474b;cursor:pointer;text-align:left;background:#fffdf6;border:1px solid #d9dfd5;border-radius:18px;align-items:center;gap:10px;min-width:0;max-width:100%;min-height:48px;padding:6px 14px;display:flex}.family-trigger>span:nth-child(2){flex:1;min-width:0}.family-trigger>svg{flex-shrink:0}.family-trigger small,.family-trigger strong{display:block}.family-trigger small{opacity:.75;font-size:11px}.family-trigger strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.family-avatar{flex-shrink:0;font-size:30px;line-height:1.3}.family-dialog{color:#24474b;background:#fffdf6;border:1px solid #dddccd;border-radius:24px;width:min(580px,100% - 24px);max-height:calc(100dvh - 32px);padding:24px;box-shadow:0 20px 80px #19353d33}.family-dialog::backdrop{background:#163c4c66}.family-dialog header,.family-dialog header>div{align-items:center;gap:12px;display:flex}.family-dialog header{justify-content:space-between}.family-dialog h2{margin:0;font-size:24px}.family-dialog h3{margin:0}.family-description{margin:16px 0 20px;line-height:1.5}.family-profiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.family-profile{min-width:0;min-height:126px;color:inherit;cursor:pointer;background:#fff;border:1px solid #dedfd5;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:14px 8px;display:flex}.family-profile strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.family-profile small{font-size:12px}.family-profile.selected{background:#edf5ec;border:2px solid #468c81}.family-add{background:0 0;border-style:dashed}.family-add strong{white-space:normal}.family-form{border-top:1px solid #dedfd5;gap:16px;margin-top:24px;padding-top:24px;display:grid}.family-form label{gap:8px;display:grid}.family-form input,.family-form select{width:100%;min-height:48px;color:inherit;font:inherit;background:#fff;border:1px solid #c9d5d2;border-radius:10px;padding:10px}.family-form fieldset{border:0;margin:0;padding:0}.family-form legend{margin-bottom:8px}.family-form p{margin:0;line-height:1.5}.family-avatars{flex-wrap:wrap;gap:8px;display:flex}.family-avatars button{cursor:pointer;background:#fff;border:1px solid #d2d9cc;border-radius:12px;width:48px;height:48px;font-size:28px}.family-avatars button[aria-pressed=true]{background:#dcefdc;border:2px solid #468c81}.family-loading{max-width:600px;margin:auto;padding:48px 24px}@media (width<=480px){.family-trigger{padding:6px 8px}.family-trigger .family-avatar{font-size:25px}.family-dialog{padding:18px}.family-dialog h2{font-size:20px}.family-profiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.family-avatar img{object-fit:contain;border-radius:50%;width:42px;height:42px;display:block}.family-profile .family-avatar img{width:64px;height:64px}.family-edit{margin-bottom:16px}.profile-welcome{color:#24474b;background:#fffdf6;border:1px solid #dddccd;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;max-width:1000px;margin:16px auto;padding:16px 24px;display:flex}.profile-welcome p{margin:4px 0 0;line-height:1.5}.profile-welcome button{flex-shrink:0}.profile-preview{background:#edf1e7;border-radius:50%;justify-self:center;width:112px;height:112px}.profile-preview img,.profile-preview>span{object-fit:contain;place-items:center;width:100%;height:100%;font-size:72px;display:grid}.family-avatars{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.family-avatars button{width:100%;height:auto;min-height:100px;color:inherit;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:6px 2px;display:flex}.family-avatars img{object-fit:contain;width:72px;max-width:100%;height:72px}.family-avatars button>span{font-size:12px;line-height:1.3}.family-avatars button:focus-visible{outline-offset:2px;outline:3px solid #dc8c26}@media (width<=480px){.profile-welcome{flex-direction:column;align-items:stretch;margin:12px;padding:14px}.family-avatars{grid-template-columns:repeat(2,minmax(0,1fr))}}.app-update-dialog{box-sizing:border-box;color:#273b32;background:#fff;border:1px solid #cdd8d1;border-radius:14px;width:min(400px,100vw - 32px);padding:24px;box-shadow:0 16px 60px #0003}.app-update-dialog::backdrop{background:#12231c8c}.app-update-dialog h2{margin:0 0 12px;font-size:24px;line-height:1.2}.app-update-dialog p{margin:0 0 20px;font-size:16px;line-height:1.5}.app-update-dialog button{color:#fff;width:100%;min-height:48px;font:inherit;cursor:pointer;background:#28785f;border:0;border-radius:8px;padding:12px;font-weight:700}.app-update-dialog button:disabled{opacity:.65;cursor:wait}
