:root{--bg: #F6F2EC;--surface: #FFFFFF;--surface-muted: #F1EAE0;--accent: #D7B89C;--accent-dark: #A98F78;--text: #3E2E25;--text-muted: #7E736B;--text-disabled: #ACA49C;--border: #EEE4D8;--like-pink: #FF6B82;--badge-new: #B84159;--star-yellow: #F4C24E;--success: #5E9457;--scrim: rgba(30,20,14,.45);--scrim-strong: rgba(20,13,9,.62);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 999px;--shadow-sm: 0 2px 8px rgba(62,46,37,.06);--shadow-md: 0 8px 24px rgba(62,46,37,.08);--shadow-lg: 0 16px 40px rgba(62,46,37,.12);--shadow-btn:0 6px 16px rgba(215,184,156,.45);--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--sp-8:40px;--sp-9:48px;--sp-10:64px;--font-ui:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"Unbounded","Manrope",system-ui,sans-serif;--ease-standard: cubic-bezier(0,0,.2,1);--ease-in: cubic-bezier(.4,0,1,1);--ease-spring: cubic-bezier(.34,1.56,.64,1)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}h1,h2,h3,h4{margin:0;font-family:var(--font-ui)}p{margin:0}img{max-width:100%;display:block}button,input{font-family:inherit}ul{margin:0}.app-shell{max-width:440px;margin:0 auto;min-height:100vh;min-height:100dvh;background:var(--bg);position:relative;overflow-x:hidden}.screen{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px));animation:screenIn .28s var(--ease-standard)}@keyframes screenIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.topbar{display:flex;align-items:center;gap:var(--sp-3);padding:calc(12px + env(safe-area-inset-top,0px)) var(--sp-5) var(--sp-3)}.topbar .logo-mark{font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:.32em;text-transform:uppercase;color:var(--text)}.topbar .spacer{flex:1}.topbar .icon-btn{width:40px;height:40px;border-radius:50%;border:none;background:transparent;display:flex;align-items:center;justify-content:center;color:var(--text);cursor:pointer;position:relative}.topbar .icon-btn .dot{position:absolute;top:8px;right:9px;width:7px;height:7px;border-radius:50%;background:var(--badge-new)}.topbar.centered .title{flex:1;text-align:center;font-weight:700;font-size:17px}.section{padding:0 var(--sp-5);margin-top:var(--sp-7)}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--sp-4)}.section-head h2{font-size:18px;font-weight:700}.section-head .link{background:none;border:none;color:var(--accent-dark);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.02em;cursor:pointer;display:flex;align-items:center;gap:4px}.eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);display:block;margin-bottom:var(--sp-3)}.icon{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.icon.filled{fill:currentColor;stroke:none}.icon-sm{width:16px;height:16px}.btn{font-family:var(--font-ui);font-weight:700;font-size:15px;letter-spacing:.02em;text-transform:uppercase;border:none;cursor:pointer;border-radius:var(--radius-pill);height:52px;padding:0 28px;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .2s var(--ease-spring),box-shadow .2s var(--ease-standard),background .15s}.btn-primary{background:var(--accent);color:var(--text);box-shadow:var(--shadow-btn)}.btn-primary:active{transform:scale(.96);background:var(--accent-dark);box-shadow:0 3px 8px #d7b89c4d}.btn-secondary{background:transparent;color:var(--text);border:1.5px solid var(--accent-dark)}.btn-secondary:active{transform:scale(.96);background:var(--surface-muted)}.btn-block{width:100%}.search-field{display:flex;align-items:center;gap:10px;background:var(--surface-muted);border-radius:var(--radius-pill);height:48px;padding:0 16px;color:var(--text-muted)}.search-field input{border:none;background:none;outline:none;flex:1;font-family:var(--font-ui);font-size:13.5px;color:var(--text)}.search-field input::placeholder{color:var(--text-muted)}.search-field.inline{border-radius:var(--radius-lg);height:44px}.chip-row{display:flex;gap:var(--sp-2);overflow-x:auto;padding:2px var(--sp-5) 6px;margin:0 calc(-1 * var(--sp-5));scrollbar-width:none}.chip-row::-webkit-scrollbar{display:none}.chip{display:inline-flex;align-items:center;height:36px;padding:0 18px;border-radius:var(--radius-pill);font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;background:var(--surface);border:1px solid var(--border);color:var(--text-muted);transition:transform .12s var(--ease-in)}.chip:active{transform:scale(.95)}.chip.active{background:var(--text);color:#fff;border-color:var(--text)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;border-radius:var(--radius-pill);padding:6px 12px}.badge-neutral{background:var(--surface);color:var(--text);border:1px solid var(--border)}.badge-time{background:#ffffffe6;color:var(--text);border:1px solid var(--border)}.badge-new{background:var(--badge-new);color:#fff}.badge-done{background:#5e945724;color:var(--success)}.badge-locked{background:var(--surface-muted);color:var(--text-disabled)}.hero-banner{position:relative;border-radius:var(--radius-xl);overflow:hidden;height:210px;padding:var(--sp-5);display:flex;flex-direction:column;justify-content:flex-end;color:#fff;cursor:pointer}.hero-banner .scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(160deg,#140d0926,#140d09b8)}.hero-banner .date{position:absolute;top:16px;left:16px;background:var(--scrim-strong);color:#fff;font-size:11px;font-weight:700;padding:6px 12px;border-radius:var(--radius-pill);z-index:1}.hero-banner .count{position:absolute;top:16px;right:16px;width:44px;height:44px;border-radius:50%;background:var(--scrim-strong);color:#fff;font-size:10px;font-weight:700;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1;z-index:1}.hero-banner .content{position:relative;z-index:1}.hero-banner h3{font-size:22px;font-weight:800;text-transform:uppercase;line-height:1.1;margin-bottom:6px}.hero-banner p{font-size:12.5px;color:#ead9cb;margin-bottom:14px}.hero-banner .btn-hero{align-self:flex-start;background:#fff;color:var(--text);font-size:12px;font-weight:700;text-transform:uppercase;padding:11px 20px;border-radius:var(--radius-pill);border:none;cursor:pointer}.dots{display:flex;gap:6px;justify-content:center;margin-top:var(--sp-3)}.dots .d{width:6px;height:6px;border-radius:50%;background:var(--border)}.dots .d.on{width:18px;border-radius:3px;background:var(--accent-dark)}.tile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cat-tile-simple{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--surface);border-radius:var(--radius-lg);padding:var(--sp-5) var(--sp-3);box-shadow:var(--shadow-sm);text-align:center;cursor:pointer;color:var(--text);border:none;transition:transform .12s var(--ease-in)}.cat-tile-simple:active{transform:scale(.96)}.cat-tile-simple .name{font-weight:700;font-size:13px}.cat-tile-simple.accent .icon{color:var(--star-yellow)}.card-row{display:flex;gap:var(--sp-3);overflow-x:auto;padding:2px var(--sp-5) 8px;margin:0 calc(-1 * var(--sp-5));scroll-snap-type:x mandatory;scroll-padding-left:20px;scrollbar-width:none}.card-row::-webkit-scrollbar{display:none}.recipe-card{width:168px;flex-shrink:0;scroll-snap-align:start;background:var(--surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform .2s var(--ease-in)}.recipe-card:active{transform:scale(.97)}.recipe-card .thumb{position:relative;height:120px;overflow:hidden}.recipe-card .thumb .emoji{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:44px;opacity:.9}.recipe-card .thumb .badge-new{position:absolute;top:8px;left:8px}.recipe-card .body{padding:var(--sp-3) var(--sp-4) var(--sp-4)}.recipe-card .title{font-weight:700;font-size:13.5px;line-height:1.3;margin-bottom:6px;min-height:35px}.recipe-card .meta{display:flex;gap:10px;font-size:11.5px;color:var(--text-muted);align-items:center}.recipe-card .meta span{display:flex;align-items:center;gap:3px}.like-circle{position:absolute;top:8px;right:8px;width:30px;height:30px;border-radius:50%;background:#ffffffd9;display:flex;align-items:center;justify-content:center;color:var(--text);border:none;cursor:pointer;z-index:2}.like-circle.on{color:var(--like-pink)}.like-circle.on .icon{fill:var(--like-pink);stroke:var(--like-pink)}.like-circle.pop{animation:heartPop .38s var(--ease-spring)}@keyframes heartPop{0%{transform:scale(1)}45%{transform:scale(1.28)}70%{transform:scale(.94)}to{transform:scale(1)}}.like-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.like-particles span{position:absolute;top:50%;left:50%;width:6px;height:6px;border-radius:50%;margin:-3px;opacity:0}.like-particles.burst span{animation:burst .55s var(--ease-standard) forwards}@keyframes burst{0%{opacity:1;transform:rotate(var(--angle)) translateY(0) scale(1)}to{opacity:0;transform:rotate(var(--angle)) translateY(-30px) scale(.3)}}.cat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cat-tile{background:var(--surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);cursor:pointer;border:none;text-align:left;padding:0;transition:transform .15s var(--ease-in)}.cat-tile:active{transform:scale(.97)}.cat-tile .thumb{height:100px;position:relative}.cat-tile .thumb .emoji{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:40px}.cat-tile .info{padding:var(--sp-3) var(--sp-4)}.cat-tile .name{font-weight:700;font-size:14px;color:var(--text)}.cat-tile .count{font-size:12px;color:var(--text-muted);margin-top:2px}.recipe-list{display:flex;flex-direction:column;gap:var(--sp-3)}.recipe-row{display:flex;gap:var(--sp-3);align-items:center;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:10px;cursor:pointer;border:none;text-align:left;transition:transform .15s var(--ease-in)}.recipe-row:active{transform:scale(.98)}.recipe-row .thumb{width:64px;height:64px;border-radius:var(--radius-md);flex-shrink:0;position:relative;overflow:hidden}.recipe-row .thumb .emoji{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:28px}.recipe-row .body{flex:1;min-width:0}.recipe-row .title{font-weight:700;font-size:14px;color:var(--text);line-height:1.25}.recipe-row .sub{font-size:12px;color:var(--text-muted);margin-top:2px}.recipe-row .meta{display:flex;gap:12px;font-size:11.5px;color:var(--text-muted);margin-top:6px;align-items:center}.recipe-row .meta span{display:flex;align-items:center;gap:3px}.recipe-row .like-inline{width:36px;height:36px;flex-shrink:0;border:none;background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.recipe-row .like-inline.on{color:var(--like-pink)}.recipe-row .like-inline.on .icon{fill:var(--like-pink);stroke:var(--like-pink)}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--sp-10) var(--sp-6);color:var(--text-muted);gap:var(--sp-3)}.empty .big{font-size:48px}.empty .t{font-weight:700;font-size:16px;color:var(--text)}.empty .s{font-size:13.5px;max-width:240px}.tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:440px;display:flex;background:var(--surface);border-top:1px solid var(--border);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));box-shadow:0 -8px 24px #3e2e250f;z-index:40}.tabbar .item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-disabled);font-size:10.5px;font-weight:700;background:none;border:none;cursor:pointer;padding:4px 0}.tabbar .item.active,.tabbar .item.active .icon{color:var(--accent-dark)}.recipe-hero{position:relative;height:340px;overflow:hidden}.recipe-hero .photo{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:120px;animation:heroZoom .5s var(--ease-standard)}@keyframes heroZoom{0%{transform:scale(1.06)}to{transform:scale(1)}}.recipe-hero .scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--scrim) 0%,transparent 30%,transparent 45%,var(--scrim-strong) 100%)}.recipe-hero .top-actions{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));left:0;right:0;display:flex;align-items:center;padding:0 var(--sp-4);z-index:2}.recipe-hero .top-actions .spacer{flex:1}.hero-btn{width:40px;height:40px;border-radius:50%;background:#ffffffd9;border:none;display:flex;align-items:center;justify-content:center;color:var(--text);cursor:pointer}.hero-btn.on{color:var(--like-pink)}.hero-btn.on .icon{fill:var(--like-pink);stroke:var(--like-pink)}.recipe-hero .info{position:absolute;left:0;right:0;bottom:0;padding:var(--sp-5);color:#fff;z-index:2}.recipe-hero .badges{display:flex;gap:8px;margin-bottom:var(--sp-3)}.recipe-hero h1{font-size:26px;font-weight:800;line-height:1.15;letter-spacing:-.01em}.recipe-hero .desc{font-size:13.5px;color:#ead9cb;margin-top:8px;max-width:300px}.stats-row{display:flex;background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--sp-4) 0;margin:-28px var(--sp-5) 0;position:relative;z-index:3}.stats-row .stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;border-right:1px solid var(--border)}.stats-row .stat:last-child{border-right:none}.stats-row .stat .icon{color:var(--accent-dark)}.stats-row .num{font-weight:800;font-size:17px}.stats-row .lbl{font-size:11px;color:var(--text-muted)}.block-title{font-weight:700;font-size:15px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--sp-3)}.lesson-desc{font-size:14px;color:var(--text-muted);line-height:1.6}.accordion{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--sp-3);overflow:hidden}.accordion summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:var(--sp-4) var(--sp-5);font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.03em;color:var(--text)}.accordion summary::-webkit-details-marker{display:none}.accordion summary .chev{margin-left:auto;transition:transform .2s var(--ease-standard);color:var(--text-muted)}.accordion[open] summary .chev{transform:rotate(180deg)}.accordion .content{padding:0 var(--sp-5) var(--sp-5);font-size:13.5px;color:var(--text-muted);line-height:1.6}.accordion .row{display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid var(--border)}.accordion .row span:last-child{color:var(--text);font-weight:600;white-space:nowrap}.accordion .content p{margin-bottom:8px}.sticky-cta{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:440px;padding:var(--sp-4) var(--sp-5) calc(var(--sp-4) + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,rgba(246,242,236,0) 0%,var(--bg) 40%);z-index:30}.progress-panel{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--sp-4) var(--sp-5)}.progress-panel .head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-2)}.progress-panel .head .t{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.progress-panel .head .c{font-size:12.5px;color:var(--text-muted)}.stepper{display:flex;align-items:center;margin-top:var(--sp-3)}.stepper .dot{width:26px;height:26px;border-radius:50%;background:var(--surface);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--text-disabled);flex-shrink:0;transition:all .25s var(--ease-spring)}.stepper .dot.done{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}.stepper .dot.current{background:var(--accent);border-color:var(--accent);color:var(--text);transform:scale(1.15);box-shadow:0 0 0 4px #d7b89c4d}.stepper .line{flex:1;height:2px;background:var(--border)}.stepper .line.done{background:var(--accent-dark)}.lesson-step{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:var(--sp-4)}.lesson-step .head{display:flex;align-items:center;gap:10px;padding:var(--sp-4) var(--sp-5)}.lesson-step .num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex-shrink:0}.lesson-step.done .num{background:var(--accent-dark);color:#fff}.lesson-step.current .num{background:var(--accent);color:var(--text);box-shadow:0 0 0 4px #d7b89c4d}.lesson-step.locked .num{background:var(--surface-muted);color:var(--text-disabled)}.lesson-step .title{font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.03em;flex:1}.lesson-step.locked .title{color:var(--text-disabled)}.lesson-step .video{position:relative;margin:0 var(--sp-5);border-radius:var(--radius-lg);overflow:hidden;height:190px;display:flex;align-items:center;justify-content:center}.lesson-step .video .emoji{font-size:64px;opacity:.8}.lesson-step .video .play{position:absolute;width:56px;height:56px;border-radius:50%;background:#ffffffe6;display:flex;align-items:center;justify-content:center;color:var(--text);border:none;cursor:pointer}.lesson-step .video .timecode{position:absolute;bottom:10px;right:10px;background:var(--scrim-strong);color:#fff;font-size:11px;font-weight:700;padding:4px 8px;border-radius:var(--radius-sm)}.lesson-step .video .expand{position:absolute;top:10px;right:10px;color:#fff;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.lesson-step .method{padding:var(--sp-4) var(--sp-5)}.lesson-step .method .lbl{font-size:12px;font-weight:700;color:var(--text-muted);margin-bottom:6px}.lesson-step .method p{font-size:13.5px;color:var(--text-muted);line-height:1.6}.lesson-step .complete-btn{margin:0 var(--sp-5) var(--sp-5)}.lesson-step.locked .head{opacity:.8}.lesson-step.locked .lock{color:var(--text-disabled)}.profile-head{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-5) 0}.avatar{width:88px;height:88px;border-radius:50%;background:linear-gradient(150deg,#d7b89c,#9c7452);display:flex;align-items:center;justify-content:center;font-size:38px}.profile-head .name{font-size:20px;font-weight:800}.profile-head .handle{font-size:13px;color:var(--text-muted)}.lang-switch{display:flex;background:var(--surface-muted);border-radius:var(--radius-pill);padding:4px;gap:4px}.lang-switch button{flex:1;height:36px;border:none;background:none;border-radius:var(--radius-pill);font-weight:700;font-size:13px;color:var(--text-muted);cursor:pointer}.lang-switch button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--sp-5);box-shadow:var(--shadow-sm)}.panel h3{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--sp-4);color:var(--text-muted)}.sub-row{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--border);font-size:14px}.sub-row:first-of-type{border-top:none}.sub-row .k{color:var(--text-muted)}.sub-row .v{font-weight:700}.sub-actions{display:flex;flex-direction:column;gap:10px;margin-top:var(--sp-4)}.btn-outline{height:48px;border-radius:var(--radius-pill);border:1.5px solid var(--accent-dark);background:transparent;color:var(--text);font-weight:700;font-size:14px;cursor:pointer;text-transform:uppercase;letter-spacing:.02em}.btn-outline.danger{border-color:var(--badge-new);color:var(--badge-new)}.version{text-align:center;color:var(--text-disabled);font-size:12px;margin-top:var(--sp-6)}.week-hero{position:relative;border-radius:var(--radius-xl);overflow:hidden;height:180px;padding:var(--sp-5);display:flex;flex-direction:column;justify-content:flex-end;color:#fff}.week-hero .scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(160deg,#140d0933,#140d09b8)}.week-hero .content{position:relative;z-index:1}.week-hero .date{font-size:12px;font-weight:700;color:#ead9cb;margin-bottom:6px}.week-hero h1{font-size:24px;font-weight:800;text-transform:uppercase;line-height:1.1}.week-days{display:flex;flex-direction:column;gap:var(--sp-3)}.day-card{display:flex;align-items:center;gap:var(--sp-4);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--sp-4);border:none;text-align:left;cursor:pointer;transition:transform .15s var(--ease-in)}.day-card:active{transform:scale(.98)}.day-card.locked{cursor:default;opacity:.85}.day-card .daynum{width:52px;height:52px;border-radius:var(--radius-md);flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--surface-muted);font-weight:800;color:var(--accent-dark)}.day-card.today .daynum{background:var(--accent);color:var(--text)}.day-card .daynum .dn{font-size:18px;line-height:1}.day-card .daynum .dl{font-size:9px;text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.day-card .body{flex:1;min-width:0}.day-card .body .t{font-weight:700;font-size:14.5px;color:var(--text)}.day-card.locked .body .t{color:var(--text-muted)}.day-card .body .s{font-size:12px;color:var(--text-muted);margin-top:3px;display:flex;align-items:center;gap:6px}.day-card .lock{color:var(--text-disabled);flex-shrink:0}.today-pill{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--success);background:#5e945724;padding:2px 8px;border-radius:var(--radius-pill)}.splash{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:100}.splash.out{animation:splashOut .4s var(--ease-in) forwards}@keyframes splashOut{to{opacity:0;transform:scale(1.05)}}.splash .logo{font-family:var(--font-display);font-weight:700;font-size:26px;letter-spacing:.34em;text-transform:uppercase;opacity:0;transform:translateY(6px);animation:splLogo .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes splLogo{to{opacity:1;transform:none}}.splash .line{width:0;height:2px;background:var(--accent);animation:splLine .3s cubic-bezier(.65,0,.35,1) .6s forwards}@keyframes splLine{to{width:56px}}.splash .tag{font-size:13px;color:var(--text-muted);text-align:center;opacity:0;transform:translateY(6px);animation:splTag .4s cubic-bezier(.16,1,.3,1) 1.2s forwards}@keyframes splTag{to{opacity:1;transform:none}}
