:root{--sat: env(safe-area-inset-top, 0px);--sar: env(safe-area-inset-right, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px);--sc-dock-h: calc(3.5rem + var(--sab));--sc-header-h: 56px;--sc-tb-h: 36px;--z-shell: 50;--z-float: 55;--z-sheet: 60;--z-sheet-2: 65;--z-sheet-3: 70;--z-sheet-4: 80;--z-modal: 100;--z-modal-2: 120;--z-modal-3: 150;--z-modal-4: 200;--z-modal-5: 300;--z-tour: 400;--z-toast: 500;--z-top: 9999;--z-top-2: 10000;--weekend-sun: #f87171;--weekend-sat: #60a5fa;--scroll-thumb: rgba(255, 255, 255, .18);--scroll-thumb-hover: rgba(255, 255, 255, .32);--bg-base: #111214;--bg-grouped: var(--bg-base);--bg-surface: rgba(29, 31, 37, .78);--bg-surface-hover: rgba(42, 45, 54, .94);--bg-elevated: rgba(20, 22, 28, .96);--bg-sheet: #14161c;--bg-overlay: rgba(6, 7, 10, .62);--bg-overlay-soft: rgba(6, 7, 10, .28);--bg-card: #1b1f27;--bg-input: rgba(18, 20, 25, .96);--bg-header: rgba(17, 19, 24, .64);--text-primary: #ffffff;--text-secondary: #d2d7e0;--text-tertiary: #9ca4b3;--text-muted: #727b8d;--text-inverse: #000000;--accent: #71b7ff;--accent-hover: #98ccff;--accent-muted: rgba(113, 183, 255, .18);--accent-border: rgba(113, 183, 255, .36);--reward: #4de8e0;--reward-hover: #74f2ec;--reward-muted: rgba(77, 232, 224, .16);--reward-border: rgba(77, 232, 224, .34);--sacred: #f0d264;--sacred-hover: #f5dd88;--sacred-muted: rgba(240, 210, 100, .2);--sacred-border: rgba(240, 210, 100, .42);color-scheme:dark;--raise-highlight: rgba(255, 255, 255, .045);--border: rgba(176, 186, 206, .07);--border-subtle: rgba(176, 186, 206, .045);--border-strong: rgba(176, 186, 206, .3);--shadow-glow: rgba(113, 183, 255, .42);--shadow-reward: rgba(77, 232, 224, .34);--shadow-sacred: rgba(240, 210, 100, .38);--shadow-card: 0 26px 52px -30px rgba(0, 0, 0, .62), 0 8px 28px -18px rgba(113, 183, 255, .12);--font-ui: "Pretendard Variable", Pretendard, "SF Pro Text", "Apple SD Gothic Neo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: Manrope, "Pretendard Variable", Pretendard, "SF Pro Display", "Apple SD Gothic Neo", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-numeric: Manrope, "Pretendard Variable", Pretendard, -apple-system, sans-serif;--font-letter: "Gowun Batang", "Apple SD Gothic Neo", "Nanum Myeongjo", serif;--font-mono-ui: "SF Mono", ui-monospace, "JetBrains Mono", "Fira Code", monospace;--fb-bg: #111214;--fb-surface: rgba(24, 27, 34, .92);--fb-glass: rgba(113, 183, 255, .1);--fb-stroke: rgba(176, 186, 206, .16);--fb-highlight: rgba(255, 255, 255, .12);--fb-shadow-ambient: rgba(0, 0, 0, .42);--fb-shadow-key: rgba(0, 0, 0, .72);--fb-depth-1: 10px;--fb-depth-2: 26px;--fb-depth-3: 40px}.light{--bg-base: #F2F2F7;--bg-grouped: #F7F7F9;--bg-surface: rgba(255, 255, 255, .85);--bg-surface-hover: rgba(255, 255, 255, .95);--bg-elevated: #FFFFFF;--bg-sheet: #FFFFFF;--bg-overlay: rgba(0, 0, 0, .25);--bg-overlay-soft: rgba(0, 0, 0, .12);--bg-card: #FFFFFF;--bg-input: #FFFFFF;--bg-header: rgba(247, 247, 249, .82);--text-primary: #1D1D1F;--text-secondary: #48484A;--text-tertiary: #636366;--text-muted: #8E8E93;--text-inverse: #FFFFFF;--accent: #007AFF;--accent-hover: #0062CC;--accent-muted: rgba(0, 122, 255, .12);--accent-border: rgba(0, 122, 255, .3);--reward: #0fa9b5;--reward-hover: #0d96a1;--reward-muted: rgba(15, 169, 181, .12);--reward-border: rgba(15, 169, 181, .24);--sacred: #b7c600;--sacred-hover: #9ead00;--sacred-muted: rgba(183, 198, 0, .16);--sacred-border: rgba(183, 198, 0, .3);color-scheme:light;--raise-highlight: transparent;--border: rgba(0, 0, 0, .12);--border-subtle: rgba(0, 0, 0, .06);--border-strong: rgba(0, 0, 0, .2);--shadow-glow: rgba(0, 122, 255, .3);--shadow-reward: rgba(15, 169, 181, .2);--shadow-sacred: rgba(183, 198, 0, .24);--shadow-card: 0 4px 12px rgba(0, 0, 0, .08);--fb-bg: #F2F2F7;--fb-surface: rgba(255, 255, 255, .7);--fb-glass: rgba(255, 255, 255, .8);--fb-stroke: rgba(0, 0, 0, .08);--fb-highlight: rgba(255, 255, 255, 1);--fb-shadow-ambient: rgba(0, 0, 0, .03);--fb-shadow-key: rgba(0, 0, 0, .06);--fb-depth-1: 6px;--fb-depth-2: 15px;--fb-depth-3: 30px}body{background-color:var(--bg-base);background-image:radial-gradient(circle at 50% -16%,rgba(113,183,255,.08) 0px,transparent 34%),radial-gradient(circle at 14% 18%,rgba(255,255,255,.03) 0px,transparent 24%),linear-gradient(180deg,#191a1ffa,#0f1013);color:var(--text-primary);overflow:hidden;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html.light,.light body{background-color:var(--bg-base);background-image:none}.light{--weekend-sun: #dc2626;--weekend-sat: #2563eb;--scroll-thumb: rgba(0, 0, 0, .18);--scroll-thumb-hover: rgba(0, 0, 0, .3)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:var(--scroll-thumb);border-radius:999px;border:3px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background-color:var(--scroll-thumb-hover)}*::-webkit-scrollbar-corner{background:transparent}html{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}.sc-dark-scope{color-scheme:dark;--bg-base: #111214;--bg-surface: rgba(29, 31, 37, .78);--bg-surface-hover: rgba(42, 45, 54, .94);--bg-elevated: rgba(20, 22, 28, .96);--bg-sheet: #14161c;--bg-card: #1b1f27;--bg-overlay: rgba(6, 7, 10, .62);--text-primary: #ffffff;--text-secondary: #d2d7e0;--text-tertiary: #9ca4b3;--border: rgba(176, 186, 206, .07);--border-subtle: rgba(176, 186, 206, .045);--raise-highlight: rgba(255, 255, 255, .045);--scroll-thumb: rgba(255, 255, 255, .2);--scroll-thumb-hover: rgba(255, 255, 255, .34)}.sc-dark-surface{--scroll-thumb: rgba(255, 255, 255, .2);--scroll-thumb-hover: rgba(255, 255, 255, .34);scrollbar-color:var(--scroll-thumb) transparent}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}html,body{position:fixed;width:100%;height:100%}.sc-viewport-h{height:100vh}.sc-viewport-min-h{min-height:100vh}@supports (height: 100dvh){html,body,.sc-viewport-h{height:100dvh}.sc-viewport-min-h{min-height:100dvh}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes expand{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.animate-fade-in{animation:fade-in .2s ease-out}.animate-slide-up{animation:slide-up .3s cubic-bezier(.32,.72,0,1)}.animate-expand{animation:expand .2s ease-out;overflow:hidden}@keyframes vbHeroCtaBlink{0%,40%,to{filter:brightness(1);box-shadow:0 0 0 0 var(--shadow-sacred)}20%{filter:brightness(1.35);box-shadow:0 0 18px 6px var(--shadow-sacred)}}@keyframes vbHeroCtaRing{0%{transform:scale(1);opacity:.5}to{transform:scale(1.7);opacity:0}}.vb-hero-cta{animation:vbHeroCtaBlink 1.6s ease-in-out infinite}.vb-hero-cta-ring{animation:vbHeroCtaRing 1.6s cubic-bezier(.2,.6,.4,1) infinite;pointer-events:none}.vb-hero-cta-ring-delay{animation-delay:.8s}@media(prefers-reduced-motion:reduce){.vb-hero-cta{animation:none}.vb-hero-cta-ring{animation:none;opacity:0}}@keyframes bubbleFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.apple-app-root{background:var(--bg-base);background-image:radial-gradient(circle at 18% 10%,rgba(113,183,255,.1) 0px,transparent 24%),radial-gradient(circle at 82% 14%,rgba(255,255,255,.03) 0px,transparent 28%),radial-gradient(circle at 52% 112%,rgba(113,183,255,.06) 0px,transparent 40%),linear-gradient(180deg,#18191f38,#0f101300 42%)}.light .apple-app-root{background-image:radial-gradient(circle at 12% 10%,rgba(0,122,255,.08) 0px,transparent 30%),radial-gradient(circle at 84% 14%,rgba(58,140,255,.07) 0px,transparent 36%),radial-gradient(circle at 50% 108%,rgba(0,122,255,.04) 0px,transparent 44%)}.apple-tab-shell{background:var(--bg-base);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}.dark .apple-tab-shell{background:linear-gradient(180deg,#17181dfa,#0f1013fa)}.apple-glass-header{position:relative;background:transparent}.apple-glass-panel{border:1px solid var(--border);background:var(--bg-card);box-shadow:0 var(--fb-depth-2) var(--fb-depth-3) -10px var(--fb-shadow-key),0 var(--fb-depth-1) 12px -5px var(--fb-shadow-ambient);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}.dark .apple-glass-panel,.dark .apple-card,.dark .apple-chip{box-shadow:0 24px 48px -28px #000000b8,0 8px 24px -16px #71b7ff1a,inset 0 1px #ffffff0f}.light .apple-glass-panel{box-shadow:0 4px 24px -1px #0000000a,0 2px 8px -1px #00000005}.coachchat-bubble-ai{font-family:var(--font-letter);line-height:1.85}.dark .coachchat-bubble-ai{-webkit-font-smoothing:antialiased;font-weight:500}.sc-letter{font-family:var(--font-letter);line-height:1.9}.sc-letter-hero{font-family:var(--font-letter);font-weight:700;letter-spacing:-.005em}.sc-num{font-family:var(--font-numeric);font-variant-numeric:tabular-nums}.apple-tab-title{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em}.apple-chip{border-radius:999px;border:1px solid var(--border);background:var(--bg-surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.light .apple-chip{background:#fff9;border-color:#0000000f}.apple-card{border-radius:20px;border:1px solid var(--border);background:var(--bg-card);box-shadow:var(--shadow-card);transition:all .3s cubic-bezier(.4,0,.2,1)}.apple-card:hover{box-shadow:0 14px 26px -10px var(--fb-shadow-key);border-color:color-mix(in srgb,var(--accent) 22%,var(--border))}.dark .apple-card:hover{box-shadow:0 20px 42px -18px #000000b8,0 10px 26px -16px #71b7ff29}.font-body{font-family:var(--font-ui)!important}.font-display{font-family:var(--font-display)!important;letter-spacing:-.012em}.font-mono{font-family:var(--font-mono-ui)!important}.tiptap{outline:none}.tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--text-tertiary, #666);opacity:.5;pointer-events:none;height:0}.tiptap h1{font-size:1.5em;font-weight:700;margin:.6em 0 .3em}.tiptap h2{font-size:1.25em;font-weight:600;margin:.5em 0 .25em}.tiptap h3{font-size:1.1em;font-weight:600;margin:.4em 0 .2em}.tiptap ul,.tiptap ol{padding-left:1.5em;margin:.4em 0}.tiptap li{margin:.15em 0}.tiptap ul[data-type=taskList]{list-style:none;padding-left:0}.tiptap ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:.5em}.tiptap ul[data-type=taskList] li>label{margin-top:.15em}.tiptap ul[data-type=taskList] li>div{flex:1}.tiptap blockquote{border-left:3px solid var(--accent, #5AA9FF);padding-left:1em;margin:.5em 0;opacity:.85}.tiptap pre{background:#00000026;border-radius:6px;padding:.75em 1em;margin:.5em 0;font-family:var(--font-mono-ui);font-size:.85em;overflow-x:auto}.tiptap code{background:#0000001a;border-radius:3px;padding:.15em .3em;font-size:.9em}.tiptap hr{border:none;border-top:1px solid var(--border, #333);margin:1em 0}:root{--aura-buoyant: linear-gradient(180deg, #71b7ff 0%, #f0d264 100%);--aura-calm: linear-gradient(180deg, #71b7ff 0%, #4de8e0 100%);--aura-confident: linear-gradient(180deg, #4de8e0 0%, #f0d264 100%);--aura-free: linear-gradient(180deg, #71b7ff 0%, #9fe8d9 100%);--aura-default: var(--aura-calm);--aura-current-a: #71b7ff;--aura-current-b: #4de8e0;--dawn-canvas: #111214;--dawn-sacred: #f0d264;--dawn-amber: #e8b86d;--ease-dawn: cubic-bezier(.22, .61, .36, 1);--ease-cleave: cubic-bezier(.32, .72, 0, 1);--dur-bloom: 1.4s;--dur-word: .48s;--dur-cleave: .9s;--dur-settle: 1.2s;--dur-stagger: .4s}.dawn-aurora{position:absolute;left:50%;bottom:-26%;width:160%;height:58%;transform:translate(-50%);pointer-events:none;border-radius:50%;background:radial-gradient(60% 100% at 50% 100%,var(--aura-current-a) 0%,color-mix(in srgb,var(--aura-current-b) 70%,transparent) 46%,transparent 76%);filter:blur(42px);opacity:0;transition:opacity .6s var(--ease-dawn),background .6s var(--ease-dawn);will-change:opacity,transform}@keyframes dawnBreathe{0%,to{opacity:.26;transform:translate(-50%) scale(1)}50%{opacity:.34;transform:translate(-50%) scale(1.04)}}.dawn-aurora.is-breathing{opacity:.3;animation:dawnBreathe 4.2s var(--ease-dawn) infinite}.dawn-aurora.is-risen{opacity:.62}@keyframes dawnWordIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes dawnRingOut{0%{opacity:.55;transform:translate(-50%,-50%) scale(.4)}to{opacity:0;transform:translate(-50%,-50%) scale(2.4)}}@media(prefers-reduced-motion:reduce){.dawn-aurora.is-breathing{animation:none;opacity:.34}}@keyframes victoryPop{0%{transform:translate(-50%,-50%) scale(0);opacity:0}55%{transform:translate(-50%,-50%) scale(1.18);opacity:1}75%{transform:translate(-50%,-50%) scale(.96)}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes victoryParticle{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(var(--vx),var(--vy)) scale(.25);opacity:0}}@keyframes victoryLabelIn{0%{transform:translate(-50%,6px);opacity:0}30%{transform:translate(-50%);opacity:1}80%{opacity:1}to{opacity:0}}.victory-pop{animation:victoryPop .55s cubic-bezier(.34,1.56,.64,1) both,victoryFadeOut .25s ease-out .7s forwards}@keyframes victoryFadeOut{to{opacity:0;transform:translate(-50%,-60%) scale(.9)}}.victory-particle{animation:victoryParticle .7s cubic-bezier(.17,.67,.35,1) .05s both}.victory-label{animation:victoryLabelIn .9s ease-out both}@media(prefers-reduced-motion:reduce){.victory-particle{display:none}.victory-pop{animation:none;opacity:1}.victory-label{animation:victoryLabelIn .9s ease-out both}}@keyframes todoAddMount{0%{transform:translateY(6px) scale(.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes todoAddEdgeBorder{0%{border-color:var(--border)}10%{border-color:var(--accent-border)}30%{border-color:var(--accent-border)}to{border-color:var(--border)}}@keyframes todoAddGlowBorder{0%{border-color:var(--border)}10%{border-color:var(--reward-border)}30%{border-color:var(--reward-border)}to{border-color:var(--border)}}@keyframes todoAddEdgeRing{0%{box-shadow:0 0 0 0 var(--accent-muted)}10%{box-shadow:0 0 5px 3px var(--accent-muted)}30%{box-shadow:0 0 5px 3px var(--accent-muted)}to{box-shadow:0 0 0 0 var(--accent-muted)}}@keyframes todoAddGlowRing{0%{box-shadow:0 0 0 0 var(--shadow-reward)}10%{box-shadow:0 0 9px 5px var(--shadow-reward)}30%{box-shadow:0 0 9px 5px var(--shadow-reward)}to{box-shadow:0 0 0 0 var(--shadow-reward)}}@keyframes todoSheenSweep{0%{transform:translate(-130%)}to{transform:translate(230%)}}@keyframes todoAddParticle{0%{transform:translate(0) scale(1);opacity:.9}to{transform:translate(var(--vx),var(--vy)) scale(.3);opacity:0}}@keyframes todoAddFade{0%{opacity:0}to{opacity:1}}.todo-sheen{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;overflow:hidden;pointer-events:none}.todo-sheen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(230%);background:linear-gradient(100deg,transparent 36%,rgba(255,255,255,.16) 50%,transparent 64%);animation:todoSheenSweep .65s ease-out .04s}.light .todo-sheen:after{background:linear-gradient(100deg,transparent 36%,rgba(0,122,255,.12) 50%,transparent 64%);background:linear-gradient(100deg,transparent 36%,color-mix(in srgb,var(--accent) 12%,transparent) 50%,transparent 64%)}.todo-fresh{position:relative}.todo-fresh:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;animation:todoAddEdgeRing .9s ease-out}.todo-fresh.todo-fresh-special:after{animation:todoAddGlowRing 1.2s ease-out}.todo-fresh{animation:todoAddMount .24s cubic-bezier(.22,1,.36,1),todoAddEdgeBorder .9s ease-out}.todo-fresh.todo-fresh-special{animation:todoAddMount .24s cubic-bezier(.22,1,.36,1),todoAddGlowBorder 1.2s ease-out}.todo-add-particle{animation:todoAddParticle .7s cubic-bezier(.17,.67,.35,1) both}@media(prefers-reduced-motion:reduce){.todo-sheen,.todo-add-particle{display:none}.todo-fresh{animation:todoAddFade .24s ease-out,todoAddEdgeBorder .9s ease-out}.todo-fresh.todo-fresh-special{animation:todoAddFade .24s ease-out,todoAddGlowBorder 1.2s ease-out}}.coachchat-sprout{--shadow-glow: rgba(95, 191, 110, .42)}@keyframes coachchatBreathe{0%,to{opacity:.45;transform:scale(.92)}50%{opacity:1;transform:scale(1.1)}}.dark .coachchat-avatar:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:9999px;background:radial-gradient(circle,var(--shadow-glow),transparent 70%);animation:coachchatBreathe 3s ease-in-out infinite;z-index:-1;pointer-events:none}.dark .coachchat-avatar-sm:after{top:-2px;right:-2px;bottom:-2px;left:-2px}@keyframes coachPeekIn{0%{opacity:0;transform:translate(10px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}@media(prefers-reduced-motion:reduce){.dark .coachchat-avatar:after{animation:none;opacity:.7}}@keyframes coachEnterUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes coachEnterFade{0%{opacity:0}to{opacity:1}}@media(hover:none){.row-actions-hover{opacity:1}}@media(pointer:coarse){.row-actions-hover{opacity:1}}.sc-demo .row-actions-hover{opacity:1}.apple-tab-shell.fixed,.fb-feedback-root{padding-top:var(--sat)}.apple-app-root:has([data-sc-overlay]) .sc-global-controls,.apple-app-root:has([data-sc-overlay]) [data-sync-badge],.apple-app-root:has([data-sc-overlay]) [data-tour=coach-bubble]{opacity:0;pointer-events:none}@media(max-width:767px){input:not([type=checkbox]):not([type=radio]):not(.sc-keep-fs),textarea:not(.sc-keep-fs),select:not(.sc-keep-fs){font-size:16px!important}}.sc-safe-top{padding-top:var(--sat)}.sc-dock-pad{padding-bottom:var(--sc-dock-h)}html[data-sc-kb-up] [data-bottom-dock]{visibility:hidden;pointer-events:none}.sc-dock-pad-mobile{padding-bottom:var(--sc-dock-h)}@media(min-width:768px){:root{--sc-dock-h: calc(4rem + var(--sab))}.sc-dock-pad-mobile{padding-bottom:0}}.sc-demo .apple-tab-shell.fixed,.sc-demo .fb-feedback-root{padding-top:var(--sc-demo-band, calc(var(--sat) + 48px))}.sc-demo .goal-view-switcher{top:calc(var(--sc-demo-band, calc(var(--sat) + 48px)) - var(--sat))}.row-actions-hover [data-tour-active="1"]{color:var(--accent);background-color:var(--accent-muted)}@keyframes comebackAura{0%{opacity:0;transform:translate(-50%) scale(.55)}45%{opacity:1}to{opacity:.9;transform:translate(-50%) scale(1)}}.comeback-aura{position:absolute;left:50%;top:-18px;width:340px;height:240px;transform:translate(-50%);background:radial-gradient(closest-side,var(--reward-muted),transparent 74%);pointer-events:none;animation:comebackAura .72s ease-out both}@keyframes comebackRays{0%{opacity:0;transform:translate(-50%,-50%) scale(.35) rotate(0)}35%{opacity:.85}to{opacity:0;transform:translate(-50%,-50%) scale(1.5) rotate(22deg)}}.comeback-rays{position:absolute;left:50%;top:50%;width:260px;height:260px;border-radius:999px;background:conic-gradient(from 0deg,var(--reward) 0 6deg,transparent 6deg 30deg,var(--sacred) 30deg 36deg,transparent 36deg 60deg,var(--reward) 60deg 66deg,transparent 66deg 90deg,var(--sacred) 90deg 96deg,transparent 96deg 120deg,var(--reward) 120deg 126deg,transparent 126deg 150deg,var(--sacred) 150deg 156deg,transparent 156deg 180deg,var(--reward) 180deg 186deg,transparent 186deg 210deg,var(--sacred) 210deg 216deg,transparent 216deg 240deg,var(--reward) 240deg 246deg,transparent 246deg 270deg,var(--sacred) 270deg 276deg,transparent 276deg 300deg,var(--reward) 300deg 306deg,transparent 306deg 330deg,var(--sacred) 330deg 336deg,transparent 336deg 360deg);-webkit-mask-image:radial-gradient(closest-side,transparent 26%,#000 42%,transparent 78%);mask-image:radial-gradient(closest-side,transparent 26%,#000 42%,transparent 78%);animation:comebackRays .9s cubic-bezier(.16,1,.3,1) both}@keyframes comebackRipple{0%{opacity:.7;transform:scale(.5)}to{opacity:0;transform:scale(3.1)}}.comeback-ripple{position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:999px;border:2.5px solid var(--reward);animation:comebackRipple 1.15s cubic-bezier(.16,1,.3,1) both}.comeback-ripple.d2{animation-delay:.19s;border-color:var(--sacred)}.comeback-ripple.d3{animation-delay:.38s}@keyframes comebackPop{0%{transform:scale(.25);opacity:0}55%{transform:scale(1.18);opacity:1}75%{transform:scale(.95)}to{transform:scale(1);opacity:1}}.comeback-medal{animation:comebackPop .64s cubic-bezier(.34,1.56,.64,1) both;box-shadow:0 0 34px -4px var(--reward)}@keyframes comebackConfetti{0%{transform:translate(0) scale(.4) rotate(0);opacity:0}8%{opacity:1}45%{transform:translate(calc(var(--vx) * .92),calc(var(--vy) * 1.02)) scale(1.05) rotate(calc(var(--rot) * .6));opacity:1}75%{opacity:1}to{transform:translate(var(--vx),calc(var(--vy) + 78px)) scale(1) rotate(var(--rot));opacity:0}}.comeback-confetti{position:absolute;left:50%;top:50%;animation:comebackConfetti 1.5s cubic-bezier(.05,.7,.3,1) both}@keyframes comebackRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.comeback-title{animation:comebackRise .52s ease-out .2s both}.comeback-line{animation:comebackRise .56s ease-out .34s both}.comeback-promise{animation:comebackRise .56s ease-out .48s both}@media(prefers-reduced-motion:reduce){.comeback-aura{animation:none;opacity:.9}.comeback-rays,.comeback-ripple,.comeback-confetti{display:none}.comeback-medal{animation:none}.comeback-title,.comeback-line,.comeback-promise{animation:none;opacity:1;transform:none}}@keyframes todoCheckPop{0%{transform:scale(1)}40%{transform:scale(1.28)}70%{transform:scale(.94)}to{transform:scale(1)}}@keyframes todoCheckDraw{to{stroke-dashoffset:0}}@keyframes todoStrikeWipe{0%{width:0}to{width:100%}}@keyframes todoDoneSettle{0%,48%{opacity:1}80%,to{opacity:.5}}@keyframes todoDoneLeave{0%{opacity:.5;max-height:72px;margin-bottom:.375rem;padding-top:.625rem;padding-bottom:.625rem}to{opacity:0;max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0}}.todo-check-pop{animation:todoCheckPop .3s cubic-bezier(.34,1.56,.64,1)}.todo-check-pop svg path{stroke-dasharray:12;stroke-dashoffset:12;animation:todoCheckDraw .22s ease-out .1s forwards}.todo-strike-wipe{position:relative}.todo-strike-wipe:after{content:"";position:absolute;left:0;top:55%;height:1px;width:0;background:currentColor;animation:todoStrikeWipe .22s linear .12s forwards}.todo-done-fresh{animation:todoDoneSettle 1.25s linear}.todo-done-fresh.todo-done-leave{overflow:hidden;animation:todoDoneSettle 1.25s linear,todoDoneLeave .25s ease-in}@keyframes viewIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.animate-view-in{animation:viewIn .22s cubic-bezier(.32,.72,0,1)}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.animate-fade-in-up{animation:fade-in-up .45s ease-out both}@keyframes calRollOut{to{transform:translateY(-100%);opacity:0}}@keyframes calRollIn{0%{transform:translateY(100%);opacity:0}to{transform:none;opacity:1}}.cal-roll{position:relative;display:inline-block;overflow:hidden;vertical-align:bottom}.cal-roll-out{position:absolute;left:0;top:0;animation:calRollOut .3s cubic-bezier(.32,.72,0,1) forwards}.cal-roll-in{display:inline-block;animation:calRollIn .3s cubic-bezier(.32,.72,0,1) both}@keyframes calTrophyPop{0%{transform:scale(1)}45%{transform:scale(1.22)}to{transform:scale(1)}}.cal-trophy-pop{animation:calTrophyPop .5s cubic-bezier(.34,1.56,.64,1)}@keyframes dockPop{0%{transform:scale(1)}40%{transform:scale(1.32) translateY(-3px)}70%{transform:scale(.95)}to{transform:scale(1)}}.dock-pop{animation:dockPop .5s cubic-bezier(.34,1.56,.64,1)}@keyframes dockBadgeIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.dock-badge-in{animation:dockBadgeIn .3s cubic-bezier(.34,1.56,.64,1) both}@keyframes mmUnlockRing{0%{transform:translate(-50%,-50%) scale(.6);opacity:.9}to{transform:translate(-50%,-50%) scale(2.2);opacity:0}}.mm-unlock-ring{position:absolute;width:44px;height:44px;border-radius:50%;border:2px solid var(--sacred);pointer-events:none;animation:mmUnlockRing .7s cubic-bezier(.16,1,.3,1) both}.mm-unlock-particle{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--sacred);pointer-events:none;animation:victoryParticle .7s cubic-bezier(.17,.67,.35,1) .05s both}@keyframes mmUnlockFlow{0%{stroke-dashoffset:var(--len);opacity:1}75%{opacity:1}to{stroke-dashoffset:0;opacity:0}}.mm-unlock-line{stroke:var(--sacred);stroke-width:3;stroke-linecap:round;fill:none;filter:drop-shadow(0 0 4px var(--shadow-sacred));stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:mmUnlockFlow .55s ease-in-out .25s both}@keyframes mmParentRing{0%{transform:translate(-50%,-50%) scale(.92);opacity:.9}to{transform:translate(-50%,-50%) scale(1.5);opacity:0}}.mm-unlock-parent{position:absolute;border-radius:999px;border:2px solid var(--sacred);pointer-events:none;animation:mmParentRing .6s ease-out .75s both}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes toastOut{to{opacity:0;transform:translateY(-4px)}}.toast-in{animation:toastIn .22s cubic-bezier(.32,.72,0,1)}.toast-out{animation:toastOut .15s ease-out forwards;pointer-events:none}@keyframes loginLift{to{transform:translateY(-100%)}}.login-leave{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;animation:loginLift .42s cubic-bezier(.32,.72,0,1) forwards}@keyframes veilOut{0%{opacity:.55}to{opacity:0}}.app-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:399;background:#000;pointer-events:none;animation:veilOut .52s ease-out forwards}@keyframes loginShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.login-shake{animation:loginShake .4s ease-out}@media(prefers-reduced-motion:reduce){.todo-check-pop{animation:none}.todo-check-pop svg path{animation:none;stroke-dashoffset:0}.todo-strike-wipe:after{animation:none;width:100%}.todo-done-fresh,.todo-done-fresh.todo-done-leave{animation:todoDoneSettle 1.25s linear}.animate-view-in,.animate-fade-in-up{animation:fade-in .2s ease-out}.cal-roll-out{display:none}.cal-roll-in{animation:fade-in .2s ease-out}.cal-trophy-pop,.dock-pop{animation:none}.mm-unlock-ring,.mm-unlock-particle,.mm-unlock-line,.mm-unlock-parent{display:none}.toast-in{animation:fade-in .2s ease-out}.login-leave{animation:fade-in .2s ease-out reverse forwards}.login-shake{animation:none}}@keyframes mmLoadingPulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.9;transform:scale(1.03)}}.mm-loading-ring{position:absolute;border-radius:14px;border:2px solid var(--accent);box-shadow:0 0 18px var(--shadow-glow);pointer-events:none;z-index:25;animation:mmLoadingPulse 1.2s ease-in-out infinite}.mm-unlock-parent-cleared{border-width:3px;box-shadow:0 0 22px var(--shadow-sacred)}@media(prefers-reduced-motion:reduce){.mm-loading-ring{animation:none;opacity:.7}}.icon-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;transition:background-color .15s ease,color .15s ease}.icon-btn:focus-visible{outline:none}html[data-kbd] .icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sc-app-header{position:absolute!important;top:var(--sat);left:0;right:0;z-index:var(--z-float);min-height:var(--sc-header-h);background:transparent;pointer-events:none}.sc-app-header>*{pointer-events:auto}.sc-under-chrome{padding-top:var(--sc-header-h)}.sc-fill-raised{background:var(--bg-card);box-shadow:inset 0 1px 0 var(--raise-highlight)}.light .sc-fill-raised{box-shadow:0 1px 2px #0000000d,0 0 0 1px #0000000d}.sc-group>*+*{position:relative}.sc-group>*+*:before{content:"";position:absolute;top:0;left:44px;right:0;height:1px;background:var(--border);pointer-events:none}.t-large-title{font-size:34px;line-height:41px;font-weight:700;letter-spacing:-.4px}.t-title1{font-size:28px;line-height:34px;font-weight:700;letter-spacing:-.3px}.t-title2{font-size:22px;line-height:28px;font-weight:700;letter-spacing:-.2px}.t-title3{font-size:20px;line-height:25px;font-weight:600;letter-spacing:-.1px}.t-headline{font-size:17px;line-height:22px;font-weight:600;letter-spacing:-.2px}.t-body{font-size:17px;line-height:22px;letter-spacing:-.2px}.t-callout{font-size:16px;line-height:21px;letter-spacing:-.15px}.t-subhead{font-size:15px;line-height:20px;letter-spacing:-.1px}.t-footnote{font-size:13px;line-height:18px}.t-caption1{font-size:12px;line-height:16px}.t-caption2{font-size:11px;line-height:13px;letter-spacing:.05px}.hig-nav{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 8px}.hig-nav-title{font-size:17px;font-weight:600;letter-spacing:-.2px;opacity:0;transition:opacity .18s ease}.hig-nav-title.is-visible{opacity:1}.hig-nav-action{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;font-size:17px;letter-spacing:-.2px;color:var(--accent);background:transparent;border:0}.hig-nav-action:disabled{opacity:.35}.hig-large-title{padding:4px 16px 10px}.hig-grouped{background:var(--bg-grouped)}.hig-composer-wrap{padding:0 14px 8px}.hig-composer{border-radius:26px;background:var(--lg-fill);backdrop-filter:blur(36px) saturate(170%);-webkit-backdrop-filter:blur(36px) saturate(170%);box-shadow:0 0 0 .5px var(--lg-edge),inset 0 1px 0 var(--lg-rim-top),0 6px 16px -6px var(--lg-shadow-near),0 18px 40px -14px var(--lg-shadow-far)}@media(prefers-contrast:more){.hig-composer{background:var(--bg-elevated);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 0 0 1px var(--border)}}.hig-segment-track{height:var(--sc-tb-h);background:var(--seg-track);backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%);border-radius:999px;box-shadow:inset 0 0 0 .5px var(--lg-edge)}.hig-segment-sel{background:var(--seg-sel);box-shadow:0 2px 6px -2px var(--lg-shadow-near),inset 0 0 0 .5px var(--lg-sel-rim)}.light .hig-segment-on{color:#1d1d1f}:root:not(.light) .hig-segment-on{color:var(--text-primary)}@media(prefers-contrast:more){.hig-segment-track{background:var(--bg-elevated);backdrop-filter:none;-webkit-backdrop-filter:none}}.hig-segment-track>button:focus-visible,.hig-segment>button:focus-visible{outline:none}html[data-kbd] .hig-segment-track>button:focus-visible,html[data-kbd] .hig-segment>button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:999px}.hig-section{margin-top:26px}.hig-section:first-child{margin-top:0}.hig-section-title{font-size:13px;line-height:18px;letter-spacing:.02em;color:var(--text-tertiary);padding:0 16px 7px}.hig-section-footer{font-size:13px;line-height:18px;color:var(--text-tertiary);padding:7px 16px 0}.hig-group{--hig-inset: 16px;background:var(--bg-card);border-radius:12px;overflow:hidden;box-shadow:inset 0 1px 0 var(--raise-highlight)}.light .hig-group{box-shadow:0 0 0 .5px #0000000f}.hig-group.has-icons{--hig-inset: 57px}.hig-group>*+*{position:relative}.hig-group>*+*:before{content:"";position:absolute;top:0;left:var(--hig-inset);right:0;height:1px;background:var(--border);pointer-events:none}.hig-row{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:10px 16px;margin:0;font-size:17px;line-height:22px;letter-spacing:-.2px;font-weight:400;color:var(--text-primary);background:transparent;border:0;text-align:left;text-decoration:none}button.hig-row,a.hig-row,.hig-row[role=button]{cursor:pointer}button.hig-row:active,a.hig-row:active,.hig-row[role=button]:active{background:var(--bg-surface-hover);transition:none}@media(hover:hover){button.hig-row:hover,a.hig-row:hover,.hig-row[role=button]:hover{background:var(--bg-surface-hover)}}.hig-row:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--accent)}.hig-icon{flex:none;width:29px;height:29px;border-radius:7px;display:flex;align-items:center;justify-content:center;color:#fff;background:var(--hig-icon-bg, var(--accent))}.hig-icon svg{width:17px;height:17px}.hig-label{flex:1;min-width:0}.hig-label>small{display:block;font-size:13px;line-height:18px;color:var(--text-tertiary);margin-top:1px}.hig-label>small.is-reward{color:var(--reward);font-weight:600}.hig-value{flex:none;color:var(--text-tertiary);text-align:right;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hig-chevron{flex:none;color:var(--text-muted);margin-right:-4px}.hig-row-center{justify-content:center;color:var(--accent)}.hig-row-destructive{color:#ff3b30}:root:not(.light) .hig-row-destructive{color:#ff453a}.hig-field{flex:1;min-width:0;background:transparent;border:0;outline:none;font:inherit;letter-spacing:inherit;color:var(--text-primary);text-align:right;padding:0}.hig-field::placeholder{color:var(--text-muted)}.hig-textarea{display:block;width:100%;background:transparent;border:0;outline:none;resize:none;font:inherit;font-size:17px;line-height:22px;letter-spacing:-.2px;color:var(--text-primary);padding:12px 16px}.hig-textarea::placeholder{color:var(--text-muted)}.hig-segment{display:inline-flex;padding:2px;border-radius:9px;gap:2px;background:var(--seg-track)}.hig-segment>button{min-height:28px;padding:0 12px;border-radius:7px;border:0;background:transparent;font-size:13px;line-height:18px;font-weight:500;letter-spacing:-.08px;color:var(--text-secondary);transition:background-color .15s ease,color .15s ease}.hig-segment>button[aria-checked=true],.hig-segment>button[aria-pressed=true]{background:var(--seg-sel);font-weight:600;color:#1d1d1f;box-shadow:0 2px 6px -2px var(--lg-shadow-near),inset 0 0 0 .5px var(--lg-sel-rim)}:root:not(.light) .hig-segment>button[aria-checked=true],:root:not(.light) .hig-segment>button[aria-pressed=true]{color:var(--text-primary)}.hig-segment.is-block{display:flex}.hig-segment.is-block>button{flex:1}.hig-progress{height:4px;border-radius:2px;background:#78788033;overflow:hidden}.hig-progress>i{display:block;height:100%;border-radius:2px;background:var(--accent)}:root{--lg-fill: rgba(255, 255, 255, .74);--lg-edge: rgba(0, 0, 0, .16);--lg-rim-top: rgba(255, 255, 255, 1);--lg-rim-bottom: rgba(255, 255, 255, .55);--lg-sel-fill: rgba(255, 255, 255, .92);--seg-track: rgba(120, 125, 140, .16);--seg-sel: #ffffff;--lg-sel-rim: rgba(255, 255, 255, 1);--lg-shadow-near: rgba(0, 0, 0, .16);--lg-shadow-far: rgba(0, 0, 0, .12)}:root:not(.light){--lg-fill: rgba(58, 62, 74, .72);--lg-edge: rgba(0, 0, 0, .55);--lg-rim-top: rgba(255, 255, 255, .6);--lg-rim-bottom: rgba(255, 255, 255, .16);--lg-sel-fill: rgba(255, 255, 255, .2);--seg-track: rgba(0, 0, 0, .32);--seg-sel: rgba(255, 255, 255, .26);--lg-sel-rim: rgba(255, 255, 255, .42);--lg-shadow-near: rgba(0, 0, 0, .55);--lg-shadow-far: rgba(0, 0, 0, .45)}.hig-tabbar-wrap{padding:0 14px calc(var(--sab) + 8px)}.hig-tabbar{position:relative;isolation:isolate;display:flex;align-items:stretch;gap:0;padding:5px;border-radius:999px;background:var(--lg-fill);backdrop-filter:blur(36px) saturate(170%);-webkit-backdrop-filter:blur(36px) saturate(170%);box-shadow:0 0 0 .5px var(--lg-edge),0 6px 16px -6px var(--lg-shadow-near),0 18px 40px -14px var(--lg-shadow-far)}.hig-tabbar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;padding:1px;border-radius:inherit;background:linear-gradient(180deg,var(--lg-rim-top) 0%,transparent 38%,transparent 62%,var(--lg-rim-bottom) 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;pointer-events:none}.hig-tabbar-sel{position:absolute;top:5px;bottom:5px;left:5px;z-index:0;width:calc((100% - 10px) / var(--sc-tabs, 5));transform:translate(calc(var(--sc-i, 0) * 100%));border-radius:999px;background:var(--lg-sel-fill);box-shadow:inset 0 1px 0 var(--lg-sel-rim),0 2px 6px -2px var(--lg-shadow-near);pointer-events:none}.hig-tabbar-slot{position:relative;z-index:1;flex:1 1 0;display:flex;min-width:0}.hig-tabbar-item{position:relative;flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0;min-height:44px;padding:5px 2px 4px;border:0;background:transparent;color:var(--text-secondary);cursor:pointer}.hig-tabbar-item[aria-current=page]{color:var(--accent)}.hig-tabbar-item:active{opacity:.45;transition:none}.hig-tabbar-item:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--accent);border-radius:999px}.hig-tabbar-item{justify-content:center}.hig-tabbar-label{font-size:10px;line-height:12px;font-weight:500;letter-spacing:.02px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hig-tabbar-item[aria-current=page] .hig-tabbar-label{font-weight:600}.hig-tabbar{width:100%}.hig-tabbar-sel{transition:transform .42s cubic-bezier(.32,.72,0,1)}@media(prefers-reduced-transparency:reduce){.hig-tabbar{background:var(--bg-elevated);backdrop-filter:none;-webkit-backdrop-filter:none}.hig-tabbar:before{display:none}}@media(prefers-contrast:more){.hig-tabbar{background:var(--bg-elevated);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 0 0 1px var(--border-strong),0 8px 24px -10px var(--lg-shadow-far)}.hig-tabbar:before{display:none}.hig-tabbar-sel{background:var(--accent-muted);box-shadow:inset 0 0 0 1px var(--accent-border)}.hig-tabbar-item{color:var(--text-primary)}}@media(prefers-reduced-motion:reduce){.hig-tabbar-sel{transition:none}}.hig-tb-spacer{flex:none;width:6px}.hig-tb-group{display:inline-flex;align-items:center;height:var(--sc-tb-h);padding:2px;border-radius:999px;background:var(--lg-fill);backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%);box-shadow:0 0 0 .5px var(--lg-edge),inset 0 1px 0 var(--lg-rim-top)}.hig-tb-group.is-stacked{height:auto;padding:5px 12px}.hig-tb-group.is-accent{background:var(--accent);color:#fff;box-shadow:0 0 0 .5px var(--lg-edge),0 6px 16px -8px var(--shadow-glow)}.hig-tb-group>*+*{position:relative}.hig-tb-group.no-divide>*+*:before{display:none}.hig-tb-group>*+*:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:1px;background:var(--lg-edge);pointer-events:none}.hig-tb-item{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;border-radius:999px;transition:background-color .15s ease,color .15s ease}.hig-tb-item:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px}html[data-kbd] .hig-tb-item:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@keyframes dockMenuIn{0%{opacity:0;transform:translate(-50%,6px) scale(.94)}to{opacity:1;transform:translate(-50%) scale(1)}}.dock-menu-in{transform-origin:bottom center;animation:dockMenuIn .22s cubic-bezier(.32,.72,0,1) both}@media(prefers-reduced-motion:reduce){.dock-menu-in{animation:none}}.hig-btn-filled{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:50px;border-radius:12px;border:0;background:var(--accent);color:var(--text-inverse);font-size:17px;font-weight:600;letter-spacing:-.2px}.hig-btn-filled:disabled{opacity:.4}.hig-btn-filled:active{transform:scale(.98);transition:none}.icon-btn:active,.apple-chip:active{transform:scale(.92);transition:transform 80ms ease-out}@media(prefers-reduced-motion:reduce){.icon-btn:active,.apple-chip:active,.hig-btn-filled:active{transform:none}}.sc-sheet-surface{background:var(--bg-sheet)}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fb-feedback-root{background:radial-gradient(110% 120% at 50% -12%,rgba(130,149,255,.22) 0%,transparent 46%),radial-gradient(90% 100% at 50% 118%,rgba(73,89,176,.24) 0%,transparent 52%),var(--fb-bg)}.fb-week-detail-panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:24px;box-shadow:0 24px 42px -28px var(--fb-shadow-ambient),inset 0 1px 0 var(--fb-highlight)}.fb-week-label{font-family:var(--font-display);letter-spacing:-.016em}.fb-week-range{letter-spacing:-.008em}.fb-card-press{transition:transform .22s cubic-bezier(.32,.72,0,1),opacity .18s ease}.fb-card-press:active{transform:scale(.985)}.fb-summary-wrap{border:1px solid var(--border);background:var(--bg-surface);border-radius:22px;box-shadow:0 14px 34px -26px var(--fb-shadow-key),inset 0 1px 0 var(--fb-highlight);overflow:hidden}.fb-letter{font-family:var(--font-letter);line-height:1.95;padding:2px 2px 0;word-break:keep-all;overflow-wrap:anywhere}.fb-letter-to{font-size:15px;font-weight:700;margin:0 0 14px}.fb-letter-p{font-size:14.5px;margin:0 0 15px}.fb-letter-p:last-of-type{margin-bottom:8px}.fb-letter-signoff{font-size:12.5px;text-align:right;margin:0}.dark .fb-letter{-webkit-font-smoothing:antialiased}.fb-day-card{border:1px solid var(--border);background:var(--bg-surface);box-shadow:0 12px 26px -22px var(--fb-shadow-key),inset 0 1px 0 var(--fb-highlight);animation:fbDayIn .42s cubic-bezier(.22,.68,.14,1) both}@keyframes fbDayIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.fb-day-card{animation:none}}.fb-day-card-completed{background:radial-gradient(80% 80% at 50% 0%,var(--sacred-muted) 0%,transparent 52%),radial-gradient(120% 120% at 0% 0%,rgba(77,232,224,.08) 0%,transparent 58%),linear-gradient(180deg,rgba(255,255,255,.05),transparent 22%),linear-gradient(180deg,#171a1ffa,#0a0b0f);border-color:var(--sacred-border);box-shadow:0 18px 38px -28px var(--fb-shadow-key),0 0 0 1px var(--sacred-border),0 0 26px -14px var(--shadow-sacred),inset 0 1px 0 var(--fb-highlight)}.light .fb-day-card-completed{background:radial-gradient(80% 80% at 50% 0%,var(--sacred-muted) 0%,transparent 52%),linear-gradient(180deg,#ffffffe6,#f5f7faf2);box-shadow:0 4px 16px -6px var(--fb-shadow-key),0 0 0 1px var(--sacred-border)}.fb-day-card-today{border-color:var(--accent);box-shadow:0 14px 32px -26px var(--fb-shadow-key),0 0 0 1px var(--accent-border),inset 0 1px 0 var(--fb-highlight)}.fb-day-card-empty,.fb-day-card-future{opacity:.78}.fb-coverflow-swiper{width:100%;height:100%;overflow:visible;perspective:900px;perspective-origin:50% 50%}.fb-coverflow-stage{background:radial-gradient(80% 60% at 50% 45%,var(--accent-muted) 0%,transparent 66%),linear-gradient(180deg,transparent 0%,rgba(8,11,20,.04) 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 12%,black 88%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 12%,black 88%,transparent 100%)}.fb-coverflow-swiper .swiper-wrapper{align-items:center}.fb-coverflow-swiper .swiper-slide{display:flex;align-items:center;justify-content:center;overflow:visible;height:clamp(260px,38vh,340px)}.fb-coverflow-slide-shell{width:100%;padding:0 14px;display:flex;justify-content:center;transform-style:preserve-3d}.fb-coverflow-card-host{width:100%;transform-origin:50% 50%;transition:transform .42s cubic-bezier(.32,.72,0,1),opacity .28s ease,filter .28s ease;will-change:transform,opacity,filter}.fb-coverflow-card-shell{width:100%;border-radius:24px;border:1px solid var(--border);background:var(--fb-surface);box-shadow:0 var(--fb-depth-2) calc(var(--fb-depth-3) + 10px) -26px var(--fb-shadow-key),0 var(--fb-depth-1) 14px -10px var(--fb-shadow-ambient),inset 0 1px 0 var(--fb-highlight);-webkit-backdrop-filter:blur(18px) saturate(148%);backdrop-filter:blur(18px) saturate(148%)}@supports not (backdrop-filter: blur(2px)){.fb-coverflow-card-shell{background:#161c2bf0}.light .fb-coverflow-card-shell{background:#fffffff0}}.fb-coverflow-card-shell-inactive{border-color:var(--border-subtle)}.fb-coverflow-week-title{font-family:var(--font-display);letter-spacing:-.016em}.fb-coverflow-week-range{letter-spacing:-.01em}.fb-mini-day{border-radius:14px;border:1px solid var(--border);background:var(--bg-surface);transition:transform .18s cubic-bezier(.32,.72,0,1),border-color .18s ease}.fb-mini-day:active{transform:scale(.965)}.fb-mini-day-completed{background:radial-gradient(100% 100% at 50% 0%,var(--sacred-muted) 0%,transparent 58%),linear-gradient(180deg,#181b21f5,#0c0e12);border-color:var(--sacred-border);box-shadow:0 0 0 1px #ffffff05,0 0 18px -10px var(--shadow-sacred)}.light .fb-mini-day-completed{background:radial-gradient(100% 100% at 50% 0%,var(--sacred-muted) 0%,transparent 58%),linear-gradient(180deg,#ffffffeb,#f5f7faf5);box-shadow:0 2px 8px -4px var(--fb-shadow-key)}.fb-mini-day-today{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-border),inset 0 1px 0 var(--fb-highlight)}.fb-mini-day-future{opacity:.46}.fb-mini-dot{width:4px;height:4px;border-radius:999px;background:var(--accent);animation:fb-breathe 1.9s ease-in-out infinite}@keyframes fb-breathe{0%,to{transform:scale(.84);opacity:.42}50%{transform:scale(1);opacity:1}}.fb-coverflow-lowperf .fb-coverflow-card-host,.fb-coverflow-reduced .fb-coverflow-card-host{transition-duration:.22s}.fb-coverflow-lowperf .fb-coverflow-card-shell{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 18px 28px -24px var(--fb-shadow-ambient),inset 0 1px 0 var(--fb-highlight)}.fb-coverflow-reduced .fb-mini-dot{animation:none}@media(prefers-reduced-motion:reduce){.fb-card-press,.fb-coverflow-card-host,.fb-mini-day,.fb-coverflow-swiper{transition-duration:.12s!important;animation:none!important}}@media(hover:hover){.fb-mini-day:hover{border-color:var(--border-strong)}}.fb-wheel-scroll{scrollbar-width:none;-ms-overflow-style:none}.fb-wheel-scroll::-webkit-scrollbar{display:none}.fb-envelope{display:flex;align-items:center;gap:12px;padding:12px 14px 12px 12px;border-radius:16px;background:var(--bg-elevated);border:1px solid var(--border);transition:transform .12s ease,border-color .16s ease}.fb-envelope:active{transform:scale(.985)}.fb-envelope-unread{border-color:var(--accent-border);box-shadow:0 10px 24px -18px var(--shadow-glow)}.fb-envelope-icon{position:relative;width:44px;height:44px;border-radius:12px;background:var(--bg-base);color:var(--text-tertiary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.fb-envelope-icon-unread{background:var(--accent-muted);color:var(--accent)}.fb-envelope-preview{font-family:var(--font-letter);font-size:12.5px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.fb-envelope-cta{flex-shrink:0;padding:8px 14px;border-radius:999px;background:var(--accent);color:var(--text-inverse);font-size:12px;font-weight:700}.light .fb-envelope-cta{color:#fff}.fb-letter-sheet{height:calc(100dvh - 64px);max-height:calc(100dvh - 64px)}.fb-letter-sheet-body{-webkit-overflow-scrolling:touch}.fb-letter-sheet-foot{padding-bottom:calc(14px + var(--sab))}.fb-letter-date{font-size:12.5px;margin:0 0 20px}.fb-letter-sheet .fb-letter-p{font-size:15px}.fb-letter-sheet .fb-letter-to{font-size:16px;margin-bottom:18px}.fb-letter-title{font-size:19px;font-weight:700;line-height:1.4;margin:-6px 0 18px}.fb-letter-open{animation:letterOpen .46s cubic-bezier(.22,.68,.14,1) both}@keyframes letterOpen{0%{transform:translateY(100%)}82%{transform:translateY(-.5%)}to{transform:translateY(0)}}.fb-letter-line{animation:letterInk .52s cubic-bezier(.22,.68,.14,1) both}@keyframes letterInk{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.fb-letter-close{animation:letterClose .26s cubic-bezier(.32,.72,0,1) forwards}@keyframes letterClose{to{transform:translateY(100%)}}.fb-letter-backdrop-out{animation:fbFadeOut .26s ease-out forwards}@keyframes fbFadeOut{to{opacity:0}}.fb-envelope-arrive{animation:fbEnvelopeArrive .6s ease-in-out .35s both}@keyframes fbEnvelopeArrive{0%,to{transform:rotate(0)}20%{transform:rotate(-2deg)}45%{transform:rotate(2deg)}70%{transform:rotate(-1deg)}}@media(prefers-reduced-motion:reduce){.fb-letter-open,.fb-letter-line{animation:none}.fb-letter-close{animation:fbFadeOut .2s ease-out forwards}.fb-envelope-arrive{animation:none}}.fb-coverflow-lowperf .fb-letter-line{animation:none}.fb-mailbox-sheet{max-height:calc(100dvh - 64px)}.fb-mailbox-filter{display:flex;padding:3px;border-radius:999px;background:var(--bg-base);border:1px solid var(--border-subtle)}.fb-mailbox-chip{padding:7px 16px;border-radius:999px;font-size:13px;color:var(--text-tertiary)}.fb-mailbox-chip-on{background:var(--bg-elevated);color:var(--text-primary);font-weight:600;box-shadow:0 1px 3px #00000014}.fb-mailbox-row{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border-radius:18px;background:var(--bg-surface);border:1px solid var(--border);transition:transform .12s ease}.fb-mailbox-row:active{transform:scale(.985)}.fb-mailbox-row-unread{background:var(--bg-elevated);border-color:var(--accent-border)}.fb-mailbox-dot{position:absolute;top:-3px;right:-3px;width:10px;height:10px;border-radius:5px;background:var(--accent);border:2px solid var(--bg-elevated)}.fb-mailbox-preview{font-family:var(--font-letter);font-size:12.5px;line-height:1.5;margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:keep-all}.fb-mailbox-badge{position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:3px;background:#ef4444;border:1.5px solid var(--lg-fill);animation:fbBadgeIn .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes fbBadgeIn{0%{transform:scale(0);opacity:0}60%{transform:scale(1.4);opacity:1}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.fb-mailbox-badge{animation:none}}.fb-day-skeleton{flex-shrink:0;border-radius:20px;border:1px solid var(--border-subtle);background:linear-gradient(100deg,var(--bg-surface) 30%,var(--bg-surface-hover) 50%,var(--bg-surface) 70%);background-size:200% 100%;animation:fbSkeleton 1.4s ease-in-out infinite}.fb-day-skeleton-hero{width:100%;height:150px}.fb-day-skeleton-strip{width:110px;height:150px}@keyframes fbSkeleton{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.fb-day-skeleton{animation:none}}.fb-mailbox-row-focus{box-shadow:0 0 0 2px var(--accent)}
