.firebase-login-shell,.firebase-loading{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 15%,rgba(143,92,255,.23),transparent 28%),radial-gradient(circle at 80% 80%,rgba(255,78,163,.2),transparent 30%),#09060f;color:#f8f3ff}.firebase-loading{font-weight:800;letter-spacing:.02em}.firebase-login-card{width:min(430px,100%);padding:34px;border:1px solid rgba(255,255,255,.1);border-radius:28px;background:#180e24eb;box-shadow:0 28px 80px #0006;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.firebase-login-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,#ff4ea3,#8f5cff);font-size:1.5rem;box-shadow:0 0 30px #ff4ea359}.firebase-login-eyebrow{display:block;margin-top:22px;color:#d9c7ec;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.firebase-login-card h1{margin:8px 0 10px;font-size:clamp(2.4rem,8vw,4rem);line-height:1}.firebase-login-card>p{margin:0 0 22px;color:#b9a9c9;line-height:1.55}.firebase-login-card form,.firebase-login-card label{display:grid;gap:10px}.firebase-login-card form{gap:15px}.firebase-login-card label{color:#d7c8e5;font-size:.78rem;font-weight:900}.firebase-login-card input{width:100%;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#ffffff0e;color:#fff;padding:12px 13px;outline:none}.firebase-login-card input:focus{border-color:#ae75ffb8;box-shadow:0 0 0 3px #8f5cff1f}.firebase-login-card form>button{min-height:48px;border:0;border-radius:14px;background:linear-gradient(135deg,#9a63ff,#ff4ea3);color:#fff;font-weight:900;cursor:pointer}.firebase-login-card form>button:disabled{cursor:default;opacity:.6}.firebase-login-error{padding:10px 12px;border:1px solid rgba(255,111,174,.28);border-radius:12px;background:#ff6fae14;color:#ffc0d9;font-size:.78rem}.firebase-session-bar{position:fixed;z-index:45;top:76px;right:18px;display:flex;align-items:center;gap:10px;max-width:calc(100% - 36px);padding:7px 9px 7px 12px;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:#160d21e6;color:#cdbddd;font-size:.67rem;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.firebase-session-bar button{border:0;border-radius:999px;background:#ffffff14;color:#f3ddff;padding:6px 9px;cursor:pointer}@media(max-width:620px){.firebase-login-card{padding:26px 22px}.firebase-session-bar{top:auto;right:12px;bottom:92px}.firebase-session-bar span{display:none}}:root{color-scheme:dark;font-family:ui-rounded,Nunito,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#fff7ff;background:#07040c;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #07040c;--panel: rgba(21, 12, 33, .95);--panel-soft: rgba(31, 18, 47, .92);--line: rgba(255, 255, 255, .11);--line-strong: rgba(255, 255, 255, .2);--muted: #c5b5d3;--violet: #9d63ff;--violet-soft: #c6a7ff;--pink: #ff63ad;--pink-soft: #ff9dcc;--peach: #ff9a7c;--proposed: #ff9a7c;--reschedule: #79aaff;--agreed: #8bc79b;--completed: #c9c3d2;--canceled: #ed4d8e;--shadow: 0 28px 72px rgba(0, 0, 0, .52);--soft-shadow: 0 16px 38px rgba(0, 0, 0, .28)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 50% -10%,rgba(138,70,255,.2),transparent 34%),radial-gradient(circle at 6% 52%,rgba(255,69,159,.13),transparent 28%),linear-gradient(180deg,#08040d,#0e0616)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.25;background-image:radial-gradient(circle,rgba(255,255,255,.5) 1px,transparent 1.5px),radial-gradient(circle,rgba(194,150,255,.36) 1px,transparent 1.5px);background-size:42px 42px,76px 76px;background-position:0 0,19px 27px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 82%);mask-image:linear-gradient(to bottom,black,transparent 82%)}button,input,select,textarea{font:inherit}button{color:inherit}button,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid rgba(255,122,190,.42);outline-offset:3px}button:not(:disabled){transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease,opacity .16s ease}button:not(:disabled):active{transform:scale(.97)}::selection{background:#ff58ab61;color:#fff}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:#0d0714}::-webkit-scrollbar-thumb{background:#4b2f69;border:2px solid #0d0714;border-radius:999px}.app-shell{width:min(760px,100%);min-height:100vh;margin:0 auto;position:relative;overflow-x:clip;padding-bottom:112px;background:linear-gradient(180deg,#0a0511e6,#0e0717f7);box-shadow:0 0 90px #00000094}.ambient{position:fixed;border-radius:999px;filter:blur(90px);pointer-events:none;opacity:.14;z-index:0}.ambient-one{width:280px;height:280px;background:#8545ff;top:-100px;right:-80px}.ambient-two{width:260px;height:260px;background:#ff3a9d;bottom:12%;left:-110px}.topbar{position:sticky;top:0;z-index:25;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:76px;padding:14px 18px;background:#08040de0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.brand{display:inline-flex;align-items:center;gap:11px;border:0;background:transparent;cursor:pointer;text-align:left;padding:0;min-width:0}.brand-mark{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#ff70b5,#9d63ff);box-shadow:0 0 28px #ff59ad61,inset 0 1px #fff6}.brand strong{display:block;font-size:1.05rem;letter-spacing:.01em}.brand small{display:block;color:var(--muted);font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:290px}.session-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:#ffffff0b;padding:7px 8px 7px 11px;border-radius:18px;color:#eadfff;font-size:.78rem;font-weight:800}.session-chip>button{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:11px;background:#ffffff12;cursor:pointer;color:#d9c7e9}.session-chip>button:hover{background:#ff63ad24;color:#fff}.main-content{position:relative;z-index:1;width:100%;padding:14px 14px 20px}.panel{margin-top:14px;padding:18px;border-radius:25px;background:var(--panel);border:1px solid var(--line);box-shadow:0 18px 48px #00000040,inset 0 1px #ffffff09}.calendar-panel{background:linear-gradient(180deg,#180e25fa,#0f0919fa)}.section-heading{margin-bottom:15px}.section-heading h2{margin:5px 0 0;text-transform:capitalize;font-size:1.55rem}.row-heading,.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:14px}.eyebrow{display:inline-flex;align-items:center;gap:7px;color:#dfcfff;font-size:.68rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.month-nav{display:flex;align-items:center;gap:6px}.month-nav button,.icon-button{border:1px solid var(--line);background:#ffffff0d;width:38px;height:38px;border-radius:13px;display:grid;place-items:center;cursor:pointer}.month-nav button:hover,.icon-button:hover{border-color:#c49bff61;background:#9d63ff1a}.month-nav .today-button{width:auto;padding:0 12px;font-size:.73rem;font-weight:900}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.weekday-row{margin-bottom:6px;color:#b7a5c5;text-align:center;font-size:.61rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.calendar-day{min-height:86px;position:relative;border:1px solid rgba(255,255,255,.045);border-radius:14px;background:#ffffff06;padding:7px 6px;text-align:left;cursor:pointer;overflow:hidden}.calendar-day:hover{border-color:#c599ff38;background:#ffffff0e;transform:translateY(-1px)}.calendar-day.outside{opacity:.27}.calendar-day.selected{border-color:#d28fffcc;background:#8e4adf29;box-shadow:inset 0 0 0 1px #ff62ad38,0 0 20px #974eff1a}.day-number{width:23px;height:23px;display:grid;place-items:center;border-radius:8px;font-size:.69rem;font-weight:900}.calendar-day.today .day-number{background:linear-gradient(135deg,#ff70b5,#8f56ee);box-shadow:0 7px 17px #ff57a947}.day-events{display:grid;gap:3px;margin-top:6px}.day-event{--status: #aa88d8;display:flex;align-items:center;gap:3px;min-height:20px;padding:3px 4px;border-radius:6px;background:color-mix(in srgb,var(--status),#1a1025 52%);border:1px solid color-mix(in srgb,var(--status),transparent 58%);color:#fff;font-size:.52rem;font-weight:900;font-style:normal;overflow:hidden}.day-event b{font-size:.66rem;font-weight:400}.day-event span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-events small{color:#baa7c8;font-size:.52rem;padding-left:2px}.status-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:14px;color:#b7a8c2;font-size:.61rem}.status-legend span{display:inline-flex;align-items:center;gap:5px}.status-dot{width:8px;height:8px;border-radius:999px;background:var(--status);box-shadow:0 0 12px color-mix(in srgb,var(--status),transparent 42%)}.status-proposed{--status: var(--proposed)}.status-reschedule{--status: var(--reschedule)}.status-agreed{--status: var(--agreed)}.status-completed{--status: var(--completed)}.status-canceled{--status: var(--canceled)}.page-intro{padding:24px 8px 8px}.page-intro h1{margin:7px 0 8px;font-size:clamp(2.3rem,10vw,3.5rem);line-height:1;letter-spacing:-.04em}.page-intro p{margin:0;color:var(--muted);line-height:1.5;font-size:.86rem}.plan-list{display:grid;gap:11px}.compact-list{grid-template-columns:1fr}.pending-card,.plan-card{border:1px solid color-mix(in srgb,var(--status),transparent 65%);background:linear-gradient(145deg,color-mix(in srgb,var(--status),transparent 90%),#ffffff06);border-radius:22px;padding:15px;display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:start;box-shadow:var(--soft-shadow)}.pending-card:hover,.plan-card:hover{border-color:color-mix(in srgb,var(--status),transparent 46%)}.plan-sticker{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;font-size:1.65rem;background:radial-gradient(circle at 35% 25%,rgba(255,255,255,.14),transparent 45%),#ffffff0f;border:1px solid var(--line);box-shadow:inset 0 1px #ffffff14,0 10px 24px #0003}.pending-main h3,.plan-card h3{margin:7px 0 5px;font-size:1.05rem}.pending-main>p,.plan-card-copy>p{margin:0 0 9px;color:var(--muted);line-height:1.42;font-size:.82rem}.card-topline{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.status-badge{display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--status),transparent 38%);color:color-mix(in srgb,var(--status),white 22%);background:color-mix(in srgb,var(--status),transparent 86%);padding:4px 8px;border-radius:999px;font-size:.59rem;font-weight:900;text-transform:uppercase}.version-tag{color:#bca8ca;font-size:.63rem}.plan-meta{display:flex;flex-wrap:wrap;gap:7px 11px;color:#c7b7d4;font-size:.7rem}.plan-meta span{display:inline-flex;align-items:center;gap:5px}.acceptance-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.acceptance-row span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#ffffff0a;color:var(--muted);border:1px solid var(--line);font-size:.64rem;font-weight:800}.acceptance-row span.accepted{color:#d8ffe2;border-color:#8bc79b61;background:#8bc79b1a}.card-actions{min-width:170px;display:grid;gap:8px}.small-actions{display:flex;gap:7px;align-items:center}.primary-button,.soft-button,.text-button{border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:900}.primary-button{min-height:41px;border-radius:15px;padding:0 15px;background:linear-gradient(135deg,#ff9a7c,#ff68ad);color:#20101e;box-shadow:0 9px 24px #ff68ad3b}.primary-button:hover:not(:disabled){filter:brightness(1.05);box-shadow:0 12px 30px #ff68ad52}.primary-button:disabled{cursor:default;opacity:.52;box-shadow:none}.soft-button{min-height:39px;border-radius:14px;padding:0 13px;color:#ecdfff;background:#9d63ff17;border:1px solid rgba(190,146,255,.26)}.soft-button:hover{background:#9d63ff26}.text-button{padding:8px 0;background:transparent;color:#dfc0ff}.icon-button.danger{color:#ff8db2}.micro-copy{color:var(--muted);font-size:.68rem}.memory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.memory-card{min-height:250px;position:relative;overflow:hidden;border-radius:23px;border:1px solid var(--line);border-top:4px solid var(--status);background:linear-gradient(160deg,color-mix(in srgb,var(--status),transparent 87%),#160d21f7);padding:18px;box-shadow:0 17px 42px #0000003d}.memory-card:after{content:"✦";position:absolute;right:14px;bottom:5px;font-size:4.2rem;color:color-mix(in srgb,var(--status),transparent 83%);transform:rotate(14deg)}.memory-sticker{height:82px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;z-index:1}.memory-sticker span{font-size:2.9rem;filter:drop-shadow(0 9px 16px rgba(0,0,0,.32))}.memory-sticker small{color:var(--muted);font-weight:800}.memory-card h2{position:relative;z-index:1;margin:11px 0 3px;font-size:1.05rem}.memory-date{position:relative;z-index:1;margin:0;color:var(--muted);font-size:.7rem;text-transform:capitalize}.memory-note{position:relative;z-index:1;min-height:50px;color:#e9def2;font-size:.79rem;line-height:1.45}.full-span{grid-column:1 / -1}.empty-state{min-height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;border-radius:18px;background:radial-gradient(circle at center,rgba(157,99,255,.08),transparent 68%)}.empty-state>span{font-size:2rem}.empty-state h3{margin:8px 0 4px}.empty-state p{margin:0;color:var(--muted);max-width:390px;font-size:.8rem}.demo-footer{display:flex;justify-content:center;color:#9f8eae;font-size:.62rem;padding:16px 8px 0;text-align:center}.bottom-nav{position:fixed;z-index:35;left:50%;transform:translate(-50%);bottom:max(9px,env(safe-area-inset-bottom));width:min(610px,calc(100% - 22px));display:grid;grid-template-columns:repeat(5,1fr);align-items:end;padding:9px 9px 8px;background:#0d0816f0;border:1px solid rgba(213,176,255,.18);border-radius:25px;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 24px 54px #0000007a,inset 0 1px #ffffff0a}.bottom-nav>button{border:0;background:transparent;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#9f8fac;cursor:pointer;border-radius:16px}.bottom-nav>button:hover{color:#e0d1eb;background:#ffffff09}.bottom-nav>button.active{color:#ffb1d4;text-shadow:0 0 16px rgba(255,99,173,.36)}.bottom-nav small{font-size:.57rem;font-weight:800}.nav-icon{position:relative;display:grid;place-items:center}.nav-icon i{position:absolute;right:-10px;top:-8px;min-width:17px;height:17px;display:grid;place-items:center;border-radius:999px;background:var(--pink);color:#fff;font-size:.53rem;font-style:normal;border:2px solid #170d21}.bottom-nav .add-plan-button{width:64px;height:64px;min-height:64px;justify-self:center;border-radius:23px;margin-top:-31px;color:#fff;background:linear-gradient(145deg,#c86cff,#8b4fea);box-shadow:0 13px 31px #9d63ff66,inset 0 1px #ffffff57}.bottom-nav .add-plan-button:before,.bottom-nav .add-plan-button:after{content:"";position:absolute;width:14px;height:7px;background:#7742cb;top:10px}.bottom-nav .add-plan-button:before{transform:translate(-25px) rotate(25deg);clip-path:polygon(0 50%,100% 0,76% 100%)}.bottom-nav .add-plan-button:after{transform:translate(25px) rotate(-25deg);clip-path:polygon(0 0,100% 50%,24% 100%)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#040208c2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:grid;place-items:center;padding:16px}.modal{width:min(520px,100%);max-height:min(760px,calc(100vh - 32px));overflow:auto;border:1px solid rgba(255,255,255,.13);border-radius:27px;background:linear-gradient(160deg,#251535,#100919);box-shadow:var(--shadow);padding:23px}.modal-heading{display:flex;justify-content:space-between;align-items:start;gap:14px;margin-bottom:18px}.modal-heading h2{margin:6px 0 0}.modal label{display:grid;gap:7px;margin-top:13px;color:#ddcfe8;font-size:.74rem;font-weight:900}.modal input,.modal select,.modal textarea{width:100%;border:1px solid var(--line);border-radius:14px;background:#ffffff0e;color:#fff;padding:11px 12px;outline:none}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:#be8bffb8;box-shadow:0 0 0 3px #9d63ff1f}.modal select option{background:#1b1028}.modal textarea{resize:vertical}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.toggle-row{grid-template-columns:auto 1fr!important;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:14px;background:#ffffff09}.toggle-row input{width:17px;height:17px;accent-color:var(--violet)}.toggle-row span{display:inline-flex;align-items:center;gap:7px}.rule-callout{display:flex;align-items:center;gap:9px;padding:11px 13px;border:1px solid rgba(121,170,255,.27);border-radius:14px;background:#79aaff14;color:#cfe0ff;font-size:.74rem}.full-button{width:100%;min-height:48px;margin-top:18px}.large-sticker-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:135px;border-radius:20px;background:radial-gradient(circle,rgba(255,99,173,.2),transparent 58%),#ffffff09;border:1px solid var(--line)}.large-sticker-preview span{font-size:4.2rem}.large-sticker-preview small{color:var(--muted)}.canceled-tray{position:fixed;z-index:32;right:max(14px,calc((100vw - 760px)/2 + 14px));bottom:94px;width:min(300px,calc(100% - 28px));border:1px solid var(--line);border-radius:15px;background:#160d21f2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);font-size:.68rem;box-shadow:0 14px 34px #0000004d}.canceled-tray summary{padding:10px 12px;color:var(--muted);cursor:pointer}.canceled-tray>div{display:grid;gap:8px;padding:0 11px 11px}.canceled-tray span{display:flex;justify-content:space-between;align-items:center;gap:8px}.canceled-tray button{border:0;background:transparent;color:#d9c4ef;display:inline-flex;align-items:center;gap:4px;cursor:pointer}@media(max-width:640px){.topbar{min-height:68px;padding:11px 12px}.brand-mark{width:38px;height:38px;border-radius:14px}.brand strong{font-size:.92rem}.brand small{max-width:180px;font-size:.58rem}.session-chip{padding:6px}.session-chip>span{display:none}.main-content{padding:10px 9px 18px}.panel{padding:13px;border-radius:21px}.calendar-heading{align-items:center}.section-heading h2{font-size:1.25rem}.month-nav button{width:33px;height:33px;border-radius:11px}.month-nav .today-button{padding:0 9px}.calendar-grid{gap:3px}.weekday-row{font-size:.49rem}.calendar-day{min-height:61px;border-radius:10px;padding:4px 3px}.day-number{width:20px;height:20px;font-size:.61rem;border-radius:7px}.day-events{margin-top:4px;gap:2px}.day-event{min-height:14px;padding:1px 2px;border-radius:4px}.day-event b{font-size:.55rem}.day-event span{display:none}.status-legend{gap:7px;margin-top:11px;font-size:.51rem}.row-heading{align-items:flex-start}.row-heading h2{font-size:1.12rem}.pending-card,.plan-card{grid-template-columns:auto 1fr;padding:13px}.plan-sticker{width:46px;height:46px;border-radius:15px}.small-actions,.card-actions{grid-column:1 / -1;width:100%}.card-actions{grid-template-columns:1fr 1fr auto;min-width:0}.memory-grid,.field-grid{grid-template-columns:1fr}.modal{padding:19px;border-radius:23px}.bottom-nav{width:calc(100% - 14px);border-radius:21px;padding-left:5px;padding-right:5px}.bottom-nav small{font-size:.5rem}.bottom-nav .add-plan-button{width:58px;height:58px;min-height:58px;border-radius:20px}.canceled-tray{right:8px;bottom:87px}}@media(max-width:390px){.brand small{display:none}.status-legend span{font-size:.47rem}.card-actions{grid-template-columns:1fr}.card-actions .icon-button{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.automatic-sticker-preview{display:flex;align-items:center;gap:12px;margin-top:14px;padding:12px 14px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:#ffffff0a}.automatic-sticker-preview>span{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:#ffffff12;font-size:1.8rem}.automatic-sticker-preview div{display:grid;gap:2px}.automatic-sticker-preview strong{font-size:.78rem}.automatic-sticker-preview small{color:#b9a9c9;font-size:.7rem}.app-shell{width:min(850px,100%);background:radial-gradient(circle at 50% 2%,rgba(188,104,255,.16),transparent 28%),linear-gradient(180deg,#08040ff5,#0d0616fc)}.main-content{padding:12px 14px 22px}.panel{position:relative;overflow:hidden;border:1px solid rgba(177,121,230,.25);background:radial-gradient(circle at 100% 0%,rgba(152,85,222,.08),transparent 28%),linear-gradient(180deg,#150d20fa,#0d0816fa);box-shadow:0 22px 55px #0000004d,inset 0 1px #ffffff09}.calendar-panel{padding:21px;border-radius:29px}.calendar-panel:before{content:"";position:absolute;right:-18px;top:-17px;width:130px;height:86px;background:url(/vamp-bat.svg) center / contain no-repeat;opacity:.48;filter:drop-shadow(0 0 13px rgba(157,86,235,.4));pointer-events:none}.calendar-panel:after{content:"✦  ♡  ✧";position:absolute;left:18px;bottom:10px;color:#ff70b330;letter-spacing:.5rem;pointer-events:none}.calendar-heading h2{color:#d7a7ff;font-size:1.75rem;text-shadow:0 0 16px rgba(163,88,234,.18)}.eyebrow{color:#f0b9dd}.weekday-row{color:#cbb5dc}.calendar-day{min-height:94px;border:1px solid rgba(255,255,255,.075);border-radius:14px;background:linear-gradient(145deg,#ffffff08,#ffffff04)}.calendar-day:hover{background:#8d4fd318}.calendar-day.selected{border-color:#c86ef7;background:radial-gradient(circle at center,#be57f233,#49236724);box-shadow:inset 0 0 0 1px #ff71b759,0 0 20px #b752ef3b}.calendar-day.today .day-number{background:linear-gradient(145deg,#e16dce,#9b55e8);box-shadow:0 6px 18px #c657e15c}.day-event{min-height:23px;border-radius:7px;box-shadow:inset 0 1px #ffffff21}.day-panel{min-height:215px;padding-right:165px;border-color:#ff64ad47}.day-panel:before{content:"";position:absolute;z-index:0;right:15px;bottom:5px;width:135px;height:112px;background:url(/vamp-cup.svg) center / contain no-repeat;opacity:.94;filter:drop-shadow(0 12px 19px rgba(0,0,0,.4));pointer-events:none}.day-panel>*{position:relative;z-index:1}.plan-card,.pending-card,.memory-card{border-width:1.5px;box-shadow:0 16px 36px #00000045,inset 0 1px #ffffff0a}.plan-card:after,.pending-card:after{content:"♡";position:absolute;right:12px;bottom:5px;color:color-mix(in srgb,var(--status),transparent 74%);font-size:2.4rem;pointer-events:none}.plan-card,.pending-card{position:relative;overflow:hidden}.primary-button{border:1px solid rgba(255,215,227,.5);background:linear-gradient(135deg,#ffad88,#ff7fb5 62%,#e76dce);box-shadow:0 10px 27px #ff67aa47,inset 0 1px #ffffff80}.soft-button{border-color:#cd8eff85;background:linear-gradient(145deg,#8e4cd52e,#522b7d1f);box-shadow:inset 0 1px #ffffff0d}.bottom-nav{border:2px solid rgba(169,103,231,.3);background:#09060ff5;box-shadow:0 25px 60px #0000008c,inset 0 1px #ffffff0d}.bottom-nav>button.active{color:#ff95c7}.bottom-nav .add-plan-button{position:relative;overflow:visible;border:2px solid rgba(231,192,255,.55);background:radial-gradient(circle at 36% 25%,#df8dff,#9555e7 64%,#6731af);box-shadow:0 15px 35px #994ce180,0 0 24px #ff67ae2e,inset 0 1px #ffffff73}.bottom-nav .add-plan-button:before,.bottom-nav .add-plan-button:after{width:31px;height:21px;top:19px;background:url(/vamp-bat.svg) center / contain no-repeat;opacity:.9;clip-path:none}.bottom-nav .add-plan-button:before{transform:translate(-47px) rotate(-8deg)}.bottom-nav .add-plan-button:after{transform:translate(47px) rotate(8deg) scaleX(-1)}@media(max-width:640px){.automatic-sticker-preview{padding:10px 12px}.automatic-sticker-preview>span{width:42px;height:42px;font-size:1.55rem}.main-content{padding:9px 8px 18px}.calendar-panel{padding:13px}.calendar-panel:before{width:88px;height:58px}.calendar-heading h2{font-size:1.32rem}.calendar-day{min-height:64px}.day-event{min-height:16px}.day-panel{padding-right:13px;padding-bottom:116px}.day-panel:before{width:112px;height:92px;right:8px;bottom:3px;opacity:.76}}.hero-card{position:relative;min-height:492px;overflow:hidden;isolation:isolate;padding:22px 20px 14px;border:2px solid rgba(189,120,255,.34);border-radius:34px;background:radial-gradient(circle at 50% 58%,rgba(141,69,214,.3),transparent 36%),radial-gradient(circle at 18% 18%,rgba(255,95,172,.13),transparent 22%),radial-gradient(circle,rgba(255,255,255,.5) 1px,transparent 1.6px) 0 0 / 47px 47px,linear-gradient(155deg,#171022,#100918 58%,#09060f);box-shadow:0 34px 82px #0000008f,inset 0 0 70px #743db814}.hero-heading{position:relative;z-index:5;text-align:center;padding-inline:120px}.hero-heading:before,.hero-heading:after{content:"✦";position:absolute;color:#ffd3ec;text-shadow:0 0 18px #ff6ab3}.hero-heading:before{left:21%;top:10px;font-size:1rem}.hero-heading:after{right:20%;top:29px;color:#d7b8ff;font-size:.7rem}.hero-sparkle{display:none}.hero-heading h1{margin:0;color:#fff8ff;font-size:clamp(2.65rem,7vw,4.35rem);line-height:.98;letter-spacing:-.055em;text-shadow:0 3px #66318f,0 0 24px rgba(255,255,255,.16)}.hero-heading p{margin:7px 0 0;color:#eadcf2;font-size:.9rem;font-weight:700}.hero-lotso,.hero-tarja{position:absolute;z-index:6;display:block;pointer-events:none;-webkit-user-select:none;user-select:none}.hero-lotso{top:70px;left:22px;width:132px;height:157px;object-fit:contain;filter:drop-shadow(0 14px 20px rgba(0,0,0,.5))}.hero-tarja{top:73px;right:24px;width:116px;height:116px;object-fit:cover;object-position:center;border:2px solid rgba(225,177,255,.42);border-radius:22px;box-shadow:0 16px 30px #00000075,0 0 23px #b85bf533}.hero-scene{position:relative;z-index:2;height:386px;margin-top:1px}.hero-scene:before{content:"♡";position:absolute;z-index:-1;left:50%;top:48px;transform:translate(-50%);color:#ad67ff2e;font:16rem/1 Georgia,serif;text-shadow:0 0 34px rgba(151,75,231,.24)}.hero-art{position:absolute;z-index:2;left:50%;bottom:0;display:block;width:min(68%,510px);height:auto;transform:translate(-50%);object-fit:contain;image-rendering:auto;filter:drop-shadow(0 24px 27px rgba(0,0,0,.58)) drop-shadow(0 0 25px rgba(147,75,225,.25))}.hero-date-card,.hero-quote{position:absolute;z-index:4;border:2px solid rgba(181,114,245,.42);background:radial-gradient(circle at 50% 18%,rgba(165,89,239,.16),transparent 36%),#170e22f0;box-shadow:0 16px 38px #0000006b,inset 0 1px #ffffff12;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-date-card{left:0;top:132px;width:128px;min-height:170px;border-radius:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 8px}.hero-date-card small{color:#f0dcff;text-transform:capitalize;font-size:.8rem;font-weight:900}.hero-date-card strong{margin:6px 0;color:#fff;font-size:4rem;line-height:.95;text-shadow:0 0 22px rgba(181,111,255,.36)}.hero-date-card span{color:#ccb7dc;text-align:center;text-transform:capitalize;font-size:.74rem}.hero-quote{right:0;top:128px;width:151px;min-height:178px;border-radius:25px;padding:20px 16px 15px;display:flex;flex-direction:column;justify-content:center;text-align:center}.hero-quote span{position:absolute;top:9px;right:12px;color:#c58dff}.hero-quote p{margin:0;color:#efe5f7;font-size:.8rem;line-height:1.5;font-weight:700}.hero-quote i{margin-top:9px;color:#ff63ad;font-size:1.2rem;font-style:normal;text-shadow:0 0 18px rgba(255,99,173,.55)}@media(max-width:640px){.hero-card{min-height:420px;padding:16px 9px 9px;border-radius:28px}.hero-heading{padding-inline:76px}.hero-heading h1{font-size:clamp(2.15rem,11.5vw,3rem);white-space:nowrap}.hero-heading p{margin-top:4px;font-size:.68rem}.hero-lotso{top:70px;left:7px;width:88px;height:105px}.hero-tarja{top:72px;right:8px;width:80px;height:84px;border-radius:16px}.hero-scene{height:326px}.hero-scene:before{top:55px;font-size:11rem}.hero-art{width:min(92%,410px)}.hero-date-card{top:112px;width:84px;min-height:126px;padding:8px 5px;border-radius:19px}.hero-date-card small{font-size:.61rem}.hero-date-card strong{font-size:2.72rem}.hero-date-card span{font-size:.55rem}.hero-quote{top:108px;width:96px;min-height:134px;padding:12px 7px;border-radius:19px}.hero-quote p{font-size:.53rem;line-height:1.4}}@media(max-width:390px){.hero-card{min-height:398px;padding-inline:6px}.hero-heading{padding-inline:62px}.hero-heading h1{font-size:2.16rem}.hero-heading p{font-size:.63rem}.hero-lotso{left:2px;width:78px}.hero-tarja{right:2px;width:72px;height:78px}.hero-scene{height:306px}.hero-art{width:98%}.hero-date-card{width:78px}.hero-quote{width:88px}.hero-quote p{font-size:.5rem}}
