.site-header{--brown: #515bd8;--brown-light: #9cabef;--brown-dark: #3d44b6;--cream: #f0f0f0;--warm-white: #ffffff;--text-primary: #000000;--text-secondary: #555555;--text-tertiary: #8f8f8f;--border: #e0e0e0;--border-light: #f0f0f0;position:sticky;top:0;z-index:120;padding:.75rem 1rem 0}.site-header.home{position:fixed;left:0;right:0}.site-header .sh-inner{max-width:1200px;margin:0 auto;padding:.7rem 1.6rem;border-radius:52px;background:var(--warm-white);box-shadow:#0000000f 0 8px 30px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.site-header .sh-brand{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--text-primary);z-index:310}.site-header .sh-wordmark{font-family:DM Sans,sans-serif;font-size:1.25rem;font-weight:400;letter-spacing:-.01em}.site-header .sh-nav{display:flex;align-items:center;gap:1.4rem}.site-header .sh-link{font-family:DM Sans,sans-serif;font-size:.9rem;font-weight:400;color:var(--text-secondary);text-decoration:none;background:none;border:none;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap;transition:color .2s}.site-header .sh-link:hover{color:var(--text-primary);font-weight:600}.site-header .sh-label{display:inline-flex;flex-direction:column;align-items:center}.site-header .sh-label:after{content:attr(data-text);font-weight:600;height:0;overflow:hidden;visibility:hidden;pointer-events:none}.site-header .sh-menu{position:relative}.site-header .sh-caret{transition:transform .2s}.site-header .sh-menu.open .sh-caret{transform:rotate(180deg)}.site-header .sh-menu.open:after{content:"";position:absolute;top:100%;left:0;right:0;height:.85rem}.site-header .sh-dropdown{position:absolute;top:calc(100% + .6rem);left:0;right:0;margin:0 auto;width:min(480px,calc(100vw - 2rem));background:var(--warm-white);border:1px solid var(--border-light);border-radius:30px;box-shadow:#0000001f 0 27px 104px;padding:1.4rem;display:grid;grid-template-columns:1fr 1fr;gap:1.25rem 1.5rem;opacity:0;visibility:hidden;transition:opacity .15s,visibility .15s;z-index:200}.site-header .sh-menu.open .sh-dropdown{opacity:1;visibility:visible}.site-header .sh-dropdown.sh-dropdown-app{width:320px;grid-template-columns:1fr}.site-header .sh-dropdown-group{display:flex;flex-direction:column;gap:.35rem}.site-header .sh-dropdown-label{font-size:.66rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--brown);margin-bottom:.35rem}.site-header .sh-dropdown-item{display:flex;flex-direction:column;gap:.15rem;padding:.6rem .7rem;border-radius:10px;text-decoration:none;transition:background .18s}.site-header .sh-dropdown-item:hover{background:var(--cream)}.site-header .sh-dropdown-item-title{font-family:DM Sans,sans-serif;font-size:1rem;font-weight:500;color:var(--text-primary);letter-spacing:-.01em}.site-header .sh-dropdown-item-desc{font-size:.78rem;font-weight:300;line-height:1.45;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.site-header .sh-signin{font-family:DM Sans,sans-serif;font-size:.875rem;color:var(--text-secondary);text-decoration:none;transition:color .2s}.site-header .sh-signin:hover{color:var(--text-primary)}.site-header .sh-cta{font-family:DM Sans,sans-serif;font-size:.875rem;font-weight:500;color:var(--text-primary);background:var(--warm-white);border:1px solid var(--text-primary);padding:.55rem 1.3rem;border-radius:30px;text-decoration:none;white-space:nowrap;transition:background .2s,transform .2s,box-shadow .2s}.site-header .sh-cta:hover{background:var(--cream);transform:translateY(-1px);box-shadow:#00000014 0 8px 30px}@media (min-width: 1101px){.site-header .sh-menu{position:static}.site-header .sh-dropdown.sh-dropdown-app{width:min(320px,calc(100vw - 2rem))}}.site-header .sh-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:.4rem;z-index:310}.site-header .sh-toggle span{display:block;width:22px;height:1.5px;background:var(--text-primary);transition:transform .3s,opacity .3s}.site-header .sh-toggle.open span:nth-child(1){transform:rotate(45deg) translate(4.5px,4.5px)}.site-header .sh-toggle.open span:nth-child(2){opacity:0}.site-header .sh-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(4.5px,-4.5px)}@media (max-width: 1100px){.site-header .sh-toggle{display:flex}.site-header.menu-open{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.site-header.menu-open .sh-inner{background:transparent;box-shadow:none}.site-header .sh-nav{position:fixed;top:0;right:0;bottom:0;left:0;height:100vh;height:100dvh;background:var(--warm-white);flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:1.4rem;padding:6rem 2rem 2.5rem;overflow-y:auto;transform:translate(100%);visibility:hidden;transition:transform .35s cubic-bezier(.16,1,.3,1),visibility .35s;z-index:200}.site-header .sh-nav.open{transform:translate(0);visibility:visible}.site-header .sh-link{font-size:1.15rem}.site-header .sh-menu{width:100%}.site-header .sh-menu-trigger{display:none}.site-header .sh-menu.open:after{display:none}.site-header .sh-dropdown{position:static;transform:none;opacity:1;visibility:visible;width:100%;grid-template-columns:1fr;gap:1.25rem;padding:0;border:none;box-shadow:none;background:transparent}.site-header .sh-dropdown-item{padding:0}.site-header .sh-dropdown-item:hover{background:transparent}.site-header .sh-signin{font-size:1.05rem;margin-top:.5rem}.site-header .sh-cta{width:100%;text-align:center;font-size:1rem;padding:.85rem 1.3rem;margin-top:.5rem}}@media (max-width: 480px){.site-header .sh-inner{padding:.8rem 1.25rem}.site-header .sh-nav{padding:5.5rem 1.5rem 2.5rem}}.learn{--brown: #7B5E80;--brown-light: #9B9ED2;--brown-dark: #5A3D60;--cream: #F6F4F9;--warm-white: #FDFCFF;--text-primary: #2D2843;--text-secondary: #6E6788;--text-tertiary: #A09AB2;--border: #E2DCE8;--border-light: #EEEAF2;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;color:var(--text-primary);background:var(--warm-white)}.learn .learn-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brown);margin-bottom:1rem}.learn .learn-header{background:linear-gradient(180deg,var(--cream) 0%,var(--warm-white) 100%);border-bottom:1px solid var(--border-light);padding:4.5rem 2rem 3.5rem}.learn .learn-header-inner{max-width:720px;margin:0 auto}.learn .learn-header h1{font-family:Fraunces,serif;font-size:clamp(2.2rem,5vw,3.25rem);font-weight:400;line-height:1.12;letter-spacing:-.025em;margin-bottom:1.5rem}.learn .learn-lede{font-family:Fraunces,serif;font-size:clamp(1.1rem,2vw,1.3rem);font-weight:300;font-style:italic;line-height:1.6;color:var(--text-secondary);border-left:3px solid var(--brown);padding-left:1.25rem}.learn .learn-lede-label{display:block;font-family:DM Sans,sans-serif;font-size:.7rem;font-style:normal;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brown);margin-bottom:.5rem}.learn .learn-reviewed{display:flex;align-items:center;gap:.7rem;margin-top:1.75rem;font-size:.85rem;color:var(--text-tertiary)}.learn .learn-reviewed img{width:34px;height:34px;border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 15%;object-position:center 15%;border:2px solid var(--border-light)}.learn .learn-reviewed strong{color:var(--text-primary);font-weight:500}.learn .learn-article{flex:1;max-width:720px;width:100%;margin:0 auto;padding:3.5rem 2rem 4.5rem}.learn .learn-content{font-size:1.02rem;font-weight:300;line-height:1.85;color:var(--text-secondary)}.learn .learn-content p{margin-bottom:1.4rem}.learn .learn-content strong{color:var(--text-primary);font-weight:500}.learn .learn-content em{color:var(--brown)}.learn .learn-content h2{font-family:Fraunces,serif;font-size:1.65rem;font-weight:400;letter-spacing:-.02em;line-height:1.25;color:var(--text-primary);margin:3rem 0 1rem}.learn .learn-act{display:block;font-family:DM Sans,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--brown);margin-bottom:.45rem}.learn .learn-content ul{list-style:none;margin:0 0 1.4rem;padding:0;display:flex;flex-direction:column;gap:.6rem}.learn .learn-content ul li{position:relative;padding-left:1.4rem}.learn .learn-content ul li:before{content:"";position:absolute;left:0;top:.72rem;width:6px;height:6px;border-radius:50%;background:var(--brown)}.learn .learn-bottom-line{margin:3rem 0 0;padding:1.75rem 2rem;background:var(--cream);border:1px solid var(--border-light);border-left:3px solid var(--brown);border-radius:14px}.learn .learn-bottom-line-label{display:block;font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--brown);margin-bottom:.75rem}.learn .learn-bottom-line p{margin-bottom:1rem}.learn .learn-bottom-line p:last-child{margin-bottom:0}.learn .learn-keep-reading{background:var(--cream);border-top:1px solid var(--border-light);padding:4rem 2rem}.learn .learn-keep-reading-inner{max-width:1100px;margin:0 auto}.learn .learn-keep-reading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.learn .learn-crosslink{display:flex;flex-direction:column;gap:.6rem;padding:1.75rem;background:var(--warm-white);border:1px solid var(--border-light);border-radius:14px;text-decoration:none;transition:transform .3s,box-shadow .3s}.learn .learn-crosslink:hover{transform:translateY(-3px);box-shadow:0 16px 40px #7b5e801a}.learn .learn-crosslink-title{font-family:Fraunces,serif;font-size:1.25rem;font-weight:400;letter-spacing:-.01em;color:var(--text-primary)}.learn .learn-crosslink-body{font-size:.88rem;font-weight:300;line-height:1.6;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.learn .learn-crosslink-cta{display:inline-flex;align-items:center;gap:.4rem;margin-top:auto;padding-top:.5rem;font-size:.85rem;font-weight:500;color:var(--brown)}.learn .learn-crosslink:hover .learn-crosslink-cta svg{transform:translate(3px)}.learn .learn-crosslink-cta svg{transition:transform .2s}.learn .learn-next{background:var(--warm-white);border-top:1px solid var(--border-light);padding:3.5rem 2rem}.learn .learn-next-inner{max-width:720px;margin:0 auto}.learn .learn-next-card{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.6rem 1.75rem;background:linear-gradient(150deg,#7b5e8014,#9b9ed212);border:1px solid rgba(123,94,128,.2);border-radius:16px;text-decoration:none;transition:transform .3s,box-shadow .3s,border-color .3s}.learn .learn-next-card:hover{transform:translateY(-3px);box-shadow:0 18px 44px #7b5e8029;border-color:var(--brown-light)}.learn .learn-next-card-copy{display:flex;flex-direction:column;gap:.3rem;min-width:0}.learn .learn-next-card-kicker{font-size:.66rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--brown)}.learn .learn-next-card-title{font-family:Fraunces,serif;font-size:1.5rem;font-weight:500;letter-spacing:-.01em;color:var(--text-primary)}.learn .learn-next-card-note{font-size:.92rem;font-weight:300;line-height:1.5;color:var(--text-secondary)}.learn .learn-next-card-arrow{flex-shrink:0;width:48px;height:48px;border-radius:50%;background:var(--brown);color:var(--warm-white);display:flex;align-items:center;justify-content:center;transition:transform .25s}.learn .learn-next-card:hover .learn-next-card-arrow{transform:translate(4px)}.learn .learn-next-readyline{font-family:Fraunces,serif;font-size:1.3rem;font-style:italic;font-weight:300;color:var(--text-primary);line-height:1.5;margin:0}.learn .learn-next-intake{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-light)}.learn .learn-next-intake p{font-size:.92rem;color:var(--text-secondary);line-height:1.55;font-weight:300;margin:0;max-width:420px}.learn .learn-next-intake-btn{display:inline-flex;align-items:center;gap:.5rem;flex-shrink:0;padding:.8rem 1.6rem;background:var(--brown);color:var(--warm-white);border-radius:10px;font-size:.92rem;font-weight:500;text-decoration:none;transition:background .25s,transform .25s,box-shadow .25s}.learn .learn-next-intake-btn:hover{background:var(--brown-dark);transform:translateY(-2px);box-shadow:0 8px 24px #7b5e8038}@media (max-width: 900px){.learn .learn-keep-reading-grid{grid-template-columns:1fr}}@media (max-width: 768px){.learn .learn-header{padding:3rem 1.5rem 2.5rem}.learn .learn-article{padding:2.5rem 1.5rem 3.5rem}.learn .learn-keep-reading,.learn .learn-next{padding:3rem 1.5rem}}@media (max-width: 480px){.learn .learn-header{padding:2.5rem 1.25rem 2rem}.learn .learn-article{padding:2rem 1.25rem 3rem}.learn .learn-content{font-size:.98rem}.learn .learn-bottom-line{padding:1.4rem 1.25rem}.learn .learn-next-card{flex-direction:column;align-items:flex-start;gap:1rem}.learn .learn-next-intake{flex-direction:column;align-items:flex-start}.learn .learn-next-intake-btn{width:100%;justify-content:center}}.landing{--brown: #515bd8;--brown-light: #9cabef;--brown-dark: #3d44b6;--cream: #f0f0f0;--warm-white: #ffffff;--text-primary: #000000;--text-secondary: #555555;--text-tertiary: #8f8f8f;--border: #e0e0e0;--border-light: #f0f0f0;--font-display: "DM Sans", system-ui, sans-serif;--font-body: "DM Sans", system-ui, sans-serif;--fs-display: clamp(2.6rem, 6vw, 4.25rem);--fs-h2: clamp(1.9rem, 4vw, 2.85rem);--fs-h3: 1.25rem;--fs-lead: clamp(1.08rem, 1.7vw, 1.22rem);--fs-body: 1.05rem;--fs-label: .75rem;--fw-heading: 400;--fw-body: 400;--lh-heading: 1.12;--lh-body: 1.65;--eyebrow-tracking: .14em;--space-section: clamp(4.5rem, 9vw, 7rem);color:var(--text-primary);background:var(--warm-white);line-height:var(--lh-body);overflow-x:clip}.landing:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E")}.landing html,.landing body{scroll-behavior:smooth}.landing .reveal{opacity:0;transform:translate3d(0,22px,0);filter:blur(6px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1),filter .7s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}.landing .reveal.visible{opacity:1;transform:translateZ(0);filter:blur(0)}.landing .reveal-delay-1{transition-delay:.08s}.landing .reveal-delay-2{transition-delay:.16s}.landing .reveal-delay-3{transition-delay:.24s}.landing .reveal-delay-4{transition-delay:.32s}.landing .reveal-delay-5{transition-delay:.4s}@media (prefers-reduced-motion: reduce){.landing .reveal{opacity:1;transform:none;filter:none;transition:none}}.landing nav.site-nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.25rem 2rem;transition:background .4s,backdrop-filter .4s,box-shadow .4s}.landing nav.site-nav.scrolled{background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 1px 0 var(--border-light)}.landing .nav-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.landing .nav-brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--text-primary)}.landing .nav-logo{width:64px;height:64px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .3s}.landing .nav-brand:hover .nav-logo{opacity:.8}.landing .nav-logo img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.landing .nav-wordmark{font-family:var(--font-display);font-size:1.25rem;font-weight:400;letter-spacing:-.01em}.landing .nav-links{display:flex;align-items:center;gap:2.5rem}.landing .nav-links a{font-size:.9rem;color:var(--text-secondary);text-decoration:none;font-weight:400;transition:color .2s;letter-spacing:.01em}.landing .nav-links a:hover{color:var(--text-primary)}.landing .nav-cta{font-size:.875rem!important;color:var(--warm-white)!important;background:var(--brown);padding:.6rem 1.4rem;border-radius:30px;transition:background .2s,transform .2s!important}.landing .nav-cta:hover{background:var(--brown-dark)!important;transform:translateY(-1px)}.landing .nav-mobile-toggle{display:none;background:none;border:none;cursor:pointer;padding:.5rem}.landing .nav-mobile-toggle span{display:block;width:20px;height:1.5px;background:var(--text-primary);margin:5px 0;transition:transform .3s,opacity .3s}.landing .hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:7.5rem 2rem 3rem;overflow:hidden}.landing .hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.landing .hero-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.4;animation:orbFloat 20s ease-in-out infinite}.landing .hero-orb-1{width:600px;height:600px;background:radial-gradient(circle,#eeb5eb 0%,transparent 70%);top:-10%;right:-5%;animation-delay:0s}.landing .hero-orb-2{width:500px;height:500px;background:radial-gradient(circle,#9cabef 0%,transparent 70%);bottom:-15%;left:-10%;animation-delay:-7s}.landing .hero-orb-3{width:300px;height:300px;background:radial-gradient(circle,#e0e0e0 0%,transparent 70%);top:30%;left:40%;animation-delay:-14s}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-20px) scale(1.05)}66%{transform:translate(-20px,15px) scale(.95)}}.landing .hero-content{position:relative;z-index:1;text-align:center;max-width:800px}.landing .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.landing .hero-logomark{display:flex;justify-content:center;align-items:center;margin:0 auto .75rem;width:100%;max-width:540px;transform-origin:center;will-change:transform,opacity,filter;filter:drop-shadow(0 22px 40px rgba(81,91,216,.18))}.landing .hero-logomark img{width:100%;height:auto;max-height:min(420px,42vh);-o-object-fit:contain;object-fit:contain;display:block;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.landing .hero-logomark-sm{max-width:300px;margin-bottom:1.75rem}.landing .hero-logomark-sm img{max-height:min(180px,24vh)}.landing .hero-headline{font-family:var(--font-display);font-size:var(--fs-display);font-weight:var(--fw-heading);line-height:var(--lh-heading);letter-spacing:-.03em;color:var(--text-primary);margin:0 0 1.25rem;text-wrap:balance}.landing .hero-headline em{font-weight:500;color:var(--brown)}.landing .hero-kicker{font-family:var(--font-body);font-size:clamp(.72rem,1.2vw,.82rem);font-weight:600;letter-spacing:var(--eyebrow-tracking);text-transform:uppercase;color:var(--brown);margin:0 0 1.1rem}.landing .hero-kicker span{color:var(--brown-light);margin:0 .35rem}.landing .hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem 1rem;background:#515bd814;border:1px solid rgba(81,91,216,.15);border-radius:100px;font-size:.8rem;color:var(--brown);font-weight:500;letter-spacing:.03em;margin-bottom:2rem}.landing .hero-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--brown);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.landing .hero h1{font-family:var(--font-display);font-size:clamp(2.75rem,6vw,4.5rem);font-weight:400;line-height:1.1;letter-spacing:-.03em;color:var(--text-primary);margin-bottom:1.5rem}.landing .hero h1 em{font-weight:500;color:var(--brown)}.landing .hero-sub{font-family:var(--font-body);font-size:var(--fs-lead);color:var(--text-secondary);max-width:560px;margin:0 auto 2rem;line-height:var(--lh-body);font-weight:var(--fw-body);text-wrap:pretty}.landing .hero-sub strong{font-weight:600;color:var(--text-primary)}.landing .hero-actions{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.landing .btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 2rem;background:var(--brown);color:var(--warm-white);border:none;border-radius:30px;font-family:DM Sans,sans-serif;font-size:.95rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background .25s,transform .25s,box-shadow .25s}.landing .btn-primary:hover{background:var(--brown-dark);transform:translateY(-2px);box-shadow:0 8px 30px #515bd833}.landing .btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 2rem;background:transparent;color:var(--text-primary);border:1.5px solid var(--border);border-radius:30px;font-family:DM Sans,sans-serif;font-size:.95rem;font-weight:500;cursor:pointer;text-decoration:none;transition:border-color .25s,transform .25s,background .25s}.landing .btn-secondary:hover{border-color:var(--brown-light);background:#515bd80a;transform:translateY(-2px)}.landing .btn-arrow{transition:transform .2s}.landing .btn-primary:hover .btn-arrow,.landing .btn-secondary:hover .btn-arrow{transform:translate(3px)}.landing .hero-login-link{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;margin-top:1.5rem;padding:.65rem 1.5rem;font-size:.9rem;color:var(--text-secondary);background:var(--cream);border:1px solid var(--border);text-decoration:none;font-weight:400;border-radius:999px;transition:color .25s,background .25s,border-color .25s,transform .25s,box-shadow .25s}.landing .hero-login-link span{color:var(--brown);font-weight:600}.landing .hero-login-link:hover{color:var(--text-primary);background:var(--warm-white);border-color:var(--brown-light);transform:translateY(-1px);box-shadow:0 6px 18px #515bd81a}.landing .hero-trust{display:flex;align-items:center;justify-content:center;gap:1.25rem;margin-top:1.5rem;flex-wrap:wrap}.landing .hero-trust-item{font-size:.8rem;color:var(--text-tertiary);font-weight:400;letter-spacing:.02em}.landing .hero-trust-divider{color:var(--text-tertiary);font-size:.8rem;line-height:1;opacity:.7}.landing section{padding:var(--space-section) 2rem}.landing .section-container{max-width:1100px;margin:0 auto}.landing .section-label{font-family:var(--font-body);font-size:var(--fs-label);font-weight:600;letter-spacing:var(--eyebrow-tracking);text-transform:uppercase;color:var(--brown);margin-bottom:1rem}.landing .backed-by{display:flex;justify-content:center;padding:1.25rem 1.5rem 0}.landing .backed-by-inner{display:inline-flex;align-items:center;gap:.9rem;padding:.7rem 1.5rem;border:1px solid rgba(81,91,216,.18);border-radius:999px;background:#ffffff8c;box-shadow:0 1px 2px #0000000a}.landing .backed-by-label{margin-bottom:0}.landing .backed-by-logo{height:28px;width:auto;display:block}@media (max-width: 640px){.landing .backed-by-inner{gap:.6rem;padding:.55rem 1.1rem;flex-wrap:wrap;justify-content:center}.landing .backed-by-logo{height:24px}}.landing .section-title{font-family:var(--font-display);font-size:var(--fs-h2);font-weight:var(--fw-heading);line-height:var(--lh-heading);letter-spacing:-.022em;color:var(--text-primary);margin-bottom:1rem}.landing .section-title em{font-weight:500;color:var(--brown)}.landing .section-desc{font-family:var(--font-body);font-size:var(--fs-body);color:var(--text-secondary);max-width:540px;line-height:var(--lh-body);font-weight:var(--fw-body)}.landing .phone-preview{padding:6rem 2rem;background:linear-gradient(180deg,var(--warm-white) 0%,#f0f0f0 60%,var(--warm-white) 100%);position:relative;overflow:hidden}.landing .phone-preview:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(81,91,216,.1) 0%,transparent 65%);top:10%;right:-120px;pointer-events:none;filter:blur(2px)}.landing .phone-preview:after{content:"";position:absolute;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(156,171,239,.1) 0%,transparent 65%);bottom:5%;left:-100px;pointer-events:none;filter:blur(2px)}.landing .phone-preview-inner{position:relative;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr auto;align-items:center;gap:5rem}.landing .phone-preview-copy{max-width:460px}.landing .phone-preview-title{font-family:var(--font-display);font-size:clamp(1.9rem,3.4vw,2.6rem);font-weight:400;line-height:1.15;letter-spacing:-.02em;color:var(--text-primary);margin:0 0 1rem}.landing .phone-preview-title em{font-weight:500;color:var(--brown)}.landing .phone-preview-desc{font-size:1.05rem;color:var(--text-secondary);line-height:1.65;font-weight:400;margin:0 0 1.5rem}.landing .phone-preview-bullets{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.7rem}.landing .phone-preview-bullets li{position:relative;padding-left:1.4rem;font-size:.95rem;color:var(--text-secondary);line-height:1.55}.landing .phone-preview-bullets li:before{content:"";position:absolute;left:0;top:.55rem;width:6px;height:6px;border-radius:50%;background:var(--brown)}.landing .phone-preview-partners{display:flex;align-items:center;gap:1rem;margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid var(--border-light)}.landing .phone-preview-partners-label{font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-tertiary);flex-shrink:0}.landing .phone-preview-partners-logos{display:inline-flex;align-items:center;gap:1.1rem;color:var(--text-secondary)}.landing .phone-preview-partners-logos .wearable-logo{display:inline-flex;align-items:center;opacity:.85;transition:opacity .25s,color .25s}.landing .phone-preview-partners-logos .wearable-logo:hover{opacity:1;color:var(--text-primary)}.landing .phone-preview-partners-divider{width:1px;height:20px;background:var(--border)}.landing .phone-preview-frame-wrap{display:flex;justify-content:center;align-items:center;perspective:1400px;transform:translateZ(0);will-change:transform}.landing .phone-frame{--phone-w: 304px;--phone-h: 624px;--bezel: 11px;--inner-radius: 44px;--outer-radius: 52px;position:relative;width:var(--phone-w);height:var(--phone-h);padding:var(--bezel);border-radius:var(--outer-radius);background:linear-gradient(150deg,#262626,#161616,#202020);box-shadow:0 50px 90px -28px #00000052,0 18px 36px -12px #0000002e,inset 0 1.5px #ffffff2e,inset 1px 0 #ffffff0f,inset -1px 0 #ffffff0f,inset 0 -1px #00000080}.landing .phone-frame:before{content:"";position:absolute;inset:calc(var(--bezel) - 2px);border-radius:calc(var(--inner-radius) + 2px);background:linear-gradient(140deg,rgba(255,255,255,.06) 0%,transparent 30%,transparent 70%,rgba(255,255,255,.04) 100%);pointer-events:none;z-index:1}.landing .phone-side-button{position:absolute;background:linear-gradient(90deg,#111,#262626,#111);z-index:2}.landing .phone-side-button-volume-up{left:-2px;top:110px;width:3px;height:36px;border-radius:1px 0 0 1px}.landing .phone-side-button-volume-down{left:-2px;top:158px;width:3px;height:60px;border-radius:1px 0 0 1px}.landing .phone-side-button-power{right:-2px;top:134px;width:3px;height:70px;border-radius:0 1px 1px 0}.landing .phone-screen{position:relative;width:100%;height:100%;border-radius:var(--inner-radius);background:var(--warm-white);overflow:hidden;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;font-family:DM Sans,system-ui,sans-serif;color:var(--text-primary);z-index:2}.landing .phone-status-bar{display:flex;justify-content:space-between;align-items:center;height:50px;padding:0 22px 0 26px;font-size:14px;font-weight:600;letter-spacing:-.01em;flex-shrink:0}.landing .phone-status-time{font-variant-numeric:tabular-nums;z-index:2}.landing .phone-status-icons{display:flex;align-items:center;gap:5px;color:var(--text-primary);z-index:2}.landing .phone-status-battery{position:relative;display:inline-block;width:24px;height:11px;border:1px solid currentColor;border-radius:3px;margin-left:1px}.landing .phone-status-battery:after{content:"";position:absolute;right:-3px;top:3px;width:1.5px;height:4px;background:currentColor;border-radius:0 1px 1px 0}.landing .phone-status-battery-level{position:absolute;top:1.5px;right:1.5px;bottom:1.5px;left:1.5px;background:currentColor;border-radius:1px;width:calc(100% - 7px)}.landing .phone-notch{position:absolute;top:11px;left:50%;transform:translate(-50%);width:100px;height:28px;background:#080808;border-radius:999px;z-index:5}.landing .phone-content{flex:1;padding:8px 18px 12px;overflow:hidden;display:flex;flex-direction:column;gap:14px}.landing .phone-greeting h3{font-family:var(--font-display);font-size:22px;font-weight:400;line-height:1.1;color:var(--text-primary);margin:0 0 3px;letter-spacing:-.01em}.landing .phone-greeting p{font-size:12px;color:var(--text-tertiary);margin:0;letter-spacing:.01em}.landing .phone-card{background:var(--warm-white);border:1px solid var(--border-light);border-radius:18px;padding:14px 16px;box-shadow:0 1px #00000005}.landing .phone-card-row{display:flex;justify-content:space-between;align-items:center}.landing .phone-card-eyebrow{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--brown);white-space:nowrap}.landing .phone-card-forecast{display:flex;flex-direction:column;gap:10px;background:linear-gradient(165deg,var(--warm-white) 0%,#f7f7f7 100%);padding:12px 14px 10px}.landing .phone-forecast-pill{font-size:9px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--brown);padding:2px 7px;border:1px solid rgba(81,91,216,.25);border-radius:999px;background:#515bd80f;white-space:nowrap;flex-shrink:0;line-height:1.4}.landing .phone-forecast-summary{display:flex;gap:18px;padding:2px 0 4px}.landing .phone-forecast-stat{display:flex;flex-direction:column;gap:1px}.landing .phone-forecast-label{font-size:10px;color:var(--text-tertiary);font-weight:500;letter-spacing:.02em;text-transform:uppercase}.landing .phone-forecast-value{font-family:var(--font-display);font-size:17px;font-weight:500;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.landing .phone-forecast-chart{width:100%;height:78px;display:block}.landing .phone-forecast-days{display:flex;justify-content:space-between;padding:0 4px;font-size:9.5px;color:var(--text-tertiary);letter-spacing:.04em;text-transform:uppercase;font-weight:500}.landing .phone-card-noticed{background:linear-gradient(150deg,#515bd814,#9cabef0f);border:1px solid rgba(81,91,216,.18);padding:12px 14px;display:flex;flex-direction:column;gap:8px}.landing .phone-noticed-head{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--brown)}.landing .phone-noticed-pattern{background:var(--warm-white);border:1px solid rgba(81,91,216,.14);border-radius:13px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}.landing .phone-noticed-title{font-family:var(--font-display);font-size:13.5px;font-weight:500;line-height:1.25;color:var(--text-primary);letter-spacing:-.005em}.landing .phone-noticed-body{font-size:11px;line-height:1.45;color:var(--text-secondary)}.landing .phone-noticed-cta{display:inline-flex;align-items:center;gap:4px;margin-top:2px;font-size:10.5px;font-weight:600;color:var(--brown);letter-spacing:.005em}.landing .phone-nav{display:grid;grid-template-columns:repeat(4,1fr);padding:8px 12px 6px;border-top:1px solid var(--border-light);background:#fffffff2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);flex-shrink:0}.landing .phone-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:9.5px;font-weight:500;color:var(--text-tertiary);letter-spacing:.01em}.landing .phone-nav-item svg{opacity:.7}.landing .phone-nav-active{color:var(--brown)}.landing .phone-nav-active svg{opacity:1}.landing .phone-home-bar{margin:0 auto 6px;width:110px;height:4px;border-radius:2px;background:#00000073;flex-shrink:0}@media (max-width: 900px){.landing .phone-preview{padding:4.5rem 1.5rem}.landing .phone-preview-inner{grid-template-columns:1fr;gap:3rem;justify-items:center;text-align:center}.landing .phone-preview-copy{max-width:540px}.landing .phone-preview-bullets li{text-align:left}.landing .phone-preview-partners{justify-content:center;flex-wrap:wrap}}@media (max-width: 480px){.landing .phone-frame{--phone-w: 272px;--phone-h: 558px}}.landing .privacy-strip{background:var(--cream);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);padding:2.5rem 2rem}.landing .privacy-strip-inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:2rem 3rem}.landing .privacy-strip-item{display:flex;align-items:flex-start;gap:.85rem;flex:0 1 auto;max-width:280px}.landing .privacy-strip-item svg{flex-shrink:0;color:var(--brown);margin-top:3px}.landing .privacy-strip-item strong{display:block;font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:.35rem;line-height:1.3}.landing .privacy-strip-item span{display:block;font-size:.82rem;color:var(--text-secondary);line-height:1.6}.landing .privacy-strip-solo{display:flex;flex-direction:column;align-items:center;gap:1.25rem}.landing .privacy-strip-item-feature{max-width:520px;align-items:center;text-align:left}.landing .privacy-strip-item-feature svg{margin-top:0}.landing .privacy-strip-item-feature strong{font-size:1.15rem}.landing .privacy-strip-item-feature span{font-size:.92rem}.landing .privacy-strip-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;color:var(--brown);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .18s ease}.landing .privacy-strip-link:hover{border-bottom-color:var(--brown)}.landing .privacy-strip-link .btn-arrow{width:14px;height:14px}.landing .team-teaser-card{max-width:720px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.85rem}.landing .team-teaser-title{font-family:var(--font-display);font-size:clamp(1.9rem,4vw,2.75rem);font-weight:500;line-height:1.12;letter-spacing:-.02em;color:var(--text-primary);margin:0}.landing .team-teaser-title em{font-weight:500;color:var(--brown)}.landing .team-teaser-desc{max-width:540px;font-size:1.05rem;line-height:1.6;color:var(--text-secondary);margin:0}.landing .team-teaser-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:.5rem;font-size:.95rem;font-weight:600;color:var(--brown);text-decoration:none;border-bottom:1px solid transparent;transition:gap .2s ease,border-color .2s ease}.landing .team-teaser-link:hover{gap:.75rem;border-bottom-color:var(--brown)}.landing.team-page .founder{padding-top:9rem}.landing .testimonial-app-link{display:inline-flex;align-items:center;gap:.45rem;margin:2.25rem auto 0;font-size:.95rem;font-weight:600;color:var(--brown);text-decoration:none;border-bottom:1px solid transparent;transition:gap .2s ease,border-color .2s ease}.landing .testimonial-app-link:hover{gap:.7rem;border-bottom-color:var(--brown)}.landing .features{background:var(--warm-white);border-top:1px solid var(--border-light)}.landing .features-header{text-align:center;margin-bottom:4rem}.landing .features-header .section-desc{margin:0 auto;max-width:600px}.landing .features-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.landing .feature-column{background:var(--cream);border:1px solid var(--border-light);border-radius:20px;padding:2.5rem;transition:transform .3s,box-shadow .3s}.landing .feature-column:hover{transform:translateY(-4px);box-shadow:0 20px 60px #0000000f}.landing .feature-column-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--brown);padding:.35rem .85rem;background:#515bd814;border-radius:100px;margin-bottom:1.5rem}.landing .feature-column h3{font-family:var(--font-display);font-size:1.6rem;font-weight:400;letter-spacing:-.02em;margin-bottom:.6rem}.landing .feature-column>p{color:var(--text-secondary);font-size:.95rem;margin-bottom:2rem;line-height:1.6;font-weight:400}.landing .feature-list{list-style:none;display:flex;flex-direction:column;gap:1rem}.landing .feature-list li{display:flex;align-items:flex-start;gap:.75rem;font-size:.92rem;color:var(--text-primary);line-height:1.5}.landing .feature-check{flex-shrink:0;width:20px;height:20px;border-radius:50%;background:#515bd81a;display:flex;align-items:center;justify-content:center;margin-top:1px}.landing .feature-check svg{width:11px;height:11px}.landing .how-it-works{background:var(--cream);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.landing .how-header{text-align:center;margin-bottom:4rem}.landing .how-header .section-desc{margin:0 auto}.landing .steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;position:relative}.landing .steps-grid:before{content:"";position:absolute;top:28px;left:calc(16.66% + 1rem);right:calc(16.66% + 1rem);height:1px;background:var(--border)}.landing .step{text-align:center}.landing .step-number{width:56px;height:56px;border-radius:50%;background:var(--warm-white);border:1.5px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.1rem;font-weight:500;color:var(--brown);margin-bottom:1.5rem;position:relative;z-index:1;transition:border-color .3s,background .3s}.landing .step:hover .step-number{border-color:var(--brown);background:#515bd80d}.landing .step h4{font-family:var(--font-display);font-size:1.2rem;font-weight:500;margin-bottom:.6rem;letter-spacing:-.01em}.landing .step p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;max-width:300px;margin:0 auto;font-weight:400}.landing .evidence{background:var(--warm-white)}.landing .evidence .section-container{max-width:960px}.landing .evidence .section-label,.landing .evidence .section-title{margin-bottom:1rem}.landing .evidence-subhead{font-size:clamp(.95rem,1.6vw,1.1rem);color:var(--text-secondary);line-height:1.7;max-width:640px;margin-bottom:3rem}.landing .evidence-subhead u{text-decoration:none;border-bottom:1px solid var(--brown);padding-bottom:1px;color:var(--text-primary)}.landing .evidence-stat-blocks{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:2.5rem}.landing .evidence-stat-block{padding:2rem 1.75rem;background:var(--cream);border:1px solid var(--border-light);border-radius:14px;transition:transform .3s}.landing .evidence-stat-block:hover{transform:translateY(-2px)}.landing .evidence-stat-number{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.75rem);font-weight:400;color:var(--brown);line-height:1;margin-bottom:.75rem;display:block;letter-spacing:-.02em}.landing .evidence-stat-body{font-size:.88rem;color:var(--text-secondary);line-height:1.7}.landing .evidence-stat-body strong{color:var(--text-primary);font-weight:500}.landing .evidence-stat-note{display:block;margin-top:.6rem;font-size:.75rem;color:var(--brown);opacity:.7;font-style:italic}.landing .evidence-stat-source{display:block;margin-top:.75rem;font-size:.68rem;font-weight:500;letter-spacing:1.2px;text-transform:uppercase;color:var(--brown);opacity:.7}.landing .evidence-stat-source a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s,opacity .2s}.landing .evidence-stat-source a:hover{border-color:var(--brown);opacity:1}.landing .evidence-transition{font-family:var(--font-display);font-size:clamp(1.1rem,2vw,1.35rem);font-weight:400;color:var(--text-primary);line-height:1.5;text-align:center;max-width:560px;margin:0 auto;padding-top:1rem}.landing .evidence-transition em{color:var(--brown)}.landing .narrative-interlude{background:var(--cream);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.landing .narrative-interlude .section-container{max-width:720px;text-align:center}.landing .narrative-interlude p{font-size:clamp(1rem,1.6vw,1.1rem);color:var(--text-secondary);line-height:1.85;font-weight:400}.landing .narrative-interlude p+p{margin-top:1.25rem}.landing .narrative-interlude .narrative-highlight{margin-top:2.5rem;padding:2rem;background:var(--warm-white);border:1px solid var(--border-light);border-radius:14px;font-family:var(--font-display);font-size:clamp(1.1rem,2vw,1.3rem);font-style:italic;font-weight:400;color:var(--text-primary);line-height:1.55;text-align:center}.landing .narrative-highlight em{color:var(--brown);font-weight:500}.landing .narrative-highlight-label{display:block;font-family:DM Sans,sans-serif;font-size:.7rem;font-style:normal;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--brown);opacity:.75;margin-bottom:.75rem}.landing .testimonial{background:var(--cream);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.landing .testimonial .section-container{max-width:760px;display:flex;flex-direction:column;align-items:center}.landing .testimonial-card{position:relative;background:var(--warm-white);border:1px solid var(--border-light);border-radius:18px;padding:clamp(1.75rem,3.5vw,2.75rem);box-shadow:0 12px 40px #515bd814;text-align:left}.landing .testimonial-label{margin-bottom:.5rem}.landing .testimonial-quote-mark{display:block;color:var(--brown);margin-bottom:.5rem}.landing .testimonial-quote{margin:0;font-family:var(--font-display);font-weight:400;font-style:italic;font-size:clamp(1.05rem,1.8vw,1.25rem);line-height:1.65;color:var(--text-primary)}.landing .testimonial-quote em{color:var(--brown);font-style:italic;font-weight:400}.landing .testimonial-attribution{display:flex;align-items:center;gap:.85rem;margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--border-light);text-decoration:none;color:inherit;transition:opacity .18s ease}.landing .testimonial-attribution:hover{opacity:.78}.landing .testimonial-avatar{width:56px;height:56px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid var(--border-light);box-shadow:0 4px 14px #515bd81f;flex-shrink:0;display:block}.landing .testimonial-attribution-meta{display:flex;flex-direction:column;gap:.15rem;min-width:0}.landing .testimonial-handle{font-family:DM Sans,sans-serif;font-weight:600;font-size:.95rem;color:var(--text-primary);letter-spacing:-.01em}.landing .testimonial-verify{display:inline-flex;align-items:center;gap:.4rem;font-family:DM Sans,sans-serif;font-size:.78rem;font-weight:500;color:var(--brown);letter-spacing:.01em}.landing .testimonial-verify svg{flex-shrink:0}.landing .founder{background:var(--warm-white);position:relative}.landing .founder-inner{max-width:720px;margin:0 auto}.landing .founder-header{text-align:center;margin-bottom:3rem}.landing .founder-header .section-title{margin-bottom:0}.landing .founder-photo{display:block;width:120px;height:120px;border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 15%;object-position:center 15%;border:3px solid var(--border-light);box-shadow:0 8px 32px #515bd81f;margin:0 auto 1.5rem}.landing .founder-letter{font-size:clamp(.95rem,1.4vw,1.05rem);color:var(--text-secondary);line-height:1.85;font-weight:400}.landing .founder-letter p{margin-bottom:1.25rem}.landing .founder-letter p:last-child{margin-bottom:0}.landing .founder-letter strong{color:var(--text-primary);font-weight:500}.landing .founder-letter-expanded{display:none}.landing .founder-letter-expanded.open{display:block}.landing .founder-read-more{display:inline-block;background:none;border:none;font-family:DM Sans,sans-serif;font-size:.9rem;font-weight:500;color:var(--brown);cursor:pointer;padding:.5rem 0;margin-top:.5rem;transition:opacity .2s}.landing .founder-read-more:hover{opacity:.7}.landing .founder-signoff{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--border-light)}.landing .founder-signoff-promise{font-family:var(--font-display);font-size:clamp(1.3rem,2.5vw,1.6rem);font-weight:400;color:var(--brown);margin-bottom:1.5rem;letter-spacing:-.01em}.landing .founder-signoff-name{font-family:var(--font-display);font-size:1.1rem;font-weight:500;color:var(--text-primary);margin-bottom:.15rem}.landing .founder-signoff-title{font-size:.85rem;color:var(--text-tertiary);font-weight:400}.landing .founder-signoff-role{font-size:.8rem;color:var(--brown);font-weight:500;letter-spacing:.02em;margin-top:.5rem}.landing .app-waitlist{background:var(--cream);position:relative;overflow:hidden}.landing .app-waitlist:before{content:"";position:absolute;top:-30%;left:-15%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(156,171,239,.12) 0%,transparent 70%);pointer-events:none}.landing .app-waitlist:after{content:"";position:absolute;bottom:-20%;right:-10%;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(238,181,235,.1) 0%,transparent 70%);pointer-events:none}.landing .app-waitlist-inner{max-width:680px;margin:0 auto;text-align:center;position:relative;z-index:1}.landing .app-waitlist-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem 1rem;background:#515bd814;border:1px solid rgba(81,91,216,.15);border-radius:100px;font-size:.78rem;color:var(--brown);font-weight:500;letter-spacing:.03em;margin-bottom:1.5rem}.landing .app-waitlist-badge-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;animation:pulse 2s ease-in-out infinite}.landing .app-waitlist-desc{font-size:1.05rem;color:var(--text-secondary);max-width:520px;margin:0 auto 2rem;line-height:1.7;font-weight:400}.landing .app-waitlist-form{max-width:480px;margin:0 auto}.landing .app-waitlist-input-group{display:flex;gap:.5rem;align-items:stretch}.landing .app-waitlist-form input[name=email]{flex:1;padding:.85rem 1.2rem;border:1.5px solid var(--border);border-radius:30px;font-family:DM Sans,sans-serif;font-size:.95rem;color:var(--text-primary);background:var(--warm-white);outline:none;transition:border-color .25s,box-shadow .25s}.landing .app-waitlist-form input[name=email]:focus{border-color:var(--brown);box-shadow:0 0 0 3px #515bd81a}.landing .app-waitlist-form input[name=email]::-moz-placeholder{color:var(--text-tertiary)}.landing .app-waitlist-form input[name=email]::placeholder{color:var(--text-tertiary)}.landing .app-waitlist-form button[type=submit]{padding:.85rem 1.8rem;background:var(--brown);color:var(--warm-white);border:none;border-radius:30px;font-family:DM Sans,sans-serif;font-size:.95rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .25s,transform .25s,box-shadow .25s}.landing .app-waitlist-form button[type=submit]:hover{background:var(--brown-dark);transform:translateY(-2px);box-shadow:0 8px 30px #515bd833}.landing .app-waitlist-note{font-size:.8rem;color:var(--text-tertiary);margin-top:.75rem;font-weight:400}.landing .app-waitlist-features{display:flex;justify-content:center;gap:2rem;margin-top:2.5rem;flex-wrap:wrap}.landing .app-waitlist-feature{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.landing .app-waitlist-feature svg{color:var(--brown);flex-shrink:0}.landing .final-cta{background:var(--text-primary);position:relative;overflow:hidden}.landing .final-cta:before{content:"";position:absolute;top:-50%;right:-20%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(81,91,216,.15) 0%,transparent 70%);pointer-events:none}.landing .final-cta-inner{max-width:700px;margin:0 auto;text-align:center;position:relative;z-index:1}.landing .final-cta .section-label{color:var(--brown-light);margin-bottom:1.25rem}.landing .final-cta h2{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:400;color:var(--warm-white);line-height:1.15;letter-spacing:-.02em;margin-bottom:1rem}.landing .final-cta h2 em{font-weight:500;color:var(--brown-light)}.landing .final-cta p{color:#ffffff8c;font-size:1.05rem;max-width:480px;margin:0 auto 2.5rem;line-height:1.7;font-weight:400}.landing .final-cta .btn-primary{background:var(--warm-white);color:var(--text-primary)}.landing .final-cta .btn-primary:hover{background:var(--cream);box-shadow:0 8px 30px #0000004d}.landing .final-cta-privacy{font-size:.8rem!important;color:#fff6!important;margin-top:1.25rem!important;letter-spacing:.01em}.landing footer.landing-footer{background:var(--text-primary);border-top:1px solid rgba(255,255,255,.06);padding:2.5rem 2rem}.landing .footer-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.landing .footer-left{display:flex;align-items:center;gap:.5rem}.landing .footer-logo{width:28px;height:28px;border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center}.landing .footer-logo img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;opacity:.5}.landing .footer-text{font-size:.82rem;color:#ffffff59}.landing .footer-link-groups{display:flex;gap:3.5rem}.landing .footer-link-group{display:flex;flex-direction:column;gap:.6rem}.landing .footer-link-group-label{font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#ffffff73;margin-bottom:.15rem}.landing .footer-link-group a{font-size:.82rem;color:#ffffff59;text-decoration:none;transition:color .2s}.landing .footer-link-group a:hover{color:#ffffffb3}.landing .care-model{background:var(--warm-white);border-bottom:1px solid var(--border-light)}.landing .care-model-header{text-align:center;max-width:760px;margin:0 auto 3.5rem}.landing .care-model-narrative{max-width:640px;margin:0 auto 4rem}.landing .care-model-narrative p{font-size:clamp(1rem,1.6vw,1.12rem);color:var(--text-secondary);line-height:1.85;font-weight:400}.landing .care-model-narrative p+p{margin-top:1.25rem}.landing .care-model-narrative strong{color:var(--brown);font-weight:600}.landing .care-model-lede-big{font-family:var(--font-display);font-weight:400;font-size:1.4em;color:var(--text-primary);margin-right:.35rem}.landing .care-diagram{max-width:760px;margin:0 auto}.landing .care-diagram-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:2rem;padding-left:4px}.landing .care-diagram-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem 1rem;background:var(--brown);color:var(--warm-white);border-radius:999px;font-size:.78rem;font-weight:600;letter-spacing:.04em}.landing .care-diagram-badge-pulse{width:7px;height:7px;border-radius:50%;background:var(--warm-white);animation:pulse 2s ease-in-out infinite}.landing .care-companion-tag{font-size:.78rem;color:var(--text-tertiary);font-style:italic}.landing .care-stages{list-style:none;margin:0;padding:0;position:relative}.landing .care-stages:before{content:"";position:absolute;left:23px;top:12px;bottom:60px;width:2px;background:linear-gradient(180deg,var(--brown) 0%,var(--brown-light) 100%);border-radius:2px}.landing .care-stage{position:relative;display:grid;grid-template-columns:48px 1fr;gap:1.25rem;padding-bottom:1.5rem}.landing .care-stage:last-child{padding-bottom:0}.landing .care-stage-spine{display:flex;justify-content:center}.landing .care-node{position:relative;width:48px;height:48px;border-radius:50%;background:var(--warm-white);border:2px solid var(--brown);display:flex;align-items:center;justify-content:center;color:var(--brown);flex-shrink:0;z-index:1;box-shadow:0 2px 10px #515bd81f;transition:transform .3s,box-shadow .3s}.landing .care-stage:hover .care-node{transform:scale(1.06);box-shadow:0 6px 18px #515bd838}.landing .care-node-icon svg{width:22px;height:22px;display:block}.landing .care-node-num{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:var(--brown);color:var(--warm-white);font-family:var(--font-display);font-size:.72rem;font-weight:600;display:flex;align-items:center;justify-content:center;border:2px solid var(--warm-white)}.landing .care-stage-body{min-width:0;padding-top:2px}.landing .care-stage-card{background:var(--warm-white);border:1px solid var(--border-light);border-radius:14px;padding:1.25rem 1.4rem;box-shadow:0 1px #00000005;transition:transform .3s,box-shadow .3s,border-color .3s}.landing .care-stage:hover .care-stage-card{transform:translateY(-2px);border-color:var(--border);box-shadow:0 14px 36px #515bd81a}.landing .care-stage-card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.landing .care-stage-step{font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brown)}.landing .care-stage-badge{font-size:.66rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--brown);padding:.2rem .6rem;border:1px solid rgba(81,91,216,.25);border-radius:999px;background:#515bd80f;white-space:nowrap}.landing .care-stage-title{font-family:var(--font-display);font-size:1.2rem;font-weight:500;letter-spacing:-.01em;color:var(--text-primary);margin:0 0 .4rem}.landing .care-stage-text{font-size:.92rem;color:var(--text-secondary);line-height:1.6;font-weight:400;margin:0}.landing .care-fork{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:.85rem}.landing .care-fork-path{border-radius:14px;padding:1.1rem 1.25rem;position:relative}.landing .care-fork-path p{font-size:.85rem;line-height:1.55;font-weight:400;margin:0}.landing .care-fork-label{display:block;font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem}.landing .care-fork-surgical{background:#515bd80f;border:1px solid rgba(81,91,216,.2)}.landing .care-fork-surgical .care-fork-label{color:var(--brown-dark)}.landing .care-fork-surgical p{color:var(--text-secondary)}.landing .care-fork-continues{display:inline-block;margin-top:.6rem;font-size:.72rem;font-weight:600;color:var(--brown);letter-spacing:.02em}.landing .care-fork-nonsurgical{background:var(--cream);border:1px dashed var(--border)}.landing .care-fork-nonsurgical .care-fork-label{color:var(--text-tertiary)}.landing .care-fork-nonsurgical p{color:var(--text-secondary)}.landing .care-fork-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.7rem}.landing .care-fork-chip{font-size:.72rem;font-weight:500;color:var(--brown-dark);background:var(--warm-white);border:1px solid var(--border);border-radius:999px;padding:.28rem .7rem}.landing .care-companion{display:flex;align-items:flex-start;gap:1.1rem;margin:1.75rem 0 0 64px;padding:1.4rem 1.5rem;background:linear-gradient(150deg,#515bd812,#9cabef0f);border:1px solid rgba(81,91,216,.16);border-radius:16px}.landing .care-companion-icon{flex-shrink:0;width:42px;height:42px;border-radius:12px;background:var(--warm-white);border:1px solid var(--border-light);display:flex;align-items:center;justify-content:center;color:var(--brown)}.landing .care-companion-icon svg{width:22px;height:22px}.landing .care-companion-copy{min-width:0}.landing .care-companion-label{display:block;font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brown);margin-bottom:.25rem}.landing .care-companion-copy strong{display:block;font-family:var(--font-display);font-size:1.05rem;font-weight:500;color:var(--text-primary);margin-bottom:.35rem}.landing .care-companion-copy p{font-size:.86rem;color:var(--text-secondary);line-height:1.55;font-weight:400;margin:0 0 .6rem}.landing .care-companion-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem;font-weight:600;color:var(--brown);text-decoration:none}.landing .care-companion-link:hover svg{transform:translate(3px)}.landing .care-companion-link svg{transition:transform .2s}.landing .care-model-mission{text-align:center;max-width:560px;margin:4rem auto 0;font-family:var(--font-display);font-size:clamp(1.15rem,2.2vw,1.5rem);font-style:italic;font-weight:400;color:var(--text-primary);line-height:1.5}.landing .care-model-mission em{color:var(--brown);font-weight:400}.landing .care-model-next{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:2.5rem auto 0;font-size:.95rem;font-weight:600;letter-spacing:.01em;color:var(--brown);text-decoration:none}.landing .care-model-next svg{transition:transform .25s}.landing .care-model-next:hover svg{transform:translateY(3px)}.landing .condition-teasers{background:var(--cream);border-bottom:1px solid var(--border-light)}.landing .condition-teasers-header{text-align:center;max-width:640px;margin:0 auto 3.5rem}.landing .condition-teasers-header .section-desc{margin:0 auto}.landing .condition-teasers-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.landing .condition-card{display:flex;flex-direction:column;gap:.65rem;padding:2rem;background:var(--warm-white);border:1px solid var(--border-light);border-radius:16px;text-decoration:none;transition:transform .3s,box-shadow .3s,border-color .3s}.landing .condition-card:hover{transform:translateY(-4px);border-color:var(--border);box-shadow:0 20px 50px #515bd81a}.landing .condition-card-eyebrow{font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--brown)}.landing .condition-card-title{font-family:var(--font-display);font-size:1.5rem;font-weight:400;letter-spacing:-.01em;color:var(--text-primary);margin:0}.landing .condition-card-body{font-size:.92rem;color:var(--text-secondary);line-height:1.6;font-weight:400;margin:0}.landing .condition-card-cta{display:inline-flex;align-items:center;gap:.4rem;margin-top:auto;padding-top:.5rem;font-size:.88rem;font-weight:500;color:var(--brown)}.landing .condition-card:hover .condition-card-cta svg{transform:translate(3px)}.landing .condition-card-cta svg{transition:transform .2s}.landing .our-team{background:var(--warm-white)}.landing .our-team-header{text-align:center;max-width:640px;margin:0 auto 3.5rem}.landing .our-team-header .section-desc{margin:0 auto}.landing .our-team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.landing .team-card{background:var(--cream);border:1px solid var(--border-light);border-radius:18px;padding:2rem;text-align:center;transition:transform .3s,box-shadow .3s}.landing .team-card:hover{transform:translateY(-3px);box-shadow:0 18px 44px #515bd814}.landing .team-photo{width:92px;height:92px;border-radius:50%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 15%;object-position:center 15%;border:3px solid var(--warm-white);box-shadow:0 6px 20px #515bd824;margin:0 auto 1.25rem}.landing .team-photo-initials{display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,var(--brown) 0%,var(--brown-dark) 100%);color:var(--warm-white);font-family:var(--font-display);font-size:1.9rem;font-weight:500;letter-spacing:.02em}.landing .team-photo-ghost{display:flex;align-items:center;justify-content:center;background:var(--warm-white);border:1px dashed var(--border);color:var(--text-tertiary)}.landing .team-photo-ghost svg{width:38px;height:38px}.landing .team-name{font-family:var(--font-display);font-size:1.3rem;font-weight:500;letter-spacing:-.01em;color:var(--text-primary);margin:0 0 .3rem}.landing .team-role{display:block;font-size:.78rem;font-weight:500;color:var(--brown);letter-spacing:.01em;margin-bottom:1rem}.landing .team-bio{font-size:.9rem;color:var(--text-secondary);line-height:1.65;font-weight:400;margin:0}.landing .team-link{display:inline-flex;align-items:center;gap:.35rem;margin-top:1.25rem;font-size:.85rem;font-weight:600;color:var(--brown);text-decoration:none}.landing .team-link:hover svg{transform:translateY(2px)}.landing .team-link svg{transition:transform .2s}.landing .team-card-advisors{opacity:.92}.landing .team-ghost-rows{display:flex;flex-direction:column;gap:.5rem;margin-top:1.25rem}.landing .team-ghost-rows span{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--border) 0%,var(--border-light) 100%)}.landing .team-ghost-rows span:nth-child(1){width:80%;margin:0 auto}.landing .team-ghost-rows span:nth-child(2){width:60%;margin:0 auto}.landing .team-ghost-rows span:nth-child(3){width:70%;margin:0 auto}.landing .dot-nav{position:fixed;right:1.5rem;top:50%;transform:translateY(-50%);z-index:90;display:flex;flex-direction:column;gap:1.25rem;opacity:0;transition:opacity .4s ease;pointer-events:none}.landing .dot-nav.visible{opacity:1;pointer-events:auto}.landing .dot-nav-item{position:relative;display:flex;align-items:center;justify-content:flex-end}.landing .dot-nav-dot{width:10px;height:10px;border-radius:50%;background:var(--border);border:none;padding:0;cursor:pointer;transition:background .3s,transform .3s,box-shadow .3s;flex-shrink:0}.landing .dot-nav-dot:hover{background:var(--text-tertiary);transform:scale(1.3)}.landing .dot-nav-item.active .dot-nav-dot{background:var(--brown);transform:scale(1.3);box-shadow:0 0 0 3px #515bd833}.landing .dot-nav-label{position:absolute;right:calc(100% + .5rem);white-space:nowrap;font-size:.75rem;font-weight:500;color:var(--text-secondary);background:var(--warm-white);padding:.3rem .65rem;border-radius:6px;border:1px solid var(--border-light);box-shadow:0 2px 8px #0000000f;opacity:0;transform:translate(4px);transition:opacity .2s,transform .2s;pointer-events:none}.landing .dot-nav-item:hover .dot-nav-label{opacity:1;transform:translate(0)}.landing .dot-nav.on-dark .dot-nav-dot{background:#ffffff4d}.landing .dot-nav.on-dark .dot-nav-dot:hover{background:#fff9}.landing .dot-nav.on-dark .dot-nav-item.active .dot-nav-dot{background:var(--warm-white);box-shadow:0 0 0 3px #fff3}@media (max-width: 900px){.landing .features-grid{grid-template-columns:1fr}}@media (max-width: 768px){.landing section{padding:4rem 1.5rem}.landing .privacy-strip-inner{flex-direction:column;align-items:flex-start;gap:1.25rem}.landing .nav-links{display:none;position:fixed;top:0;left:0;right:0;bottom:0;height:100vh;height:100dvh;background-color:#fff;background:#fff;flex-direction:column;align-items:center;justify-content:center;gap:2rem;z-index:200}.landing .nav-links.open{display:flex}.landing nav.site-nav:has(.nav-links.open){backdrop-filter:none;-webkit-backdrop-filter:none;background:transparent;box-shadow:none}.landing .nav-links a{font-size:1.2rem}.landing .nav-mobile-toggle{display:block;z-index:300;position:relative}.landing .nav-mobile-toggle.open span:nth-child(1){transform:rotate(45deg) translate(4.5px,4.5px)}.landing .nav-mobile-toggle.open span:nth-child(2){opacity:0}.landing .nav-mobile-toggle.open span:nth-child(3){transform:rotate(-45deg) translate(4.5px,-4.5px)}.landing .steps-grid{grid-template-columns:1fr;gap:2.5rem}.landing .steps-grid:before{display:none}.landing .hero{min-height:100vh;min-height:100dvh;padding:6.5rem 1.5rem 2.5rem}.landing .hero-logomark{max-width:420px;margin-top:2rem;margin-bottom:1.25rem}.landing .hero-logomark img{max-height:360px}.landing .hero-trust{gap:.5rem .75rem}.landing .hero-trust-divider{display:none}.landing .hero-trust-item{font-size:.75rem}.landing .evidence-stat-blocks{grid-template-columns:1fr;gap:1rem}.landing .evidence-stat-block{padding:1.5rem 1.25rem}.landing .feature-column h3{font-size:1.35rem}.landing .how-header{margin-bottom:2.5rem}.landing .footer-inner{flex-direction:column;text-align:center}.landing .dot-nav{right:.75rem;gap:1rem}.landing .dot-nav-dot{width:8px;height:8px}.landing .dot-nav-label{display:none}.landing .founder-photo{width:100px;height:100px}}@media (max-width: 600px){.landing .app-waitlist-input-group{flex-direction:column}.landing .app-waitlist-form button[type=submit]{width:100%}.landing .app-waitlist-features{flex-direction:column;align-items:center;gap:.75rem}}@media (max-width: 480px){.landing section{padding:3rem 1.25rem}.landing nav.site-nav{padding:1rem 1.25rem}.landing .hero{min-height:100vh;min-height:100dvh;padding:6rem 1.25rem 2rem}.landing .hero h1{margin-bottom:1rem}.landing .hero-logomark{max-width:320px;margin-top:1.5rem;margin-bottom:1rem}.landing .hero-logomark img{max-height:280px}.landing .hero-sub{font-size:1rem;margin-bottom:2rem}.landing .hero-actions{flex-direction:column;gap:.75rem}.landing .hero-actions .btn-primary,.landing .hero-actions .btn-secondary{width:100%;justify-content:center}.landing .hero-login-link{display:flex;width:100%;margin-top:.75rem;padding:.85rem 1rem;font-size:.95rem;border:1px dashed rgba(81,91,216,.3);border-radius:10px}.landing .hero-trust{gap:.4rem .6rem;margin-top:1.75rem}.landing .hero-trust-item{font-size:.7rem}.landing .hero-badge{font-size:.68rem;padding:.4rem .85rem;gap:.35rem;text-align:center;line-height:1.4}.landing .feature-column{padding:1.75rem 1.25rem}.landing .feature-column h3{font-size:1.2rem}.landing .feature-column>p{font-size:.88rem}.landing .privacy-strip{padding:2rem 1.25rem}.landing .section-title{font-size:clamp(1.6rem,5vw,2rem)}.landing .final-cta p{font-size:.95rem}}@media (max-width: 900px){.landing .our-team-grid{grid-template-columns:1fr;max-width:460px;margin:0 auto}}@media (max-width: 768px){.landing .care-fork{grid-template-columns:1fr}.landing .care-companion{margin-left:0;flex-direction:column}.landing .condition-teasers-grid{grid-template-columns:1fr}.landing .care-model-narrative{margin-bottom:3rem}.landing .footer-link-groups{gap:2.5rem;justify-content:center}}@media (max-width: 480px){.landing .care-stage{grid-template-columns:40px 1fr;gap:.85rem}.landing .care-stages:before{left:19px}.landing .care-node{width:40px;height:40px}.landing .care-node-icon svg{width:18px;height:18px}.landing .care-node-num{width:17px;height:17px;font-size:.62rem}.landing .care-stage-card{padding:1rem 1.1rem}.landing .care-diagram-head{gap:.6rem}.landing .condition-card{padding:1.5rem 1.25rem}.landing .team-card{padding:1.75rem 1.5rem}}.landing h1,.landing h2,.landing h3,.landing h4{font-family:var(--font-display)}.security-page{background:var(--warm-white)}.security-page .sec-container{max-width:1080px;margin:0 auto;padding:0 2rem}.security-page .sec-hero{position:relative;padding:11rem 2rem 5rem;text-align:center;background:radial-gradient(1100px 480px at 50% -8%,rgba(123,94,128,.12),transparent 70%),var(--cream);border-bottom:1px solid var(--border-light);overflow:hidden}.security-page .sec-hero-inner{max-width:760px;margin:0 auto}.security-page .sec-hero-title{font-family:Fraunces,serif;font-weight:400;font-size:clamp(2.3rem,5.4vw,3.7rem);line-height:1.08;letter-spacing:-.025em;color:var(--text-primary);margin:.9rem 0 0}.security-page .sec-hero-title em{font-style:italic;font-weight:300;color:var(--brown)}.security-page .sec-hero-sub{max-width:620px;margin:1.4rem auto 0;font-size:1.12rem;line-height:1.65;color:var(--text-secondary)}.security-page .sec-hero-meta{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem;margin-top:2rem;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary)}.security-page .sec-hero-meta .sec-dot{color:var(--brown-light)}.security-page .sec-section-head{max-width:640px;margin:0 auto 3.25rem;text-align:center}.security-page .sec-section-title{font-family:Fraunces,serif;font-weight:400;font-size:clamp(1.8rem,3.6vw,2.6rem);line-height:1.14;letter-spacing:-.02em;color:var(--text-primary);margin:.6rem 0 0}.security-page .sec-section-title em{font-style:italic;font-weight:300;color:var(--brown)}.security-page .sec-section-desc{margin:1rem auto 0;font-size:1.05rem;line-height:1.6;color:var(--text-secondary)}.security-page .sec-pillars{padding:5rem 0}.security-page .sec-pillar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.security-page .sec-pillar{background:var(--warm-white);border:1px solid var(--border);border-radius:18px;padding:2rem 1.85rem;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.security-page .sec-pillar:hover{transform:translateY(-3px);border-color:var(--brown-light);box-shadow:0 18px 40px -24px #5a3d6066}.security-page .sec-pillar-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:var(--cream);color:var(--brown);margin-bottom:1.1rem}.security-page .sec-pillar h3{font-family:Fraunces,serif;font-size:1.25rem;font-weight:500;color:var(--text-primary);margin:0 0 .55rem}.security-page .sec-pillar p{font-size:.96rem;line-height:1.62;color:var(--text-secondary);margin:0}.security-page .sec-pipeline{padding:5rem 0;background:var(--cream);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.security-page .sec-pipeline-list{list-style:none;margin:0 auto;padding:0;max-width:760px;display:flex;flex-direction:column;gap:1.1rem}.security-page .sec-pipeline-step{display:flex;gap:1.4rem;align-items:flex-start;background:var(--warm-white);border:1px solid var(--border);border-radius:16px;padding:1.6rem 1.75rem}.security-page .sec-pipeline-num{flex-shrink:0;font-family:Fraunces,serif;font-size:1.15rem;font-weight:600;color:var(--brown);width:2.6rem;line-height:1.4}.security-page .sec-pipeline-step h3{font-family:Fraunces,serif;font-size:1.18rem;font-weight:500;color:var(--text-primary);margin:0 0 .45rem}.security-page .sec-pipeline-step p{font-size:.97rem;line-height:1.62;color:var(--text-secondary);margin:0}.security-page .sec-commitments{padding:5rem 0}.security-page .sec-commitments-card{max-width:760px;margin:0 auto;background:var(--warm-white);border:1px solid var(--border);border-radius:22px;padding:3rem 2.75rem;text-align:center}.security-page .sec-commitments-list{list-style:none;margin:2rem 0 0;padding:0;display:grid;gap:.95rem;text-align:left}.security-page .sec-commitments-list li{display:flex;gap:.85rem;align-items:flex-start;font-size:1rem;line-height:1.55;color:var(--text-primary)}.security-page .sec-commitments-list svg{flex-shrink:0;color:var(--brown);margin-top:3px}.security-page .sec-commitments-foot{margin:2rem 0 0;font-size:.92rem;color:var(--text-secondary)}.security-page .sec-commitments-foot a{color:var(--brown);text-decoration:none;border-bottom:1px solid var(--border)}.security-page .sec-commitments-foot a:hover{border-bottom-color:var(--brown)}.security-page .sec-cta{padding:6rem 2rem 7rem;text-align:center;background:radial-gradient(900px 420px at 50% 120%,rgba(123,94,128,.14),transparent 70%),var(--warm-white)}.security-page .sec-cta-inner{max-width:620px;margin:0 auto}.security-page .sec-cta h2{font-family:Fraunces,serif;font-weight:400;font-size:clamp(1.9rem,4vw,2.7rem);line-height:1.12;letter-spacing:-.02em;color:var(--text-primary);margin:0}.security-page .sec-cta p{margin:1.1rem auto 2rem;font-size:1.08rem;line-height:1.6;color:var(--text-secondary)}@media (max-width: 720px){.security-page .sec-hero{padding:9rem 1.5rem 4rem}.security-page .sec-pillar-grid{grid-template-columns:1fr}.security-page .sec-commitments-card{padding:2.25rem 1.5rem}.security-page .sec-pipeline-step{flex-direction:column;gap:.75rem}}.product-page .product-hero{text-align:center;max-width:760px;margin:0 auto;padding:5rem 2rem 3rem}.product-page .product-hero .section-label{display:block;margin-bottom:.75rem}.product-page .product-hero h1{font-family:Fraunces,serif;font-size:clamp(2.4rem,5.5vw,3.6rem);font-weight:400;line-height:1.1;letter-spacing:-.03em;color:var(--text-primary);margin:0 0 1.25rem}.product-page .product-hero h1 em{font-style:italic;font-weight:300;color:var(--brown)}.product-page .product-hero-sub{font-size:clamp(1.05rem,2vw,1.2rem);color:var(--text-secondary);font-weight:300;line-height:1.65;max-width:560px;margin:0 auto 1.75rem}.product-page .product-row{display:flex;align-items:center;justify-content:center;gap:4.5rem;max-width:1000px;margin:0 auto;padding:3.5rem 2rem}.product-page .product-row.reverse{flex-direction:row-reverse}.product-page .product-row-copy{flex:1 1 380px;max-width:440px}.product-page .product-row-copy .section-label{margin-bottom:.85rem}.product-page .product-row-copy h2{font-family:Fraunces,serif;font-size:clamp(1.7rem,3vw,2.3rem);font-weight:400;line-height:1.18;letter-spacing:-.02em;color:var(--text-primary);margin:0 0 1rem}.product-page .product-row-copy h2 em{font-style:italic;font-weight:300;color:var(--brown)}.product-page .product-row-copy p{font-size:1.02rem;color:var(--text-secondary);line-height:1.7;font-weight:300;margin:0}.product-page .product-row .phone-preview-frame-wrap{flex:0 0 auto}.product-page .product-features{background:var(--cream);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.product-page .product-features-header{text-align:center;max-width:640px;margin:0 auto 3.5rem}.product-page .product-features-header .section-desc{margin:0 auto}.product-page .product-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1000px;margin:0 auto}.product-page .product-feature{background:var(--warm-white);border:1px solid var(--border-light);border-radius:16px;padding:2rem;transition:transform .3s,box-shadow .3s}.product-page .product-feature:hover{transform:translateY(-3px);box-shadow:0 18px 44px #7b5e8014}.product-page .product-feature-icon{width:44px;height:44px;border-radius:12px;background:#7b5e8014;border:1px solid rgba(123,94,128,.16);display:flex;align-items:center;justify-content:center;color:var(--brown);margin-bottom:1.25rem}.product-page .product-feature-icon svg{width:22px;height:22px}.product-page .product-feature h3{font-family:Fraunces,serif;font-size:1.25rem;font-weight:500;letter-spacing:-.01em;color:var(--text-primary);margin:0 0 .5rem}.product-page .product-feature p{font-size:.92rem;color:var(--text-secondary);line-height:1.65;font-weight:300;margin:0}.product-page .product-wearables{text-align:center;background:var(--warm-white)}.product-page .product-wearables-inner{max-width:640px;margin:0 auto}.product-page .product-wearables .section-desc{margin:0 auto 2rem}.product-page .product-wearables-logos{display:inline-flex;align-items:center;gap:2rem;padding:1.25rem 2rem;border:1px solid var(--border-light);border-radius:999px;background:var(--cream);color:var(--text-secondary)}.product-page .product-wearables-divider{width:1px;height:26px;background:var(--border)}.product-page .product-twocol{background:var(--warm-white)}.product-page .product-twocol-header{text-align:center;max-width:640px;margin:0 auto 3.5rem}.product-page .product-twocol-header .section-desc{margin:0 auto}.landing .phone-checkin-card{display:flex;flex-direction:column;gap:13px;padding:14px 15px}.landing .phone-scale-row{display:flex;flex-direction:column;gap:6px}.landing .phone-scale-head{display:flex;justify-content:space-between;align-items:baseline}.landing .phone-scale-label{font-size:12px;font-weight:600;color:var(--text-primary);letter-spacing:.01em}.landing .phone-scale-value{font-family:Fraunces,serif;font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.landing .phone-scale-dots{display:flex;gap:4px}.landing .phone-scale-dot{flex:1;height:8px;border-radius:999px;background:var(--border-light);border:1px solid var(--border-light);transition:background .2s,transform .2s}.landing .phone-scale-dot.active{transform:scaleY(1.4)}.landing .phone-tags-card{display:flex;flex-direction:column;gap:9px}.landing .phone-tags{display:flex;flex-wrap:wrap;gap:6px}.landing .phone-tag{font-size:11px;font-weight:500;padding:4px 10px;border-radius:999px;border:1px solid var(--border);color:var(--text-tertiary);background:var(--warm-white)}.landing .phone-tag.active{background:#7b5e801a;border-color:#7b5e8059;color:var(--brown-dark)}.landing .phone-save-btn{margin-top:auto;padding:11px;border:none;border-radius:13px;background:var(--brown);color:var(--warm-white);font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;letter-spacing:.01em;cursor:default}@media (max-width: 860px){.product-page .product-row,.product-page .product-row.reverse{flex-direction:column;gap:2.5rem;text-align:center}.product-page .product-row-copy{max-width:540px}.product-page .product-feature-grid{grid-template-columns:1fr;max-width:460px}}@media (max-width: 600px){.product-page .product-hero{padding:3.5rem 1.5rem 2rem}.product-page .product-wearables-logos{gap:1.25rem;padding:1rem 1.25rem;flex-wrap:wrap}}.patient-shell{--bg: #F6F4F9;--surface: #FFFFFF;--surface-hover: #FDFCFF;--surface2: #F0ECF5;--surface3: #E8E3F0;--accent: #7B5E80;--accent-light: #A8A0D0;--accent2: #D4A0C8;--border: #E2DCE8;--border-light: #EEEAF2;--text-primary: #2D2843;--text-secondary: #6E6788;--text-muted: #A9A3BA;--success: #4CAF50;--warning: #F59E0B;--danger: #EF4444;--pain-0: #4CAF50;--pain-1: #66BB6A;--pain-2: #8BC34A;--pain-3: #CDDC39;--pain-4: #FFEB3B;--pain-5: #FFC107;--pain-6: #FF9800;--pain-7: #FF5722;--pain-8: #F44336;--pain-9: #D32F2F;--pain-10: #B71C1C;font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text-primary);min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.patient-shell h1,.patient-shell h2,.patient-shell h3,.patient-shell h4{font-family:Fraunces,Georgia,serif;font-weight:500}.patient-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;font-family:DM Sans,sans-serif;color:#6e6788}.patient-loading-label{font-size:.875rem;letter-spacing:.02em;color:#8a8299;animation:patient-loading-fade 2s ease-in-out infinite}@keyframes patient-loading-fade{0%,to{opacity:.4}50%{opacity:1}}.patient-shell .app-topbar{position:fixed;top:0;left:0;right:0;height:56px;background:var(--surface);border-bottom:1px solid var(--border);z-index:100;display:flex;align-items:center;padding:0 1.25rem;gap:.75rem}.patient-shell .app-topbar-brand{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--text-primary);padding:.35rem .55rem;margin-left:-.55rem;border-radius:8px;transition:background .15s}.patient-shell .app-topbar-brand:hover{background:var(--surface2)}.patient-shell .app-topbar-brand img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.patient-shell .app-topbar-brand span{font-family:Fraunces,Georgia,serif;font-size:1.15rem;font-weight:500}.patient-shell .app-topbar-left{display:inline-flex;align-items:center;min-width:0}.patient-shell .app-topbar-back-wrap{display:inline-flex;align-items:center;overflow:hidden;white-space:nowrap}.patient-shell .app-topbar-divider{display:inline-block;width:1px;height:20px;background:var(--border);margin:0 .5rem;flex:0 0 auto}.patient-shell .app-topbar-back{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .65rem;border-radius:8px;font-size:.85rem;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:background .15s,color .15s}.patient-shell .app-topbar-back:hover{background:var(--surface2);color:var(--text-primary)}.patient-shell .app-topbar-spacer{flex:1}@media (max-width: 480px){.patient-shell .app-topbar-back{font-size:0;gap:0;padding:.45rem}.patient-shell .app-topbar-back svg{width:18px;height:18px}.patient-shell .app-topbar-divider{margin:0 .35rem}}.patient-shell .app-topbar-avatar-wrap{position:relative}.patient-shell .app-topbar-avatar{width:36px;height:36px;border-radius:50%;border:none;background:var(--accent);color:#fff;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,transform .1s}.patient-shell .app-topbar-avatar:hover{background:var(--accent-light)}.patient-shell .app-topbar-avatar:active{transform:scale(.95)}.patient-shell .app-topbar-avatar[aria-expanded=true]{background:var(--accent-light)}.patient-shell .app-topbar-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px #2d28431f;padding:.4rem 0;z-index:110;animation:topbar-menu-in .15s ease}@keyframes topbar-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.patient-shell .app-topbar-menu-header{padding:.6rem .9rem .7rem;border-bottom:1px solid var(--border-light);margin-bottom:.35rem}.patient-shell .app-topbar-menu-name{font-size:.88rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-shell .app-topbar-menu-streak{font-size:.75rem;color:var(--accent2);margin-top:.15rem;font-weight:500}.patient-shell .app-topbar-menu-item{display:flex;align-items:center;gap:.6rem;padding:.55rem .9rem;width:100%;background:none;border:none;text-align:left;font-family:inherit;font-size:.88rem;color:var(--text-primary);text-decoration:none;cursor:pointer;transition:background .12s}.patient-shell .app-topbar-menu-item:hover{background:var(--surface2)}.patient-shell .app-topbar-menu-item svg{flex-shrink:0;color:var(--text-secondary)}.patient-shell .app-topbar-menu-item-danger{color:var(--danger)}.patient-shell .app-topbar-menu-item-danger svg{color:var(--danger)}.patient-shell .app-topbar-menu-item-danger:hover{background:#ef44440f}.patient-shell .main-content{flex:1;padding-top:56px;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;width:100%}.patient-shell .content-area{flex:1;padding:2rem 2.5rem;width:100%;overflow-x:hidden}.patient-shell .content-area.content-area-flush{padding-bottom:0}@media (max-width: 768px){.patient-shell .content-area.content-area-flush{padding:0}}.patient-shell .card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1.5rem;margin-bottom:1rem;overflow-wrap:break-word;min-width:0}.patient-shell .card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.patient-shell .card-title{font-size:1rem;font-weight:600;color:var(--text-primary);font-family:DM Sans,sans-serif}.patient-shell .hero-greeting{margin-bottom:1.5rem}.patient-shell .hero-greeting-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.patient-shell .hero-greeting h1{font-size:1.75rem;font-weight:500;margin-bottom:.25rem}.patient-shell .hero-greeting h1 em{font-style:italic}.patient-shell .hero-subtitle{font-size:.95rem;color:var(--text-secondary);line-height:1.6;min-height:1.6em}.patient-shell .card-link{font-size:.78rem;color:var(--accent);text-decoration:none;font-weight:500}.patient-shell .card-link:hover{color:var(--accent-light)}.patient-shell .today-card-cta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.patient-shell .today-cta-copy{flex:1;min-width:200px}.patient-shell .today-cta-copy strong{display:block;font-size:1rem;margin-bottom:.15rem}.patient-shell .today-cta-copy p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}.patient-shell .today-cta-btn{flex-shrink:0}.patient-shell .today-card-done{padding:1.1rem 1.25rem}.patient-shell .today-done-row{display:flex;align-items:center;gap:1rem}.patient-shell .today-done-score{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:Fraunces,Georgia,serif;font-size:1.3rem;font-weight:500;flex-shrink:0}.patient-shell .today-done-body{flex:1;min-width:0}.patient-shell .today-done-body strong{display:block;font-size:.95rem}.patient-shell .today-done-sub{font-size:.82rem;color:var(--text-secondary);margin-top:.1rem}.patient-shell .today-done-edit{font-size:.8rem;color:var(--accent);text-decoration:none;font-weight:500;padding:.3rem .7rem;border-radius:8px;border:1px solid var(--border)}.patient-shell .today-done-edit:hover{background:var(--bg);border-color:var(--accent2)}.patient-shell .cycle-strip{display:flex;align-items:center;gap:.9rem;padding:1rem 1.25rem;color:var(--text-primary);cursor:pointer;transition:background .15s,border-color .15s}.patient-shell .cycle-strip:hover{background:var(--surface-hover);border-color:var(--accent2)}.patient-shell .cycle-strip-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 3px #0000000a}.patient-shell .cycle-strip-body{flex:1;min-width:0}.patient-shell .cycle-strip-title{font-size:.92rem;font-weight:500}.patient-shell .cycle-strip-title strong{font-weight:600}.patient-shell .cycle-strip-sub{font-size:.8rem;color:var(--text-secondary);margin-top:.1rem}.patient-shell .cycle-strip-chevron{color:var(--text-muted);font-size:1.1rem;flex-shrink:0}.patient-shell .patterns-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}.patient-shell .pattern-item{--pattern-accent: var(--accent);--pattern-tint: rgba(110, 59, 255, .06);position:relative;padding:.9rem 1rem .9rem .85rem;border-radius:14px;background:linear-gradient(135deg,var(--pattern-tint) 0%,transparent 55%),var(--surface);border:1px solid var(--border);display:flex;gap:.7rem;align-items:stretch;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;opacity:0;transform:translateY(14px) scale(.985)}.patient-shell .patterns-list.is-revealed .pattern-item{animation:pattern-item-pop .62s cubic-bezier(.22,1,.36,1) forwards;animation-delay:var(--pattern-delay, 0ms)}@keyframes pattern-item-pop{0%{opacity:0;transform:translateY(14px) scale(.985)}60%{opacity:1}to{opacity:1;transform:translateY(0) scale(1)}}.patient-shell .pattern-item:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--pattern-accent) 35%,var(--border));box-shadow:0 6px 18px -8px color-mix(in srgb,var(--pattern-accent) 40%,transparent)}.patient-shell .pattern-item-stripe{flex:0 0 3px;border-radius:4px;background:linear-gradient(180deg,var(--pattern-accent),color-mix(in srgb,var(--pattern-accent) 35%,transparent))}.patient-shell .pattern-item-body-wrap{flex:1;min-width:0}.patient-shell .pattern-item.pattern-alert{--pattern-accent: var(--danger);--pattern-tint: rgba(239, 68, 68, .07)}.patient-shell .pattern-item.pattern-warn{--pattern-accent: var(--warning);--pattern-tint: rgba(245, 158, 11, .07)}.patient-shell .pattern-item-title{font-size:.92rem;font-weight:600;color:var(--text-primary);margin-bottom:.2rem}.patient-shell .pattern-item-body{font-size:.82rem;color:var(--text-secondary);line-height:1.5}.patient-shell .patterns-more-link{display:inline-block;margin-top:.75rem;font-size:.82rem;font-weight:500;color:var(--accent, #6e3bff);text-decoration:none;transition:transform .16s ease}.patient-shell .patterns-more-link:hover{text-decoration:underline;transform:translate(2px)}@media (prefers-reduced-motion: reduce){.patient-shell .patterns-list.is-revealed .pattern-item{animation:none;opacity:1;transform:none}}.patient-shell .patterns-empty{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}.patient-shell .patterns-card-locked .patterns-locked-copy{font-size:.85rem;color:var(--text-secondary);margin:0 0 .75rem;line-height:1.5}.patient-shell .patterns-progress{height:6px;border-radius:3px;background:var(--border);overflow:hidden}.patient-shell .patterns-progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.patient-shell .insight-list{display:flex;flex-direction:column;gap:.6rem}.patient-shell .insight-card{--insight-accent: var(--accent);--insight-tint: rgba(110, 59, 255, .06);position:relative;display:flex;gap:.7rem;padding:.85rem .95rem .85rem .8rem;border-radius:14px;border:1px solid var(--border);background:linear-gradient(135deg,var(--insight-tint) 0%,transparent 55%),var(--surface);cursor:pointer;text-align:left;width:100%;overflow:hidden;opacity:0;transform:translateY(12px) scale(.99);animation:insight-pop .56s cubic-bezier(.22,1,.36,1) forwards;animation-delay:var(--insight-delay, 0ms);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}@keyframes insight-pop{0%{opacity:0;transform:translateY(12px) scale(.99)}60%{opacity:1}to{opacity:1;transform:none}}.patient-shell .insight-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--insight-accent) 38%,var(--border));box-shadow:0 6px 18px -8px color-mix(in srgb,var(--insight-accent) 45%,transparent)}.patient-shell .insight-card:focus-visible{outline:2px solid var(--insight-accent);outline-offset:2px}.patient-shell .insight-card.insight-good{--insight-accent: #3f9d63;--insight-tint: rgba(63, 157, 99, .08)}.patient-shell .insight-card.insight-info{--insight-accent: var(--accent);--insight-tint: rgba(110, 59, 255, .06)}.patient-shell .insight-card.insight-watch{--insight-accent: var(--warning, #e8a44a);--insight-tint: rgba(232, 164, 74, .09)}.patient-shell .insight-card.insight-alert{--insight-accent: var(--danger, #ef4444);--insight-tint: rgba(239, 68, 68, .08)}.patient-shell .insight-stripe{flex:0 0 3px;border-radius:4px;background:linear-gradient(180deg,var(--insight-accent),color-mix(in srgb,var(--insight-accent) 35%,transparent))}.patient-shell .insight-main{flex:1;min-width:0}.patient-shell .insight-head{display:flex;align-items:center;gap:.4rem;margin-bottom:.4rem}.patient-shell .insight-chip{font-size:.68rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;padding:.12rem .45rem;border-radius:999px;background:color-mix(in srgb,var(--insight-accent) 14%,transparent);color:var(--insight-accent)}.patient-shell .insight-confidence{font-size:.68rem;font-weight:600;margin-left:auto;display:inline-flex;align-items:center;gap:.28rem;color:var(--text-secondary)}.patient-shell .insight-confidence:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.55}.patient-shell .insight-confidence-strong{color:#3f9d63}.patient-shell .insight-confidence-strong:before{opacity:1}.patient-shell .insight-confidence-moderate{color:var(--warning, #e8a44a)}.patient-shell .insight-title{font-size:.92rem;font-weight:650;color:var(--text-primary);line-height:1.35}.patient-shell .insight-body{font-size:.82rem;color:var(--text-secondary);line-height:1.5;margin-top:.2rem}.patient-shell .insight-foot{display:flex;align-items:center;gap:.5rem;margin-top:.6rem;flex-wrap:wrap}.patient-shell .insight-evidence{font-size:.74rem;color:var(--text-secondary);font-variant-numeric:tabular-nums}.patient-shell .insight-evidence strong{color:var(--text-primary);font-weight:700}.patient-shell .insight-action{margin-left:auto;font-size:.76rem;font-weight:600;color:var(--insight-accent);white-space:nowrap}.patient-shell .insight-viz{margin-top:.6rem}.patient-shell .insight-viz-bars,.patient-shell .insight-viz-delta{display:flex;align-items:flex-end;gap:.5rem;height:72px}.patient-shell .insight-bar-col,.patient-shell .insight-delta-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;flex:0 0 auto;min-width:26px}.patient-shell .insight-bar{width:18px;border-radius:4px 4px 2px 2px}.patient-shell .insight-bar-val{font-size:.68rem;font-weight:700;color:var(--text-secondary);font-variant-numeric:tabular-nums}.patient-shell .insight-bar-label{font-size:.64rem;color:var(--text-secondary);white-space:nowrap}.patient-shell .insight-viz-spark{height:34px;color:var(--insight-accent)}.patient-shell .insight-viz-spark svg{width:100%;height:100%;display:block}.patient-shell .insight-viz-corr{display:flex;align-items:center;gap:.5rem}.patient-shell .insight-corr-track{flex:1;height:7px;border-radius:4px;background:var(--border);overflow:hidden}.patient-shell .insight-corr-fill{height:100%;border-radius:4px}.patient-shell .insight-corr-fill.is-protective{background:#3f9d63}.patient-shell .insight-corr-fill.is-aggravating{background:var(--danger, #ef4444)}.patient-shell .insight-corr-label{font-size:.68rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.02em}@media (prefers-reduced-motion: reduce){.patient-shell .insight-card{animation:none;opacity:1;transform:none}}.patient-shell .pp-trigger-group{margin-top:.5rem}.patient-shell .pp-trigger-grouplabel{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);margin:.5rem 0 .35rem}.patient-shell .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.2rem;border:none;border-radius:10px;font-size:.875rem;font-weight:500;cursor:pointer;font-family:inherit;transition:background .2s,transform .1s;text-decoration:none}.patient-shell .btn:active{transform:scale(.98)}.patient-shell .btn-primary{background:var(--accent);color:#fff}.patient-shell .btn-primary:hover{background:var(--accent-light)}.patient-shell .btn-secondary{background:var(--bg);color:var(--text-primary);border:1px solid var(--border)}.patient-shell .btn-secondary:hover{background:var(--surface-hover)}.patient-shell .btn-sm{padding:.4rem .8rem;font-size:.8rem}.patient-shell .streak-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border-radius:20px;font-size:.8rem;font-weight:600;background:#d4a0c826;color:var(--accent2)}.patient-shell .week-chart{display:flex;flex-direction:column;gap:6px;padding-top:.5rem}.patient-shell .week-chart-svg{width:100%;display:block;overflow:visible}@media (max-width: 480px){.patient-shell .week-chart-svg{height:110px}}.patient-shell .week-chart-line{stroke-dasharray:600;stroke-dashoffset:600;animation:week-chart-draw .9s cubic-bezier(.4,0,.2,1) forwards}.patient-shell .week-chart-dot{opacity:0;transform-box:fill-box;transform-origin:center;animation:week-chart-dot-in .22s ease-out forwards}.patient-shell .week-chart-dot-label{font-size:.5px;font-weight:700;fill:#fff;font-variant-numeric:tabular-nums;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}@keyframes week-chart-draw{to{stroke-dashoffset:0}}@keyframes week-chart-dot-in{0%{opacity:0;transform:scale(.6)}to{opacity:var(--dot-opacity, 1);transform:scale(1)}}.patient-shell .week-chart-labels{display:grid;grid-template-columns:repeat(7,1fr);padding:0 12px}.patient-shell .week-bar-label{font-size:.7rem;color:var(--text-muted);font-weight:500;text-align:center}.patient-shell .form-field{margin-bottom:1rem}.patient-shell .form-label{display:block;font-size:.85rem;font-weight:600;color:var(--text-primary);margin-bottom:.4rem}.patient-shell .form-hint{font-weight:400;color:var(--text-muted);font-size:.8rem}.patient-shell .form-input,.patient-shell .form-select,.patient-shell .form-textarea{width:100%;padding:.7rem .9rem;border:1.5px solid var(--border);border-radius:10px;font-size:.9rem;font-family:inherit;background:var(--surface);color:var(--text-primary);transition:border-color .2s;outline:none}.patient-shell .form-input:focus,.patient-shell .form-select:focus,.patient-shell .form-textarea:focus{border-color:var(--accent)}.patient-shell .measure-input{display:flex;flex-direction:column;gap:.55rem;min-width:0}.patient-shell .unit-toggle{position:relative;display:inline-flex;padding:3px;border-radius:999px;background:var(--bg, #f3f0ea);border:1px solid var(--border);align-self:flex-start;gap:2px}.patient-shell .unit-toggle-opt{position:relative;border:0;background:transparent;padding:.35rem .85rem;border-radius:999px;font-family:inherit;font-size:.78rem;font-weight:600;color:var(--text-muted);cursor:pointer;letter-spacing:.01em;transition:color .2s;z-index:1;white-space:nowrap;line-height:1.2}.patient-shell .unit-toggle-opt:hover{color:var(--text-secondary)}.patient-shell .unit-toggle-opt.selected{color:#fff}.patient-shell .unit-toggle-indicator{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:var(--accent);z-index:-1;box-shadow:0 1px 4px #00000014}.patient-shell .unit-toggle-label{position:relative;z-index:1}.patient-shell .measure-fields{display:flex;gap:.55rem}.patient-shell .measure-field{position:relative;flex:1;max-width:120px}.patient-shell .measure-field .measure-number{padding-right:2.25rem;font-variant-numeric:tabular-nums;transition:border-color .2s,box-shadow .2s}.patient-shell .measure-field .measure-number:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.patient-shell .measure-suffix{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);font-size:.78rem;font-weight:600;color:var(--text-muted);pointer-events:none;letter-spacing:.02em}.patient-shell .weight-dial{display:flex;flex-direction:column;gap:.4rem;padding:.75rem .9rem .6rem;border:1.5px solid var(--border);border-radius:14px;background:var(--surface);outline:none;transition:border-color .2s,box-shadow .2s;width:100%;min-width:0;box-sizing:border-box;overflow:hidden}.patient-shell .weight-dial:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.patient-shell .weight-readout{display:flex;align-items:baseline;justify-content:center;gap:.35rem}.patient-shell .weight-readout-number{font-size:2rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1}.patient-shell .weight-readout-unit{font-size:.85rem;font-weight:600;color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.patient-shell .weight-dial-track{position:relative;height:48px;overflow:hidden;cursor:grab;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;min-width:0}.patient-shell .weight-dial-track:active{cursor:grabbing}.patient-shell .weight-dial-strip{position:relative;height:100%;will-change:transform}.patient-shell .weight-tick{position:absolute;top:0;width:1px;height:14px;background:color-mix(in srgb,var(--text-muted) 45%,transparent)}.patient-shell .weight-tick.mid{height:18px;background:color-mix(in srgb,var(--text-muted) 65%,transparent)}.patient-shell .weight-tick.major{height:22px;background:var(--text-secondary);width:1.5px}.patient-shell .weight-tick-label{position:absolute;top:26px;left:50%;transform:translate(-50%);font-size:.72rem;font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}.patient-shell .weight-dial-pointer{position:absolute;left:50%;top:0;transform:translate(-50%);width:2px;height:30px;background:var(--accent);border-radius:2px;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent);pointer-events:none}.patient-shell .weight-dial-pointer:after{content:"";position:absolute;top:-4px;left:50%;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--accent)}.patient-shell .weight-dial-fade{position:absolute;top:0;bottom:0;width:28px;pointer-events:none}.patient-shell .weight-dial-fade-left{left:0;background:linear-gradient(to right,var(--surface),transparent)}.patient-shell .weight-dial-fade-right{right:0;background:linear-gradient(to left,var(--surface),transparent)}.patient-shell .form-textarea{min-height:90px;resize:vertical}.patient-shell .notes-label-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.75rem;margin-bottom:.4rem}.patient-shell .voice-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-family:inherit;font-size:.78rem;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.patient-shell .voice-btn:hover:not(:disabled){border-color:var(--accent2);color:var(--accent)}.patient-shell .voice-btn:disabled{opacity:.7;cursor:wait}.patient-shell .voice-btn.recording{background:var(--danger);border-color:var(--danger);color:#fff;animation:voice-pulse 1.2s ease-in-out infinite}.patient-shell .notes-textarea-wrap{position:relative}.patient-shell .notes-textarea-wrap .form-textarea{padding-right:3.25rem;padding-bottom:3.25rem}.patient-shell .voice-btn-inline{position:absolute;right:.75rem;bottom:.75rem;width:34px;height:34px;padding:7px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .1s}.patient-shell .voice-btn-inline svg{width:100%;height:100%}.patient-shell .voice-btn-inline:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.patient-shell .voice-btn-inline:disabled{opacity:.6;cursor:wait}.patient-shell .voice-btn-inline.recording{background:var(--danger);border-color:var(--danger);color:#fff;animation:voice-pulse 1.2s ease-in-out infinite}@keyframes voice-pulse{0%,to{box-shadow:0 0 #ef444459}50%{box-shadow:0 0 0 6px #ef444400}}.patient-shell .pain-scale{display:flex;gap:6px;margin:1rem 0 .25rem}.patient-shell .pain-btn{flex:1;aspect-ratio:1;max-width:48px;border:2px solid var(--border);border-radius:10px;background:var(--surface);font-size:1rem;font-weight:600;cursor:pointer;transition:transform .15s,border-color .15s;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.patient-shell .pain-btn:hover{transform:scale(1.08)}.patient-shell .pain-btn.selected{color:#fff;border-color:transparent;transform:scale(1.1);box-shadow:0 2px 8px #00000026}.patient-shell .pain-btn[data-score="0"].selected{background:var(--pain-0)}.patient-shell .pain-btn[data-score="1"].selected{background:var(--pain-1)}.patient-shell .pain-btn[data-score="2"].selected{background:var(--pain-2)}.patient-shell .pain-btn[data-score="3"].selected{background:var(--pain-3);color:var(--text-primary)}.patient-shell .pain-btn[data-score="4"].selected{background:var(--pain-4);color:var(--text-primary)}.patient-shell .pain-btn[data-score="5"].selected{background:var(--pain-5);color:var(--text-primary)}.patient-shell .pain-btn[data-score="6"].selected{background:var(--pain-6)}.patient-shell .pain-btn[data-score="7"].selected{background:var(--pain-7)}.patient-shell .pain-btn[data-score="8"].selected{background:var(--pain-8)}.patient-shell .pain-btn[data-score="9"].selected{background:var(--pain-9)}.patient-shell .pain-btn[data-score="10"].selected{background:var(--pain-10)}.patient-shell .pain-scale-labels{display:flex;justify-content:space-between}.patient-shell .mankoski-caption{margin-top:.85rem;padding:10px 14px;border-radius:10px;background:var(--surface2);color:var(--text-primary);font-size:.88rem;font-weight:500;text-align:center;line-height:1.3;min-height:40px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.patient-shell .mankoski-caption[data-empty=true]{color:var(--text-muted);font-weight:400;font-style:italic}.patient-shell .pain-label{font-size:.8rem;color:var(--text-muted)}.patient-shell .chip-group{display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0}.patient-shell .chip{display:inline-flex;align-items:center;padding:.4rem .85rem;border-radius:20px;font-size:.8rem;font-weight:500;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-family:inherit;transition:background .15s,border-color .15s,color .15s}.patient-shell .chip:hover{border-color:var(--accent2)}.patient-shell .chip.selected{background:var(--accent);border-color:var(--accent);color:#fff}.patient-shell .btn-expand-symptoms{display:inline-flex;align-items:center;background:none;border:1px dashed var(--border);border-radius:20px;padding:.35rem .9rem;font-size:.8rem;font-weight:500;color:var(--text-secondary);cursor:pointer;margin-top:.5rem;font-family:inherit;transition:border-color .2s,color .2s}.patient-shell .btn-expand-symptoms:hover{border-color:var(--accent2);color:var(--accent2)}.patient-shell .btn-expand-symptoms.expanded{border-style:solid;color:var(--accent);border-color:var(--accent)}.patient-shell .flow-products-row{margin-top:.25rem}.patient-shell .flow-products-stepper{display:inline-flex;align-items:center;gap:.75rem;border:1px solid var(--border);border-radius:999px;padding:.25rem .5rem;background:var(--bg-card, #fff)}.patient-shell .flow-products-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:none;font-size:1.05rem;font-weight:500;color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;line-height:1;font-family:inherit;transition:border-color .2s,background .2s,color .2s}.patient-shell .flow-products-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.patient-shell .flow-products-btn:disabled{opacity:.4;cursor:not-allowed}.patient-shell .flow-products-count{min-width:2ch;text-align:center;font-weight:600;font-size:1rem;color:var(--text-primary);font-variant-numeric:tabular-nums}.patient-shell .symptom-cat-label{margin-top:.75rem;font-size:.75rem;letter-spacing:.05em;color:var(--text-muted);text-transform:uppercase}.patient-shell .expanded-symptoms{margin-top:.5rem}.patient-shell .stepper{display:flex;align-items:stretch;justify-content:center;gap:.75rem;margin:.35rem 0 .4rem}.patient-shell .stepper-btn{width:56px;height:56px;border-radius:14px;border:1.5px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:1.6rem;font-weight:500;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-family:inherit;transition:background .12s,border-color .12s,transform .08s}.patient-shell .stepper-btn:hover:not(:disabled){border-color:var(--accent2);color:var(--accent)}.patient-shell .stepper-btn:active:not(:disabled){transform:scale(.95)}.patient-shell .stepper-btn:disabled{opacity:.35;cursor:not-allowed}.patient-shell .stepper-value{flex:1;max-width:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.4rem .8rem;border-radius:14px;background:var(--surface2)}.patient-shell .stepper-num{font-family:Fraunces,Georgia,serif;font-size:2rem;font-weight:500;line-height:1;color:var(--text-primary)}.patient-shell .stepper-unit{font-size:.75rem;color:var(--text-secondary);margin-top:.2rem;letter-spacing:.02em}.patient-shell .stepper-caption{text-align:center;font-size:.82rem;color:var(--text-secondary);margin-bottom:.75rem}.patient-shell .sleep-presets{display:flex;gap:.4rem;justify-content:center;flex-wrap:wrap}.patient-shell .sleep-preset{min-width:52px;padding:.45rem .75rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-family:inherit;font-size:.82rem;font-weight:500;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.patient-shell .sleep-preset:hover{border-color:var(--accent2)}.patient-shell .sleep-preset.selected{background:var(--accent);border-color:var(--accent);color:#fff}.patient-shell .energy-scale{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;margin:.35rem 0 .25rem}.patient-shell .energy-option{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.7rem .3rem;border-radius:12px;border:1.5px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;font-family:inherit;transition:background .15s,border-color .15s,color .15s,transform .1s}.patient-shell .energy-option:hover{border-color:var(--accent2)}.patient-shell .energy-option:active{transform:scale(.97)}.patient-shell .energy-option.selected{border-color:var(--accent);background:#7b5e8014;color:var(--accent)}.patient-shell .energy-emoji{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;line-height:1}.patient-shell .energy-emoji svg{overflow:visible}.patient-shell .energy-label{font-size:.72rem;font-weight:500;text-align:center;line-height:1.1}.patient-shell .checkin-page{max-width:640px;margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;height:calc(100vh - 56px - 4rem);height:calc(100dvh - 56px - 4rem);max-height:calc(100dvh - 56px - 4rem);min-height:420px}.patient-shell .checkin-header-bar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.9rem 1.25rem;border-bottom:1px solid var(--border-light)}.patient-shell .checkin-cancel-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:8px;transition:background .15s}.patient-shell .checkin-cancel-btn:hover{background:var(--surface2);color:var(--text-primary)}.patient-shell .checkin-progress{height:4px;background:var(--border);border-radius:2px;overflow:hidden}.patient-shell .checkin-progress-fill{height:100%;background:var(--accent);transition:width .3s ease}.patient-shell .checkin-step-label{font-size:.75rem;color:var(--text-muted);font-weight:500;white-space:nowrap}.patient-shell .checkin-body{flex:1;padding:1.5rem 1.5rem 1rem;overflow-y:auto}.patient-shell .checkin-step-content{animation:checkin-fade-in .2s ease}@keyframes checkin-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.patient-shell .checkin-title{font-size:1.25rem;margin-bottom:.35rem}.patient-shell .checkin-desc{font-size:.9rem;color:var(--text-secondary);margin-bottom:1rem}.patient-shell .checkin-footer{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-light);background:var(--surface-hover)}.patient-shell .checkin-error{margin-top:.75rem;padding:.6rem .8rem;background:#ef444414;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:var(--danger);font-size:.82rem}.patient-shell .checkin-meds-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.patient-shell .checkin-med-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem .85rem;background:var(--surface);border:1px solid var(--border-light);border-radius:10px}.patient-shell .checkin-med-info{min-width:0;flex:1}.patient-shell .checkin-med-name{display:block;font-weight:600;font-size:.95rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-shell .checkin-med-dosage{display:block;font-size:.8rem;color:var(--text-secondary);margin-top:.1rem}.patient-shell .checkin-med-toggle{width:100%;text-align:left;font:inherit;cursor:pointer;transition:background .15s,border-color .15s}.patient-shell .checkin-med-toggle:hover{border-color:var(--primary)}.patient-shell .checkin-med-toggle.checked{background:#2ea05f14;border-color:#2ea05f80}.patient-shell .checkin-med-check{display:flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;border-radius:6px;border:1.5px solid var(--border);background:var(--surface);color:#fff;transition:background .15s,border-color .15s}.patient-shell .checkin-med-check.checked{background:#2ea05f;border-color:#2ea05f}.patient-shell .checkin-med-state{flex-shrink:0;font-size:.8rem;font-weight:600;color:var(--text-muted)}.patient-shell .checkin-med-toggle.checked .checkin-med-state{color:#2ea05f}.patient-shell .checkin-meds-hint{margin-top:.75rem;font-size:.8rem;color:var(--text-muted)}.patient-shell .other-symptoms{margin-top:.5rem}.patient-shell .other-symptom-row{display:flex;align-items:center;gap:.4rem;margin-bottom:.4rem}.patient-shell .other-symptom-row .form-input{flex:1}.patient-shell .other-symptom-remove{flex-shrink:0;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:1.15rem;line-height:1;cursor:pointer;transition:border-color .15s,color .15s}.patient-shell .other-symptom-remove:hover{border-color:var(--danger);color:var(--danger)}.patient-shell .other-symptom-add{background:none;border:none;padding:.25rem 0;color:var(--primary);font-weight:600;font-size:.85rem;cursor:pointer}.patient-shell .btn:disabled{opacity:.6;cursor:not-allowed}.patient-shell .coach-fab{position:fixed;right:1.5rem;bottom:1.5rem;bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.1rem;background:var(--accent);color:#fff;text-decoration:none;border-radius:999px;font-weight:600;font-size:.88rem;box-shadow:0 6px 20px #7b5e8059;transition:background .15s,transform .1s,box-shadow .15s;z-index:90}.patient-shell .coach-fab:hover{background:var(--accent-light);box-shadow:0 8px 24px #7b5e8066}.patient-shell .coach-fab:active{transform:scale(.97)}.patient-shell .coach-fab-hidden{transform:translateY(140%);opacity:0;pointer-events:none;transition:transform .25s ease,opacity .2s ease}.patient-shell .coach-fab svg{width:18px;height:18px}.patient-shell .coach-page{max-width:860px;margin:0 auto;display:flex;flex-direction:column;height:calc(100vh - 56px - 3rem);height:calc(100dvh - 56px - 3rem);min-height:520px}.patient-shell .coach-page-header{display:flex;align-items:center;gap:.75rem;padding-bottom:.9rem;margin-bottom:.5rem;border-bottom:1px solid var(--border-light)}.patient-shell .coach-avatar-badge{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.patient-shell .coach-avatar-badge svg{width:22px;height:22px}.patient-shell .coach-header-text h2{margin:0;font-size:1.15rem;font-weight:500}.patient-shell .coach-header-text p{margin:.15rem 0 0;font-size:.82rem;color:var(--text-secondary)}.patient-shell .coach-scroll{flex:1;overflow-y:auto;padding:.75rem .25rem 1rem;display:flex;flex-direction:column;gap:.85rem;scroll-behavior:smooth}.patient-shell .coach-disclaimer{align-self:center;max-width:600px;text-align:center;font-size:.78rem;color:var(--text-muted);padding:.5rem .9rem;border-radius:999px;background:var(--surface2);line-height:1.4}.patient-shell .coach-msg{display:flex;align-items:flex-end;gap:.5rem;max-width:100%}.patient-shell .coach-msg-user{justify-content:flex-end}.patient-shell .coach-msg-assistant{justify-content:flex-start}.patient-shell .coach-msg-avatar{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.78rem;font-weight:600}.patient-shell .coach-msg-avatar-assistant{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}.patient-shell .coach-msg-avatar-assistant svg{width:15px;height:15px}.patient-shell .coach-msg-avatar-user{background:var(--surface2);color:var(--text-primary);border:1px solid var(--border)}.patient-shell .coach-msg-bubble{max-width:calc(100% - 40px);padding:.7rem 1rem;border-radius:16px;font-size:.92rem;line-height:1.55;overflow-wrap:break-word;word-break:break-word}.patient-shell .coach-msg-user .coach-msg-bubble{background:var(--accent);color:#fff;border-bottom-right-radius:4px}.patient-shell .coach-msg-assistant .coach-msg-bubble{background:var(--surface);color:var(--text-primary);border:1px solid var(--border);border-bottom-left-radius:4px}.patient-shell .coach-msg-error .coach-msg-bubble{background:#ef44440f;border-color:#ef44444d;color:var(--danger)}.patient-shell .coach-msg-md>:first-child{margin-top:0}.patient-shell .coach-msg-md>:last-child{margin-bottom:0}.patient-shell .coach-msg-md p{margin:0 0 .55rem}.patient-shell .coach-msg-md strong{font-weight:600}.patient-shell .coach-msg-md em{font-style:italic}.patient-shell .coach-msg-md ul,.patient-shell .coach-msg-md ol{margin:0 0 .55rem;padding-left:1.2rem}.patient-shell .coach-msg-md li{margin:.15rem 0}.patient-shell .coach-msg-md li>p{margin:0}.patient-shell .coach-msg-md h1,.patient-shell .coach-msg-md h2,.patient-shell .coach-msg-md h3{margin:.4rem 0 .3rem;font-weight:600;line-height:1.3}.patient-shell .coach-msg-md h1{font-size:1.15rem}.patient-shell .coach-msg-md h2{font-size:1.05rem}.patient-shell .coach-msg-md h3{font-size:1rem}.patient-shell .coach-msg-md a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.patient-shell .coach-msg-md code{background:var(--surface-2);padding:.1rem .3rem;border-radius:4px;font-family:JetBrains Mono,Menlo,Consolas,monospace;font-size:.85em}.patient-shell .coach-msg-md pre{background:var(--surface-2);padding:.6rem .8rem;border-radius:8px;overflow-x:auto;margin:.3rem 0 .55rem;font-size:.85em}.patient-shell .coach-msg-md pre code{background:transparent;padding:0;border-radius:0}.patient-shell .coach-msg-md blockquote{border-left:3px solid var(--accent);margin:.3rem 0 .55rem;padding:.1rem .7rem;color:var(--text-secondary)}.patient-shell .coach-msg-md hr{border:0;border-top:1px solid var(--border);margin:.6rem 0}.patient-shell .coach-msg-md table{border-collapse:collapse;margin:.3rem 0 .55rem;font-size:.9em}.patient-shell .coach-msg-md th,.patient-shell .coach-msg-md td{border:1px solid var(--border);padding:.3rem .5rem;text-align:left}.patient-shell .coach-msg-md th{background:var(--surface-2);font-weight:600}.patient-shell .coach-typing{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-secondary)}.patient-shell .coach-typing-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-light);animation:coach-typing-bounce 1.2s ease-in-out infinite}.patient-shell .coach-typing-dot:nth-child(2){animation-delay:.15s}.patient-shell .coach-typing-dot:nth-child(3){animation-delay:.3s}.patient-shell .coach-typing-label{margin-left:.25rem;font-size:.78rem;font-style:italic}@keyframes coach-typing-bounce{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.patient-shell .coach-starters{margin-top:.5rem;padding:.25rem .15rem}.patient-shell .coach-starters-label{font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.55rem;padding-left:.15rem}.patient-shell .coach-starters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem}.patient-shell .coach-starter-chip{text-align:left;padding:.7rem .9rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:.85rem;font-weight:500;cursor:pointer;line-height:1.4;transition:background .15s,border-color .15s,transform .1s}.patient-shell .coach-starter-chip:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent2)}.patient-shell .coach-starter-chip:active:not(:disabled){transform:scale(.98)}.patient-shell .coach-starter-chip:disabled{opacity:.6;cursor:not-allowed}.patient-shell .coach-composer{display:flex;align-items:center;gap:.5rem;padding:.5rem .6rem .5rem .9rem;margin-top:.5rem;background:var(--surface);border:1.5px solid var(--border);border-radius:22px;transition:border-color .15s,box-shadow .15s}.patient-shell .coach-composer.has-multiline{align-items:flex-end}.patient-shell .coach-composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #7b5e801a}.patient-shell .coach-composer-input{flex:1;min-height:24px;max-height:140px;border:none;outline:none;background:transparent;font-family:inherit;font-size:.92rem;line-height:1.5;color:var(--text-primary);resize:none}.patient-shell .coach-composer-input::-moz-placeholder{color:var(--text-muted)}.patient-shell .coach-composer-input::placeholder{color:var(--text-muted)}.patient-shell .coach-composer-send{width:36px;height:36px;border-radius:50%;border:none;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,transform .1s;flex-shrink:0}.patient-shell .coach-composer-send:hover:not(:disabled){background:var(--accent-light)}.patient-shell .coach-composer-send:active:not(:disabled){transform:scale(.95)}.patient-shell .coach-composer-send:disabled{background:var(--surface3);color:var(--text-muted);cursor:not-allowed}.patient-shell .coach-composer-send svg{width:16px;height:16px}.patient-shell .coach-composer-mic{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--border);background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .1s;flex-shrink:0}.patient-shell .coach-composer-mic:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.patient-shell .coach-composer-mic:disabled{opacity:.6;cursor:not-allowed}.patient-shell .coach-composer-mic.recording{background:var(--accent);border-color:var(--accent);color:#fff;animation:voice-pulse 1.2s ease-in-out infinite}.patient-shell .coach-composer-mic svg{width:16px;height:16px}.patient-shell .coach-voice-error{margin-top:.35rem;font-size:.8rem;color:var(--danger, #c0392b);text-align:center}.patient-shell .loading-spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.patient-shell .app-topbar{padding:0 1rem}.patient-shell .content-area{padding:1.25rem;padding-bottom:calc(5.5rem + env(safe-area-inset-bottom,0px))}.patient-shell .coach-fab{right:1rem;bottom:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));padding:.7rem 1rem;font-size:.82rem}.patient-shell .coach-page{height:calc(100vh - 56px);height:calc(100dvh - 56px);padding:.75rem .9rem max(.75rem,env(safe-area-inset-bottom,0px))}.patient-shell .coach-msg-bubble{font-size:.88rem}.patient-shell .coach-starters-grid{grid-template-columns:1fr}.patient-shell .checkin-page{height:calc(100vh - 56px);height:calc(100dvh - 56px);max-height:calc(100dvh - 56px);min-height:0;border-radius:0;border-left:none;border-right:none}.patient-shell .checkin-body{padding:1.25rem 1.1rem .75rem}.patient-shell .checkin-footer{padding:.85rem 1.1rem}.patient-shell .pain-scale{gap:4px}.patient-shell .pain-btn{max-width:36px;font-size:.85rem}.patient-shell .stepper-btn{width:52px;height:52px;font-size:1.5rem}.patient-shell .stepper-num{font-size:1.75rem}.patient-shell .energy-scale{gap:.3rem}.patient-shell .energy-option{padding:.55rem .15rem}.patient-shell .energy-emoji{width:30px;height:30px}.patient-shell .energy-emoji svg{width:30px;height:30px}.patient-shell .energy-label{font-size:.66rem}}.patient-shell .cal-header-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem}.patient-shell .cal-title{font-family:Fraunces,Georgia,serif;font-size:1rem;font-weight:600;margin:0;color:var(--text-primary)}.patient-shell .cal-pdf-btn{font-size:.78rem;padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);cursor:pointer;transition:background .15s,border-color .15s}.patient-shell .cal-pdf-btn:hover{background:var(--surface2);border-color:var(--accent)}.patient-shell .cal-grid-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.25rem}.patient-shell .cal-row{display:grid;gap:2px;align-items:center;margin-bottom:2px}.patient-shell .cal-label{font-size:.72rem;font-weight:500;color:var(--text-secondary);display:flex;align-items:center;gap:4px;padding-right:6px;min-width:0}.patient-shell .cal-label-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.15;word-break:break-word;min-width:0}.patient-shell .cal-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;display:inline-block}.patient-shell .cal-cell{height:20px;border-radius:3px;cursor:pointer;border:1px solid transparent;transition:transform .1s,opacity .1s}.patient-shell .cal-cell.taken{opacity:.85}.patient-shell .cal-cell.missed{background:var(--surface2)!important;border-color:var(--border)}.patient-shell .cal-cell:hover{transform:scale(1.12);opacity:.7}.patient-shell .cal-cell.selected,.patient-shell .cal-pain-cell.selected{box-shadow:inset 0 0 0 2px var(--text-primary)}.patient-shell .cal-pain-cell{height:20px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:700;cursor:pointer;transition:transform .1s}.patient-shell .cal-pain-cell:hover{transform:scale(1.12)}.patient-shell .cal-cycle-cell{height:5px;border-radius:2px}.patient-shell .cal-hcell{font-size:.6rem;color:var(--text-muted);text-align:center;padding:2px 0;font-weight:500}.patient-shell .cal-legend{display:flex;gap:14px;flex-wrap:wrap;padding-top:.85rem;margin-top:.75rem;border-top:1px solid var(--border-light)}.patient-shell .cal-legend-item{display:flex;align-items:center;gap:5px;font-size:.72rem;color:var(--text-secondary)}.patient-shell .cal-legend-sq{width:10px;height:10px;border-radius:2px;display:inline-block}.patient-shell .cal-day-detail{position:relative}.patient-shell .cal-day-head{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.patient-shell .cal-day-title{font-family:Fraunces,Georgia,serif;font-size:1.05rem;font-weight:600;color:var(--text-primary)}.patient-shell .cal-day-phase{font-size:.72rem;color:var(--text-muted);margin-top:2px;text-transform:capitalize}.patient-shell .cal-day-score{font-family:Fraunces,Georgia,serif;font-size:1.15rem;font-weight:600;padding:4px 14px;border-radius:999px;margin-left:auto}.patient-shell .cal-day-score-soft{font-size:.78rem;font-weight:500;padding:4px 12px;border-radius:999px;background:var(--surface2);color:var(--text-secondary);margin-left:auto}.patient-shell .cal-day-close{background:none;border:none;color:var(--text-muted);font-size:1.4rem;line-height:1;cursor:pointer;padding:0 4px}.patient-shell .cal-day-close:hover{color:var(--text-primary)}.patient-shell .cal-entries{margin-bottom:.75rem}.patient-shell .cal-entry-row{display:flex;align-items:center;gap:10px;padding:6px 0}.patient-shell .cal-entry-row+.cal-entry-row{border-top:1px solid var(--border-light)}.patient-shell .cal-entry-score{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:600;flex-shrink:0}.patient-shell .cal-entry-body{flex:1;min-width:0}.patient-shell .cal-entry-line{font-size:.8rem;font-weight:500;color:var(--text-primary)}.patient-shell .cal-entry-time{color:var(--text-muted);font-weight:400}.patient-shell .cal-entry-meta{font-size:.72rem;color:var(--text-secondary)}.patient-shell .cal-entry-notes{font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-shell .cal-entry-delete{width:24px;height:24px;border-radius:50%;border:1px solid var(--border);background:var(--surface2);color:var(--text-muted);cursor:pointer;flex-shrink:0;font-size:.85rem;line-height:1}.patient-shell .cal-detail-section{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-light)}.patient-shell .cal-detail-label{font-size:.76rem;font-weight:500;color:var(--text-secondary);margin-bottom:.5rem}.patient-shell .cal-med-chips{display:flex;flex-wrap:wrap;gap:6px}.patient-shell .cal-med-chip{font-size:.75rem;padding:4px 12px;border-radius:999px;background:var(--surface2);color:var(--text-muted);border:1px solid var(--border);text-decoration:line-through;cursor:pointer;transition:transform .1s}.patient-shell .cal-med-chip.taken{text-decoration:none;border-color:transparent}.patient-shell .cal-med-chip:hover{transform:translateY(-1px)}.patient-shell .cal-med-chip:disabled{cursor:default;opacity:.7}.patient-shell .cal-detail-meta{font-size:.78rem;color:var(--text-secondary);margin-top:.5rem}.patient-shell .cal-detail-empty{font-size:.82rem;color:var(--text-muted);font-style:italic}.patient-shell .cal-pain-picker{display:flex;gap:4px;flex-wrap:wrap}.patient-shell .cal-pain-btn{width:30px;height:30px;border-radius:50%;border:1px solid var(--border);background:var(--surface2);color:var(--text-primary);font-size:.75rem;font-weight:600;cursor:pointer;transition:transform .1s}.patient-shell .cal-pain-btn:hover{transform:scale(1.1)}.patient-shell .cal-detail-notes{width:100%;font-size:.85rem;border:1px solid var(--border);border-radius:8px;padding:8px 10px;resize:vertical;font-family:inherit;background:var(--surface2);color:var(--text-primary)}.patient-shell .cal-notes-save{margin-top:6px;font-size:.78rem;padding:6px 16px;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer}.patient-shell .cal-notes-save:disabled{opacity:.6;cursor:default}.patient-shell .adh-row{display:flex;align-items:center;gap:10px;margin-bottom:.65rem}.patient-shell .adh-row:last-child{margin-bottom:0}.patient-shell .adh-label{font-size:.85rem;font-weight:500;color:var(--text-primary);width:110px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-shell .adh-track{flex:1;height:10px;background:var(--surface2);border-radius:5px;overflow:hidden}.patient-shell .adh-fill{height:100%;border-radius:5px}.patient-shell .adh-pct{font-size:.85rem;font-weight:600;color:var(--text-primary);min-width:52px;text-align:right}.patient-shell .pp-card-desc{font-size:.82rem;color:var(--text-secondary);line-height:1.55;margin:0 0 .85rem}.patient-shell .pp-card-title{margin:0 0 .25rem}.patient-shell .pp-metrics-card{padding:.75rem}.patient-shell .pp-metrics-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}@media (min-width: 720px){.patient-shell .pp-metrics-row{grid-template-columns:repeat(4,minmax(0,1fr))}}.patient-shell .pp-metric{display:flex;flex-direction:column;gap:.2rem;padding:.8rem .85rem;border-radius:12px;background:var(--surface2);border:1px solid var(--border-light);min-height:88px;animation:pp-metric-rise .45s cubic-bezier(.22,1,.36,1) both}.patient-shell .pp-metric:nth-child(1){animation-delay:0ms}.patient-shell .pp-metric:nth-child(2){animation-delay:70ms}.patient-shell .pp-metric:nth-child(3){animation-delay:.14s}.patient-shell .pp-metric:nth-child(4){animation-delay:.21s}@keyframes pp-metric-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.patient-shell .pp-metric-label{font-size:.68rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600;line-height:1.2}.patient-shell .pp-metric-val{font-family:Fraunces,Georgia,serif;font-size:1.5rem;font-weight:600;color:var(--text-primary);line-height:1.1;font-variant-numeric:tabular-nums}.patient-shell .pp-metric-val-tinted{font-weight:700;-webkit-text-stroke:.6px color-mix(in srgb,currentColor 55%,var(--text-primary) 45%);paint-order:stroke fill}.patient-shell .pp-metric-sub{font-size:.7rem;color:var(--text-muted)}.patient-shell .pp-metric-fade{opacity:0;transition:opacity .35s ease}.patient-shell .pp-metric-fade.is-shown{opacity:1}.patient-shell .pp-metric-up{color:var(--danger)}.patient-shell .pp-metric-down{color:var(--success)}.patient-shell .pp-metric-neutral{color:var(--text-muted)}.patient-shell .pp-alert{background:linear-gradient(135deg,#ef44440f,#f59e0b14);border:1px solid rgba(239,68,68,.18)}.patient-shell .pp-alert-badge{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;color:var(--danger);margin-bottom:.4rem}.patient-shell .pp-alert-dot{width:8px;height:8px;border-radius:50%;background:var(--danger);animation:pulse-danger 2s infinite}@keyframes pulse-danger{0%,to{opacity:1}50%{opacity:.5}}.patient-shell .pp-alert-title{font-family:Fraunces,Georgia,serif;font-size:1rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.patient-shell .pp-alert-title em{font-style:normal;color:var(--danger);font-weight:700}.patient-shell .pp-alert-body{font-size:.85rem;color:var(--text-secondary);padding-left:1.1rem;margin:.25rem 0;line-height:1.55}.patient-shell .pp-alert-actions{font-size:.78rem;color:var(--text-primary);background:var(--surface2);border-radius:8px;padding:8px 12px;margin-top:.5rem}.patient-shell .pp-trend-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:.25rem}.patient-shell .pp-trend-nav{display:flex;gap:6px;flex-shrink:0}.patient-shell .pp-trend-nav-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:1.1rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .16s ease,background .16s ease,border-color .16s ease,opacity .16s ease}.patient-shell .pp-trend-nav-btn:hover:not(:disabled){background:var(--surface2);border-color:var(--text-muted);transform:translateY(-1px)}.patient-shell .pp-trend-nav-btn:active:not(:disabled){transform:scale(.94)}.patient-shell .pp-trend-nav-btn:disabled{opacity:.35;cursor:not-allowed}.patient-shell .pp-trend-chart{display:flex;align-items:flex-end;gap:6px;min-height:160px;padding:6px 0;margin-bottom:.75rem;overflow:hidden}.patient-shell .pp-trend-slide-left{animation:pp-trend-slide-from-right .32s cubic-bezier(.22,1,.36,1)}.patient-shell .pp-trend-slide-right{animation:pp-trend-slide-from-left .32s cubic-bezier(.22,1,.36,1)}@keyframes pp-trend-slide-from-right{0%{transform:translate(22px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes pp-trend-slide-from-left{0%{transform:translate(-22px);opacity:0}to{transform:translate(0);opacity:1}}.patient-shell .pp-trend-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.patient-shell .pp-trend-bar{width:100%;max-width:36px;border-radius:6px 6px 0 0;min-height:2px;height:var(--pp-bar-height, 2px);transform-origin:bottom center;animation:pp-trend-bar-grow .52s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--pp-bar-delay, 0ms)}@keyframes pp-trend-bar-grow{0%{transform:scaleY(0);opacity:0}60%{opacity:1}to{transform:scaleY(1);opacity:1}}@media (prefers-reduced-motion: reduce){.patient-shell .pp-trend-slide-left,.patient-shell .pp-trend-slide-right,.patient-shell .pp-trend-bar{animation:none}}.patient-shell .pp-trend-bar-val{font-size:.68rem;font-weight:600;color:var(--text-secondary)}.patient-shell .pp-trend-label{font-size:.66rem;color:var(--text-muted);text-align:center;white-space:nowrap}.patient-shell .pp-trend-insight{font-size:.85rem;font-weight:500;padding:8px 14px;border-radius:8px;margin-top:.25rem}.patient-shell .pp-trend-insight.improving{background:#eef8f2;color:#27500a}.patient-shell .pp-trend-insight.worsening{background:#fef0f4;color:#791f1f}.patient-shell .pp-trend-insight.stable{background:#eef2fc;color:#0c447c}.patient-shell .pp-patterns-list{display:flex;flex-direction:column;gap:.6rem}.patient-shell .pp-pattern-card{padding:.75rem .9rem;border-radius:12px;border:1px solid var(--border);background:var(--surface2);position:relative}.patient-shell .pp-pattern-alert{background:#fef2f2;border-color:#fecaca}.patient-shell .pp-pattern-warn{background:#fffbeb;border-color:#fde68a}.patient-shell .pp-pattern-info{background:#f0f9ff;border-color:#bae6fd}.patient-shell .pp-pattern-title{font-weight:600;font-size:.9rem;color:var(--text-primary);margin-bottom:.3rem}.patient-shell .pp-pattern-body{font-size:.82rem;color:var(--text-secondary);line-height:1.55}.patient-shell .pp-phase-chart,.patient-shell .pp-sleep-chart{display:flex;align-items:flex-end;gap:14px;min-height:160px;padding:8px 4px 4px}.patient-shell .pp-sleep-chart{gap:22px}.patient-shell .pp-phase-col,.patient-shell .pp-sleep-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}.patient-shell .pp-phase-bar,.patient-shell .pp-sleep-bar{width:100%;max-width:44px;border-radius:6px 6px 0 0;min-height:2px;transition:height .5s cubic-bezier(.22,1,.36,1)}.patient-shell .pp-phase-val,.patient-shell .pp-sleep-val{font-size:.7rem;font-weight:600;color:var(--text-secondary)}.patient-shell .pp-phase-label,.patient-shell .pp-sleep-label{font-size:.68rem;color:var(--text-muted);text-align:center;white-space:nowrap}.patient-shell .pp-symptom-row{display:flex;align-items:center;gap:10px;margin-bottom:.5rem}.patient-shell .pp-symptom-row:last-child{margin-bottom:0}.patient-shell .pp-symptom-label{font-size:.82rem;color:var(--text-primary);width:130px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-shell .pp-symptom-track{flex:1;height:8px;background:var(--surface2);border-radius:4px;overflow:hidden}.patient-shell .pp-symptom-fill{height:100%;background:var(--accent);border-radius:4px}.patient-shell .pp-symptom-count{font-size:.82rem;font-weight:600;color:var(--text-primary);min-width:36px;text-align:right}.patient-shell .pp-trigger-row{display:flex;align-items:center;gap:10px;margin-bottom:.5rem}.patient-shell .pp-trigger-name{font-size:.82rem;color:var(--text-primary);width:130px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.patient-shell .pp-trigger-bar-wrap{flex:1;height:8px;background:var(--surface2);border-radius:4px;overflow:hidden}.patient-shell .pp-trigger-bar{height:100%;border-radius:4px}.patient-shell .pp-report-cta{display:flex;flex-direction:column;gap:.875rem;background:linear-gradient(135deg,#7b5e8014,#a8a0d00f);border:1px solid var(--border-light)}.patient-shell .pp-report-primary-row{display:flex;align-items:center;gap:1rem}.patient-shell .pp-report-text{flex:1;min-width:0}.patient-shell .pp-report-text strong{display:block;font-family:Fraunces,Georgia,serif;font-size:1rem;color:var(--text-primary);margin-bottom:.25rem}.patient-shell .pp-report-text p{font-size:.82rem;color:var(--text-secondary);margin:0;line-height:1.5}.patient-shell .pp-report-btn{padding:10px 20px;border-radius:999px;border:none;background:var(--accent);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:transform .15s,box-shadow .15s}.patient-shell .pp-report-btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px #7b5e8040}.patient-shell .pp-report-btn:disabled{opacity:.75;cursor:progress;transform:none;box-shadow:none}.patient-shell .pp-report-actions-secondary{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.625rem;border-top:1px dashed var(--border-light)}.patient-shell .pp-report-btn-secondary{padding:7px 14px;border-radius:999px;border:1px solid var(--border-light);background:transparent;color:var(--text-primary);font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.patient-shell .pp-report-btn-secondary:hover{background:#7b5e8014;border-color:var(--accent)}.patient-shell .pp-report-btn-secondary:disabled{opacity:.6;cursor:progress}@media (max-width: 480px){.patient-shell .pp-report-primary-row{flex-direction:column;align-items:stretch;text-align:left}.patient-shell .pp-report-btn{width:100%}.patient-shell .pp-report-btn-secondary{flex:1;text-align:center}}.patient-shell .report-gen-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:1.25rem;background:radial-gradient(ellipse at top,#7b5e8038,#0f0c1aad 65%,#090712d9);backdrop-filter:blur(10px) saturate(140%);-webkit-backdrop-filter:blur(10px) saturate(140%)}.patient-shell .report-gen-card{width:min(100%,420px);padding:1.75rem 1.5rem 1.4rem;border-radius:20px;background:linear-gradient(180deg,#fffffff5,#f8f4fceb);border:1px solid rgba(123,94,128,.16);box-shadow:0 24px 60px #120a2359,0 1px #ffffffb3 inset;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.patient-shell .report-gen-orb{position:relative;width:104px;height:104px;display:grid;place-items:center}.patient-shell .report-gen-orb-core,.patient-shell .report-gen-orb-ring,.patient-shell .report-gen-orb-halo{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;border-radius:999px;display:block}.patient-shell .report-gen-orb-core{width:44px;height:44px;background:radial-gradient(circle at 30% 30%,#fff,#d8c9f5 40%,#7b5e80);box-shadow:0 0 24px #7b5e808c,0 0 4px #ffffffe6 inset}.patient-shell .report-gen-orb-halo{width:104px;height:104px;background:radial-gradient(circle,#a8a0d073,#a8a0d000 65%);filter:blur(4px)}.patient-shell .report-gen-orb-ring{border:1.5px dashed rgba(123,94,128,.45);background:transparent}.patient-shell .report-gen-orb-ring-1{width:82px;height:82px}.patient-shell .report-gen-orb-ring-2{width:104px;height:104px;border-style:dotted;border-color:#a8a0d08c}.patient-shell .report-gen-stage{min-height:52px;display:flex;align-items:center;justify-content:center}.patient-shell .report-gen-title{font-family:Fraunces,Georgia,serif;font-size:1.15rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em;background:linear-gradient(90deg,#3b2447,#7b5e80 45%,#a8a0d0 70%,#7b5e80);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:reportGenShimmer 3.2s linear infinite}@keyframes reportGenShimmer{0%{background-position:0% 0%}to{background-position:200% 0%}}.patient-shell .report-gen-sub{font-size:.78rem;color:var(--text-muted);margin-top:4px;max-width:320px;line-height:1.4}.patient-shell .report-gen-steps{display:flex;gap:6px;margin-top:2px}.patient-shell .report-gen-step{width:22px;height:3px;border-radius:2px;background:#7b5e802e;transition:background .3s ease,transform .3s ease}.patient-shell .report-gen-step.is-active{background:#7b5e80bf}.patient-shell .report-gen-step.is-current{transform:scaleY(1.8);background:var(--accent, #7b5e80)}.patient-shell .report-gen-progress{width:100%;height:4px;border-radius:4px;background:#7b5e801f;overflow:hidden;margin-top:4px}.patient-shell .report-gen-progress-fill{display:block;height:100%;border-radius:4px;background:linear-gradient(90deg,#7b5e80,#a8a0d0,#7b5e80);background-size:200% 100%;animation:reportGenFillShift 2.2s linear infinite}@keyframes reportGenFillShift{0%{background-position:0% 0%}to{background-position:200% 0%}}@media (prefers-reduced-motion: reduce){.patient-shell .report-gen-title,.patient-shell .report-gen-progress-fill{animation:none}}.patient-shell .report-gen-eta{margin-top:10px;font-size:12px;color:#50465fc7;text-align:center;letter-spacing:.01em}.patient-shell .report-gen-eta strong{color:#4a3d59;font-weight:600}.patient-shell.intake-shell{min-height:100vh;min-height:100dvh;background:var(--bg)}.patient-shell .intake-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#2c2a2799;z-index:200;display:none;align-items:center;justify-content:center}.patient-shell .intake-overlay.active{display:flex}.patient-shell .intake-modal{background:var(--surface);border-radius:18px;width:90%;max-width:560px;max-height:85vh;overflow:hidden;padding:2rem;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column}@supports (max-height: 85dvh){.patient-shell .intake-modal{max-height:85dvh}}.patient-shell .intake-progress{display:flex;gap:6px;margin-bottom:2rem;flex-shrink:0}.patient-shell .intake-dot{flex:1;height:4px;border-radius:2px;background:var(--border);transition:background .3s}.patient-shell .intake-dot.completed{background:var(--accent)}.patient-shell .intake-dot.current{background:var(--accent2)}.patient-shell .intake-step{display:flex;flex-direction:column;flex:1;overflow-y:auto;min-height:0}.patient-shell .intake-title{font-family:Fraunces,Georgia,serif;font-size:1.3rem;margin-bottom:.5rem}.patient-shell .intake-desc{font-size:.9rem;color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.5}.patient-shell .intake-nav{display:flex;justify-content:space-between;margin-top:auto;padding-top:1rem;gap:.75rem;flex-shrink:0}.patient-shell .intake-skip-btn{opacity:.7;font-size:.85rem!important}.patient-shell .intake-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:1rem 0}.patient-shell .intake-welcome-icon{width:64px;height:64px;border-radius:50%;background:#7b5e8014;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.patient-shell .intake-welcome-features{display:flex;gap:2rem;margin-top:.5rem}.patient-shell .intake-welcome-feature{display:flex;flex-direction:column;align-items:center;gap:.15rem;font-size:.82rem;color:var(--text-secondary)}.patient-shell .intake-welcome-num{font-family:Fraunces,Georgia,serif;font-size:1.6rem;font-weight:500;color:var(--accent);line-height:1}.patient-shell .chip-group-single{flex-wrap:wrap}.patient-shell .screener-block{margin-top:1.25rem}.patient-shell .screener-prompt{font-weight:600;font-size:.9rem;margin-bottom:.75rem;color:var(--text)}.patient-shell .screener-item{padding:.75rem 0;border-top:1px solid var(--border)}.patient-shell .screener-q{font-size:.875rem;margin-bottom:.5rem;color:var(--text)}.patient-shell .screener-scale{gap:.4rem}.patient-shell .lmp-calendar{border:1px solid var(--border);border-radius:12px;padding:1rem;background:var(--surface);margin-top:.25rem}.patient-shell .lmp-cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.patient-shell .lmp-cal-nav{background:none;border:none;cursor:pointer;padding:.25rem .6rem;color:var(--text-secondary);font-size:1.2rem;border-radius:6px}.patient-shell .lmp-cal-nav:hover:not(:disabled){background:var(--bg)}.patient-shell .lmp-cal-nav:disabled{opacity:.35;cursor:default}.patient-shell .lmp-cal-month{font-size:.95rem;font-weight:600;color:var(--text-primary)}.patient-shell .lmp-cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.patient-shell .lmp-cal-weekday{text-align:center;font-size:.7rem;color:var(--text-tertiary);font-weight:600;padding:.25rem 0}.patient-shell .lmp-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.patient-shell .lmp-cal-day{text-align:center;font-size:.85rem;padding:.5rem 0;border:none;background:transparent;border-radius:6px;cursor:pointer;transition:background .15s,color .15s;color:var(--text-primary)}.patient-shell .lmp-cal-day:hover:not(:disabled){background:var(--bg)}.patient-shell .lmp-cal-day.selected{background:var(--accent);color:#fff}.patient-shell .lmp-cal-day.pending{background:var(--accent2);color:#fff;animation:lmp-pulse 1.2s infinite}.patient-shell .lmp-cal-day.future{color:var(--text-tertiary);opacity:.35;cursor:default}.patient-shell .lmp-cal-day.detected{background:#d4607a2e;color:var(--text-primary);border:1px dashed rgba(212,96,122,.6)}.patient-shell .lmp-cal-day.detected:hover:not(:disabled){background:#d4607a4d}.patient-shell .lmp-cal-day.predicted{background:#7b5e800f;color:var(--text-tertiary);border:1px dashed rgba(123,94,128,.4);cursor:default}.patient-shell .lmp-cal-legend{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.6rem;font-size:.72rem;color:var(--text-muted)}.patient-shell .lmp-legend-item{display:inline-flex;align-items:center;gap:.3rem}.patient-shell .lmp-legend-swatch{width:10px;height:10px;border-radius:3px;display:inline-block}.patient-shell .lmp-legend-logged{background:var(--accent)}.patient-shell .lmp-legend-detected{background:#d4607a33;border:1px dashed rgba(212,96,122,.7)}.patient-shell .lmp-legend-predicted{background:#7b5e8014;border:1px dashed rgba(123,94,128,.5)}.patient-shell .lmp-range-item.lmp-range-detected{background:#d4607a1f;color:var(--text-primary);border:1px dashed rgba(212,96,122,.55)}.patient-shell .lmp-range-item.lmp-range-detected button{color:var(--accent);font-size:.85rem;font-weight:700}.patient-shell .lmp-range-item.lmp-range-detected button:hover{color:#c94066}.patient-shell .lmp-range-flag{font-style:normal;color:var(--text-tertiary);font-size:.7rem;margin-left:.25rem}@keyframes lmp-pulse{0%,to{box-shadow:0 0 #7b5e8059}50%{box-shadow:0 0 0 4px #7b5e8000}}.patient-shell .lmp-range-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.85rem;align-items:center}.patient-shell .lmp-range-label{font-size:.78rem;color:var(--text-tertiary);margin-right:.25rem}.patient-shell .lmp-range-item{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:16px;font-size:.78rem;font-weight:500;background:#7b5e801a;color:var(--accent);border:1px solid rgba(123,94,128,.2)}.patient-shell .lmp-range-item button{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:1rem;line-height:1;padding:0}.patient-shell .lmp-range-item button:hover{color:var(--danger)}.patient-shell .lmp-hint{margin-top:.75rem;padding:.6rem .85rem;background:#7b5e800f;border-left:3px solid var(--accent);border-radius:8px;font-size:.82rem;color:var(--text-secondary);display:flex;align-items:center;justify-content:space-between;gap:.5rem}.patient-shell .lmp-hint-clear{background:none;border:none;cursor:pointer;color:var(--accent2);font-size:.8rem;text-decoration:underline;padding:0}.patient-shell .celebration-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#2c2a27b3;z-index:250;display:none;align-items:center;justify-content:center}.patient-shell .celebration-overlay.active{display:flex}.patient-shell .celebration-content{text-align:center;position:relative}.patient-shell .celebration-check{width:80px;height:80px;margin:0 auto 1.5rem}.patient-shell .celebration-svg{width:80px;height:80px}.patient-shell .celebration-title{font-family:Fraunces,Georgia,serif;font-size:1.5rem;font-weight:500;color:#fff;margin-bottom:.5rem;opacity:0;transform:translateY(10px);animation:celebration-fade-up .4s ease-out .3s forwards}.patient-shell .celebration-subtitle{font-size:.95rem;color:#fffc;opacity:0;transform:translateY(10px);animation:celebration-fade-up .4s ease-out .5s forwards}@keyframes celebration-fade-up{to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.patient-shell .intake-overlay{height:100vh;height:100dvh}.patient-shell .intake-modal{width:100%;max-width:100%;border-radius:0;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;padding:calc(env(safe-area-inset-top,0px) + 1.25rem) 1.25rem calc(env(safe-area-inset-bottom,0px) + 1.25rem)}.patient-shell .intake-progress{margin-bottom:1rem}.patient-shell .intake-nav{padding-top:.75rem;padding-bottom:.5rem;border-top:1px solid var(--border)}}.patient-shell .btn-danger{background:#ef4444;color:#fff;border:1px solid #ef4444}.patient-shell .btn-danger:hover{background:#dc2626;border-color:#dc2626}.patient-shell .btn-danger:disabled{background:#fca5a5;border-color:#fca5a5;cursor:not-allowed}.patient-shell .card.card-danger{border-color:#ef444447;background:linear-gradient(to bottom,var(--surface),rgba(239,68,68,.02))}.patient-shell .inline-error{margin:.75rem 0;padding:.6rem .85rem;border-radius:10px;background:#ef444414;border:1px solid rgba(239,68,68,.22);color:#b91c1c;font-size:.85rem}.patient-shell .modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#2d284373;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.patient-shell .modal-panel{width:100%;max-width:440px;background:var(--surface);border-radius:16px;padding:1.5rem;box-shadow:0 24px 60px #2d284338}.patient-shell .modal-panel h3{margin:0 0 .5rem;font-family:Fraunces,Georgia,serif;font-size:1.25rem}.patient-shell .modal-panel p{margin:0 0 1rem;color:var(--text-secondary);font-size:.9rem;line-height:1.5}.patient-shell .modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.patient-shell .card-header-sub{margin-left:auto;font-size:.78rem;color:var(--text-secondary);font-weight:400}.patient-shell .profile-page,.patient-shell .settings-page{max-width:780px;margin:0 auto;padding-bottom:6rem}.patient-shell .profile-header,.patient-shell .settings-page .profile-header{margin-bottom:1.5rem}.patient-shell .profile-header h1{font-family:Fraunces,Georgia,serif;font-size:1.8rem;margin:0 0 .35rem}.patient-shell .profile-header p{margin:0;color:var(--text-secondary);font-size:.9rem}.patient-shell .profile-header a{color:var(--accent);text-decoration:none}.patient-shell .profile-header a:hover{text-decoration:underline}.patient-shell .profile-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.patient-shell .profile-grid-2>*{min-width:0}@media (max-width: 520px){.patient-shell .profile-grid-2{grid-template-columns:1fr}}.patient-shell .profile-history-heading{margin:2rem 0 .75rem;font-family:Fraunces,Georgia,serif;font-size:1.1rem;color:var(--text-primary)}.patient-shell .profile-save-bar{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);display:flex;align-items:center;gap:.85rem;padding:.65rem .85rem .65rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:0 18px 40px #2d284329;z-index:140;max-width:calc(100vw - 2rem)}.patient-shell .profile-save-label{font-size:.85rem;color:var(--text-secondary)}.patient-shell .card.accordion{padding:0}.patient-shell .accordion-head{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:1rem 1.25rem;font-family:inherit;font-size:.95rem;font-weight:500;color:var(--text-primary);text-align:left;cursor:pointer;border-radius:14px;transition:background .15s}.patient-shell .accordion-head:hover{background:var(--surface2)}.patient-shell .accordion-title{display:inline-flex;align-items:center;gap:.5rem}.patient-shell .accordion-chev{width:18px;height:18px;color:var(--text-secondary);flex:0 0 auto}.patient-shell .accordion-body{overflow:hidden}.patient-shell .accordion-inner{padding:1rem 1.25rem 1.25rem;border-top:1px solid var(--border-light)}.patient-shell .accordion-hint{margin:0 0 .85rem;color:var(--text-secondary);font-size:.85rem;line-height:1.45}.patient-shell .profile-meds-card .card-header{justify-content:space-between}.patient-shell .med-add-form{padding:1rem;border-radius:12px;background:var(--surface2);border:1px solid var(--border-light)}.patient-shell .med-list{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.patient-shell .med-row{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem .9rem;background:var(--surface2);border-radius:10px;border:1px solid var(--border-light)}.patient-shell .med-row-body{flex:1;min-width:0}.patient-shell .med-row-name{font-weight:500;color:var(--text-primary);font-size:.92rem}.patient-shell .med-row-detail{margin-top:.15rem;font-size:.8rem;color:var(--text-secondary)}.patient-shell .med-row-pill{display:inline-block;margin-top:.35rem;font-size:.7rem;padding:.15rem .5rem;border-radius:999px;background:var(--accent-light);color:var(--accent);font-weight:500}.patient-shell .med-row-delete{border:none;background:transparent;font-size:1.35rem;line-height:1;color:var(--text-secondary);width:28px;height:28px;border-radius:6px;cursor:pointer;flex:0 0 auto;transition:background .15s,color .15s}.patient-shell .med-row-delete:hover{background:#ef44441a;color:#dc2626}.patient-shell .med-empty{margin:.75rem 0 0;color:var(--text-secondary);font-size:.88rem;text-align:center;padding:1rem .5rem}.patient-shell .med-empty p{margin:0}.patient-shell .med-none-btn{margin-top:.65rem;background:none;border:1px solid var(--border);border-radius:999px;padding:.35rem .9rem;color:var(--text-secondary);font-size:.82rem;cursor:pointer;transition:border-color .15s,color .15s}.patient-shell .med-none-btn:hover{border-color:var(--accent);color:var(--accent)}.patient-shell .med-none-btn:disabled{opacity:.6;cursor:default}.patient-shell .med-none-undo{background:none;border:none;padding:0;color:var(--accent);font:inherit;cursor:pointer;text-decoration:underline}.patient-shell .med-none-undo:disabled{opacity:.6;cursor:default}.patient-shell .med-form-grid{display:flex;flex-direction:column;gap:.35rem}.patient-shell .med-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media (max-width: 480px){.patient-shell .med-form-row{grid-template-columns:1fr}}.patient-shell .med-form-checkbox{display:inline-flex;align-items:center;gap:.5rem;font-size:.88rem;color:var(--text-secondary);cursor:pointer;margin:.25rem 0}.patient-shell .med-form-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem}.patient-shell .med-suggestions{margin-bottom:.75rem}.patient-shell .med-suggestions-label{font-size:.78rem;color:var(--text-secondary);margin-bottom:.4rem}.patient-shell .med-suggestions-label .form-hint{font-size:.72rem;opacity:.7}.patient-shell .med-suggestions-row{display:flex;flex-wrap:wrap;gap:.4rem}.patient-shell .med-suggestion{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.4rem .75rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;font-family:inherit;cursor:pointer;transition:border-color .15s,background .15s}.patient-shell .med-suggestion:hover{border-color:var(--accent2)}.patient-shell .med-suggestion.active{border-color:var(--accent);background:var(--accent-light)}.patient-shell .med-suggestion-name{font-size:.82rem;font-weight:500;color:var(--text-primary)}.patient-shell .med-suggestion-dose{font-size:.7rem;color:var(--text-secondary)}.patient-shell .settings-inline-input{display:flex;gap:.5rem;align-items:stretch}.patient-shell .settings-inline-input .form-input{flex:1}.patient-shell .theme-row{display:flex;gap:.5rem;margin-top:.25rem}.patient-shell .theme-pill{flex:1;padding:.55rem .75rem;border-radius:10px;border:1px solid var(--border);background:var(--surface);font-family:inherit;font-size:.88rem;color:var(--text-secondary);cursor:pointer;transition:border-color .15s,background .15s,color .15s}.patient-shell .theme-pill:hover{border-color:var(--accent2)}.patient-shell .theme-pill.active{border-color:var(--accent);background:var(--accent-light);color:var(--accent);font-weight:500}.patient-shell .toggle-row{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--border-light)}.patient-shell .toggle-row:last-child{border-bottom:none}.patient-shell .toggle-body{flex:1}.patient-shell .toggle-label{font-size:.92rem;color:var(--text-primary);font-weight:500}.patient-shell .toggle-hint{margin-top:.15rem;font-size:.8rem;color:var(--text-secondary)}.patient-shell .toggle-switch{width:44px;height:24px;border-radius:999px;background:var(--border);border:none;position:relative;cursor:pointer;padding:2px;flex:0 0 auto;transition:background .2s}.patient-shell .toggle-switch.on{background:var(--accent)}.patient-shell .toggle-knob{display:block;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0000001f}.patient-shell .settings-action{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--border-light)}.patient-shell .settings-action:last-child{border-bottom:none}.patient-shell .settings-action>div:first-child{flex:1}.patient-shell .settings-action-label{font-size:.92rem;color:var(--text-primary);font-weight:500}.patient-shell .settings-action-hint{margin-top:.15rem;font-size:.8rem;color:var(--text-secondary)}.patient-shell .wearable-status-pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:500;letter-spacing:.01em;vertical-align:middle;border:1px solid transparent}.patient-shell .wearable-status-pill.tone-ok{background:color-mix(in srgb,var(--success, #2e7d32) 12%,transparent);color:var(--success, #2e7d32);border-color:color-mix(in srgb,var(--success, #2e7d32) 25%,transparent)}.patient-shell .wearable-status-pill.tone-warn{background:color-mix(in srgb,var(--warn, #b26a00) 12%,transparent);color:var(--warn, #b26a00);border-color:color-mix(in srgb,var(--warn, #b26a00) 25%,transparent)}.patient-shell .wearable-status-pill.tone-err{background:color-mix(in srgb,var(--danger, #b3261e) 12%,transparent);color:var(--danger, #b3261e);border-color:color-mix(in srgb,var(--danger, #b3261e) 25%,transparent)}.patient-shell .wearable-status-pill.tone-neutral{background:var(--bg);color:var(--text-secondary);border-color:var(--border-light)}.custom-select{position:relative;width:100%;font-family:inherit}.custom-select-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.6rem .85rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;font-family:inherit;font-size:.9rem;color:var(--text-primary);cursor:pointer;transition:border-color .15s,box-shadow .15s}.custom-select-trigger:hover:not(:disabled){border-color:var(--accent2)}.custom-select-trigger:focus-visible,.custom-select.open .custom-select-trigger{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.custom-select.disabled .custom-select-trigger{opacity:.55;cursor:not-allowed}.custom-select-value{flex:1;min-width:0;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-value.is-placeholder{color:var(--text-secondary)}.custom-select-caret{flex-shrink:0;color:var(--text-secondary);transition:transform .18s ease}.custom-select.open .custom-select-caret{transform:rotate(180deg)}.custom-select-list{position:absolute;top:calc(100% + 6px);left:0;right:0;margin:0;padding:.3rem;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 30px -10px #24143638;overflow-y:auto;z-index:50;transform-origin:top center}.custom-select-option{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .7rem;border-radius:8px;font-size:.9rem;color:var(--text-primary);cursor:pointer;transition:background .1s}.custom-select-option.active{background:var(--surface2)}.custom-select-option.selected{color:var(--accent);font-weight:500}.custom-select-option svg{flex-shrink:0;color:var(--accent)}.patient-shell .recent-date{position:relative}.patient-shell .recent-date-trigger{display:inline-flex;align-items:center;gap:.5rem;width:100%;padding:.6rem .85rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;font-family:inherit;font-size:.9rem;color:var(--text-secondary);cursor:pointer;transition:border-color .15s,color .15s}.patient-shell .recent-date-trigger:hover{border-color:var(--accent2)}.patient-shell .recent-date-trigger.has-value{color:var(--text-primary)}.patient-shell .recent-date-trigger svg{color:var(--accent);flex:0 0 auto}.patient-shell .recent-date-trigger span:not(.recent-date-clear){flex:1;text-align:left}.patient-shell .recent-date-clear{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:1rem;line-height:1;color:var(--text-secondary);background:var(--surface2);transition:background .15s,color .15s}.patient-shell .recent-date-clear:hover{background:#ef44441f;color:#dc2626}.patient-shell .recent-date-popover{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:150;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 16px 40px #2d28432e;padding:.85rem;transform-origin:top center}.patient-shell .recent-date-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.patient-shell .recent-date-title{font-weight:500;font-size:.92rem;color:var(--text-primary);font-family:Fraunces,Georgia,serif}.patient-shell .recent-date-navbtn{width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--text-secondary);font-size:1.1rem;line-height:1;cursor:pointer;transition:background .15s,color .15s}.patient-shell .recent-date-navbtn:hover{background:var(--surface2);color:var(--text-primary)}.patient-shell .recent-date-dow{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:.25rem}.patient-shell .recent-date-dow span{text-align:center;font-size:.7rem;font-weight:500;color:var(--text-secondary);letter-spacing:.04em}.patient-shell .recent-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.patient-shell .recent-date-cell{aspect-ratio:1;min-height:32px;border:none;background:transparent;border-radius:8px;font-family:inherit;font-size:.82rem;color:var(--text-primary);cursor:pointer;transition:background .15s,color .15s}.patient-shell .recent-date-cell:hover:not(:disabled):not(.selected){background:var(--surface2)}.patient-shell .recent-date-cell:disabled{color:var(--text-muted, #cfcad9);cursor:not-allowed;opacity:.55}.patient-shell .recent-date-cell.today{color:var(--accent);font-weight:600}.patient-shell .recent-date-cell.selected{background:var(--accent);color:#fff;font-weight:600}.patient-shell .recent-date-empty{cursor:default;pointer-events:none}.patient-shell .recent-date-footer{display:flex;justify-content:flex-end;margin-top:.5rem;border-top:1px solid var(--border-light);padding-top:.5rem}.patient-shell .recent-date-today{border:none;background:transparent;font-family:inherit;font-size:.82rem;color:var(--accent);cursor:pointer;padding:.3rem .6rem;border-radius:6px;transition:background .15s}.patient-shell .recent-date-today:hover{background:var(--accent-light)}.patient-shell .integrations-page{padding:1.5rem;max-width:960px;margin:0 auto}.patient-shell .patient-page-header{margin-bottom:1.25rem}.patient-shell .patient-page-header h1{font-family:Fraunces,serif;font-size:2rem;margin:0 0 .35rem;color:var(--text-primary)}.patient-shell .patient-page-sub{color:var(--text-secondary, var(--text-muted));margin:0;max-width:56ch;line-height:1.45}.patient-shell .integrations-toast{display:flex;align-items:center;gap:.8rem;padding:.75rem 1rem;background:var(--accent-light, rgba(138,90,255,.12));color:var(--accent);border-radius:10px;margin:0 0 1rem}.patient-shell .integrations-toast button{margin-left:auto;background:transparent;border:none;color:inherit;cursor:pointer;font-size:1.2rem;line-height:1}.patient-shell .integrations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.patient-shell .integration-card{background:var(--surface, #fff);border:1px solid var(--border, #e7e4ef);border-radius:14px;padding:1.1rem 1.15rem;display:flex;flex-direction:column;gap:.9rem}.patient-shell .integration-card.is-disabled{background:var(--surface2, #faf9fc);border-style:dashed}.patient-shell .integration-card-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.patient-shell .integration-card-head h2{font-family:Fraunces,serif;font-size:1.2rem;margin:0;display:flex;align-items:center;min-height:24px;color:var(--text-primary, #2D2843)}.patient-shell .integration-card-head .wearable-logo{display:inline-flex;align-items:center}.patient-shell .integration-status{font-size:.75rem;font-weight:600;padding:.2rem .55rem;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.patient-shell .integration-status-ok{background:#e5f5ec;color:#136d3f}.patient-shell .integration-status-warn{background:#fff4d6;color:#8a5a00}.patient-shell .integration-status-err{background:#fde4e1;color:#991b1b}.patient-shell .integration-status-neutral{background:var(--surface2, #f1eff6);color:var(--text-muted, #6b6480)}.patient-shell .integration-meta{display:grid;grid-template-columns:1fr 1fr;gap:.4rem 1rem;margin:0}.patient-shell .integration-meta dt{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.patient-shell .integration-meta dd{margin:0;font-size:.9rem;color:var(--text-primary)}.patient-shell .integration-error{margin:0;color:#991b1b;background:#fde4e1;border-radius:8px;padding:.5rem .65rem;font-size:.85rem}.patient-shell .integration-note{margin:0;color:var(--text-muted);font-size:.88rem}.patient-shell .integration-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:auto}.patient-shell .integration-actions .btn-ghost{background:transparent;color:var(--text-muted);border:none}.patient-shell .integration-actions .btn-ghost:hover{color:var(--text-primary)}.prefill-pill{display:inline-flex;align-items:center;margin-left:.5rem;padding:.12rem .5rem;font-size:.7rem;font-weight:600;letter-spacing:.03em;border-radius:999px;background:var(--accent-light, rgba(138,90,255,.14));color:var(--accent, #6e3bff);vertical-align:middle}.wearable-choice-list{display:flex;flex-direction:column;gap:.6rem;margin-top:.5rem}.wearable-choice{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem;border-radius:14px;border:1px solid var(--border, rgba(0,0,0,.08));background:var(--surface, #fff);transition:border-color .12s ease,background .12s ease}.wearable-choice.primary{border-color:var(--accent, #6e3bff);background:var(--accent-light, rgba(138,90,255,.06))}.wearable-choice.connected{border-color:#4caf50;background:#4caf500f}.wearable-choice.coming-soon{opacity:.55}.wearable-choice-logo{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:var(--surface-2, rgba(0,0,0,.04));color:var(--text-primary);flex:0 0 auto}.wearable-choice.primary .wearable-choice-logo{color:var(--accent, #6e3bff)}.wearable-choice.connected .wearable-choice-logo{color:#4caf50}.wearable-choice-body{flex:1 1 auto;min-width:0}.wearable-choice-name{font-weight:600;font-size:.95rem}.wearable-choice-sub{font-size:.8rem;color:var(--text-muted);margin-top:.15rem}.wearable-choice-soon{font-size:.7rem;font-weight:600;letter-spacing:.03em;padding:.15rem .55rem;border-radius:999px;background:var(--surface-2, rgba(0,0,0,.06));color:var(--text-muted)}.wearable-choice-check{color:#4caf50;font-weight:700;font-size:1.1rem}.patient-shell .backfill-days{display:flex;gap:.4rem;flex-wrap:wrap;margin:.75rem 0 .25rem}.patient-shell .modal-footnote{margin-top:.75rem;font-size:.75rem;color:var(--text-muted)}.chart-legend{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1rem;margin-top:.5rem;font-size:.78rem;color:var(--text-secondary)}.chart-legend-item{display:inline-flex;align-items:center;gap:.4rem}.chart-legend-swatch{display:inline-block;width:20px;height:0;border-top:2px solid var(--accent, #6e3bff)}.chart-legend-dashed{border-top-style:dashed;opacity:.6}.chart-legend-toggle{display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chart-legend-toggle input{accent-color:var(--accent, #6e3bff)}.chart-legend-info{background:transparent;border:1px solid var(--border, rgba(0,0,0,.16));color:var(--text-muted);width:20px;height:20px;border-radius:50%;font-size:.75rem;line-height:1;font-weight:600;cursor:pointer}.chart-legend-info:hover{color:var(--accent, #6e3bff);border-color:var(--accent, #6e3bff)}.wearable-banner{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;padding:.7rem .9rem;border-radius:12px;background:var(--accent-light, rgba(138,90,255,.08));border:1px solid var(--accent, #6e3bff);font-size:.88rem;color:var(--text-primary)}.wearable-banner-icon{color:var(--accent, #6e3bff);flex:0 0 auto}.wearable-banner-text{flex:1 1 auto}.wearable-banner-cta{background:var(--accent, #6e3bff);color:#fff;border:none;border-radius:999px;padding:.35rem .8rem;font-size:.8rem;font-weight:600;cursor:pointer}.wearable-banner-dismiss{background:transparent;border:none;color:var(--text-muted);font-size:1.1rem;line-height:1;cursor:pointer;padding:.25rem .4rem}.wearable-banner-dismiss:hover{color:var(--text-primary)}.patient-shell .condition-flags-list{display:flex;flex-direction:column;gap:.5rem}.patient-shell .condition-flag-card{border-radius:12px;padding:.75rem .9rem;position:relative}.patient-shell .condition-flag-card.confidence-confirmed,.patient-shell .condition-flag-card.confidence-high{background:#fef2f2;border:1px solid #FECACA}.patient-shell .condition-flag-card.confidence-moderate{background:#fffbeb;border:1px solid #FDE68A}.patient-shell .condition-flag-card.confidence-low{background:#f0f9ff;border:1px solid #BAE6FD}.patient-shell .condition-flag-header{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-bottom:.3rem}.patient-shell .condition-flag-name{font-weight:600;font-size:.95rem;color:var(--text-primary)}.patient-shell .condition-flag-badge{font-size:.68rem;font-weight:600;padding:.2rem .55rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.patient-shell .confidence-confirmed .condition-flag-badge,.patient-shell .confidence-high .condition-flag-badge{background:#fee2e2;color:#b91c1c}.patient-shell .confidence-moderate .condition-flag-badge{background:#fef3c7;color:#b45309}.patient-shell .confidence-low .condition-flag-badge{background:#e0f2fe;color:#0369a1}.patient-shell .condition-flag-tier{font-size:.7rem;color:var(--text-muted);margin-left:auto}.patient-shell .condition-flag-message{font-size:.85rem;color:var(--text-secondary);line-height:1.5}.patient-shell .condition-flag-toggle{background:none;border:none;font-size:.78rem;color:var(--accent, #6e3bff);cursor:pointer;padding:0;margin-top:.45rem;font-weight:500}.patient-shell .condition-flag-details{margin-top:.5rem}.patient-shell .condition-flag-criteria{display:flex;flex-wrap:wrap;gap:.3rem}.patient-shell .condition-flag-chip{font-size:.72rem;padding:.2rem .55rem;border-radius:6px;background:#0000000d;color:var(--text-secondary)}.patient-shell .condition-flag-disclaimer{font-size:.72rem;color:var(--text-muted);font-style:italic;margin-top:.75rem;padding-top:.5rem;border-top:1px solid var(--border)}.patient-shell .condition-flag-card.is-clickable,.patient-shell .pp-pattern-card.is-clickable{cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.patient-shell .condition-flag-card.is-clickable:hover,.patient-shell .pp-pattern-card.is-clickable:hover{transform:translateY(-1px);box-shadow:0 6px 18px -10px #0000002e}.patient-shell .condition-flag-card.is-clickable:focus-visible,.patient-shell .pp-pattern-card.is-clickable:focus-visible,.patient-shell .pattern-item.is-clickable:focus-visible{outline:2px solid var(--accent, #6e3bff);outline-offset:2px}.patient-shell .pattern-item.is-clickable{cursor:pointer}.patient-shell .condition-flag-cta,.patient-shell .pp-pattern-cta{font-size:.78rem;font-weight:500;color:var(--accent, #6e3bff);margin-top:.5rem}.patient-shell .pattern-item-chevron{align-self:center;font-size:1.4rem;line-height:1;color:var(--text-muted);padding:0 .15rem 0 .25rem;transition:transform .18s ease,color .18s ease}.patient-shell .pattern-item.is-clickable:hover .pattern-item-chevron{color:var(--pattern-accent, var(--accent));transform:translate(2px)}.patient-shell .cycle-predictor-card{--phase-period: #c94040;--phase-follicular: #e8a44a;--phase-ovulation: #4a8c5c;--phase-luteal: #6b5ea8}.patient-shell .cycle-phase-pill{display:inline-flex;padding:.2rem .6rem;border-radius:20px;font-size:.72rem;font-weight:600;letter-spacing:.02em}.patient-shell .cycle-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1rem}@media (max-width: 640px){.patient-shell .cycle-metrics{grid-template-columns:repeat(2,1fr)}}.patient-shell .cycle-metric-card{background:var(--surface2);border-radius:10px;padding:.75rem .6rem;text-align:center}.patient-shell .cycle-metric-card.cycle-metric-accent{background:#f4dde2;box-shadow:inset 0 0 0 1px #e8b0bc}.patient-shell .cycle-metric-card.cycle-metric-accent .cycle-metric-label{color:#c94060}.patient-shell .cycle-metric-label{font-size:.68rem;color:var(--text-muted);font-weight:500;margin-bottom:.2rem;text-transform:uppercase;letter-spacing:.03em}.patient-shell .cycle-metric-value{font-family:Fraunces,Georgia,serif;font-size:1.05rem;font-weight:600;color:var(--text-primary);line-height:1.2}.patient-shell .cycle-metric-sub{font-size:.68rem;color:var(--text-secondary);margin-top:.15rem}.patient-shell .cycle-review-note{font-size:.74rem;line-height:1.45;background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:10px;padding:.6rem .75rem;margin-bottom:.75rem}.patient-shell .cycle-paused-message{font-size:.82rem;line-height:1.5;color:var(--text-secondary);margin:0}.patient-shell .cycle-nudge-cta{display:inline-block;margin-top:.5rem;font-size:.8rem;font-weight:600;color:var(--accent);text-decoration:none}.patient-shell .cycle-nudge-cta:hover{text-decoration:underline}.patient-shell .cycle-legend{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.patient-shell .cycle-legend-item{display:flex;align-items:center;gap:.3rem;font-size:.72rem;color:var(--text-muted)}.patient-shell .cycle-legend-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.patient-shell .cycle-chart-figure{margin:0}.patient-shell .cycle-chart-caption{font-size:.72rem;color:var(--text-secondary);margin:0 0 .5rem;line-height:1.4}.patient-shell .cycle-axis-titles{display:flex;justify-content:space-between;font-size:.62rem;letter-spacing:.02em;text-transform:uppercase;color:var(--text-muted);margin-top:.15rem}.patient-shell .cycle-chart-wrap{display:flex;gap:4px;margin-bottom:.5rem}.patient-shell .cycle-y-axis{display:flex;flex-direction:column;justify-content:space-between;font-size:.62rem;color:var(--text-muted);padding:0 2px 0 0;min-width:16px;text-align:right}.patient-shell .cycle-chart-col{display:flex;flex-direction:column;flex:1;min-width:0}.patient-shell .cycle-chart{display:flex;align-items:flex-end;gap:1px;flex:1;border-bottom:1px solid var(--border)}.patient-shell .cycle-x-axis{display:flex;gap:1px;margin-top:4px}.patient-shell .cycle-x-label{flex:1;min-width:0;font-size:.6rem;color:var(--text-muted);text-align:center;white-space:nowrap;overflow:visible;line-height:1}.patient-shell .cycle-x-label-today{color:var(--text-primary);font-weight:600}.patient-shell .cycle-bar-col{flex:1;position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-width:0}.patient-shell .cycle-bar-fill{width:100%;border-radius:2px 2px 0 0;min-height:1px;transition:height .25s ease}.patient-shell .cycle-bar-range{position:absolute;left:0;right:0;border-radius:2px;pointer-events:none}.patient-shell .cycle-bar-today .cycle-bar-fill{box-shadow:0 -2px 0 0 var(--text-primary)}.patient-shell .cycle-insights{margin-top:.75rem;border-top:1px solid var(--border);padding-top:.85rem}.patient-shell .cycle-insights-title{font-size:.85rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.patient-shell .cycle-insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem}.patient-shell .cycle-insight-card{--insight-color: var(--accent);position:relative;padding:.8rem .9rem;border-radius:14px;background:radial-gradient(120% 100% at 0% 0%,color-mix(in srgb,var(--insight-color) 14%,transparent) 0%,transparent 55%),var(--surface);border:1px solid var(--border);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;opacity:0;transform:translateY(12px) scale(.985)}.patient-shell .cycle-insight-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--insight-color),color-mix(in srgb,var(--insight-color) 25%,transparent));opacity:0;transform:translate(-3px);transition:opacity .22s ease,transform .22s ease}.patient-shell .cycle-insight-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--insight-color) 40%,var(--border));box-shadow:0 8px 20px -10px color-mix(in srgb,var(--insight-color) 45%,transparent)}.patient-shell .cycle-insight-card:hover:before{opacity:1;transform:translate(0)}.patient-shell .cycle-insights-grid.is-revealed .cycle-insight-card{animation:cycle-insight-pop .62s cubic-bezier(.22,1,.36,1) forwards;animation-delay:var(--insight-delay, 0ms)}@keyframes cycle-insight-pop{0%{opacity:0;transform:translateY(12px) scale(.985)}60%{opacity:1}to{opacity:1;transform:translateY(0) scale(1)}}.patient-shell .cycle-insight-phase-row{display:flex;align-items:center;gap:.4rem;margin-bottom:.3rem}.patient-shell .cycle-insight-dot{width:8px;height:8px;border-radius:50%;background:var(--insight-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--insight-color) 18%,transparent);flex-shrink:0}.patient-shell .cycle-insight-phase{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--insight-color)}.patient-shell .cycle-insight-body{font-size:.78rem;color:var(--text-secondary);line-height:1.5}@media (prefers-reduced-motion: reduce){.patient-shell .cycle-insights-grid.is-revealed .cycle-insight-card{animation:none;opacity:1;transform:none}}.patient-shell .cycle-card-link{display:inline-block;margin-top:.75rem;font-size:.82rem;color:var(--accent, #6e3bff);text-decoration:none;font-weight:500}.patient-shell .cycle-card-link:hover{text-decoration:underline}.patient-shell .forecast-card{opacity:0;transform:translateY(14px);transition:opacity .52s cubic-bezier(.22,1,.36,1),transform .52s cubic-bezier(.22,1,.36,1)}.patient-shell .forecast-card.is-revealed{opacity:1;transform:translateY(0)}.patient-shell .forecast-pill{font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:3px 8px;border-radius:999px;color:var(--accent, #6e3bff);background:color-mix(in srgb,var(--accent, #6e3bff) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent, #6e3bff) 25%,transparent)}.patient-shell .forecast-summary{display:flex;gap:1.25rem;margin:.25rem 0 .6rem}.patient-shell .forecast-summary-item{display:flex;flex-direction:column;gap:2px}.patient-shell .forecast-summary-label{font-size:.68rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.patient-shell .forecast-summary-value{font-size:.95rem;font-weight:600}.patient-shell .forecast-chart{position:relative;margin:.25rem auto .5rem}.patient-shell .forecast-svg{display:block;width:100%;height:auto}.patient-shell .forecast-card.is-revealed .forecast-area{animation:forecast-fade .62s cubic-bezier(.22,1,.36,1) both}.patient-shell .forecast-card.is-revealed .forecast-line{stroke-dasharray:5 4;animation:forecast-line-draw .9s cubic-bezier(.22,1,.36,1) .12s both}@keyframes forecast-fade{0%{opacity:0}to{opacity:1}}@keyframes forecast-line-draw{0%{opacity:0;transform:translateY(6px)}60%{opacity:1}to{opacity:1;transform:translateY(0)}}.patient-shell .forecast-dot{opacity:0;animation:forecast-dot-pop .52s cubic-bezier(.22,1,.36,1) forwards;transform-origin:center}@keyframes forecast-dot-pop{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.patient-shell .forecast-dot-label{fill:var(--text-primary);font-size:5.5px;font-weight:600;font-variant-numeric:tabular-nums;paint-order:stroke;stroke:var(--surface);stroke-width:2.5px;stroke-linejoin:round}.patient-shell .forecast-labels{display:flex;justify-content:space-between;padding:0 10px;margin-top:2px}.patient-shell .forecast-label{font-size:.68rem;color:var(--text-muted)}.patient-shell .forecast-rationale-list{list-style:none;padding:0;margin:.75rem 0 0;display:flex;flex-direction:column;gap:.35rem}.patient-shell .forecast-card.is-revealed .forecast-rationale-item{animation:forecast-rationale-slide .52s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(.42s + var(--forecast-rationale-delay, 0ms))}.patient-shell .forecast-rationale-item{display:flex;align-items:center;gap:.55rem;font-size:.8rem;color:var(--text-secondary);opacity:0}@keyframes forecast-rationale-slide{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.patient-shell .forecast-rationale-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.patient-shell .forecast-rationale-day{font-weight:600;color:var(--text-primary);flex-shrink:0}.patient-shell .forecast-rationale-body{line-height:1.4}.patient-shell .forecast-disclaimer{margin-top:.6rem;font-size:.7rem;color:var(--text-muted);line-height:1.4}@media (prefers-reduced-motion: reduce){.patient-shell .forecast-card,.patient-shell .forecast-card.is-revealed .forecast-area,.patient-shell .forecast-card.is-revealed .forecast-line,.patient-shell .forecast-dot,.patient-shell .forecast-card.is-revealed .forecast-rationale-item{animation:none;transition:none;opacity:1;transform:none}}.patient-shell .skeleton-block{display:block;background:linear-gradient(90deg,color-mix(in srgb,var(--text-muted) 12%,transparent),color-mix(in srgb,var(--text-muted) 22%,transparent),color-mix(in srgb,var(--text-muted) 12%,transparent));background-size:200% 100%;border-radius:6px;animation:skeleton-shimmer 1.4s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.patient-shell .forecast-card-skeleton,.patient-shell .cycle-card-skeleton{opacity:1;transform:none}.patient-shell .forecast-card-skeleton .skeleton-title,.patient-shell .cycle-card-skeleton .skeleton-title{width:140px;height:16px}.patient-shell .cycle-card-skeleton .skeleton-pill{width:72px;height:18px;border-radius:20px}.patient-shell .forecast-card-skeleton .skeleton-label{width:52px;height:9px;margin-bottom:6px}.patient-shell .forecast-card-skeleton .skeleton-value{width:64px;height:14px}.patient-shell .forecast-skeleton-chart{width:100%;height:100px;border-radius:10px;margin:.25rem 0 .5rem;background:linear-gradient(90deg,color-mix(in srgb,var(--text-muted) 10%,transparent),color-mix(in srgb,var(--text-muted) 18%,transparent),color-mix(in srgb,var(--text-muted) 10%,transparent));background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.patient-shell .forecast-card-skeleton .skeleton-daylabel{width:36px;height:10px}.patient-shell .cycle-card-skeleton .skeleton-metric-label{width:70%;height:9px;margin:0 auto 8px}.patient-shell .cycle-card-skeleton .skeleton-metric-value{width:55%;height:16px;margin:0 auto 6px}.patient-shell .cycle-card-skeleton .skeleton-metric-sub{width:65%;height:9px;margin:0 auto}.patient-shell .cycle-card-skeleton .skeleton-legend{width:58px;height:10px}.patient-shell .cycle-skeleton-chart{width:100%;height:120px;border-radius:10px;margin-bottom:.5rem;background:linear-gradient(90deg,color-mix(in srgb,var(--text-muted) 10%,transparent),color-mix(in srgb,var(--text-muted) 18%,transparent),color-mix(in srgb,var(--text-muted) 10%,transparent));background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.patient-shell .skeleton-title{width:140px;height:16px}.patient-shell .insight-skeleton{border:1px solid var(--border-light);border-radius:12px;padding:.9rem 1rem;display:flex;flex-direction:column;gap:8px}.patient-shell .insight-skeleton .skeleton-chip{width:84px;height:18px;border-radius:20px}.patient-shell .insight-skeleton .skeleton-line-title{width:45%;height:14px}.patient-shell .insight-skeleton .skeleton-line{width:92%;height:10px}.patient-shell .insight-skeleton .skeleton-line.short{width:70%}.patient-shell .pp-skeleton-metric{flex:1;display:flex;flex-direction:column;align-items:center;gap:7px;padding:.5rem 0}.patient-shell .pp-skeleton-metric .skeleton-metric-label{width:70%;height:9px}.patient-shell .pp-skeleton-metric .skeleton-metric-value{width:55%;height:16px}.patient-shell .pp-skeleton-metric .skeleton-metric-sub{width:65%;height:9px}@media (prefers-reduced-motion: reduce){.patient-shell .skeleton-block,.patient-shell .forecast-skeleton-chart,.patient-shell .cycle-skeleton-chart{animation:none}}.patient-shell .wearable-card{position:relative;background:radial-gradient(120% 140% at 0% 0%,color-mix(in srgb,var(--accent, #6e3bff) 8%,transparent) 0%,transparent 55%),var(--surface);border:1px solid color-mix(in srgb,var(--accent, #6e3bff) 18%,var(--border));opacity:0;transform:translateY(14px);transition:opacity .52s cubic-bezier(.22,1,.36,1),transform .52s cubic-bezier(.22,1,.36,1);overflow:hidden}.patient-shell .wearable-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(140% 90% at 100% 0%,color-mix(in srgb,var(--accent, #6e3bff) 14%,transparent) 0%,transparent 60%);pointer-events:none;opacity:0;transition:opacity .7s ease}.patient-shell .wearable-card.is-revealed{opacity:1;transform:translateY(0)}.patient-shell .wearable-card.is-revealed:before{opacity:1}.patient-shell .wearable-header{margin-bottom:.4rem}.patient-shell .wearable-live-pill{display:inline-flex;align-items:center;gap:.4rem;padding:3px 10px 3px 8px;border-radius:999px;font-size:.68rem;font-weight:600;letter-spacing:.03em;color:var(--accent, #6e3bff);background:color-mix(in srgb,var(--accent, #6e3bff) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent, #6e3bff) 30%,transparent)}.patient-shell .wearable-live-dot{width:8px;height:8px;border-radius:50%;background:#2fbf71;box-shadow:0 0 #2fbf7199;animation:wearable-live-pulse 1.6s ease-out infinite;flex-shrink:0}@keyframes wearable-live-pulse{0%{box-shadow:0 0 #2fbf718c}70%{box-shadow:0 0 0 8px #2fbf7100}to{box-shadow:0 0 #2fbf7100}}.patient-shell .wearable-sync-row{display:flex;align-items:center;gap:.5rem;font-size:.72rem;color:var(--text-muted);margin-bottom:.75rem}.patient-shell .wearable-sync-label{text-transform:uppercase;letter-spacing:.05em;font-weight:500}.patient-shell .wearable-sync-value{color:var(--text-secondary);font-weight:600}.patient-shell .wearable-sync-chip{margin-left:auto;padding:2px 8px;border-radius:999px;background:var(--surface2);color:var(--text-secondary);font-weight:600;font-size:.68rem}.patient-shell .wearable-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:.85rem}@media (max-width: 640px){.patient-shell .wearable-tiles{grid-template-columns:repeat(2,1fr)}}.patient-shell .wearable-tile{background:var(--surface2);border-radius:12px;padding:.7rem .65rem;text-align:left;opacity:0;transform:translateY(8px);transition:transform .6s cubic-bezier(.22,1,.36,1),opacity .6s cubic-bezier(.22,1,.36,1);position:relative}.patient-shell .wearable-card.is-revealed .wearable-tile{opacity:1;transform:translateY(0);transition-delay:var(--wearable-tile-delay, 0ms)}.patient-shell .wearable-tile-accent{background:color-mix(in srgb,var(--accent, #6e3bff) 10%,var(--surface2));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent, #6e3bff) 22%,transparent)}.patient-shell .wearable-tile-label{font-size:.64rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.3rem}.patient-shell .wearable-tile-value-row{display:flex;align-items:baseline;gap:.2rem}.patient-shell .wearable-tile-value{font-family:Fraunces,Georgia,serif;font-size:1.35rem;font-weight:600;color:var(--text-primary);line-height:1;font-variant-numeric:tabular-nums}.patient-shell .wearable-tile-unit{font-size:.72rem;color:var(--text-muted);font-weight:500}.patient-shell .wearable-tile-delta{margin-top:.35rem;font-size:.64rem;font-weight:600;display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:999px;letter-spacing:.02em}.patient-shell .wearable-delta-up{background:color-mix(in srgb,#2fbf71 16%,transparent);color:#1f8a50}.patient-shell .wearable-delta-down{background:color-mix(in srgb,#c94060 16%,transparent);color:#a33550}.patient-shell .wearable-delta-flat{background:var(--surface);color:var(--text-muted)}.patient-shell .wearable-delta-arrow{font-size:.55rem;line-height:1}.patient-shell .wearable-sparklines{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:.5rem}@media (max-width: 480px){.patient-shell .wearable-sparklines{grid-template-columns:1fr}}.patient-shell .wearable-spark{background:var(--surface2);border-radius:10px;padding:.55rem .7rem .4rem}.patient-shell .wearable-spark-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.2rem}.patient-shell .wearable-spark-label{font-size:.64rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:500}.patient-shell .wearable-spark-now{font-family:Fraunces,Georgia,serif;font-size:.9rem;font-weight:600;font-variant-numeric:tabular-nums}.patient-shell .wearable-spark-empty{font-size:.72rem;color:var(--text-muted);padding:.4rem 0 .2rem}.patient-shell .wearable-spark-svg{display:block;width:100%;height:44px}.patient-shell .wearable-spark-line{stroke-dasharray:260;stroke-dashoffset:260;transition:stroke-dashoffset 1.1s cubic-bezier(.22,1,.36,1);transition-delay:var(--spark-delay, 0ms)}.patient-shell .wearable-spark-svg.is-revealed .wearable-spark-line{stroke-dashoffset:0}.patient-shell .wearable-spark-area{opacity:0;transition:opacity .7s ease;transition-delay:calc(var(--spark-delay, 0ms) + .3s)}.patient-shell .wearable-spark-svg.is-revealed .wearable-spark-area{opacity:1}.patient-shell .wearable-spark-dot{opacity:0;transform-origin:center;transition:opacity .4s ease,transform .4s ease;transition-delay:calc(var(--spark-delay, 0ms) + .8s)}.patient-shell .wearable-spark-svg.is-revealed .wearable-spark-dot{opacity:1;animation:wearable-spark-dot-pulse 2.6s ease-in-out infinite;animation-delay:calc(var(--spark-delay, 0ms) + 1.1s)}@keyframes wearable-spark-dot-pulse{0%,to{r:2.6}50%{r:3.4}}.patient-shell .wearable-signal{display:flex;align-items:flex-start;gap:.5rem;padding:.6rem .75rem;border-radius:10px;background:color-mix(in srgb,var(--accent, #6e3bff) 7%,var(--surface2));border:1px solid color-mix(in srgb,var(--accent, #6e3bff) 18%,transparent);font-size:.8rem;color:var(--text-primary);line-height:1.4;opacity:0;transform:translateY(6px);transition:opacity .6s ease .65s,transform .6s ease .65s}.patient-shell .wearable-card.is-revealed .wearable-signal{opacity:1;transform:translateY(0)}.patient-shell .wearable-signal-icon{color:var(--accent, #6e3bff);font-size:.9rem;line-height:1.2;flex-shrink:0}@media (prefers-reduced-motion: reduce){.patient-shell .wearable-card,.patient-shell .wearable-live-dot,.patient-shell .wearable-tile,.patient-shell .wearable-spark-line,.patient-shell .wearable-spark-area,.patient-shell .wearable-spark-dot,.patient-shell .wearable-signal{animation:none!important;transition:none!important;opacity:1!important;transform:none!important;stroke-dashoffset:0!important}}.patient-shell .setup-checklist-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1.25rem 1.25rem 1.1rem;margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.9rem}.patient-shell .setup-checklist-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.patient-shell .setup-checklist-heading{display:flex;flex-direction:column;gap:.15rem;min-width:0}.patient-shell .setup-checklist-title{font-family:DM Sans,sans-serif;font-size:1rem;font-weight:600;color:var(--text-primary);margin:0;line-height:1.3}.patient-shell .setup-checklist-counter{font-size:.78rem;color:var(--text-secondary);letter-spacing:.01em}.patient-shell .setup-checklist-dismiss{background:transparent;border:none;color:var(--text-secondary);font-size:1.25rem;line-height:1;cursor:pointer;padding:.15rem .45rem;border-radius:6px;flex:0 0 auto;transition:color .15s ease,background .15s ease}.patient-shell .setup-checklist-dismiss:hover{color:var(--text-primary);background:var(--surface2)}.patient-shell .setup-checklist-dismiss:disabled{opacity:.5;cursor:default}.patient-shell .setup-checklist-progress{height:6px;border-radius:3px;background:var(--border);overflow:hidden}.patient-shell .setup-checklist-progress-fill{height:100%;background:var(--accent);transition:width .35s ease}.patient-shell .setup-checklist-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}.patient-shell .setup-checklist-item+.setup-checklist-item{border-top:1px solid var(--border-light)}.patient-shell .setup-checklist-item-link{display:flex;align-items:center;gap:.75rem;padding:.7rem .25rem;text-decoration:none;color:var(--text-primary);border-radius:8px;transition:background .15s ease}.patient-shell .setup-checklist-item-link:hover{background:var(--surface-hover)}.patient-shell .setup-checklist-item-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.patient-shell .setup-checklist-check{flex:0 0 auto;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface);display:inline-flex;align-items:center;justify-content:center;color:transparent;transition:background .2s ease,border-color .2s ease,color .2s ease}.patient-shell .setup-checklist-item.is-complete .setup-checklist-check{background:var(--accent);border-color:var(--accent);color:#fff}.patient-shell .setup-checklist-item-copy{flex:1 1 auto;display:flex;flex-direction:column;gap:.1rem;min-width:0}.patient-shell .setup-checklist-item-label{font-size:.92rem;font-weight:500;color:var(--text-primary);transition:color .2s ease,text-decoration-color .2s ease}.patient-shell .setup-checklist-item-desc{font-size:.78rem;color:var(--text-secondary);line-height:1.4}.patient-shell .setup-checklist-item.is-complete .setup-checklist-item-label{color:var(--text-secondary);text-decoration:line-through;text-decoration-color:var(--text-secondary)}.patient-shell .setup-checklist-item-chevron{flex:0 0 auto;color:var(--text-secondary);display:inline-flex;align-items:center;transition:transform .15s ease}.patient-shell .setup-checklist-item-link:hover .setup-checklist-item-chevron{transform:translate(2px);color:var(--text-primary)}.patient-shell .setup-checklist-card-celebrate{flex-direction:row;align-items:center;gap:1rem;border:1px solid var(--accent);background:linear-gradient(135deg,var(--surface) 0%,var(--surface2) 100%)}.patient-shell .setup-checklist-celebrate-icon{flex:0 0 auto;width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center}.patient-shell .setup-checklist-celebrate-copy{flex:1 1 auto;display:flex;flex-direction:column;gap:.15rem;min-width:0}.patient-shell .setup-checklist-celebrate-title{font-family:DM Sans,sans-serif;font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.patient-shell .setup-checklist-celebrate-text{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}@media (prefers-reduced-motion: reduce){.patient-shell .setup-checklist-progress-fill,.patient-shell .setup-checklist-check,.patient-shell .setup-checklist-item-chevron,.patient-shell .setup-checklist-item-link{transition:none}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased}body{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;color:#2d2843;background:#fdfcff;line-height:1.6;min-height:100vh;min-height:100dvh}h1,h2,h3,h4{font-family:Fraunces,Georgia,serif;font-weight:500;letter-spacing:-.01em}.legal-content h2{font-family:Fraunces,Georgia,serif;font-weight:400;font-size:1.4rem;letter-spacing:-.01em;margin-top:2.5rem;margin-bottom:1rem;color:#2d2843}.legal-content h3{font-family:DM Sans,sans-serif;font-weight:600;font-size:1.1rem;margin-top:1.5rem;margin-bottom:.75rem;color:#2d2843}.legal-content p{margin-bottom:1rem;line-height:1.8}.legal-content ul,.legal-content ol{margin-left:2rem;margin-bottom:1rem}.legal-content li{margin-bottom:.5rem;line-height:1.7}.legal-content strong{color:#2d2843;font-weight:600}.legal-content a{color:#7b5e80;text-decoration:none;border-bottom:1px solid rgba(123,94,128,.25);transition:border-color .2s}.legal-content a:hover{border-color:#7b5e80}.legal-content table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.88rem}.legal-content table thead{background-color:#f6f4f9}.legal-content table th{padding:.9rem 1rem;text-align:left;font-weight:600;color:#2d2843;border:1px solid #EEEAF2}.legal-content table td{padding:.9rem 1rem;border:1px solid #EEEAF2;vertical-align:top}.legal-content table tbody tr:hover{background-color:#f6f4f9}.legal-content .toc{background-color:#f6f4f9;border-left:3px solid #7B5E80;padding:1.5rem;margin:2rem 0;border-radius:8px}.legal-content .toc h3{font-family:Fraunces,Georgia,serif;font-weight:400;margin-top:0}.legal-content .toc ul{margin-left:1.5rem}.legal-content .notice-box{background-color:#7b5e800f;border-left:3px solid #9B9ED2;padding:1.25rem 1.5rem;margin:2rem 0;border-radius:8px;font-size:.9rem}.legal-content .notice-box.critical{background-color:#b43c320d;border-left-color:#c0392b}.legal-content .notice-box strong{display:block;margin-bottom:.4rem;font-size:.95rem;color:#2d2843}.legal-content .contact-info{background-color:#f6f4f9;padding:1.25rem 1.5rem;border-radius:10px;border:1px solid #EEEAF2;margin:1.5rem 0}.legal-content .contact-info p:last-child{margin-bottom:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.bottom-0{bottom:0}.bottom-8{bottom:2rem}.left-0{left:0}.left-1\/2{left:50%}.right-0{right:0}.isolate{isolation:isolate}.z-\[9999\]{z-index:9999}.z-\[999\]{z-index:999}.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-5{margin-top:1.25rem}.mt-7{margin-top:1.75rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.min-h-\[120px\]{min-height:120px}.min-h-screen{min-height:100vh}.w-full{width:100%}.min-w-\[240px\]{min-width:240px}.max-w-\[1100px\]{max-width:1100px}.max-w-\[480px\]{max-width:480px}.max-w-\[780px\]{max-width:780px}.max-w-\[960px\]{max-width:960px}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-24{--tw-translate-y: 6rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize-y{resize:vertical}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-\[10px\]{border-radius:10px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-0{border-width:0px}.border-\[1\.5px\]{border-width:1.5px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-\[\#555\]{--tw-border-opacity: 1;border-color:rgb(85 85 85 / var(--tw-border-opacity, 1))}.border-border{--tw-border-opacity: 1;border-color:rgb(226 220 232 / var(--tw-border-opacity, 1))}.border-border-light{--tw-border-opacity: 1;border-color:rgb(238 234 242 / var(--tw-border-opacity, 1))}.border-brown\/25{border-color:#7b5e8040}.border-white\/10{border-color:#ffffff1a}.border-white\/\[0\.06\]{border-color:#ffffff0f}.bg-\[\#2c2c2c\]{--tw-bg-opacity: 1;background-color:rgb(44 44 44 / var(--tw-bg-opacity, 1))}.bg-\[\#3D3558\]{--tw-bg-opacity: 1;background-color:rgb(61 53 88 / var(--tw-bg-opacity, 1))}.bg-\[\#7B5E80\]{--tw-bg-opacity: 1;background-color:rgb(123 94 128 / var(--tw-bg-opacity, 1))}.bg-\[\#dc3545\]{--tw-bg-opacity: 1;background-color:rgb(220 53 69 / var(--tw-bg-opacity, 1))}.bg-bg{--tw-bg-opacity: 1;background-color:rgb(246 244 249 / var(--tw-bg-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-brown{--tw-bg-opacity: 1;background-color:rgb(123 94 128 / var(--tw-bg-opacity, 1))}.bg-ink-primary{--tw-bg-opacity: 1;background-color:rgb(45 40 67 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-warm-white{--tw-bg-opacity: 1;background-color:rgb(253 252 255 / var(--tw-bg-opacity, 1))}.bg-white\/\[0\.08\]{background-color:#ffffff14}.p-0{padding:0}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-10{padding-bottom:2.5rem}.pb-4{padding-bottom:1rem}.pt-12{padding-top:3rem}.text-center{text-align:center}.font-sans{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif}.font-serif{font-family:Fraunces,Georgia,serif}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.82rem\]{font-size:.82rem}.text-\[0\.85rem\]{font-size:.85rem}.text-\[0\.8rem\]{font-size:.8rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[0\.9rem\]{font-size:.9rem}.text-\[1\.5rem\]{font-size:1.5rem}.text-\[1\.6rem\]{font-size:1.6rem}.text-\[1\.8rem\]{font-size:1.8rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.text-\[\#ccc\]{--tw-text-opacity: 1;color:rgb(204 204 204 / var(--tw-text-opacity, 1))}.text-\[\#d4b8a0\]{--tw-text-opacity: 1;color:rgb(212 184 160 / var(--tw-text-opacity, 1))}.text-\[\#eee\]{--tw-text-opacity: 1;color:rgb(238 238 238 / var(--tw-text-opacity, 1))}.text-brown{--tw-text-opacity: 1;color:rgb(123 94 128 / var(--tw-text-opacity, 1))}.text-ink-muted{--tw-text-opacity: 1;color:rgb(169 163 186 / var(--tw-text-opacity, 1))}.text-ink-primary{--tw-text-opacity: 1;color:rgb(45 40 67 / var(--tw-text-opacity, 1))}.text-ink-secondary{--tw-text-opacity: 1;color:rgb(110 103 136 / var(--tw-text-opacity, 1))}.text-ink-tertiary{--tw-text-opacity: 1;color:rgb(160 154 178 / var(--tw-text-opacity, 1))}.text-warm-white{--tw-text-opacity: 1;color:rgb(253 252 255 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/35{color:#ffffff59}.text-white\/50{color:#ffffff80}.text-white\/60{color:#fff9}.underline{text-decoration-line:underline}.no-underline{text-decoration-line:none}.opacity-0{opacity:0}.opacity-100{opacity:1}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[background\,transform\]{transition-property:background,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.placeholder\:text-ink-tertiary::-moz-placeholder{--tw-text-opacity: 1;color:rgb(160 154 178 / var(--tw-text-opacity, 1))}.placeholder\:text-ink-tertiary::placeholder{--tw-text-opacity: 1;color:rgb(160 154 178 / var(--tw-text-opacity, 1))}.hover\:border-brown:hover{--tw-border-opacity: 1;border-color:rgb(123 94 128 / var(--tw-border-opacity, 1))}.hover\:bg-brown-dark:hover{--tw-bg-opacity: 1;background-color:rgb(90 61 96 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/\[0\.14\]:hover{background-color:#ffffff24}.hover\:text-warm-white:hover{--tw-text-opacity: 1;color:rgb(253 252 255 / var(--tw-text-opacity, 1))}.hover\:text-white\/70:hover{color:#ffffffb3}.focus\:border-brown-light:focus{--tw-border-opacity: 1;border-color:rgb(155 158 210 / var(--tw-border-opacity, 1))}.active\:scale-\[0\.99\]:active{--tw-scale-x: .99;--tw-scale-y: .99;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width: 640px){.sm\:flex-row{flex-direction:row}.sm\:gap-8{gap:2rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\:text-\[2rem\]{font-size:2rem}}
