@import "https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap";:root{color:#2d2926;font-synthesis:none;--cream:#faf8f5;--sage:#4a9b8e;--deep-sage:#357a6f;--lavender:#8b7ec8;--rose:#d4847a;--charcoal:#2d2926;--line:#e6e0da;--white:#fff;background:#faf8f5;font-family:Nunito,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}h1,h2{margin:0;font-family:Playfair Display,serif;line-height:1.15}p{line-height:1.6}.button{cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.button:disabled{opacity:.48;cursor:not-allowed}.primary{color:#fff;background:var(--deep-sage);box-shadow:0 8px 18px #357a6f2e}.secondary{color:var(--deep-sage);background:#fff;border-color:#cbded9}.ghost{color:#625d58;background:0 0}.wide{width:100%}.eyebrow{color:var(--deep-sage);text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:800}.muted{color:#756f69}.brand{align-items:center;gap:12px;display:flex}.brand-mark{object-fit:contain;filter:drop-shadow(0 5px 8px #357a6f1f);flex:none;width:49px;height:49px}.brand-copy{flex-direction:column;display:flex}.brand-copy strong{letter-spacing:.14em;font-size:.94rem}.brand-copy small{color:#7d7771;margin-top:2px}.login-page{grid-template-columns:minmax(520px,1.22fr) minmax(500px,1fr);min-height:100vh;display:grid}.login-story{background:linear-gradient(145deg,#f1ede7 0%,#dcebe7 62%,#e7e3f0 100%);align-items:center;padding:64px 8vw;display:grid;position:relative;overflow:hidden}.login-story:after{content:"";border:1px solid #4a9b8e17;border-radius:50%;width:440px;height:440px;position:absolute;bottom:-210px;right:-220px;box-shadow:0 0 0 85px #4a9b8e06,0 0 0 170px #8b7ec805}.story-copy{z-index:1;max-width:610px;position:relative}.story-logo{object-fit:contain;width:clamp(110px,9vw,170px);height:clamp(110px,9vw,170px)}.story-copy h1{letter-spacing:-.02em;margin:28px 0 25px;font-family:Playfair Display,serif;font-size:clamp(4.7rem,7.3vw,8.4rem);font-weight:700;line-height:.9}.story-copy h1 span:first-child{color:var(--charcoal)}.story-copy h1 span:last-child{color:var(--sage)}.story-copy p{color:#5b5651;max-width:530px;margin:0;font-size:1.23rem}.privacy-note{color:var(--deep-sage);align-items:center;gap:9px;margin-top:38px;font-weight:700;display:flex}.login-panel{background:linear-gradient(145deg,#f6f3f8 0%,#ece9f1 100%);place-items:center;padding:50px;display:grid}.login-card{background:#fff;border:1px solid #ffffffe6;border-radius:18px;width:min(100%,450px);padding:38px 40px 34px;box-shadow:0 20px 55px #332c3d21}.login-card h2{margin:10px 0 4px;font-size:2.1rem}.login-card label{gap:7px;margin:20px 0 0;font-size:.9rem;font-weight:800;display:grid}.login-card input,.form-fields input{background:#fff;border:1px solid #d9d3cc;border-radius:11px;outline:none;height:50px;padding:0 14px}.login-card input:focus,.form-fields input:focus{border-color:var(--sage);box-shadow:0 0 0 3px #4a9b8e21}.password-field{display:block;position:relative}.password-field input{width:100%;padding-right:48px}.password-reveal{color:#756f69;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.password-reveal:hover{color:var(--deep-sage);background:#edf4f2}.password-reveal:focus-visible{outline:2px solid var(--sage);outline-offset:1px}.forgot{color:var(--deep-sage);cursor:pointer;background:0 0;border:0;margin:10px 0 22px auto;padding:0;font-size:.87rem;font-weight:800;display:block}.forgot:hover{text-decoration:underline}.form-error{color:#944c43;background:#fae9e6;border-radius:10px;margin-bottom:14px;padding:11px 13px}.new-account{border-top:1px solid var(--line);text-align:center;color:#746e68;flex-direction:column;gap:4px;margin-top:24px;padding-top:20px;font-size:.88rem;display:flex}.new-account strong{color:var(--charcoal)}.new-account a{color:var(--deep-sage);justify-content:center;align-items:center;margin-top:7px;font-weight:800;text-decoration:none;display:inline-flex}.mobile-brand,.preview-link{display:none}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2d29267a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.reset-modal{background:#fff;border-radius:18px;width:min(100%,470px);padding:38px 40px;position:relative;box-shadow:0 24px 70px #2d29263d}.reset-modal h2{margin:10px 0 8px;font-size:2rem}.reset-modal p{margin:0 0 22px}.reset-modal label{gap:7px;font-size:.9rem;font-weight:800;display:grid}.reset-modal input{background:#fff;border:1px solid #d9d3cc;border-radius:11px;outline:none;width:100%;height:50px;padding:0 14px}.reset-modal input:focus{border-color:var(--sage);box-shadow:0 0 0 3px #4a9b8e21}.modal-close{color:#756f69;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:15px;right:15px}.modal-close:hover{color:var(--charcoal);background:#f1eeea}.modal-actions{justify-content:flex-end;gap:9px;margin-top:24px;display:flex}.reset-sent{text-align:center}.reset-icon{width:54px;height:54px;color:var(--deep-sage);background:#e4f1ed;border-radius:50%;place-items:center;margin:0 auto 17px;display:grid}.loading-page{text-align:center;color:#756f69;place-content:center;gap:22px;height:100vh;display:grid}.app-shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.sidebar{z-index:20;color:#fff;background:linear-gradient(180deg,var(--deep-sage),#2b625a);flex-direction:column;width:260px;padding:0 12px 15px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-top{border-bottom:1px solid #ffffff1f;align-items:center;min-height:84px;margin:0 -12px 18px;padding:16px 22px;display:flex}.sidebar .brand{gap:13px}.sidebar .brand-mark{filter:none;width:46px;height:46px}.sidebar .brand-copy strong{color:#fff;letter-spacing:.08em;font-family:Playfair Display,serif;font-size:1.1rem}.sidebar .brand-copy small{color:#ffffff9e;letter-spacing:.1em;text-transform:uppercase;font-size:.62rem}.sidebar .close-menu{color:#fff}.log-button{color:#fff;width:100%;box-shadow:none;background:#ffffff24;border-color:#ffffff1a;margin-bottom:18px}.log-button:hover{background:#ffffff36}.sidebar nav{gap:4px;display:grid}.sidebar a,.sidebar-bottom button{color:#ffffffc2;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;min-height:44px;padding:0 13px;font-weight:700;text-decoration:none;display:flex}.sidebar a:hover,.sidebar-bottom button:hover{color:#fff;background:#ffffff17}.sidebar a.active{color:var(--deep-sage);background:#fff;box-shadow:0 8px 20px #0000001f}.nav-lock{margin-left:auto}.sidebar-bottom{border-top:1px solid #ffffff1f;gap:3px;margin-top:auto;padding-top:13px;display:grid}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:10;background:#faf8f5e6;justify-content:flex-end;align-items:center;height:84px;padding:0 32px;display:flex;position:sticky;top:0}.topbar-account{align-items:center;gap:11px;font-weight:800;display:flex}.avatar{color:#fff;background:var(--lavender);border-radius:50%;place-items:center;width:37px;height:37px;display:grid}.workspace{grid-column:2;min-width:0}.page-wrap{max-width:1440px;margin:auto;padding:44px 46px 70px}.page-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:32px;display:flex}.page-heading h1{margin:8px 0 4px;font-size:2.55rem}.page-heading p{color:#756f69;margin:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.range-control{min-height:44px;color:var(--deep-sage);background:#fff;border:1px solid #cbded9;border-radius:12px;align-items:center;gap:7px;padding:0 10px 0 14px;font-weight:800;display:flex}.range-control select{color:inherit;font-weight:inherit;cursor:pointer;background:0 0;border:0;outline:0}.stat-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.stat-grid article,.panel{border:1px solid var(--line);background:#fff;border-radius:18px;box-shadow:0 5px 25px #463c340e}.stat-grid article{flex-direction:column;padding:22px 24px;display:flex}.stat-grid span{color:#746e68;font-size:.9rem;font-weight:700}.stat-grid strong{margin:7px 0 1px;font-family:Playfair Display;font-size:2.3rem}.stat-grid .text-stat{font-size:1.65rem}.stat-grid small{color:#8b847d}.content-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.7fr);gap:20px;margin-top:20px;display:grid}.panel{padding:26px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;display:flex}.panel-heading h2{margin-top:6px}.text-button{color:var(--deep-sage);cursor:pointer;background:0 0;border:0;align-items:center;font-weight:800;display:flex}.activity{border-top:1px solid #eee9e4;grid-template-columns:12px 1fr auto;align-items:center;gap:13px;min-height:70px;display:grid}.activity:first-of-type{border-top:0}.activity div:nth-child(2){flex-direction:column;gap:2px;display:flex}.activity span,.activity time{color:#7a746e;font-size:.86rem}.activity-button{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.activity-button:hover{background:#faf8f5}.condition-dot{border-radius:8px;width:10px;height:42px}.condition-dot.seizure{background:var(--sage)}.condition-dot.migraine{background:var(--lavender)}.soft-panel{background:linear-gradient(155deg,#e4f0ed,#f4f0ea);align-self:start}.soft-panel>svg{color:var(--sage);margin-bottom:28px}.soft-panel h2{margin:8px 0;font-size:1.65rem}.soft-panel p{color:#625d57}.icon-button{color:var(--charcoal);cursor:pointer;background:0 0;border:0;place-items:center;padding:8px;display:grid}.menu-button,.close-menu,.sidebar-scrim{display:none}.log-form{gap:16px;max-width:950px;display:grid}.log-form>.panel{grid-template-columns:42px 1fr;gap:18px;display:grid}.section-number{width:34px;height:34px;color:var(--deep-sage);background:#dfece8;border-radius:50%;place-items:center;font-weight:900;display:grid}.field-section h2{font-size:1.35rem}.field-section>p{margin:6px 0 20px}.condition-choices{grid-template-columns:1fr 1fr;gap:13px;display:grid}.condition-choice{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:14px;flex-direction:column;gap:4px;min-height:82px;padding:15px 18px;display:flex}.condition-choice span{font-size:1rem;font-weight:900}.condition-choice small{color:#7b756f}.condition-choice.selected{border-color:var(--condition-color,var(--sage));box-shadow:0 0 0 3px color-mix(in srgb,var(--condition-color,var(--sage)) 15%,transparent);background:color-mix(in srgb,var(--condition-color,var(--sage)) 6%,white)}.form-fields.disabled{opacity:.52}.fields-row{grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;display:grid}.fields-row label{gap:7px;font-size:.88rem;font-weight:800;display:grid}.checkbox{align-items:center;gap:9px;margin-top:14px;font-weight:700;display:flex}.checkbox input{width:18px;height:18px}.severity-row{gap:10px;margin:18px 0 22px;display:flex}.severity{color:#615b56;cursor:pointer;background:#fff;border:1px solid #d8d1ca;border-radius:50%;width:48px;height:48px;font-weight:900}.severity.selected{color:#fff;border-color:var(--deep-sage);background:var(--deep-sage);box-shadow:0 0 0 3px #4a9b8e24}.select-label,.notes-label{gap:7px;margin-top:18px;font-size:.88rem;font-weight:800;display:grid}.select-label select{min-height:49px;color:var(--charcoal);background:#fff;border:1px solid #d9d3cc;border-radius:11px;padding:0 13px}.chip-field{border:0;margin:20px 0 0;padding:0}.chip-field legend{margin-bottom:9px;font-size:.88rem;font-weight:800}.chip-field>div{flex-wrap:wrap;gap:8px;display:flex}.chip{color:#625c57;cursor:pointer;background:#fff;border:1px solid #d9d3cc;border-radius:20px;min-height:38px;padding:0 14px;font-weight:700}.chip.selected{color:var(--deep-sage);background:#e7f1ee;border-color:#9fc8c0}.notes-label{position:relative}.notes-label textarea{resize:vertical;min-height:120px;font:inherit;border:1px solid #d9d3cc;border-radius:11px;outline:none;padding:13px}.notes-label textarea:focus{border-color:var(--sage);box-shadow:0 0 0 3px #4a9b8e21}.notes-label small{color:#8b847d;justify-self:end;font-weight:500}.form-success{color:#2d6f64;background:#e4f1ed;border-radius:10px;padding:12px 14px;font-weight:800}.form-actions{justify-content:flex-end;gap:10px;margin-top:5px;display:flex}.locked-page{border-radius:22px;place-items:center;min-height:calc(100vh - 190px);display:grid;position:relative;overflow:hidden}.locked-preview{filter:blur(7px);opacity:.66;background:linear-gradient(145deg,#f2eee8,#e6efed);position:absolute;inset:0}.fake-chart{align-items:flex-end;gap:6%;height:340px;margin:120px 10%;display:flex}.fake-chart i{background:var(--sage);border-radius:10px 10px 0 0;flex:1;height:40%}.fake-chart i:nth-child(2){height:67%}.fake-chart i:nth-child(3){background:var(--lavender);height:52%}.fake-chart i:nth-child(4){height:82%}.fake-chart i:nth-child(5){background:var(--lavender);height:58%}.fake-chart i:nth-child(6){height:75%}.upgrade-card{text-align:center;background:#fffffff2;border:1px solid #fff;border-radius:22px;width:min(610px,100% - 40px);padding:42px;position:relative;box-shadow:0 20px 60px #2d292629}.lock-circle{width:54px;height:54px;color:var(--deep-sage);background:#e3efec;border-radius:50%;place-items:center;margin:0 auto 18px;display:grid}.upgrade-card h1{margin:10px 0;font-size:2.1rem}.upgrade-card p{color:#69635e}.upgrade-card>small{color:#8b847e;margin-top:18px;display:block}.upgrade-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px;display:flex}.empty-page{text-align:center;place-content:center;min-height:55vh;display:grid}.empty-page h1{margin:10px;font-size:2.4rem}.empty-page p{color:#756f69}.dashboard-error{text-align:center;place-content:center;justify-items:center;min-height:240px;display:grid}.dashboard-error p,.dashboard-empty p{color:#756f69}.dashboard-empty{text-align:center;place-content:center;justify-items:center;min-height:220px;display:grid}.dashboard-loading .stat-grid article,.dashboard-loading .panel{overflow:hidden}.dashboard-loading i{background:linear-gradient(90deg,#eee9e4 25%,#faf8f5 50%,#eee9e4 75%) 0 0/200% 100%;border-radius:8px;height:15px;margin:9px 0;animation:1.2s linear infinite dashboard-shimmer;display:block}.dashboard-loading i:nth-child(2){width:58%;height:34px}.dashboard-loading i:nth-child(3){width:72%}.dashboard-loading .content-grid{margin-top:20px}.dashboard-loading .panel{min-height:260px}.dashboard-loading .panel i:nth-child(2){width:68%}.dashboard-loading .panel i:nth-child(3){width:84%}.dashboard-loading .panel i:nth-child(4){width:76%}@keyframes dashboard-shimmer{to{background-position:-200% 0}}.timeline-heading{margin-bottom:20px}.timeline-filters{align-items:end;gap:14px;margin-bottom:24px;padding:16px 18px;display:flex}.timeline-filters label{color:#68625c;gap:7px;min-width:220px;font-size:.8rem;font-weight:800;display:grid}.timeline-filters select{min-height:47px;color:var(--charcoal);background:#fff;border:1px solid #d4cdc6;border-radius:10px;padding:0 38px 0 13px;font-weight:700}.timeline-total{color:#756f69;justify-content:flex-end;align-items:baseline;gap:6px;min-width:90px;margin-left:auto;display:flex}.timeline-total strong{color:var(--charcoal);font-family:Playfair Display,serif;font-size:1.8rem}.timeline-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}.timeline-layout.detail-open{grid-template-columns:minmax(420px,1fr) minmax(320px,.58fr)}.timeline-list{min-width:0}.timeline-group{margin-bottom:31px}.timeline-group>h2{color:#5f5954;letter-spacing:.09em;text-transform:uppercase;margin:0 0 13px 4px;font-family:Nunito,sans-serif;font-size:.8rem;font-weight:800}.timeline-item{text-align:left;width:100%;min-height:90px;color:inherit;font:inherit;cursor:pointer;border-radius:14px;grid-template-columns:8px minmax(0,1fr) 34px auto 20px;align-items:center;gap:15px;margin-bottom:11px;padding:0 20px 0 23px;display:grid;position:relative}.timeline-item:hover{border-color:#bcd8d2;transform:translateY(-1px)}.timeline-item.selected{border-color:var(--sage);background:#f4f9f7;box-shadow:0 0 0 3px #4a9b8e1f}.timeline-color{border-radius:8px;width:8px;height:50px}.timeline-item-main{flex-direction:column;gap:3px;min-width:0;display:flex}.timeline-item-main strong{font-size:1.03rem}.timeline-item-main small,.timeline-item time{color:#68625d}.timeline-item-main small{font-size:.88rem}.timeline-item time{white-space:nowrap;font-size:.88rem}.timeline-item>svg{color:#746e68}.severity-badge{color:#2d2926;border-radius:50%;place-items:center;width:32px;height:32px;font-size:.86rem;font-weight:900;display:grid;box-shadow:inset 0 0 0 1px #2d292614}.load-more{margin:12px auto 0;display:flex}.timeline-empty{text-align:center;place-content:center;justify-items:center;min-height:330px;display:grid}.timeline-empty>svg{color:var(--sage)}.timeline-empty h2{margin:14px 0 0}.timeline-empty p{color:#756f69}.moment-detail{padding:30px;position:sticky;top:104px}.detail-title{align-items:center;gap:11px;margin:12px 35px 0 0;display:flex}.detail-title>span{border-radius:8px;width:11px;height:44px}.detail-title h2{font-size:1.8rem}.detail-date{color:#6f6963;margin:7px 0 22px}.moment-detail dl{border-top:1px solid var(--line);margin:0;padding:0}.moment-detail dl>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:12px 0;display:flex}.moment-detail dt{color:#7a746e;font-size:.84rem;font-weight:700}.moment-detail dd{text-align:right;margin:0;font-weight:800}.detail-section,.detail-notes{margin-top:22px}.detail-section h3,.detail-notes h3{text-transform:uppercase;letter-spacing:.08em;margin:0 0 9px;font-size:.84rem}.detail-section>div{flex-wrap:wrap;gap:7px;display:flex}.detail-section span{color:var(--deep-sage);background:#e7f1ee;border-radius:18px;padding:6px 10px;font-size:.82rem;font-weight:700}.detail-notes p{color:#5f5954;white-space:pre-wrap;margin:0}.edit-moment{margin-top:24px}.edit-modal{background:#fff;border-radius:20px;width:min(100%,700px);max-height:calc(100vh - 48px);padding:36px 40px;position:relative;overflow:auto;box-shadow:0 24px 70px #2d292642}.edit-modal-heading h2{margin:8px 0 5px;font-size:2rem}.edit-modal-heading p{color:#756f69;margin:0 35px 24px 0}.edit-modal form{gap:18px;display:grid}.edit-fields{grid-template-columns:1fr 1fr;gap:14px;display:grid}.edit-fields label{gap:7px;font-size:.88rem;font-weight:800;display:grid}.edit-fields input,.edit-modal select{min-height:49px;color:var(--charcoal);font:inherit;background:#fff;border:1px solid #d9d3cc;border-radius:11px;padding:0 13px}.edit-section{border-top:1px solid var(--line);padding-top:18px}.edit-section>h3{text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.9rem}.edit-modal .chip-field{margin-top:0;margin-bottom:17px}.edit-modal .form-error{margin:0}.timeline-loading{gap:9px;display:grid}.timeline-loading .panel{min-height:76px;padding:14px 22px}.timeline-loading i{background:#eee9e4;border-radius:8px;width:28%;height:11px;margin:5px 0;display:block}.timeline-loading i:nth-child(2){width:46%;height:16px}.timeline-loading i:nth-child(3){width:35%}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh;padding:30px}.mobile-brand{margin-bottom:42px;display:block}.app-shell{display:block}.sidebar{transition:transform .2s;transform:translate(-105%)}.sidebar.open{transform:translate(0)}.workspace{width:100%}.sidebar-scrim{z-index:19;background:#2d29267a;border:0;display:block;position:fixed;inset:0}.close-menu{display:grid;position:absolute;top:23px;right:10px}.menu-button{display:grid}.topbar{justify-content:space-between;padding:0 18px}.page-wrap{padding:30px 20px 55px}.stat-grid,.content-grid{grid-template-columns:1fr}.page-heading{flex-direction:column;align-items:flex-start}.condition-choices,.fields-row,.timeline-layout.detail-open{grid-template-columns:1fr}.moment-detail{grid-row:1;position:relative;top:auto}.timeline-filters{flex-direction:column;align-items:stretch}.timeline-filters label{min-width:0}.timeline-total{justify-content:flex-start;margin-left:0}}@media (width<=560px){.login-panel{padding:18px}.login-card{padding:30px 24px}.page-heading h1{font-size:2rem}.form-actions{grid-template-columns:1fr;display:grid}.log-form>.panel{grid-template-columns:1fr}.section-number{margin-bottom:-4px}.upgrade-card{padding:30px 20px}.topbar-account>span:first-child{display:none}}
