:root{--cream-50:#fbfaf9;--cream-100:#efedeb;--sand-100:#eae7e4;--sand-200:#e3d8c8;--sand-300:#d8cfc6;--taupe-400:#a5a09c;--taupe-500:#8a8480;--taupe-600:#6b6663;--ink-700:#48433f;--ink-800:#33302d;--ink-900:#26231f;--rose-200:#f2e3cc;--rose-500:#b9854c;--rose-600:#a0713d;--greige-100:#e6e6e1;--greige-200:#d6d7d1;--white:#ffffff;--bg-app:#f5f3f2;--surface-card:#ffffff;--surface-sunk:#ebe8e6;--surface-tint:var(--sand-100);--border-card:rgba(40,36,34,0.07);--border-hair:rgba(40,36,34,0.06);--divider:rgba(40,36,34,0.09);--text-strong:var(--ink-900);--text-body:var(--ink-700);--text-muted:var(--taupe-600);--text-faint:var(--taupe-400);--accent:var(--rose-500);--accent-soft:var(--rose-200);--accent-press:var(--rose-600);--locked:var(--taupe-400);--premium:var(--rose-600);--ring-track:var(--sand-200);--btn-primary-bg:var(--ink-900);--btn-primary-fg:var(--cream-50);--glass-bg:rgba(48,44,41,0.55);--glass-border:rgba(255,255,255,0.14);--bubble-own:#dde7f3;--bubble-own-text:#2c3440;--bubble-own-soft:rgba(60,80,110,0.1);--mood-low:#b9a6c9;--mood-anxious:#d9b48f;--mood-calm:#a9c3ae;--mood-joy:#e7b6a4;--mood-CALM:#7fa88b;--mood-TIRED:#c8a87c;--mood-ANXIOUS:#9a8fbf;--mood-ANGRY:#c98a8a;--mood-NUMB:#a9a29c;--score-GREAT:#7fa88b;--score-GOOD:#a8be96;--score-NEUTRAL:#c8a87c;--score-HARD:#c99b8a;--score-VERYHARD:#c98a8a;--font-display:"SF Pro Display",-apple-system,"Segoe UI",system-ui,sans-serif;--font-text:"Manrope",-apple-system,"Segoe UI",system-ui,sans-serif;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-xl:28px;--radius-pill:999px;--shadow-card:0 6px 24px rgba(40,36,34,0.07);--shadow-sm:0 2px 10px rgba(40,36,34,0.06);--shadow-md:0 10px 32px rgba(40,36,34,0.12);--dur-fast:120ms;--dur-base:200ms;--dur-slow:360ms;--ease-soft:cubic-bezier(0.4,0,0.2,1);--ease-out:cubic-bezier(0.16,1,0.3,1);--press-scale:0.97}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes spBackdropIn{0%{opacity:0}to{opacity:1}}.sp-backdrop{animation:spBackdropIn var(--dur-base) var(--ease-soft) both}@keyframes spFadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.sp-fade-up{animation:spFadeUp var(--dur-slow) var(--ease-out) both}.sp-hscroll{scrollbar-width:none;-ms-overflow-style:none}.sp-hscroll::-webkit-scrollbar{display:none}@media (hover:hover) and (pointer:fine){.sp-hscroll{scrollbar-width:thin;scrollbar-color:var(--sand-300) transparent;padding-bottom:6px}.sp-hscroll::-webkit-scrollbar{display:block;height:6px}.sp-hscroll::-webkit-scrollbar-thumb{background:var(--sand-300);border-radius:999px}.sp-hscroll::-webkit-scrollbar-track{background:transparent}}@font-face{font-family:SF Pro Display;src:url(/fonts/SF-Pro-Display-Regular.woff2) format("woff2"),url(/fonts/SF-Pro-Display-Regular.otf) format("opentype");font-weight:100 400;font-style:normal;font-display:swap}@font-face{font-family:SF Pro Display;src:url(/fonts/SF-Pro-Display-Medium.woff2) format("woff2"),url(/fonts/SF-Pro-Display-Medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:SF Pro Display;src:url(/fonts/SF-Pro-Display-Semibold.woff2) format("woff2"),url(/fonts/SF-Pro-Display-Semibold.otf) format("opentype");font-weight:600 700;font-style:normal;font-display:swap}@font-face{font-family:SF Pro Display;src:url(/fonts/SF-Pro-Display-Bold.woff2) format("woff2"),url(/fonts/SF-Pro-Display-Bold.otf) format("opentype");font-weight:800 900;font-style:normal;font-display:swap}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg-app);color:var(--text-strong);font-family:var(--font-text)}:root{--sa-top:env(safe-area-inset-top,0px);--sa-bottom:env(safe-area-inset-bottom,0px);--sa-left:env(safe-area-inset-left,0px);--sa-right:env(safe-area-inset-right,0px)}body{overscroll-behavior-y:none}:root{--tg-ease-out:cubic-bezier(0.25,1,0.5,1);--tg-ease-menu:cubic-bezier(0.2,0,0.2,1);--tg-ease-spring:cubic-bezier(0.34,1.56,0.64,1);--tg-menu-open:150ms;--tg-menu-close:200ms;--vv-bottom:0px;--nav-space:96px;--panel-bottom:0px}@media (display-mode:standalone){:root{--panel-bottom:var(--sa-bottom)}}.sp-appnav{bottom:var(--panel-bottom);transition:transform var(--dur-med,.22s) var(--ease-soft,ease),opacity var(--dur-med,.22s) var(--ease-soft,ease)}.sp-bottom-dock{position:fixed;left:50%;transform:translateX(-50%);width:calc(100% - 40px);max-width:390px;z-index:40;bottom:calc(var(--nav-space) + var(--panel-bottom))}html.sp-kb .sp-appnav{transform:translateY(140%);opacity:0;pointer-events:none}html.sp-kb .sp-bottom-dock{bottom:calc(var(--vv-bottom) + 10px)}.sp-app-shell{padding:calc(6px + var(--sa-top)) 20px calc(110px + var(--sa-bottom) + var(--vv-bottom, 0px))}html.sp-chat,html.sp-chat body{overflow:hidden;background:var(--bg-app)}html.sp-chat .sp-app-shell{height:var(--vv-height,100dvh);padding-bottom:0;overflow:hidden}html.sp-kb.sp-chat .sp-app-shell{position:relative;top:var(--vv-top,0)}.sp-chat-root,html.sp-chat .sp-page{display:flex;flex-direction:column;flex:1 1;min-height:0}.sp-chat-root{padding-bottom:calc(var(--nav-space) + var(--sa-bottom));transition:padding-bottom .2s var(--ease-soft,ease)}html.sp-kb.sp-chat .sp-chat-root{padding-bottom:8px}.sp-chat-head{flex:none;padding:12px 0 10px;background:var(--bg-app)}.sp-chat-scroll{display:flex;flex-direction:column;gap:14px;flex:1 1;min-height:0;padding-top:2px;padding-bottom:10px;overflow-y:auto;overscroll-behavior:contain}.sp-chat-dock{position:static;left:auto;bottom:auto;transform:none;width:100%;max-width:none}html.sp-chat-menu .sp-appnav{transform:translateY(140%);opacity:0;pointer-events:none}.sp-noselect,.sp-noselect *{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.sp-pressable{transition:transform .17s var(--ease-soft,ease);transform-origin:center}.sp-pressed{animation:none;transform:scale(.96)}.sp-msg-lift{position:relative;z-index:60;transition:transform .22s var(--tg-ease-out,cubic-bezier(.25,1,.5,1))}.sp-msg-lift.sp-msg-lift{animation:none}.sp-msg-raised{position:relative;animation:none;transform:scale(1.03);transition:transform .2s var(--ease-out,cubic-bezier(.22,1,.36,1));box-shadow:0 18px 44px rgba(30,26,22,.28);border-radius:inherit}.sp-msg-scrim{position:fixed;inset:0;z-index:58;background:rgba(28,23,20,.42);-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);animation:spScrimIn .18s var(--ease-soft,ease) both}@keyframes spScrimIn{0%{opacity:0}to{opacity:1}}body.sp-no-select,body.sp-no-select *{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}.sp-msg-raised .sp-msg-text,.sp-msg-raised .sp-msg-text *{-webkit-user-select:text;-moz-user-select:text;user-select:text;-webkit-touch-callout:default;cursor:text}@keyframes spPop{0%{transform:scale(1)}35%{transform:scale(1.28)}60%{transform:scale(.94)}to{transform:scale(1)}}.sp-pop{animation:spPop .4s var(--ease-soft)}@media (prefers-reduced-motion:reduce){.sp-pop{animation:none}.sp-msg-lift,.sp-msg-raised,.sp-pressable{transition:none}.sp-pressed{opacity:.75}.sp-msg-raised,.sp-pressed{transform:none}}:root{--ritual-head-bg:#e3d8c8}.sp-ritual-head{background:var(--ritual-head-bg);border-radius:var(--radius-lg);padding:14px 16px}