.prepared-recipes{padding:1.2rem;margin:1rem 0;border:1px solid #e6d8f3;border-radius:22px;background:linear-gradient(135deg,#faf4ff,#fffaf0);color:#3b245c}.prepared-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.prepared-heading h2{font-size:1.15rem;margin:0}.prepared-recipes p{font-size:.92rem;margin:.6rem 0}.prepared-suggestions,.prepared-options{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.prepared-suggestions strong{width:100%}.prepared-options>button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:.4rem;background:#fff;color:#4b2a6d;border:1px solid #dfd0ed;border-radius:16px;padding:1rem;flex:1 1 220px;white-space:normal}.prepared-options>button[aria-pressed=true]{outline:2px solid #8253c9;background:#f3e8ff}.prepared-recipes label{display:grid;gap:.4rem;margin:.8rem 0}.prepared-recipes fieldset{margin-top:1rem;border:1px solid #dfd0ed;border-radius:16px;padding:1rem}.prepared-recipes fieldset button{margin:.4rem .4rem 0 0}@media print{.prepared-recipes{display:none}}.kitchen-reader{max-width:1050px;margin:auto;padding:24px;background:#fffef9;color:#24382b;font-family:system-ui,sans-serif;font-size:1.1rem;line-height:1.65;min-height:100vh}.kitchen-reader h1{font-size:clamp(1.8rem,5vw,3rem);line-height:1.2}.kitchen-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:30px}.kitchen-tools button,.kitchen-tools a,.kitchen-step-buttons button{min-height:48px;padding:10px 16px}.kitchen-eyebrow{color:#526f5a;font-size:.85rem}.kitchen-columns{display:grid;grid-template-columns:1fr 1.7fr;gap:32px}.kitchen-ingredients{list-style:none;padding:0}.kitchen-ingredients label{display:flex;align-items:flex-start;gap:12px;padding:10px 0}.kitchen-ingredients input{width:22px;height:22px;flex-shrink:0;margin-top:5px}.kitchen-ingredients .is-checked{text-decoration:line-through;opacity:.6}.kitchen-focus{background:#edf3ec;padding:24px;border-radius:18px}.kitchen-current{font-size:1.4em;min-height:160px}.kitchen-step-buttons{display:flex;justify-content:space-between;gap:12px}.kitchen-all-steps{margin-top:24px}.kitchen-reader li{margin-bottom:12px}.kitchen-reader figure{margin:16px 0}.kitchen-reader figure img{width:100%;max-height:280px;object-fit:cover;border-radius:14px}.kitchen-reader figcaption{font-size:.75rem}.kitchen-reader footer{border-top:1px solid #ccd8cd;margin-top:32px;padding-top:20px}.kitchen-large{font-size:1.4rem}.kitchen-print-steps{display:none}@media(max-width:650px){.kitchen-columns{grid-template-columns:1fr;gap:12px}.kitchen-reader{padding:16px}}@media print{@page{size:A4;margin:16mm}.kitchen-reader{max-width:none;padding:0;min-height:0;font-size:11pt;color:#000;background:#fff}.kitchen-tools,.kitchen-focus,.kitchen-all-steps,.kitchen-ingredients input{display:none!important}.kitchen-print-steps,.kitchen-columns{display:block}.kitchen-ingredients .is-checked{text-decoration:none;opacity:1}.kitchen-reader h1{font-size:22pt}.kitchen-reader h2{break-after:avoid}.kitchen-reader li{break-inside:avoid}.kitchen-reader figure img{max-height:130px;width:auto;max-width:100%}.kitchen-reader a{color:#000}}@media print{.kitchen-ingredients li{margin:0}.kitchen-ingredients label{padding:3px 0}.kitchen-reader footer{break-inside:avoid;margin-top:16px;padding-top:10px}.kitchen-reader footer h2{margin-top:0}}.recipe-workshop fieldset{border:0;padding:0;min-width:0;margin:1rem 0}.recipe-workshop label:not(.photo-button){display:grid;gap:.35rem;margin:.8rem 0}.recipe-workshop textarea{width:100%;box-sizing:border-box}.recipe-targets{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem}.recipe-workshop .recipe-check{display:flex!important;align-items:flex-start;gap:.5rem}.recipe-check input{width:auto;flex:0 0 auto;margin-top:.25rem}.recipe-ingredient-photo{display:block;max-width:100%;max-height:240px;border-radius:12px;margin:1rem 0}.recipe-score-report{padding:1rem;background:#f5f1f8;border-radius:12px;margin-top:1rem}.recipe-draft{border-top:1px solid #ddd!important;padding-top:1rem!important}.recipe-image-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:12px 0}.recipe-image-choices button{display:grid;gap:6px;text-align:left;overflow:hidden}.recipe-image-choices img{width:100%;height:110px;object-fit:cover;border-radius:8px}.recipe-image-choices small{font-size:.7rem;overflow-wrap:anywhere}.meal-challenge{--ink:#28233e;--muted:#746e8a;--violet:#6552c8;--mint:#88e0c1;--peach:#ffd9c5;width:min(760px,100%);margin:0 auto;padding:12px 0 50px;color:var(--ink)}.challenge-topline{display:flex;justify-content:space-between;align-items:center;color:#8b81a5;font-size:.72rem;font-weight:900;letter-spacing:.14em;padding:0 4px 18px}.challenge-hero{display:flex;align-items:center;gap:22px;padding:30px;border-radius:30px;background:radial-gradient(circle at 90% 0,#ffddb4 0,transparent 36%),linear-gradient(135deg,#30234e,#6450aa 58%,#8a77d2);color:#fff;box-shadow:0 16px 38px #55438b30;overflow:hidden}.challenge-hero h1,.challenge-consent h1,.challenge-result h1{font-size:clamp(2rem,7vw,3.2rem);line-height:1.03;letter-spacing:-.04em;margin:7px 0 9px}.challenge-hero p:last-child{margin:0;color:#eee9ff}.challenge-orb,.challenge-active-orb,.challenge-celebration{width:86px;height:86px;flex:none;display:grid;place-items:center;border-radius:50%;font-size:2.7rem;background:linear-gradient(145deg,#e4ffcf,#8ce1c2);box-shadow:0 0 0 10px #ffffff15,0 14px 28px #17132e35;animation:challenge-float 3.2s ease-in-out infinite alternate}.challenge-eyebrow{color:#8a80a0;font-size:.72rem;font-weight:900;letter-spacing:.14em;margin:0}.challenge-hero .challenge-eyebrow{color:#c4b9ff}.challenge-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.challenge-mode-card{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-height:205px;padding:20px;border:2px solid #eee9f5;border-radius:24px;background:#fff;text-align:left;box-shadow:0 8px 22px #4736670b;color:var(--ink)}.challenge-mode-card.selected{border-color:var(--violet);box-shadow:0 10px 28px #6754c82a;transform:translateY(-2px)}.challenge-mode-card.playful-card.selected{border-color:#ee9a69}.mode-icon{font-size:1.8rem}.mode-title{font-size:1.12rem;font-weight:900}.mode-copy{color:var(--muted);font-size:.88rem;line-height:1.45;font-weight:500}.mode-tag{margin-top:auto;color:#8a80a0;font-size:.62rem;letter-spacing:.1em;font-weight:900}.challenge-start-card,.challenge-week,.challenge-history,.challenge-consent,.challenge-result,.challenge-active{padding:22px;border-radius:24px;background:#fff;border:1px solid #eee9f5;box-shadow:0 9px 28px #4736670b}.challenge-start-card{display:grid;gap:14px}.challenge-start-card label{font-size:.88rem}.challenge-start-card select{width:100%;background:#fff}.challenge-primary,.challenge-secondary{display:flex;justify-content:space-between;align-items:center;width:100%;padding:16px 19px!important;border-radius:16px!important;font-weight:900!important}.challenge-primary{background:linear-gradient(110deg,#6552c8,#9075db)!important;color:#fff!important;box-shadow:0 5px #493a9b!important}.challenge-primary:disabled{opacity:.45}.challenge-secondary{background:#f1edf8!important;color:#42375e!important;box-shadow:none!important}.challenge-start-card small{color:var(--muted);text-align:center;font-size:.75rem}.challenge-week{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;background:linear-gradient(120deg,#f5f0ff,#e7faf2)}.challenge-week h2,.challenge-history h2{margin:6px 0;font-size:1.15rem}.challenge-week p:last-child,.challenge-history>p{margin:5px 0 0;color:var(--muted)}.week-dots{display:flex;gap:5px}.week-dots span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#fff;color:#bbb3c9}.week-dots span.done{background:#7663cf;color:#fff;animation:challenge-pop .38s ease both}.challenge-history{margin-top:16px}.challenge-history-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #f1edf5}.challenge-history-row:last-child{border:0}.challenge-history-row small{color:var(--muted)}.challenge-reset,.challenge-link{display:block;margin:14px auto 0!important;padding:8px!important;background:transparent!important;box-shadow:none!important;color:#877e99!important;font-size:.78rem!important}.challenge-consent,.challenge-result{max-width:540px;margin:6vh auto;text-align:center;padding:clamp(24px,7vw,48px);background:radial-gradient(circle at 50% 0,#e3fff3,transparent 40%),#fff}.challenge-consent .challenge-orb,.challenge-result .challenge-celebration{margin:0 auto 24px}.challenge-consent>p:not(.challenge-eyebrow),.challenge-result>p:not(.challenge-eyebrow){color:var(--muted);line-height:1.6}.challenge-consent-check{display:flex;align-items:flex-start;gap:10px;margin:24px 0;text-align:left;color:var(--muted);font-size:.83rem;font-weight:600}.challenge-consent-check input{width:20px;height:20px;flex:none;accent-color:var(--violet)}.challenge-consent small{display:block;margin-top:14px;color:var(--muted)}.challenge-active{max-width:540px;margin:5vh auto;text-align:center;padding:clamp(22px,6vw,40px);overflow:hidden}.challenge-active.discreet{box-shadow:none;border-color:#e5e1ed}.challenge-active-orb{margin:0 auto 24px}.challenge-active.discreet .challenge-active-orb{animation:none;width:48px;height:48px;font-size:1.7rem;box-shadow:none;background:#f1edf8}.challenge-clock{margin:15px 0;font-variant-numeric:tabular-nums;font-size:clamp(3rem,15vw,5.7rem);font-weight:900;letter-spacing:-.06em;color:#6351bd}.challenge-active.discreet .challenge-clock{color:#3f3b4e}.challenge-discreet-copy{color:var(--muted);margin:0 0 25px}.challenge-rhythm{height:8px;border-radius:99px;background:#f1edf8;overflow:hidden;margin:22px 0}.challenge-rhythm span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#80d7ba,#8c72d8);transition:width .5s ease}.challenge-coach{min-height:118px;padding:18px;border-radius:20px;background:linear-gradient(135deg,#f4f0ff,#e9fff5);text-align:left;animation:challenge-in .45s ease both}.challenge-coach span{color:#7160bf;font-size:.7rem;font-weight:900;letter-spacing:.1em}.challenge-coach p{margin:10px 0 0;line-height:1.5;font-weight:700}.challenge-interval-hint{font-size:.72rem;color:var(--muted)}.challenge-controls{display:flex;gap:10px;margin-top:25px}.challenge-controls>*{flex:1}.challenge-active.discreet .challenge-controls{max-width:400px;margin:25px auto 0}.challenge-active.discreet .challenge-controls button:first-child{background:#f1edf8!important;color:#3f3b4e!important;box-shadow:none!important}.challenge-result-time{font-size:3.8rem;font-weight:900;color:#6653c3;font-variant-numeric:tabular-nums;margin:24px 0}.challenge-result-time small{display:block;font-size:.74rem;color:var(--muted);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.challenge-celebration{font-size:2.8rem;animation:challenge-pop .6s cubic-bezier(.2,1.6,.4,1) both}@keyframes challenge-float{to{transform:translateY(-8px) rotate(3deg)}}@keyframes challenge-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes challenge-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:560px){.meal-challenge{padding-top:4px}.challenge-hero{padding:22px;gap:16px}.challenge-orb{width:62px;height:62px;font-size:2rem}.challenge-mode-grid{grid-template-columns:1fr}.challenge-mode-card{min-height:0}.challenge-mode-card .mode-tag{margin-top:0}.challenge-controls{flex-direction:column}.challenge-week{align-items:flex-start;flex-direction:column}.week-dots span{width:32px;height:32px}}@media(max-width:560px){body>div nav a{min-width:0;flex:1}body>div nav small{font-size:.62rem}}@media(prefers-reduced-motion:reduce){.meal-challenge *{animation:none!important;transition:none!important}}.challenge-meal-context{margin:-4px 0 0!important;color:#7160bf;font-size:.8rem;font-weight:800}.challenge-estimate-card{padding:18px;border:1px solid #e8e1f4;border-radius:20px;background:radial-gradient(circle at 100% 0,#e6fff5,transparent 52%),linear-gradient(135deg,#f7f3ff,#fff)}.challenge-estimate-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.challenge-estimate-heading>div{display:grid;gap:7px}.challenge-estimate-heading strong{font-size:clamp(1.7rem,7vw,2.25rem);letter-spacing:-.04em;color:#5d49b5;font-variant-numeric:tabular-nums}.estimate-badge{padding:6px 9px;border-radius:99px;background:#eee9fb;color:#7160bf;font-size:.58rem;font-weight:900;letter-spacing:.08em;white-space:nowrap}.challenge-estimate-card p{margin:10px 0 4px;color:#514a64;font-size:.8rem}.challenge-estimate-card small{display:block;color:var(--muted);font-size:.71rem;text-align:left}.challenge-refine{padding:0 4px}.challenge-refine summary{padding:9px 0;color:#6552c8;font-size:.82rem;font-weight:800;cursor:pointer}.challenge-refine label{display:block;margin:8px 0;font-size:.82rem}.challenge-refine select{width:100%;margin-top:5px;background:#fff}.challenge-target{margin:19px 0 15px;padding:15px 16px 12px;border:1px solid #eee8f7;border-radius:18px;background:linear-gradient(130deg,#faf8ff,#f0fcf7);text-align:left}.challenge-target-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.challenge-target-head span,.challenge-result-estimate>span{color:#887da0;font-size:.65rem;font-weight:900;letter-spacing:.1em}.challenge-target-head strong{color:#5948b1;font-size:1.05rem;font-variant-numeric:tabular-nums}.challenge-target-track{position:relative;height:10px;margin:16px 3px 9px;border-radius:99px;background:#e7e1f1}.challenge-target-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8c78d8,#83dabb);transition:width .8s ease}.challenge-target.window .challenge-target-fill{background:linear-gradient(90deg,#8c78d8,#68cfa8)}.challenge-target.after .challenge-target-fill{background:linear-gradient(90deg,#8c78d8,#f1b38f)}.challenge-target-track i{position:absolute;top:50%;width:13px;height:13px;border:3px solid white;border-radius:50%;background:#6652c6;box-shadow:0 1px 5px #30234e44;transform:translate(-50%,-50%)}.challenge-target-track i.target-end{right:-6px;left:auto;background:#77cdb0;transform:translateY(-50%)}.challenge-target p{margin:0;color:#706986;font-size:.76rem;line-height:1.4}.challenge-result-estimate{display:grid;gap:7px;margin:4px 0 18px;padding:16px;border:1px solid #e9e3f2;border-radius:18px;background:linear-gradient(120deg,#f8f5ff,#f0fcf7);text-align:left}.challenge-result-estimate strong{color:#5d49b5;font-size:1.55rem;font-variant-numeric:tabular-nums}.challenge-result-estimate b{font-size:.88rem;color:#42375e}.challenge-result-estimate p{margin:0;font-size:.8rem}.challenge-history-row{grid-template-columns:minmax(130px,1fr) auto auto auto}.challenge-history-row small{font-size:.7rem}@media(max-width:560px){.challenge-estimate-heading{align-items:flex-start;flex-direction:column}.challenge-target-head{align-items:flex-start;flex-direction:column;gap:5px}.challenge-history-row{grid-template-columns:1fr auto;grid-template-areas:"meal duration" "estimate date";gap:4px 10px}.challenge-history-row>span{grid-area:meal}.challenge-history-row>strong{grid-area:duration}.challenge-history-row>small:first-of-type{grid-area:estimate}.challenge-history-row>small:last-child{grid-area:date;text-align:right}}.challenge-voice-settings{display:grid;gap:10px;padding:14px;border:1px solid #e6e0f5;border-radius:16px;background:#fbfaff}.challenge-voice-toggle{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:10px!important;font-weight:750}.challenge-voice-toggle input{width:20px;height:20px;accent-color:#6552c8}.challenge-voice-settings>label:not(.challenge-voice-toggle){display:grid;gap:6px;color:var(--muted);font-size:.82rem}.challenge-voice-settings select{width:100%;padding:11px;border:1px solid #ded8eb;border-radius:12px;background:#fff;color:var(--ink)}.challenge-voice-settings small{color:var(--muted);font-size:.75rem;line-height:1.45}.challenge-voice-preview{justify-self:start;border:0;border-radius:999px;padding:9px 14px;background:#eee9ff;color:#5745b4;font-weight:800}.challenge-voice-preview:disabled{opacity:.5}.challenge-voice-live{display:block;margin:8px auto 0;border:1px solid #ddd5f4;border-radius:999px;padding:8px 14px;background:#fff;color:#5f4bbd;font-size:.82rem;font-weight:800}.challenge-voice-live:hover{background:#f3efff}:root{font-family:Inter,system-ui,sans-serif;color:#3b245c;background:#fff8f0;font-synthesis:none}*{box-sizing:border-box}body{margin:0;padding-bottom:88px}a{color:inherit}header{background:#4b2a6d;color:#fff;padding:18px max(5vw,20px);display:flex;justify-content:space-between;align-items:center}.brand{font-size:1.2rem;font-weight:800;text-decoration:none}.page{width:min(760px,92%);margin:32px auto}.hero{background:#4b2a6d;color:#fff;border-radius:28px;padding:28px}.hero h1{font-size:2.8rem;margin:.2em 0}.hero small{font-size:1rem;font-weight:400}.bar{height:12px;background:#ffffff30;border-radius:20px;overflow:hidden}.bar i{display:block;height:100%;background:#ffd166}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}.grid article,.card{background:#fff;border:1px solid #f2d7c9;border-radius:18px;padding:18px;display:flex;flex-direction:column}.grid strong{font-size:1.4rem}.grid span{color:#765b82}.actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.actions a,.button,button{background:#ffd166;border:0;border-radius:14px;padding:15px;color:#4b2a6d;font-weight:800;text-align:center;text-decoration:none;cursor:pointer}nav{position:fixed;z-index:4;bottom:0;left:0;right:0;padding:10px max(2vw,8px) calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #ead7e4;display:flex;justify-content:space-around}nav a{display:flex;min-width:58px;min-height:52px;flex-direction:column;align-items:center;text-decoration:none}nav b{font-size:1.4rem}.scan-button{color:#06d6a0}.offline,.warning{padding:12px;text-align:center;background:#ffe0a3}.auth{min-height:100vh;display:grid;place-content:center}.auth form{width:min(420px,90vw);background:#fff;border-radius:24px;padding:28px;display:grid;gap:18px}.auth h1{text-align:center}label{display:grid;gap:7px;font-weight:700}input,select{font:inherit;padding:13px;border:1px solid #c8a9c0;border-radius:10px}.check{display:flex;grid-template-columns:auto 1fr}.empty,.scan-panel{padding:50px 24px;text-align:center;background:#fff;border-radius:24px}.scan-panel>div{font-size:5rem}@media(min-width:720px){.grid{grid-template-columns:repeat(4,1fr)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}header{background:linear-gradient(135deg,#4b2a6d,#8b5cf6 48%,#ff6b8a);position:relative;overflow:hidden}header:after{content:"✦  ✧  ✦";position:absolute;right:6%;top:12px;font-size:1.5rem;color:#fff8f0aa;letter-spacing:10px}.hero{background:linear-gradient(135deg,#4b2a6d,#7b61ff 52%,#06d6a0);position:relative;overflow:hidden}.hero:after{content:"☀︎";position:absolute;right:24px;top:12px;font-size:5rem;color:#ffd16666}.card{box-shadow:0 8px 24px #7b61ff18}.actions a,.button,button{background:linear-gradient(135deg,#ffd166,#ff9f68);box-shadow:0 5px #d9775770;transition:transform .18s ease,box-shadow .18s ease}.actions a:hover,.button:hover,button:hover{transform:translateY(-2px);box-shadow:0 7px #d9775770}nav{background:linear-gradient(90deg,#fff8f0,#fff,#fff8f0)}nav a:nth-child(1){color:#7b61ff}nav a:nth-child(2){color:#ff6b8a}nav a:nth-child(3){color:#06a77d}nav a:nth-child(4){color:#f59e0b}nav a:nth-child(5){color:#8b5cf6}.warning{background:linear-gradient(90deg,#ffe0a3,#ffd6e0)}.badge{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#f3e8ff;color:#4b2a6d;font-size:.9rem;font-weight:700}.nutrient-form>span{padding:9px 10px;border-radius:10px;background:#fff8f0;color:#4b2a6d;font-weight:700}.grid:has(.card){grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.grid:has(.card)>.card{min-width:0;padding:22px}.grid:has(.card)>.card .nutrient-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.grid:has(.card)>.card .nutrient-form>span{display:block;line-height:1.35;font-size:.92rem}.grid:has(.card)>.card .warning{line-height:1.45;margin-top:14px}@media(max-width:620px){.grid:has(.card){grid-template-columns:1fr}.grid:has(.card)>.card .nutrient-form{grid-template-columns:1fr}}.auth{min-height:100dvh;padding:28px 16px;background:linear-gradient(145deg,#fff8f0,#f3e8ff 52%,#ffe4ee)}.auth-shell{width:min(440px,100%);margin:auto;display:grid;justify-items:center;gap:10px}.auth-logo{width:min(300px,82vw);height:auto;max-height:100px;object-fit:contain}.auth-tagline{margin:0 0 8px;color:#765b82;font-weight:600;text-align:center}.auth form{width:100%;padding:30px;gap:12px;border:1px solid #ead7e4;box-shadow:0 18px 50px #4b2a6d1c}.auth h1{margin:0;color:#3b245c;font-size:1.8rem;text-align:left}.auth-intro{margin:0 0 8px;color:#765b82;line-height:1.45}.auth label{gap:6px;color:#3b245c}.auth input{width:100%;background:#fff}.password-field{position:relative;display:flex;align-items:center}.password-field input{padding-right:92px}.password-toggle{position:absolute;right:6px;padding:8px 10px!important;border-radius:8px!important;background:#f3e8ff!important;box-shadow:none!important;color:#4b2a6d!important;font-size:.78rem}.password-toggle:hover{transform:none!important;box-shadow:none!important}.auth-submit{width:100%;margin-top:6px}.field-error,.form-error{margin:0;color:#b4234d;font-size:.88rem}.form-error{padding:10px;border-radius:10px;background:#ffe4ee}.auth-switch{margin:4px 0 0;text-align:center;color:#765b82;font-size:.92rem}.auth-switch a{color:#4b2a6d;font-weight:800}.forgot-password-link,.auth-back-link{justify-self:center;color:#4b2a6d;font-weight:800;font-size:.9rem}.forgot-password-link{margin-top:-4px}.form-success{margin:0;padding:10px;border-radius:10px;background:#d8f3e8;color:#166534}@media(max-width:480px){.auth form{padding:24px 20px}.auth-logo{max-height:82px}}.legal-link{padding:9px 12px!important;background:transparent!important;box-shadow:none!important;color:#765b82!important;text-decoration:underline;font-weight:600;font-size:.88rem}.legal-link:hover{transform:none!important;box-shadow:none!important;color:#4b2a6d!important}.legal-hint{margin:0;color:#765b82;font-size:.78rem}.legal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:16px;background:#24153499}.legal-modal{width:min(680px,100%);max-height:min(90dvh,720px);overflow:auto;background:#fff8f0;border-radius:22px;padding:22px;box-shadow:0 24px 80px #24153455}.legal-head{display:flex;justify-content:space-between;align-items:center}.legal-head h2{margin:0;color:#3b245c}.legal-close{padding:4px 12px!important;background:transparent!important;box-shadow:none!important;font-size:1.8rem;color:#765b82}.legal-close:hover{transform:none!important;box-shadow:none!important}.legal-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0 12px}.legal-tabs button{padding:8px 11px;background:#eadff7;box-shadow:none;font-size:.78rem}.legal-tabs button.active{background:#4b2a6d;color:#fff}.legal-content{min-height:180px;padding:18px;background:#fff;border:1px solid #ead7e4;border-radius:14px;line-height:1.6}.legal-content h3{margin-top:0;color:#4b2a6d}.legal-version{font-size:.78rem;color:#765b82}.legal-check{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:9px;margin:16px 0;color:#3b245c}.legal-check input{width:auto}.profile-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px}.photo-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.photo-actions .photo-button{position:relative}.photo-actions .photo-button.secondary{background:linear-gradient(135deg,#e8d8ff,#c7b3ff);box-shadow:0 5px #8b5cf655}.photo-actions .photo-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.photo-actions .photo-button{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:42px;padding:10px 14px;font-size:.88rem;border-radius:11px;box-shadow:0 3px #d9775770}.photo-actions .photo-button.secondary{box-shadow:0 3px #8b5cf655}.coach-card{gap:14px}.coach-disclaimer{margin:0;padding:10px;border-radius:10px;background:#fff3cd;color:#765b82;font-size:.88rem}.coach-messages{display:grid;gap:10px;min-height:180px}.coach-message{padding:12px 14px;border-radius:14px;line-height:1.45}.coach-message.user{background:#f3e8ff;justify-self:end;max-width:85%}.coach-message.assistant{background:#fff;border:1px solid #ead7e4;max-width:95%}.coach-message p{margin:5px 0}.coach-message small{color:#765b82}.coach-form{display:flex;gap:8px}.coach-form input{flex:1;min-width:0}.coach-form button{white-space:nowrap}@media(max-width:480px){.coach-form{flex-direction:column}}nav a:nth-child(5){color:#e35d9a}.coach-rich-text h3{margin:.35em 0;color:#4b2a6d;font-size:1.05rem}.coach-rich-text p{margin:.45em 0}.coach-rich-text ul{margin:.4em 0;padding-left:1.25rem}.coach-rich-text strong{color:#3b245c}.hydration-hero{margin-bottom:18px}.hydration-form{gap:12px}.hydration-quick{display:flex;gap:8px;flex-wrap:wrap}.hydration-quick button{padding:9px 12px;font-size:.85rem;background:#d8f3ff;box-shadow:none}.hydration-quick button:hover{box-shadow:none}.hydration-form>button{margin-top:2px}.recipe-search{width:100%;margin-bottom:14px}.recipe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.recipe-card h2{margin-top:0;font-size:1.2rem}.recipe-tags{display:flex;gap:6px;flex-wrap:wrap}.recipe-ingredients{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.recipe-ingredients button{padding:7px 9px;font-size:.78rem;background:#e8f8f2;box-shadow:none}.recipe-ingredients button:hover{box-shadow:none}.substitution-modal li{margin:8px 0}@media(max-width:620px){.recipe-grid{grid-template-columns:1fr}}.plan-builder{gap:12px}.plan-preview{display:grid;gap:7px;margin:4px 0}.plan-preview div,.plan-row,.shopping-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:#fff8f0}.plan-preview span,.plan-row small,.shopping-row span{color:#765b82}.plan-row{margin:8px 0}.plan-row div{display:grid;gap:3px}.plan-row button{padding:9px 12px;font-size:.82rem;background:#d8f3ff;box-shadow:none}.shopping-row{margin:7px 0}@media(max-width:520px){.plan-row{align-items:flex-start;flex-direction:column}.plan-row button{width:100%}}.app-update{gap:8px;margin-top:14px}.app-update h2,.app-update p{margin:0}.app-update button{align-self:flex-start;padding:10px 14px;font-size:.88rem}.recipe-generator{gap:10px;margin:14px 0}.recipe-generator h2,.generated-recipe h2{margin-top:0}.recipe-generator small{color:#765b82}.generated-recipe{gap:6px;margin-bottom:16px}.generated-recipe h3{margin:12px 0 2px;color:#4b2a6d}.generated-recipe ul,.generated-recipe ol{margin-top:4px}.generated-recipe .badge{margin:3px}.plan-actions{display:flex;gap:6px;flex-wrap:wrap}.plan-actions button,.shopping-row button,.plan-row>button{padding:8px 10px;font-size:.78rem;box-shadow:none;background:#eadff7}.shopping-row button{margin-left:auto;background:#ffe4ee}@media(max-width:520px){.plan-actions{width:100%}.plan-actions button{flex:1}.shopping-row{flex-wrap:wrap}}.dashboard-alerts{gap:8px;margin-top:18px}.dashboard-alerts h2,.dashboard-alerts p{margin:0}.dashboard-alerts button{align-self:flex-start;padding:10px 14px;font-size:.86rem}.dashboard-alerts ul{margin:4px 0 0;padding-left:1.3rem}.shopping-row{flex-wrap:wrap}.shopping-toggle{padding:7px 10px;font-size:.8rem;background:#e8f8f2;box-shadow:none}.shopping-items{flex-basis:100%;margin:4px 0 0;padding:10px 12px 10px 28px;border-top:1px solid #ead7e4;background:#fff}.shopping-items li{padding:5px 0}.shopping-items label{display:flex;align-items:center;gap:8px;font-weight:500}.shopping-items input{width:auto}.shopping-items .checked{text-decoration:line-through;color:#8b7a91}nav a:nth-child(4){color:#e67e22}nav a:nth-child(6){color:#8b5cf6}.recipe-entry-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.recipe-entry-actions .button{padding:10px 13px;font-size:.86rem}.recipe-card-actions{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 8px}.recipe-card-actions button{padding:7px 9px;font-size:.76rem;background:#eadff7;box-shadow:none}.recipe-card h2 .badge{font-size:.68rem;vertical-align:middle}.photo-recipe-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.photo-recipe-actions button{padding:10px 13px;font-size:.86rem}.photo-recipe-actions button:first-child{background:#d8f3ff;box-shadow:none}.generated-recipe li strong{display:inline-block;min-width:72px;color:#4b2a6d}.generated-recipe li{margin:5px 0}.recipe-thumb{width:100%;height:150px;object-fit:cover;border-radius:12px;margin:-4px 0 8px}.update-link{color:#4b2a6d;font-weight:800;text-decoration:underline}.update-entry{gap:5px;margin:12px 0}.update-entry h2{margin:0}.update-entry small{color:#765b82}.update-entry ul{margin:8px 0 0;padding-left:1.25rem}.recipe-edit-modal{display:grid;gap:10px}.recipe-edit-modal textarea{font:inherit;min-height:80px;padding:10px;border:1px solid #c8a9c0;border-radius:10px;resize:vertical}.ingredient-edit{display:flex;gap:6px}.ingredient-edit input{flex:1}.ingredient-edit button{padding:8px 11px;background:#ffe4ee;box-shadow:none}.edit-add{padding:8px 11px;background:#e8f8f2;box-shadow:none;justify-self:start}.edit-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.edit-actions button{padding:10px 13px}.nutrition-fill{padding:8px 10px;font-size:.78rem;background:#fff3cd;box-shadow:none;align-self:flex-start}.nutrition-suggestion{margin:4px 0;color:#765b82;font-size:.84rem}.update-available{padding:9px 12px;border-radius:10px;background:#d8f3ff;color:#145374;font-weight:700}.journal-day-picker{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:12px}.journal-day-picker label{display:flex;align-items:center;gap:6px;font-size:.82rem}.journal-day-picker input{padding:8px 9px;font-size:.88rem}.journal-day-picker button,.admin-user-actions button{padding:8px 11px;font-size:.78rem;border-radius:10px;box-shadow:none;white-space:nowrap}.admin-user-actions{display:flex;gap:7px;flex-wrap:wrap}.admin-user-actions button{flex:1 1 auto;min-width:0;white-space:normal}.card{min-width:0}input,select,textarea{max-width:100%;min-width:0}@media(max-width:520px){.journal-day-picker{gap:6px}.journal-day-picker button{flex:1 1 calc(50% - 6px)}.journal-day-picker label{flex:1 1 100%;justify-content:center}.admin-user-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.admin-user-actions button{width:100%;padding:8px 6px;font-size:.74rem}}.journal-day-picker .day-chevron{width:34px;height:34px;padding:0;border-radius:50%;font-size:1.7rem;line-height:1;background:linear-gradient(135deg,#e8d8ff,#c7b3ff);box-shadow:none}.journal-day-picker .day-chevron:hover{box-shadow:none}.journal-day-picker .day-chevron{flex:0 0 34px!important}.journal-day-picker label[aria-label="Date du journal"]{flex:1 1 auto;min-width:145px}.journal-day-picker .today-button{flex:0 0 100%;order:3;margin-top:2px}.journal-day-picker{display:grid!important;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;justify-items:stretch;gap:8px}.journal-day-picker .day-chevron{grid-row:1;flex:none!important}.journal-day-picker label[aria-label="Date du journal"]{grid-row:1;min-width:0!important;width:100%;justify-content:center}.journal-day-picker label[aria-label="Date du journal"] input{width:100%;min-width:0}.journal-day-picker .today-button{grid-column:1 / -1;grid-row:2;width:100%;margin-top:0}@media(max-width:520px){.journal-day-picker{grid-template-columns:34px minmax(0,1fr) 34px;gap:6px}.journal-day-picker .today-button{flex:none!important}}.journal-actions{display:flex;gap:7px;align-items:stretch}.journal-actions button{flex:1 1 0;min-width:108px;padding:8px 10px;font-size:.78rem;white-space:nowrap;box-shadow:none;background:#eadff7}.journal-actions button:last-child{background:#ffe4ee}@media(max-width:520px){.journal-actions{width:100%}.journal-actions button{min-width:0}}.meal-times{font-size:.78rem;font-weight:600;color:#765b82;margin-left:6px;white-space:nowrap}.hydration-from-scan{gap:10px;margin:16px 0;background:linear-gradient(135deg,#e8f8f2,#d8f3ff)}.hydration-scan-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hydration-from-scan button{align-self:flex-start;padding:10px 14px;font-size:.86rem}@media(max-width:520px){.hydration-scan-fields{grid-template-columns:1fr}}.hydration-entry{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid #ead7e4}.hydration-entry button{padding:7px 9px;font-size:.76rem;box-shadow:none;background:#eadff7}.hydration-entry button:last-child{background:#ffe4ee}@media(max-width:520px){.hydration-entry{align-items:flex-start;flex-direction:column}.hydration-entry>div{display:flex;width:100%;gap:7px}.hydration-entry button{flex:1}}.plan-settings{display:grid;grid-template-columns:1fr 1fr;gap:10px}.plan-edit-list{display:grid;gap:8px;margin:8px 0}.plan-edit-row{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1.3fr) 34px;gap:8px;align-items:center;padding:9px;background:#fff8f0;border-radius:10px}.plan-edit-row strong{font-size:.85rem}.plan-edit-row button{padding:6px 9px;background:#ffe4ee;box-shadow:none}@media(max-width:520px){.plan-settings{grid-template-columns:1fr}.plan-edit-row{grid-template-columns:1fr 34px}.plan-edit-row select{grid-column:1 / -1;grid-row:2}.plan-edit-row button{grid-column:2;grid-row:1}}.ai-wait{margin:0;padding:10px 12px;border-radius:10px;background:#f3e8ff;color:#4b2a6d;font-size:.86rem}.hydration-quick button span{font-size:1.25rem;vertical-align:middle}.hydration-quick button{display:inline-flex;align-items:center;gap:4px}.bar{position:relative}.bar-value{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.78rem;font-weight:800;text-shadow:0 1px 2px #24153499;pointer-events:none}.bar-over .bar-value{color:#fff}.quick-main-action{position:relative;display:grid;gap:6px}.quick-main-action>a,.quick-main-action>button{display:block}.quick-main-action>button{background:#b8f2e6}.quick-hydration{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:6px;background:#f1fffb;border-radius:12px}.quick-hydration button{padding:9px 5px;font-size:.78rem;background:#70d6ff;box-shadow:none}.quick-main-action small{display:block;text-align:center;color:#16795f;font-weight:700}@media(max-width:520px){.quick-hydration{grid-template-columns:1fr 1fr 1fr}.quick-hydration button{min-height:42px}}.shopping-group{padding:4px 0 8px;border-bottom:1px solid #ead7e4}.shopping-group:last-child{border-bottom:0}.shopping-group h3{margin:8px 0;color:#4b2a6d;font-size:.95rem}.shopping-group ul{list-style:none;margin:0;padding:0}.shopping-group li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0}.shopping-have{display:flex;align-items:center;gap:5px;font-size:.75rem;color:#765b82;white-space:nowrap}.shopping-have input{width:72px;padding:7px;font-size:.85rem}@media(max-width:520px){.shopping-group li{align-items:flex-start;flex-direction:column;gap:6px}.shopping-have{width:100%;justify-content:flex-end}}.admin-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.admin-section-heading h2,.admin-section-heading p{margin:0}.admin-section-heading p{margin-top:4px;color:#765b82;font-size:.84rem}.admin-refresh{padding:8px 11px!important;font-size:.78rem!important;background:#e8f8f2!important;box-shadow:none!important;white-space:nowrap}.admin-agent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.admin-agent-card{padding:12px;border:1px solid #ead7e4;border-radius:12px;background:#fff}.admin-agent-title{display:flex;justify-content:space-between;gap:8px;align-items:center}.admin-agent-title span{font-size:.72rem;color:#765b82;background:#f3e8ff;padding:4px 7px;border-radius:8px}.admin-agent-card small{display:block;margin-top:7px;color:#765b82}.admin-agent-card ul{margin:8px 0 0;padding-left:1.15rem}.admin-agent-card li{font-size:.8rem;margin:3px 0}.admin-agent-card code,.admin-tools-list code{font-size:.76rem;color:#4b2a6d}.admin-tools-details{margin-top:14px;border-top:1px solid #ead7e4;padding-top:10px}.admin-tools-details summary{cursor:pointer;color:#4b2a6d;font-weight:700}.admin-tools-list{display:grid;gap:7px;margin-top:10px}.admin-tools-list>div{display:grid;grid-template-columns:1fr auto;gap:3px 10px;padding:8px 10px;background:#fff8f0;border-radius:9px}.admin-tools-list span,.admin-tools-list small{color:#765b82;font-size:.76rem}.admin-tools-list small{grid-column:1 / -1}.admin-audit{margin-top:14px}.admin-filters{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.admin-filters label{display:grid;gap:4px;min-width:180px;font-size:.8rem;color:#765b82}.admin-filters select{padding:8px}.admin-audit-table{overflow-x:auto}.admin-audit-head,.admin-audit-row{display:grid;grid-template-columns:1.2fr 1.1fr .8fr .8fr;gap:10px;align-items:center;min-width:600px}.admin-audit-head{padding:8px 10px;color:#765b82;font-size:.74rem;font-weight:700}.admin-audit-row{padding:9px 10px;border-top:1px solid #ead7e4;font-size:.78rem}.admin-audit-row span{display:grid;gap:2px}.admin-audit-row small{color:#765b82}.admin-audit-row time{white-space:nowrap}.audit-status{display:inline-block;width:max-content;padding:4px 7px;border-radius:8px;font-weight:700}.audit-completed{background:#d8f3e8;color:#16795f}.audit-failed{background:#ffe4ee;color:#a52c54}.audit-denied{background:#fff3cd;color:#8a5a00}.admin-audit-row code{font-size:.7rem;color:#765b82}@media(max-width:620px){.admin-agent-grid{grid-template-columns:1fr}.admin-section-heading{align-items:stretch;flex-direction:column}.admin-refresh{align-self:flex-start}.admin-filters label{min-width:0;flex:1 1 140px}}.nutripoints-card{margin-bottom:18px;border:1px solid #c9b5f4;background:linear-gradient(135deg,#fff,#f3e8ff 58%,#e8f8f2);gap:10px}.nutripoints-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.nutripoints-heading h2{margin:2px 0 0;color:#4b2a6d}.eyebrow{font-size:.78rem;color:#765b82;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.nutripoints-total{font-size:2rem;color:#4b2a6d;white-space:nowrap}.nutripoints-total small{font-size:1rem;font-weight:600}.nutripoints-progress{height:14px;border-radius:999px;background:#fffa;overflow:hidden;border:1px solid #d9c9f2}.nutripoints-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#06a77d,#ffd166 72%,#ff6b8a);transition:width .3s ease}.nutripoints-remaining,.nutripoints-muted{margin:0;color:#4b2a6d;line-height:1.4}.nutripoints-reserve{display:flex;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid #d9c9f2;color:#765b82;font-size:.86rem}.nutripoints-reserve strong{color:#4b2a6d}.nutripoints-reserve small{font-weight:500}.nutripoints-partial{margin:0;color:#765b82;font-size:.78rem}.nutripoints-over{border-color:#f1b4c7}.nutripoints-unavailable{background:#fff8f0}.nutripoints-unavailable p{margin:0;color:#765b82}.nutripoints-link{color:#4b2a6d;font-weight:800;text-decoration:underline}.nutripoints-skeleton{height:14px;width:65%;border-radius:99px;background:#eadff7}.meal-nutripoints{display:inline-flex;align-items:center;margin-left:8px;padding:4px 8px;border-radius:999px;background:#f3e8ff;color:#4b2a6d;font-size:.72rem;vertical-align:middle;white-space:nowrap}@media(max-width:520px){.nutripoints-heading{align-items:center}.nutripoints-total{font-size:1.65rem}.nutripoints-reserve{font-size:.8rem}}.journal-np-total{background:linear-gradient(135deg,#f3e8ff,#e8f8f2)!important;border-color:#c9b5f4!important}.journal-np-total small{margin-top:4px;color:#765b82;font-size:.78rem}.journal-meal{gap:10px;margin-bottom:14px}.journal-meal-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.journal-meal-heading h2{margin:0}.journal-meal-heading .meal-nutripoints{margin-left:0}.journal-meal-count,.journal-meal-hint,.journal-component-portion{margin:0;color:#765b82;font-size:.85rem}.journal-meal-nutrients,.journal-component-nutrients{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0}.journal-meal-nutrients>div,.journal-component-nutrients>div{padding:9px;border-radius:10px;background:#fff8f0;min-width:0}.journal-meal-nutrients dt,.journal-component-nutrients dt{font-size:.76rem;color:#765b82}.journal-meal-nutrients dd,.journal-component-nutrients dd{margin:3px 0 0;font-weight:800}.journal-meal-details{border-top:1px solid #ead7e4;padding-top:10px}.journal-meal-details summary{cursor:pointer;font-weight:800;color:#4b2a6d;padding:7px 0}.journal-meal-details[open]{display:grid;gap:12px}.journal-meal-actions{display:flex;gap:8px;flex-wrap:wrap}.journal-meal-actions button,.journal-challenge{padding:9px 12px;font-size:.8rem;box-shadow:none}.journal-component{border:1px solid #ead7e4;border-radius:12px;padding:12px;display:grid;gap:8px}.journal-component h3{margin:0;font-size:1rem}.journal-component .journal-actions{justify-content:flex-end}.journal-challenge{align-self:flex-start}@media(max-width:520px){.journal-meal-nutrients,.journal-component-nutrients{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-meal-actions button{flex:1 1 100%}}.journal-meal-overview{display:flex;gap:14px;align-items:flex-start}.journal-meal-photo{width:140px;height:110px;object-fit:cover;border-radius:12px;flex:none}.journal-meal-overview-text{min-width:0;flex:1}.journal-meal-foods{margin:6px 0 0;padding-left:20px;display:grid;gap:3px}.journal-meal-foods li{line-height:1.35;overflow-wrap:anywhere}.journal-meal-foods small{color:#765b82;white-space:nowrap}@media(max-width:520px){.journal-meal-photo{width:110px;height:110px}.journal-meal-overview{gap:10px}}.body-measurement-form{gap:12px}.body-measurement-form h2{margin:0}.body-measurement-form>div{display:grid;grid-template-columns:1fr auto 1.4fr;gap:8px;align-items:end}.body-measurement-form>div>span{padding-bottom:13px}.body-measurement-form button{align-self:flex-start}.body-measurement-form .secondary{background:#eadff7;box-shadow:none}.body-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.body-summary .card{gap:4px}.body-summary strong{font-size:1.65rem}.body-summary span,.body-summary small{color:#765b82}.bmi-history{gap:10px}.bmi-history-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.bmi-history-head h2{margin:0}.bmi-history-head label{font-size:.8rem}.bmi-history-head select{padding:8px}.bmi-chart{width:100%;height:auto;min-height:150px;background:#fff8f0;border-radius:12px;overflow:visible}.bmi-chart line{stroke:#c8a9c0;stroke-width:1}.bmi-chart polyline{fill:none;stroke:#7b61ff;stroke-width:3;stroke-linejoin:round}.bmi-chart circle{fill:#ff6b8a}.measurement-list{display:grid;gap:9px}.measurement-row{display:grid;grid-template-columns:1fr 1.5fr 1fr auto;align-items:center;gap:12px;padding:13px}.measurement-row>div{display:grid;gap:3px}.measurement-row span,.measurement-row small,.measurement-row time{color:#765b82;font-size:.82rem}.measurement-actions{display:flex!important;grid-template-columns:none;gap:5px}.measurement-actions button{padding:7px 9px;box-shadow:none;background:#eadff7}.measurement-actions button:last-child{background:#ffe4ee}@media(max-width:620px){.body-summary{grid-template-columns:1fr}.body-measurement-form>div{grid-template-columns:1fr auto}.body-measurement-form>div label:last-child{grid-column:1 / -1}.measurement-row{grid-template-columns:1fr 1fr}.measurement-actions{justify-content:flex-end}.bmi-history-head{flex-direction:column}}.history-table{overflow:hidden}.table-scroll{overflow-x:auto}.history-table table{width:100%;border-collapse:collapse;font-size:.9rem}.history-table th,.history-table td{padding:8px;text-align:right;border-bottom:1px solid rgba(80,60,110,.12);white-space:nowrap}.history-table th:first-child,.history-table td:first-child{text-align:left}.history-synthesis table{width:100%;border-collapse:collapse;margin:12px 0}.history-synthesis th,.history-synthesis td{padding:8px;border:1px solid rgba(80,60,110,.15);text-align:left}.history-synthesis th{background:linear-gradient(120deg,#ffe4a8,#ffd2e1)}.history-actions{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 16px}.history-actions button{min-height:42px}@media print{header,nav,.history-actions,button,select{display:none!important}body{background:#fff!important;color:#111}.page{max-width:none!important;padding:0!important}.card{box-shadow:none!important;break-inside:avoid}.history-table,.table-scroll{overflow:visible}.history-synthesis{font-size:11pt}}.ai-action{color:#fff!important;background:linear-gradient(135deg,#7c3aed,#a855f7 48%,#ec4899)!important;border:0;box-shadow:0 5px 14px #7c3aed40;transition:transform .15s ease,box-shadow .15s ease}.ai-action:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px #7c3aed59}.ai-action:disabled{opacity:.78;cursor:wait}.ai-action[aria-busy=true]:before{content:"";display:inline-block;width:13px;height:13px;margin-right:7px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;vertical-align:-2px;animation:ai-spin .75s linear infinite}.ai-wait{display:flex;align-items:center;gap:9px;background:linear-gradient(110deg,#f3e8ff,#fce7f3)!important;border:1px solid #d8b4fe;min-height:42px}.ai-spinner{width:16px;height:16px;border:2px solid #c4b5fd;border-top-color:#7c3aed;border-radius:50%;animation:ai-spin .75s linear infinite;flex:0 0 auto}@keyframes ai-spin{to{transform:rotate(360deg)}}.agent-config-panel{margin:16px 0}.agent-config-item{border:1px solid #e6d8f5;border-radius:14px;margin:10px 0;padding:10px;background:#fff}.agent-config-item summary{display:flex;justify-content:space-between;cursor:pointer;padding:6px}.config-enabled{color:#15803d}.config-disabled{color:#b91c1c}.agent-config-form{display:grid;gap:10px;padding:12px 4px}.agent-config-form label{display:grid;gap:5px}.agent-config-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.agent-config-form input,.agent-config-form select,.agent-config-form textarea{width:100%}@media(max-width:650px){.agent-config-grid{grid-template-columns:1fr}}.admin-audit-user{display:flex!important;align-items:center;gap:6px;flex-wrap:wrap}.admin-audit-user strong{font-size:.78rem}.admin-log-link{padding:4px 7px!important;font-size:.7rem!important;background:#f0e7ff!important;color:#4b2a6d!important;box-shadow:none!important}.admin-log-modal{max-width:520px}.admin-log-modal dl{display:grid;grid-template-columns:auto 1fr;gap:8px 14px;margin:16px 0}.admin-log-modal dt{font-weight:700;color:#765b82}.admin-log-modal dd{margin:0;word-break:break-word}.admin-log-modal code{font-size:.75rem}.admin-debug-link{background:#fff0e6!important;color:#8b421d!important}.admin-debug-download{margin-top:8px}.admin-debug-summary{margin:14px 0;padding:12px;border:1px solid #f0c9b0;border-radius:10px;background:#fff8f2}.admin-debug-summary h3{margin-top:0}.admin-debug-summary p{font-size:.82rem}.admin-debug-summary pre{max-height:240px;overflow:auto;white-space:pre-wrap;font-size:.7rem;background:#241b2b;color:#fff;padding:10px;border-radius:8px}.studio-top,.admin-page-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.studio-top h1,.admin-page-heading h1{margin:0}.studio-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:16px}.ai-studio-form{display:grid;gap:12px}.ai-studio-form h2,.ai-studio-status h2{margin-top:0}.studio-actions{display:flex;gap:8px;flex-wrap:wrap}.ai-studio-status{background:linear-gradient(145deg,#fff8f2,#f3e8ff)}.ai-studio-status>div{padding:12px;margin:10px 0;background:#fff;border:1px solid #ead7e4;border-radius:12px}.ai-studio-status p{margin:5px 0;color:#765b82;font-size:.84rem}.studio-model-choice{padding:5px 8px!important;font-size:.78rem!important;background:#f3e8ff!important;color:#4b2a6d!important;box-shadow:none!important}@media(max-width:700px){.studio-top,.admin-page-heading{align-items:flex-start;flex-direction:column}.studio-grid{grid-template-columns:1fr}}.admin-user-filters{display:grid;grid-template-columns:minmax(220px,2fr) repeat(2,minmax(150px,1fr));gap:10px;margin:14px 0}.admin-user-form{margin:14px 0}.admin-user-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-user-grid label{display:grid;gap:5px;font-size:.82rem;color:#765b82}.admin-user-card{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin:10px 0}.admin-user-card>div:first-child{display:grid;gap:4px;min-width:0}.admin-user-card small,.admin-user-card span{color:#765b82;font-size:.8rem}.admin-user-actions{max-width:620px}@media(max-width:700px){.admin-user-filters,.admin-user-grid{grid-template-columns:1fr}.admin-user-card{display:grid}.admin-user-actions{max-width:none}}.health-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.health-heading h2,.health-heading h3{margin:0}.health-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.health-summary span{display:grid;padding:12px;border-radius:12px;background:#f6efff;color:#765b82}.health-summary strong{font-size:1.35rem;color:#3d2948}.health-import form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.health-import label{display:grid;gap:6px;flex:1;min-width:230px}.health-source-list{display:grid;gap:12px}.health-source{gap:10px}.health-source h3{margin:0}.health-status{padding:5px 9px;border-radius:999px;background:#eee;color:#53455a;font-size:.78rem}.health-status.success{background:#dcfce7;color:#166534}.health-status.partial{background:#fef3c7;color:#92400e}.health-capabilities{display:flex;gap:6px;flex-wrap:wrap}.health-diagnostics table{width:100%;border-collapse:collapse}.health-diagnostics th,.health-diagnostics td{padding:8px;text-align:left;border-bottom:1px solid rgba(80,60,110,.12)}.health-diagnostics td small{display:block;color:#765b82}.profile-shortcuts{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:620px){.health-summary{grid-template-columns:1fr}.health-heading{align-items:flex-start}.health-diagnostics{overflow:hidden}}.servechat-menu-item{position:relative;display:flex;align-items:center;flex:0 0 auto}.servechat-menu-button{width:36px;height:36px;display:grid;place-items:center;padding:0;border:1px solid #ffffff55;border-radius:50%;background:#ffffff18;box-shadow:none;color:#fff;font-size:16px;line-height:1}.servechat-menu-button:hover{transform:none;box-shadow:none;background:#ffffff30}.servechat-menu-button:focus-visible{outline:2px solid #ffd166;outline-offset:2px}.servechat-error-toast{position:fixed;right:16px;bottom:calc(100px + env(safe-area-inset-bottom));z-index:1300;width:min(320px,calc(100vw - 32px));padding:12px;border-radius:12px;background:#fff;color:#8a2635;box-shadow:0 4px 20px #0002;font-size:13px}.history-report{line-height:1.7;overflow-wrap:anywhere}.history-report h2{margin:1.8rem 0 .65rem;font-size:1.2rem;color:#4b2a6d;border-bottom:1px solid #e7deef;padding-bottom:.5rem}.history-report p,.history-report li{max-width:85ch}.history-report li{margin:.55rem 0}.history-report blockquote{margin:1rem 0;padding:1rem 1.2rem;border-left:4px solid #806095;background:#f5f0f9;border-radius:6px}.history-report .markdown-table-wrap{overflow-x:auto}.history-report table{width:100%;border-collapse:collapse;font-size:.9rem}.history-report th,.history-report td{padding:.7rem;text-align:left;border-bottom:1px solid #e7deef;vertical-align:top}.history-report th{background:#f5f0f9}.history-report tbody tr:nth-child(2n){background:#fcf9fe}.photo-button{display:inline-block}.photo-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.scan-photo-list{display:grid;gap:.6rem;padding:0;list-style:none}.scan-photo-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem .9rem;border:1px solid rgba(75,42,109,.2);border-radius:12px;background:#ffffffa6}.scan-photo-list span{min-width:0;overflow-wrap:anywhere}.barcode-option{padding:.85rem 1rem}.barcode-option>summary{cursor:pointer;font-size:.95rem;color:#594b66}.barcode-option dl>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;padding:.3rem 0}.barcode-option dd{margin:0}.barcode-product-heading{display:flex;align-items:center;flex-wrap:wrap;gap:1rem}.product-image{margin:.5rem 0;max-width:160px;flex-shrink:0}.product-image img{width:120px;height:120px;object-fit:contain;border-radius:10px;background:#fff}.product-image figcaption{font-size:.7rem;color:#594b66;overflow-wrap:anywhere}.journal-meal-foods .product-image img{width:80px;height:80px}.journal-meal-foods li{display:flow-root}.journal-meal-foods .product-image{float:left;max-width:100px;margin:0 .75rem .5rem 0}.journal-meal-foods small{white-space:normal}.nutrient-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}@media(max-width:520px){.nutrient-form{grid-template-columns:1fr}}
