@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@500;600;700&family=Manrope:wght@300;400;500;600;700;800&display=swap";:root{--bg:#f4f2ed;--surface:#fbfaf7;--surface-2:#f0ede6;--ink:#1f2a26;--ink-2:#4a5550;--ink-3:#8a938e;--line:#1f2a2614;--line-2:#1f2a2624;--sage-50:#eff2ec;--sage-100:#dee5d7;--sage-200:#bfccb4;--sage-300:#98ac8b;--sage-400:#74896a;--sage-500:#556b4d;--sage-600:#3f5239;--sage-700:#2e3d29;--peach-50:#fbefe6;--peach-100:#f6dbc4;--peach-200:#f2c09b;--peach-300:#eca170;--peach-400:#e08654;--peach-500:#c26a3d;--mood-low:#1e2b45;--mood-mid-low:#4d5a78;--mood-mid:#c9c4b7;--mood-mid-high:#ecb28c;--mood-high:#e89668;--radius-sm:10px;--radius:14px;--radius-lg:20px;--radius-xl:28px;--shadow-sm:0 1px 2px #1f2a260a, 0 2px 6px #1f2a260a;--shadow:0 2px 4px #1f2a260a, 0 8px 24px #1f2a260f;--shadow-lg:0 4px 8px #1f2a260f, 0 24px 48px #1f2a261a;--motion-ease-warm:cubic-bezier(.33, .72, .32, 1);--motion-ease-out-soft:cubic-bezier(.22, 1, .36, 1);--motion-ease-press:cubic-bezier(.34, 1.02, .68, 1);--motion-ease-spring:cubic-bezier(.34, 1.45, .64, 1);--motion-ease-bounce:cubic-bezier(.28, 1.65, .42, .97);--motion-ease-sheet:cubic-bezier(.32, 1.24, .26, 1);--motion-duration-xs:.16s;--motion-duration-sm:.26s;--motion-duration-md:.45s;--motion-duration-lg:.62s;--motion-duration-xl:.88s;--motion-duration-xxl:1.05s;--motion-bg-crossfade:.85s;--motion-stagger-step:70ms}*,:before,:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;min-height:100%;margin:0;padding:0}body{color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:#e8e4db;font-family:Manrope,-apple-system,system-ui,sans-serif}button,input,textarea,select{font-family:inherit}button{cursor:pointer;color:inherit;background:0 0;border:none}input,textarea,select{font-size:inherit;color:inherit}.app-shell{background:var(--bg);width:100%;max-width:100%;height:100dvh;min-height:100dvh;padding-top:env(safe-area-inset-top);flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden;transform:translateZ(0)}.fd-screen{background:var(--bg);flex-direction:column;width:100%;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.fd-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:1;overflow:hidden auto}.fd-scroll::-webkit-scrollbar{display:none}.fd-h1{letter-spacing:-.02em;margin:0;font-size:28px;font-weight:700;line-height:1.15}.fd-h2{letter-spacing:-.015em;margin:0;font-size:22px;font-weight:700;line-height:1.2}.fd-h3{letter-spacing:-.01em;margin:0;font-size:17px;font-weight:600;line-height:1.3}.fd-body{color:var(--ink-2);margin:0;font-size:15px;font-weight:400;line-height:1.45}.fd-small{color:var(--ink-3);letter-spacing:.01em;font-size:13px;font-weight:500}.fd-mono{font-feature-settings:"tnum";font-family:JetBrains Mono,ui-monospace,menlo,monospace}.fd-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--line);transition:box-shadow var(--motion-duration-md) var(--motion-ease-warm), border-color var(--motion-duration-sm) var(--motion-ease-warm), transform var(--motion-duration-sm) var(--motion-ease-press), background-color var(--motion-duration-md) var(--motion-ease-warm)}.fd-btn{letter-spacing:.005em;height:52px;transition:transform var(--motion-duration-sm) var(--motion-ease-press), background var(--motion-duration-md) var(--motion-ease-warm), opacity var(--motion-duration-sm) var(--motion-ease-warm), box-shadow var(--motion-duration-md) var(--motion-ease-warm), border-color var(--motion-duration-sm) var(--motion-ease-warm);touch-action:manipulation;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-size:15px;font-weight:600;display:inline-flex}.fd-btn:active{transform:scale(.94)}@media (hover:hover) and (pointer:fine){.fd-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 28px #3f523947}.fd-btn-peach:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 28px #c26a3d42}.fd-btn-secondary:hover:not(:disabled){box-shadow:var(--shadow);transform:translateY(-1px)}}.fd-btn:disabled{opacity:.6;pointer-events:none}.fd-btn-primary{background:var(--sage-600);color:var(--sage-50)}.fd-btn-secondary{background:var(--surface);color:var(--ink);border:1px solid var(--line-2)}.fd-btn-ghost{color:var(--ink-2);background:0 0}.fd-btn-peach{background:var(--peach-300);color:#fff}.fd-field{position:relative}.fd-field-label{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);pointer-events:none;font-size:11px;font-weight:600;position:absolute;top:8px;left:16px}.fd-input{background:var(--surface);border:1px solid var(--line-2);width:100%;min-height:52px;transition:border-color var(--motion-duration-sm) var(--motion-ease-warm), box-shadow var(--motion-duration-md) var(--motion-ease-warm), background-color var(--motion-duration-sm) var(--motion-ease-warm);border-radius:14px;outline:none;padding:0 16px;font-size:15px}.fd-input.with-label{padding-top:18px}.fd-input:focus{border-color:var(--sage-400);box-shadow:0 0 0 4px #74896a1f}.fd-input.error{border-color:#c26a3d99;box-shadow:0 0 0 4px #c26a3d1f}.fd-tabbar{z-index:30;min-height:78px;padding:8px 12px calc(14px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(20px)saturate(180%);border-top:1px solid var(--line);background:#fbfaf7eb;flex-shrink:0;justify-content:space-around;align-items:center;display:flex;position:sticky;bottom:0}.fd-tab{color:var(--ink-3);letter-spacing:.02em;transition:color var(--motion-duration-md) var(--motion-ease-warm), transform var(--motion-duration-sm) var(--motion-ease-press), background-color var(--motion-duration-md) var(--motion-ease-warm), box-shadow var(--motion-duration-md) var(--motion-ease-warm);background:0 0;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:6px 14px;font-size:11px;font-weight:600;display:flex}.fd-tab:active{transform:scale(.94)}.fd-tab.active{color:var(--sage-600);background:#dee5d7a6;box-shadow:0 4px 16px #3f52391f,inset 0 0 0 1px #74896a26}.fd-tab.active .fd-tab-icon-wrap{transform:scale(1.14)translateY(-1px)}.fd-tab-icon-wrap{transition:transform var(--motion-duration-lg) var(--motion-ease-bounce);justify-content:center;align-items:center;display:flex}.fd-divider{background:var(--line);height:1px}.fd-spread{justify-content:space-between;align-items:center;display:flex}@keyframes screenIn{0%{opacity:0;filter:blur(6px);transform:translateY(24px)scale(.96)}to{opacity:1;filter:none;transform:translate(0,0)scale(1)}}.fd-anim-in{animation:screenIn var(--motion-duration-xl) var(--motion-ease-out-soft) both}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes fd-sheet-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes fd-sheet-panel-up{0%{opacity:0;transform:translateY(100%)scale(.96)}65%{opacity:1;transform:translateY(-12px)scale(1.01)}82%{transform:translateY(4px)scale(.998)}to{opacity:1;transform:translate(0,0)scale(1)}}.fd-sheet-root{z-index:120;align-items:flex-end;display:flex;position:fixed;inset:0}.fd-sheet-backdrop{cursor:pointer;-webkit-backdrop-filter:blur(12px);width:100%;height:100%;animation:fd-sheet-backdrop-in var(--motion-duration-lg) var(--motion-ease-out-soft) both;background:#1f2a267a;border:none;margin:0;padding:0;display:block;position:absolute;inset:0}.fd-sheet-panel{z-index:1;background:var(--surface);width:100%;max-height:88vh;padding:20px 22px calc(20px + env(safe-area-inset-bottom));animation:fd-sheet-panel-up var(--motion-duration-xl) var(--motion-ease-sheet) both;border-radius:24px 24px 0 0;position:relative;overflow-y:auto;box-shadow:0 -12px 48px #1f2a2624,inset 0 -2px #ffffffa6}@keyframes fd-toast-in{0%{opacity:0;filter:blur(4px);transform:translate(-50%,-28px)scale(.82)rotate(-2deg)}55%{opacity:1;filter:blur();transform:translate(-50%,6px)scale(1.06)rotate(.5deg)}75%{transform:translate(-50%,-2px)scale(.98)rotate(0)}to{opacity:1;filter:none;transform:translate(-50%)scale(1)rotate(0)}}.fd-toast{left:50%;top:calc(12px + env(safe-area-inset-top));z-index:150;background:linear-gradient(135deg, var(--sage-600) 0%, var(--sage-700) 100%);color:var(--sage-50);box-shadow:var(--shadow-lg), 0 0 0 1px #ffffff1f inset;animation:fd-toast-in var(--motion-duration-xl) var(--motion-ease-bounce) both;will-change:transform, opacity;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:600;position:fixed;bottom:auto}@keyframes fd-hydration-pulse{0%,to{opacity:.45;transform:scale(.98)}50%{opacity:1;transform:scale(1)}}.fd-hydration{animation:fd-hydration-pulse 1.4s var(--motion-ease-warm) infinite}@keyframes fd-orb-drift{0%,to{transform:translate(0,0)scale(1)rotate(0)}25%{transform:translate(-14px,18px)scale(1.06)rotate(-2deg)}50%{transform:translate(10px,-12px)scale(1.03)rotate(1.5deg)}75%{transform:translate(8px,14px)scale(1.05)rotate(-1deg)}}.fd-orb-float{will-change:transform;animation:18s ease-in-out infinite fd-orb-drift}@keyframes fd-screen-swap-in{0%{opacity:0;filter:blur(8px);transform:translateY(32px)scale(.94)}to{opacity:1;filter:none;transform:translate(0,0)scale(1)}}.fd-screen-swap{animation:fd-screen-swap-in var(--motion-duration-xl) var(--motion-ease-out-soft) both;min-height:0}@keyframes fd-rise-stagger{0%{opacity:0;transform:translateY(28px)scale(.92)}to{opacity:1;transform:translate(0,0)scale(1)}}.fd-stagger-children>*{animation:fd-rise-stagger var(--motion-duration-lg) var(--motion-ease-bounce) both}.fd-stagger-children>:first-child{animation-delay:calc(var(--motion-stagger-step) * 0)}.fd-stagger-children>:nth-child(2){animation-delay:calc(var(--motion-stagger-step) * 1)}.fd-stagger-children>:nth-child(3){animation-delay:calc(var(--motion-stagger-step) * 2)}.fd-stagger-children>:nth-child(4){animation-delay:calc(var(--motion-stagger-step) * 3)}.fd-stagger-children>:nth-child(5){animation-delay:calc(var(--motion-stagger-step) * 4)}.fd-stagger-children>:nth-child(6){animation-delay:calc(var(--motion-stagger-step) * 5)}.fd-stagger-children>:nth-child(7){animation-delay:calc(var(--motion-stagger-step) * 6)}.fd-stagger-children>:nth-child(8){animation-delay:calc(var(--motion-stagger-step) * 7)}.fd-stagger-children>:nth-child(9){animation-delay:calc(var(--motion-stagger-step) * 8)}.fd-stagger-children>:nth-child(10){animation-delay:calc(var(--motion-stagger-step) * 9)}.fd-stagger-children>:nth-child(11){animation-delay:calc(var(--motion-stagger-step) * 10)}.fd-stagger-children>:nth-child(12){animation-delay:calc(var(--motion-stagger-step) * 11)}.fd-stagger-children>:nth-child(13){animation-delay:calc(var(--motion-stagger-step) * 12)}.fd-stagger-children>:nth-child(14){animation-delay:calc(var(--motion-stagger-step) * 13)}.fd-stagger-children>:nth-child(15){animation-delay:calc(var(--motion-stagger-step) * 14)}@keyframes fd-list-item-in{0%{opacity:0;transform:translate(20px)scale(.96)}to{opacity:1;transform:translate(0,0)scale(1)}}.fd-stagger-list>*{animation:fd-list-item-in var(--motion-duration-md) var(--motion-ease-spring) both}.fd-stagger-list>:first-child{animation-delay:calc(var(--motion-stagger-step) * 0)}.fd-stagger-list>:nth-child(2){animation-delay:calc(var(--motion-stagger-step) * 1)}.fd-stagger-list>:nth-child(3){animation-delay:calc(var(--motion-stagger-step) * 2)}.fd-stagger-list>:nth-child(4){animation-delay:calc(var(--motion-stagger-step) * 3)}.fd-stagger-list>:nth-child(5){animation-delay:calc(var(--motion-stagger-step) * 4)}.fd-stagger-list>:nth-child(6){animation-delay:calc(var(--motion-stagger-step) * 5)}.fd-stagger-list>:nth-child(7){animation-delay:calc(var(--motion-stagger-step) * 6)}.fd-stagger-list>:nth-child(8){animation-delay:calc(var(--motion-stagger-step) * 7)}.fd-stagger-list>:nth-child(9){animation-delay:calc(var(--motion-stagger-step) * 8)}.fd-stagger-list>:nth-child(10){animation-delay:calc(var(--motion-stagger-step) * 9)}.fd-stagger-list>:nth-child(11){animation-delay:calc(var(--motion-stagger-step) * 10)}.fd-stagger-list>:nth-child(12){animation-delay:calc(var(--motion-stagger-step) * 11)}.fd-onboarding-dot{background:var(--sage-100);transform-origin:50%;height:7px;transition:width var(--motion-duration-lg) var(--motion-ease-bounce), background var(--motion-duration-md) var(--motion-ease-warm), transform var(--motion-duration-md) var(--motion-ease-spring);border-radius:999px}.fd-onboarding-dot--active{background:var(--sage-600);width:28px;transform:scaleY(1.15);box-shadow:0 2px 12px #3f523959}.fd-onboarding-dot:not(.fd-onboarding-dot--active){width:7px}.fd-role-card{transition:transform var(--motion-duration-sm) var(--motion-ease-press), box-shadow var(--motion-duration-md) var(--motion-ease-warm)}.fd-role-card:active{transform:scale(.965)rotate(-.5deg)}@media (hover:hover) and (pointer:fine){.fd-role-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)scale(1.01)}.fd-role-card:active{transform:scale(.97)}}@keyframes fd-app-boot{0%{opacity:0;filter:blur(6px);transform:scale(.96)translateY(12px)}to{opacity:1;filter:none;transform:scale(1)translateY(0)}}.fd-app-boot{animation:fd-app-boot var(--motion-duration-xxl) var(--motion-ease-out-soft) both}.fd-specialist-add{transition:transform var(--motion-duration-md) var(--motion-ease-bounce), box-shadow var(--motion-duration-md) var(--motion-ease-warm);box-shadow:0 8px 24px #3f523959}.fd-specialist-add:active{transform:scale(.88)rotate(-6deg)}@media (hover:hover) and (pointer:fine){.fd-specialist-add:hover{transform:scale(1.08)rotate(3deg);box-shadow:0 12px 32px #3f52396b}.fd-specialist-add:active{transform:scale(.92)rotate(-4deg)}}.fd-mood-extreme-layer{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.fd-mood-extreme-layer--thunder{transition:opacity .45s var(--motion-ease-warm)}.fd-mood-thunder-vignette{background:radial-gradient(95% 55% at 50% 0,#1e2b456b 0%,#0000 58%),linear-gradient(#1e2b4547 0%,#0000 42%);animation:4.5s ease-in-out infinite fd-thunder-sky-dim;position:absolute;inset:0}@keyframes fd-thunder-sky-dim{0%,88%,to{opacity:1}90%{opacity:.72}91%{opacity:.95}93%{opacity:.8}}.fd-mood-rain{opacity:.28;background-image:repeating-linear-gradient(104deg,#0000 0 5px,#ffffff24 5px 6px);background-size:22px 100%;animation:.5s linear infinite fd-mood-rain-fall;position:absolute;inset:0}@keyframes fd-mood-rain-fall{0%{background-position:0 0}to{background-position:0 72px}}.fd-mood-lightning{opacity:0;pointer-events:none;width:68px;height:auto;position:absolute}.fd-mood-lightning--a{animation:5s ease-in-out infinite fd-lightning-flash-a;top:4%;left:10%}.fd-mood-lightning--b{width:54px;animation:5.2s ease-in-out 1.7s infinite fd-lightning-flash-b;top:10%;right:6%}@keyframes fd-lightning-flash-a{0%,84%,to{opacity:0;transform:scale(.92)}85%{opacity:.95;transform:scale(1)}86%{opacity:.25}87%{opacity:.85}89%{opacity:0;transform:scale(1.02)}}@keyframes fd-lightning-flash-b{0%,82%,to{opacity:0;transform:scale(.9)}83%{opacity:.88;transform:scale(1)}84%{opacity:.15}85%{opacity:.75}87%{opacity:0}}.fd-mood-extreme-layer--fireworks{transition:opacity .5s var(--motion-ease-warm)}.fd-mood-firework-burst{pointer-events:none;width:100px;height:100px;position:absolute}.fd-mood-firework-ray-wrap{transform-origin:50% 100%;width:3px;height:48px;margin-top:-48px;margin-left:-1.5px;position:absolute;top:50%;left:50%}.fd-mood-firework-ray{transform-origin:50% 100%;opacity:0;border-radius:2px;width:100%;height:100%;animation:2.4s ease-out infinite fd-firework-ray-pop;display:block;box-shadow:0 0 6px #ffffff73}@keyframes fd-firework-ray-pop{0%{opacity:0;transform:scaleY(.15)}8%{opacity:1}35%{opacity:.85}to{opacity:0;transform:scaleY(1.05)}}@media (prefers-reduced-motion:reduce){.fd-orb-float,.fd-hydration{animation:none}.fd-orb-float{transform:none}.fd-sheet-backdrop,.fd-sheet-panel,.fd-toast,.fd-screen-swap,.fd-app-boot{animation-duration:.01ms;animation-iteration-count:1}.fd-stagger-children>*,.fd-stagger-list>*{opacity:1;animation:none;transform:none}.fd-mood-thunder-vignette,.fd-mood-rain,.fd-mood-lightning,.fd-mood-firework-ray{animation:none!important}.fd-mood-rain{opacity:.12}.fd-mood-lightning{opacity:0}.fd-mood-firework-ray{opacity:.35;transform:scaleY(.65)}}.hide-scrollbar{scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.safe-top{padding-top:env(safe-area-inset-top)}.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}.touch-feedback:active{transform:scale(.98)}
