.landing-page{--ink:#10251d;--muted:#5d6f67;--green:#17613f;--green-bright:#45c783;--cream:#f5f3eb;--line:#10251d1f;min-height:100vh;color:var(--ink);background:#fbfcf8;font-family:Avenir Next,Segoe UI,system-ui,sans-serif;overflow:hidden}.landing-page *,.landing-page :before,.landing-page :after{box-sizing:border-box}.landing-page h1,.landing-page h2,.landing-page h3,.landing-page p{margin-top:0}.landing-page a{color:inherit;text-decoration:none}.landing-header{z-index:20;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;width:min(1240px,100% - 48px);height:88px;margin:auto;display:flex;position:relative}.landing-brand{letter-spacing:-.04em;align-items:center;gap:10px;font:700 20px/1 Avenir Next,Segoe UI,sans-serif;display:inline-flex}.landing-brand-mark{background:var(--ink);color:#d5fbe7;letter-spacing:-.06em;border-radius:10px;place-items:center;width:34px;height:34px;font-size:14px;display:grid}.landing-nav{color:#53675e;gap:32px;font-size:14px;font-weight:600;display:flex}.landing-nav a,.landing-login{transition:color .2s}.landing-nav a:hover,.landing-login:hover{color:var(--green)}.landing-header-actions{align-items:center;gap:18px;display:flex}.landing-login{font-size:14px;font-weight:600}.button{background:var(--green);cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 22px;font:700 14px/1 Avenir Next,Segoe UI,sans-serif;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex;box-shadow:0 10px 28px #17613f33;color:#fff!important}.button:hover{background:#0e5032;transform:translateY(-2px);box-shadow:0 14px 34px #17613f42}.button-small{border-radius:10px;min-height:42px;padding:0 17px;font-size:13px}.text-link{cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;font:700 14px/1 Avenir Next,Segoe UI,sans-serif;display:inline-flex;color:var(--green)!important}.text-link svg{transition:transform .2s}.text-link:hover svg{transform:translate(3px)}.landing-hero{grid-template-columns:1.02fr .98fr;align-items:center;width:min(1240px,100% - 48px);min-height:700px;margin:auto;padding:64px 0 88px;display:grid;position:relative}.landing-hero:before{content:"";filter:blur(2px);opacity:.48;background:#dff5e7;border-radius:50%;width:520px;height:520px;position:absolute;top:-160px;left:-310px}.hero-copy{z-index:2;max-width:640px;position:relative}.landing-kicker{color:var(--green);letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:24px;font-size:12px;font-weight:700;display:inline-flex}.hero-copy h1{letter-spacing:-.06em;max-width:630px;margin-bottom:26px;font:500 clamp(48px,5.1vw,74px)/1.02 Avenir Next,Segoe UI,sans-serif}.hero-copy h1 em{color:var(--green);font-style:normal}.hero-copy>p{max-width:580px;color:var(--muted);margin-bottom:32px;font-size:18px;line-height:1.7}.hero-actions{align-items:center;gap:26px;display:flex}.hero-proof{color:#61736b;flex-wrap:wrap;gap:17px;margin-top:36px;font-size:12px;font-weight:600;display:flex}.hero-proof span{align-items:center;gap:5px;display:inline-flex}.hero-proof svg{color:var(--green)}.nutrition-visual{perspective:1200px;min-height:540px;margin-left:48px;position:relative}.visual-glow{filter:blur(24px);background:radial-gradient(circle,#45c78361,#45c78300 65%);border-radius:50%;position:absolute;inset:8% 2% 0 6%}.visual-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffeb;border:1px solid #ffffffa6;box-shadow:0 30px 70px #1a413021}.visual-main-card{border-radius:25px;width:min(100%,510px);padding:29px;animation:.8s cubic-bezier(.2,.8,.2,1) both visual-rise;position:absolute;top:36px;right:0}.visual-card-head,.macro-row,.micro-heading{justify-content:space-between;align-items:center;display:flex}.visual-card-head small,.visual-card-head strong{display:block}.visual-card-head small{color:#819087;text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px;font-size:11px}.visual-card-head strong{font:700 19px/1.2 Avenir Next,Segoe UI,sans-serif}.status-pill{color:var(--green);text-transform:uppercase;letter-spacing:.06em;background:#e9f8ef;border-radius:99px;align-items:center;gap:7px;padding:7px 10px;font-size:10px;font-weight:700;display:flex}.status-pill i{background:#31b875;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #31b87521}.macro-row{justify-content:flex-start;gap:32px;padding:30px 0 25px}.macro-ring{background:conic-gradient(#37bd78 0 75%, #9de1bd 75% 87%, #e8efe9 87% 100%);border-radius:50%;flex:none;place-items:center;width:142px;height:142px;display:grid;box-shadow:inset 0 0 0 15px #fff}.macro-ring span{align-items:baseline;display:flex}.macro-ring strong{letter-spacing:-.07em;font:700 34px/1 Avenir Next,Segoe UI,sans-serif}.macro-ring small{color:#849289;margin-left:2px}.macro-stats{flex:1;gap:14px;display:grid}.macro-stats div{justify-content:space-between;align-items:center;gap:20px;font-size:12px;display:flex}.macro-stats span{color:#687970;align-items:center;gap:8px;display:inline-flex}.macro-stats i{background:#45c783;border-radius:50%;width:7px;height:7px}.macro-stats i.carbs{background:#e7a85c}.macro-stats i.fat{background:#5d8dd4}.macro-stats strong{font-size:12px}.micro-heading{margin-bottom:13px;font-size:11px;font-weight:700}.micro-heading small{color:#91a097;font-weight:500}.micro-bars{gap:12px;display:grid}.micro-bars div{grid-template-columns:90px 1fr 34px;align-items:center;gap:10px;font-size:10px;display:grid}.micro-bars div>span{color:#65776e}.micro-bars div>i{background:#eaf0eb;border-radius:99px;height:6px;overflow:hidden}.micro-bars b{border-radius:inherit;background:linear-gradient(90deg,#41bf7a,#78d9a7);height:100%;display:block}.micro-bars strong{text-align:right}.floating-card{z-index:3;border-radius:15px;align-items:center;gap:12px;padding:14px 16px;animation:4s ease-in-out infinite float-card;display:flex;position:absolute}.floating-card svg{color:var(--green)}.floating-card small,.floating-card strong{white-space:nowrap;display:block}.floating-card small{color:#89978f;text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px;font-size:9px}.floating-card strong{font-size:11px}.floating-source{bottom:34px;left:-18px}.floating-source>span{color:var(--green);margin-left:10px;font-size:11px;font-weight:700}.floating-map{animation-delay:-1.5s;top:5px;left:14px}@keyframes visual-rise{0%{opacity:0;transform:translateY(24px)rotateY(-3deg)}to{opacity:1;transform:none}}@keyframes float-card{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.trust-strip{background:var(--ink);color:#fff;padding:26px max(24px,50vw - 620px)}.trust-strip,.trust-strip div,.trust-strip span{align-items:center;display:flex}.trust-strip{justify-content:space-between;gap:30px}.trust-strip p{color:#a4bbb0;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.trust-strip div{gap:32px}.trust-strip span{gap:7px;font-size:11px;font-weight:600}.trust-strip svg{color:#73dba7}.landing-section{width:min(1160px,100% - 48px);margin:auto;padding:120px 0}.section-intro{max-width:680px;margin-bottom:50px}.section-intro h2,.platform-copy h2,.contact-copy h2{letter-spacing:-.05em;margin-bottom:20px;font:600 clamp(36px,4vw,54px)/1.08 Avenir Next,Segoe UI,sans-serif}.section-intro>p,.platform-copy>p,.contact-copy>p{color:var(--muted);font-size:17px;line-height:1.7}.use-case-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.use-case-card{border:1px solid var(--line);background:#fff;border-radius:20px;min-height:400px;padding:30px;transition:transform .25s,box-shadow .25s,border-color .25s}.use-case-card:hover{border-color:#17613f45;transform:translateY(-5px);box-shadow:0 26px 55px #1f3d3117}.use-case-top{justify-content:space-between;align-items:center;margin-bottom:52px;display:flex}.use-case-top>span{width:46px;height:46px;color:var(--green);background:#eaf7ef;border-radius:13px;place-items:center;display:grid}.use-case-top small{color:#adbbb4;font:600 12px/1 Avenir Next,Segoe UI}.use-case-card h3{letter-spacing:-.03em;margin-bottom:15px;font:700 23px/1.2 Avenir Next,Segoe UI,sans-serif}.use-case-card>p{min-height:88px;color:var(--muted);font-size:14px;line-height:1.65}.use-case-card ul{border-top:1px solid var(--line);color:#53665d;gap:10px;margin:26px 0 0;padding:22px 0 0;font-size:12px;font-weight:600;list-style:none;display:grid}.use-case-card li{align-items:center;gap:7px;display:flex}.use-case-card li svg{color:var(--green)}.platform-section{color:#fff;background:#163328;grid-template-columns:.85fr 1.15fr;align-items:center;gap:90px;padding:120px max(24px,50vw - 580px);display:grid}.platform-copy .landing-kicker{color:#79daa8}.platform-copy>p{color:#b6c8c0}.text-link.light{margin-top:15px;color:#82e2b1!important}.process-list{background:#ffffff1c;gap:1px;margin:0;padding:0;list-style:none;display:grid}.process-list li{background:#163328;grid-template-columns:52px 1fr;gap:22px;padding:28px 30px;transition:background .2s;display:grid}.process-list li:hover{background:#1b3c2f}.process-list li>span{color:#74d9a4;font:600 11px/1.3 Avenir Next,Segoe UI}.process-list strong{margin-bottom:7px;font:700 17px/1.2 Avenir Next,Segoe UI;display:block}.process-list p{color:#aabfb5;margin:0;font-size:13px;line-height:1.6}.contact-section{grid-template-columns:.72fr 1.28fr;align-items:start;gap:70px;width:min(1160px,100% - 48px);margin:auto;padding:120px 0;display:grid}.contact-copy{padding-top:26px;position:sticky;top:40px}.contact-note{color:var(--green);background:#eef6f1;border-radius:15px;gap:13px;margin-top:36px;padding:20px;display:flex}.contact-note strong,.contact-note span{display:block}.contact-note strong{margin-bottom:5px;font-size:13px}.contact-note span{color:#63766c;font-size:12px;line-height:1.5}.inquiry-card{border:1px solid var(--line);background:#fff;border-radius:24px;min-height:400px;padding:38px;box-shadow:0 32px 75px #223f3314}.form-heading{align-items:flex-start;gap:15px;margin-bottom:28px;display:flex}.form-heading>span{width:32px;height:32px;color:var(--green);background:#eaf7ef;border-radius:10px;flex:none;place-items:center;font-size:10px;font-weight:700;display:grid}.form-heading h3{margin-bottom:4px;font:700 18px/1.3 Avenir Next,Segoe UI}.form-heading p{color:#87958e;margin:0;font-size:12px}.form-heading.compact{margin-bottom:20px}.field-grid{gap:16px;display:grid}.two-columns{grid-template-columns:1fr 1fr}.inquiry-card form>label,.field-grid label{color:#32473e;gap:8px;margin-bottom:17px;font-size:12px;font-weight:700;display:grid}.inquiry-card label>span,.service-fieldset legend span{color:#95a19b;font-size:10px;font-weight:500}.inquiry-card input,.inquiry-card select,.inquiry-card textarea{width:100%;min-height:46px;color:var(--ink);background:#fbfcfa;border:1px solid #dce4df;border-radius:10px;outline:0;padding:11px 13px;font:500 13px/1.4 Avenir Next,Segoe UI,sans-serif;transition:border .2s,box-shadow .2s,background .2s}.inquiry-card textarea{resize:vertical}.inquiry-card input:focus,.inquiry-card select:focus,.inquiry-card textarea:focus{background:#fff;border-color:#53ad7c;box-shadow:0 0 0 3px #45c7831f}.service-fieldset{border:0;margin:3px 0 21px;padding:0}.service-fieldset legend{color:#32473e;margin-bottom:11px;font-size:12px;font-weight:700}.service-options{flex-wrap:wrap;gap:8px;display:flex}.service-options label{cursor:pointer}.service-options input{opacity:0;width:1px;height:1px;position:absolute}.service-options label span{color:#53665d;border:1px solid #dfe7e2;border-radius:9px;align-items:center;gap:5px;min-height:35px;padding:0 11px;font-size:10px;font-weight:600;transition:all .2s;display:flex}.service-options svg{opacity:.35}.service-options input:checked+span{color:var(--green);background:#eaf7ef;border-color:#72bd94}.service-options input:checked+span svg{opacity:1}.form-divider{background:var(--line);height:1px;margin:30px 0}.honeypot{position:absolute!important;left:-10000px!important}.inquiry-card .consent{color:#687970;grid-template-columns:18px 1fr;align-items:start;gap:9px;margin:8px 0 20px;font-size:10px;font-weight:500;line-height:1.55;display:grid}.consent input{width:17px;min-height:17px;accent-color:var(--green);margin-top:0}.consent a{color:var(--green);text-decoration:underline}.submit-button{width:100%}.submit-button:disabled{opacity:.66;cursor:wait;transform:none}.form-footnote{color:#919e97;text-align:center;margin:12px 0 0;font-size:9px}.form-error{color:#9c382c;background:#fff0ee;border-radius:9px;padding:11px 13px;font-size:11px}.success-state{text-align:center;align-content:center;place-items:center;min-height:500px;display:grid}.success-state>span{width:64px;height:64px;color:var(--green);background:#e7f8ee;border-radius:50%;place-items:center;margin-bottom:24px;display:grid}.success-state h3{margin-bottom:12px;font:700 25px/1.2 Avenir Next,Segoe UI}.success-state p{max-width:430px;color:var(--muted);line-height:1.7}.success-state button{margin-top:16px}.landing-footer{color:#fff;background:#0f261d;grid-template-columns:1fr auto;gap:50px;padding:55px max(24px,50vw - 580px);display:grid}.footer-brand .landing-brand-mark{color:var(--ink);background:#d8f8e7}.landing-footer>div>p{color:#91a79d;margin:18px 0 0;font-size:12px;line-height:1.65}.footer-links{color:#c0cec7;align-items:start;gap:24px;font-size:12px;font-weight:600;display:flex}.footer-links a:hover{color:#fff}.footer-copy{color:#71877d;border-top:1px solid #ffffff1a;grid-column:1/-1;padding-top:24px;font-size:10px;margin:5px 0 0!important}@media (width<=1000px){.landing-nav{display:none}.landing-hero{grid-template-columns:1fr;padding-top:80px}.hero-copy{max-width:760px}.nutrition-visual{width:min(650px,100%);margin:50px auto 0}.trust-strip{align-items:flex-start}.trust-strip div{flex-wrap:wrap;gap:14px 25px}.use-case-grid{grid-template-columns:1fr}.use-case-card{min-height:auto}.use-case-card>p{min-height:0}.platform-section,.contact-section{grid-template-columns:1fr}.contact-copy{position:static}}@media (width<=680px){.landing-header{width:calc(100% - 32px);height:72px}.landing-header-actions .button{display:none}.landing-login{font-size:12px}.landing-hero{width:calc(100% - 32px);min-height:0;padding:66px 0 70px}.hero-copy h1{font-size:44px}.hero-copy>p{font-size:16px}.hero-actions{flex-direction:column;align-items:flex-start;gap:21px}.hero-proof{flex-direction:column;gap:9px}.nutrition-visual{min-height:455px;margin-top:48px}.visual-main-card{padding:20px}.macro-row{gap:17px}.macro-ring{width:108px;height:108px;box-shadow:inset 0 0 0 12px #fff}.macro-ring strong{font-size:27px}.floating-map{left:-3px}.floating-source{bottom:4px;left:-4px}.trust-strip{flex-direction:column}.trust-strip div{display:grid}.landing-section,.contact-section{width:calc(100% - 32px);padding:85px 0}.section-intro h2,.platform-copy h2,.contact-copy h2{font-size:36px}.use-case-card{padding:25px}.platform-section{gap:55px;padding-top:85px;padding-bottom:85px}.process-list li{padding:22px 18px}.contact-section{gap:35px}.inquiry-card{border-radius:18px;padding:24px 18px}.two-columns{grid-template-columns:1fr;gap:0}.landing-footer{grid-template-columns:1fr;gap:35px}.footer-links{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.landing-page *,.landing-page :before,.landing-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}*,:before,:after,::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:#3b82f680;--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:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family: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:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-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{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}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{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.block{display:block}.inline{display:inline}.table-row{display:table-row}.hidden{display:none}.p-1{padding:.25rem}.p-2{padding:.5rem}.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)}:root{color:#183126;font-synthesis:none;background:#f7f7f2;font-family:DM Sans,Inter,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.app-shell{grid-template-columns:224px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#123c2b;border-right:1px solid #dfe6de;flex-direction:column;height:100vh;padding:28px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:0 8px 35px;font-size:1.1rem;display:flex}.brand span{background:#ef8d32;border-radius:10px;place-items:center;width:34px;height:34px;font-family:Georgia,serif;font-weight:800;display:grid}.sidebar nav a{color:#dbe9e1;border-radius:10px;align-items:center;gap:10px;padding:12px 13px;font-size:.92rem;display:flex}.sidebar nav a.active{color:#fff;background:#285943}.privacy-note{color:#bcd2c5;border:1px solid #34634e;border-radius:12px;align-items:flex-start;gap:10px;margin-top:auto;padding:11px 12px;font-size:.68rem;line-height:1.4;display:flex}.privacy-note>svg{flex:none;margin-top:1px}.legal-links{color:#67766d;flex-wrap:wrap;gap:6px 10px;font-size:.72rem;display:flex}.legal-links a:hover,.legal-document a:hover{text-decoration:underline}.privacy-note .legal-links{color:#bcd2c5;gap:3px 8px;font-size:.66rem}.login-legal-links{border-top:1px solid #e8ece6;justify-content:center;margin-top:18px;padding-top:16px}.legal-page{background:#f7f7f2;min-height:100vh;padding:24px}.legal-header{justify-content:space-between;align-items:center;gap:24px;width:min(920px,100%);margin:0 auto 24px;display:flex}.legal-brand{color:#153d2c;padding:0}.legal-document{background:#fff;border:1px solid #dfe5dc;border-radius:22px;width:min(920px,100%);margin:0 auto;padding:clamp(28px,6vw,64px);box-shadow:0 20px 60px #1b3e2c12}.legal-document h1{margin-bottom:34px}.legal-document h2{color:#254534;margin:0 0 8px;font-size:1.05rem}.legal-document section{margin-top:28px}.legal-document p,.legal-document li,.legal-document address{color:#596960;font-size:.9rem;line-height:1.7}.legal-document p{margin:8px 0}.legal-document address{font-style:normal}.legal-document ul{margin:8px 0;padding-left:22px}.legal-document a{color:#2f704e;text-underline-offset:2px;text-decoration:underline}.legal-document code{color:#24593e;background:#edf4ee;border-radius:5px;padding:2px 5px;font-size:.82em}.legal-lead{font-weight:700;margin-top:-24px!important}.workspace{width:min(1840px,100%);margin:0 auto;padding:42px 42px 80px}.workspace-head,.page-head{justify-content:space-between;align-items:flex-start;gap:40px;margin-bottom:30px;display:flex}.eyebrow{color:#3f7f5f;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:800}h1{letter-spacing:-.045em;margin:9px 0 8px;font-family:Space Grotesk,Inter,sans-serif;font-size:clamp(2rem,4vw,3.3rem);line-height:1.03}.workspace-head p,.page-head p{color:#66746c;margin:0}.key-panel{background:#fff;border:1px solid #d8e0d7;border-radius:14px;grid-template-columns:22px 1fr;align-items:center;gap:8px;width:320px;padding:12px;display:grid}.key-panel input{border:0;outline:0;min-width:0}.key-panel button{color:#24593e;background:#edf4ee;border:0;border-radius:8px;grid-column:1/-1;padding:8px;font-weight:700}.alert{color:#9a4724;background:#fff2eb;border:1px solid #efc1ac;border-radius:10px;margin-bottom:18px;padding:12px 15px}.input-panel{grid-template-columns:1.5fr .8fr .8fr;gap:14px;margin-bottom:18px;display:grid}.paste-box,.import-card,.mode-card,.strategy-card{background:#fff;border:1px solid #dfe5dc;border-radius:16px;min-height:175px;padding:18px}.paste-box label,.mode-label{color:#56655c;text-transform:uppercase;letter-spacing:.06em;margin-bottom:9px;font-size:.78rem;font-weight:750;display:block}.paste-box textarea{resize:vertical;border:1px solid #dfe5dc;border-radius:9px;outline-color:#438260;width:100%;height:75px;padding:10px}.import-card{color:#46745b;text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.import-card strong{margin-top:8px}.import-card span{color:#89958e;margin:3px 0 13px;font-size:.76rem}.segmented{grid-template-columns:1fr 1fr;gap:8px;display:grid}.segmented button{color:#53635a;background:#f8faf8;border:1px solid #dce4dc;border-radius:10px;padding:18px 8px;font-weight:800}.segmented button.active{color:#21583a;background:#eaf3ec;border-color:#3d7b5b;box-shadow:inset 0 0 0 1px #3d7b5b}.segmented small{margin-top:4px;font-size:.67rem;font-weight:500;display:block}.primary,.secondary,.danger-quiet,.add-row{border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:9px 13px;font-size:.82rem;font-weight:750;display:inline-flex}.primary{color:#fff;background:#215d40;border:1px solid #1f5a3d}.secondary{color:#365444;background:#fff;border:1px solid #d7e0d7}.primary:disabled,.secondary:disabled{cursor:default;opacity:.45}.job-progress{background:#eef6ef;border:1px solid #cfe0d3;border-radius:12px;grid-template-columns:180px 1fr auto;align-items:center;gap:16px;margin-bottom:18px;padding:14px 16px;display:grid}.job-progress strong{text-transform:capitalize;display:block}.job-progress span{color:#65766c;font-size:.77rem}.progress-track{background:#d9e7dc;border-radius:10px;height:7px;overflow:hidden}.progress-track span{background:#3f875f;height:100%;transition:width .25s;display:block}.danger-quiet{color:#a54e2d;background:#fff5f1;border:1px solid #edc8ba}.table-panel{background:#fff;border:1px solid #dfe5dc;border-radius:16px;overflow:hidden}.table-toolbar{border-bottom:1px solid #e5e9e3;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.table-toolbar strong{display:block}.table-toolbar span{color:#7b8880;font-size:.75rem}.table-toolbar>div:last-child{gap:8px;display:flex}.mapping-table{overflow-x:auto}.table-row{border-bottom:1px solid #edf0eb;grid-template-columns:minmax(180px,1fr) minmax(250px,1.4fr) 85px 140px 120px;align-items:center;gap:12px;min-width:800px;padding:12px 18px;display:grid;position:relative}.table-head{color:#7b8780;text-transform:uppercase;letter-spacing:.06em;background:#fafbf8;font-size:.68rem;font-weight:800}.id-input,.food-input{border:1px solid #0000;border-radius:8px;outline:0;width:100%;padding:9px}.id-input{color:#8a958e;font-family:ui-monospace,monospace;font-size:.7rem}.food-input{font-weight:700}.id-input:focus,.food-input:focus{background:#f5faf6;border-color:#a7c8b3}.match-cell{text-align:left;background:#fbfcfa;border:1px solid #e1e6df;border-radius:9px;flex-direction:column;align-items:flex-start;min-height:47px;padding:8px 10px;display:flex}.match-cell:disabled{cursor:default}.match-cell strong{text-overflow:ellipsis;white-space:nowrap;width:100%;overflow:hidden}.match-cell small,.source small{color:#87928b;margin-top:3px;font-size:.68rem;display:block}.status-pill{color:#728077;background:#eef1ed;border-radius:20px;padding:4px 8px;font-size:.72rem}.status-pill.running{color:#32704d;background:#e9f4eb}.score{color:#275f40;font-weight:850}.source{color:#607067;font-size:.75rem}.row-actions{gap:5px;display:flex}.icon-button{color:#59685f;background:#fff;border:1px solid #dce3db;border-radius:8px;place-items:center;width:33px;height:33px;padding:0;display:grid}.icon-button.verify{color:#347252}.icon-button:disabled{opacity:.35}.row-error{color:#a64d2e;grid-column:1/-1;font-size:.72rem}.add-row{color:#47705a;background:#f8faf7;border:1px dashed #b8c8bb;margin:12px 18px}.dialog-overlay{z-index:30;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#09191194;position:fixed;inset:0}.dialog-content{z-index:31;background:#fff;border-radius:16px;width:min(720px,100vw - 32px);max-height:80vh;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 25px 80px #00000038}.dialog-head{justify-content:space-between;padding:20px;display:flex}.dialog-head h2{margin:0 0 4px}.dialog-head p{color:#77857d;margin:0;font-size:.8rem}.catalog-search{border:1px solid #dbe3da;border-radius:9px;align-items:center;gap:9px;margin:0 20px 12px;padding:10px 12px;display:flex}.catalog-search input{border:0;outline:0;flex:1}.category-strip{gap:6px;padding:0 20px 13px;display:flex;overflow-x:auto}.category-strip button{white-space:nowrap;background:#fff;border:1px solid #dbe3da;border-radius:20px;padding:6px 9px;font-size:.73rem}.category-strip button.active{color:#fff;background:#225d41}.candidate-list{border-top:1px solid #e7ebe6;max-height:50vh;overflow:auto}.candidate-option{text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0ec;grid-template-columns:70px 1fr 24px;align-items:center;gap:12px;width:100%;padding:13px 20px;display:grid}.candidate-option:hover{background:#f2f7f2}.candidate-code{color:#397251;font-family:ui-monospace,monospace;font-size:.78rem}.candidate-option small{color:#849089;margin-top:3px;display:block}.empty-state{color:#849089;text-align:center;padding:40px}@keyframes spin{to{transform:rotate(360deg)}}.center-screen{color:#63736a;place-items:center;min-height:100vh;display:grid}.sidebar nav{gap:5px;display:grid}.sidebar-account{border-top:1px solid #34634e;gap:4px;margin-top:auto;padding:15px 12px;display:grid}.sidebar-account span{color:#bcd2c5;font-size:.72rem}.sidebar-account button{color:#dbe9e1;background:0 0;border:0;align-items:center;gap:6px;width:max-content;margin-top:5px;padding:0;font-size:.76rem;display:flex}.sidebar-account+.privacy-note{margin-top:10px}.sidebar .privacy-note .legal-links{grid-template-columns:none;gap:3px 8px;display:flex}.sidebar .privacy-note .legal-links a{color:inherit;font-size:inherit;border-radius:0;padding:0;display:inline}.page-head h1{margin-bottom:10px}.head-actions{flex-wrap:wrap;gap:8px;display:flex}.breadcrumb{color:#397454;font-size:.8rem;font-weight:750}.primary.large{width:100%;padding:13px}.secondary.compact{padding:6px 9px;font-size:.72rem}.panel{background:#fff;border:1px solid #dfe5dc;border-radius:16px;margin-bottom:20px;padding:20px}.panel-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:17px;display:flex}.panel-head h2{margin:0 0 4px;font-size:1.1rem}.panel-head p{color:#78867e;margin:0;font-size:.78rem}.metric-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px;display:grid}.metric-card{background:#fff;border:1px solid #dde5dc;border-radius:15px;grid-template-columns:34px 1fr;gap:6px 12px;padding:18px;display:grid}.metric-card svg{color:#397154;background:#edf4ee;border-radius:9px;grid-row:1/4;width:34px;height:34px;padding:7px}.metric-card span{color:#68766e;font-size:.78rem}.metric-card strong{font-size:1.7rem}.metric-card small{color:#8b968f}.card-list,.simple-list,.source-list{gap:8px;display:grid}.list-card{border:1px solid #e1e7df;border-radius:10px;grid-template-columns:34px 1fr auto;align-items:center;gap:11px;padding:12px;display:grid}.list-card span,.simple-list small,.source-list span{color:#7e8b83;margin-top:2px;font-size:.72rem;display:block}.tool-grid,.project-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.tool-card,.project-card{background:#fff;border:1px solid #dce4db;border-radius:16px;padding:22px;position:relative}.tool-card>svg,.project-card>svg{color:#2f704e;background:#eaf3ec;border-radius:12px;width:44px;height:44px;padding:10px}.tool-card h2,.project-card h2{margin:18px 0 7px}.tool-card p,.project-card p{color:#718078;min-height:42px;font-size:.84rem}.tool-card .primary,.tool-card .secondary{margin-top:10px}.project-card .status-pill{position:absolute;top:22px;right:22px}.project-card small{color:#89948d}.tool-form{gap:9px;display:grid}.tool-form input,.tool-form textarea{background:#fafcf9;border:1px solid #d8e1d8;border-radius:8px;width:100%;min-width:0;padding:9px;font-size:.72rem}.tool-form textarea{resize:vertical;min-height:86px}.tool-result{margin-top:18px}.tool-result pre{color:#dcebe2;white-space:pre-wrap;overflow-wrap:anywhere;background:#112b20;border-radius:10px;max-height:440px;padding:14px;font-size:.72rem;overflow:auto}.strategy-card{color:#2e6949;flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;display:flex}.strategy-card span{color:#7a8780;font-size:.75rem;line-height:1.45}.form-stack{gap:13px;display:grid}.form-stack label,.form-grid label,.inline-form label{color:#596960;gap:6px;font-size:.77rem;font-weight:700;display:grid}.form-stack input,.form-stack select,.form-grid input,.form-grid select,.inline-form input,.inline-form select,.compact-form input,.compact-form select{background:#fff;border:1px solid #d8e1d8;border-radius:9px;outline-color:#438260;min-width:0;padding:10px 11px}.form-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.form-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.inline-form{align-items:end;gap:12px;display:flex}.inline-form label{flex:1}.simple-project-form{grid-template-columns:1fr 1fr;gap:15px;display:grid}.simple-project-form>label{color:#596960;gap:6px;font-size:.77rem;font-weight:700;display:grid}.simple-project-form input,.simple-project-form select{background:#fff;border:1px solid #d8e1d8;border-radius:9px;padding:10px 11px}.form-advanced{border:1px solid #e2e7e0;border-radius:10px;grid-column:1/-1;padding:14px}.form-advanced summary,.advanced-settings summary{cursor:pointer;font-weight:750}.form-advanced p,.advanced-settings>p{color:#78867e;font-size:.78rem}.form-advanced label{color:#596960;gap:5px;font-size:.77rem;display:grid}.form-advanced small{color:#89958e}.login-page{background:radial-gradient(circle at 0 0,#e8f1e9,#0000 40%),#f7f7f2;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border:1px solid #dbe3da;border-radius:22px;width:min(460px,100%);padding:36px;box-shadow:0 25px 75px #1b3e2c1a}.login-card h1{font-size:2.4rem}.login-card>p{color:#728078;margin:0 0 24px;line-height:1.55}.login-brand{color:#153d2c;padding:0 0 30px}.security-line{color:#7b8880;align-items:center;gap:8px;margin-top:20px;font-size:.72rem;display:flex}.participant-grid{gap:14px;display:grid}.participant-card{background:#fff;border:1px solid #dce4db;border-radius:15px;overflow:hidden}.participant-card>header{border-bottom:1px solid #e6eae4;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:16px 18px;display:grid}.participant-card header span,.visit-title span{color:#7c8981;margin-top:2px;font-size:.72rem;display:block}.participant-head-actions,.visit-actions{align-items:center;gap:6px;display:flex}.participant-head-actions .status-pill{white-space:nowrap}.participant-edit-form,.visit-create-form,.visit-edit-form{background:#f9faf7;border-bottom:1px solid #e7ebe5;grid-template-columns:1fr 1fr auto;align-items:end;gap:10px;padding:13px 18px;display:grid}.participant-edit-form{grid-template-columns:1fr 1fr 1fr auto}.participant-edit-form label,.participant-toolbar label,.visit-create-form label,.visit-edit-form label{color:#617168;gap:5px;font-size:.7rem;font-weight:750;display:grid}.participant-edit-form input,.participant-edit-form select,.participant-toolbar select,.visit-create-form input,.visit-edit-form input{background:#fff;border:1px solid #d8e1d8;border-radius:8px;min-width:0;padding:8px 9px}.participant-edit-form .form-actions,.visit-create-form .form-actions,.visit-edit-form .form-actions{grid-column:auto;display:flex}.participant-edit-form .alert,.visit-create-form .alert,.visit-edit-form .alert{grid-column:1/-1;margin:0}.participant-summary{color:#7b8880;background:#fbfcfa;border-bottom:1px solid #edf0eb;gap:16px;padding:8px 18px;font-size:.68rem;display:flex}.visit-list{display:grid}.visit-row{border-bottom:1px solid #edf0eb;padding:12px 18px}.visit-title{grid-template-columns:28px 1fr auto;align-items:center;gap:8px;display:grid}.visit-edit-form{border:1px solid #e3e8e1;border-radius:9px;margin:10px 0 0 35px;padding:10px}.protocol-link{background:#f4f7f3;border-radius:8px;grid-template-columns:1fr auto 20px;align-items:center;margin:9px 0 0 35px;padding:9px 11px;font-size:.78rem;display:grid}.protocol-link small{color:#7b8780}.participant-toolbar{grid-template-columns:minmax(220px,1fr) 180px 180px auto;align-items:end;gap:12px;padding:13px 15px;display:grid}.participant-toolbar .protocol-search{width:100%}.participant-toolbar>span{color:#7a8780;white-space:nowrap;align-self:center;font-size:.72rem}.pagination{justify-content:center;align-items:center;gap:14px;margin:18px 0 24px;display:flex}.pagination span{color:#6f7d75;font-size:.75rem}.status-pill.failed{color:#a34d2c;background:#fff0e9}.status-pill.processing{color:#376a85;background:#eaf2f7}.status-pill.completed{color:#2f704d;background:#e3f1e7}.nutrition-export-panel{gap:14px;display:grid}.nutrition-export-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.nutrition-export-head h2{margin:0 0 5px}.nutrition-export-head p{color:var(--muted);margin:0;font-size:.78rem}.nutrition-defaults{flex-wrap:wrap;gap:6px;display:flex}.nutrition-defaults span{color:#315f43;background:#e7f1e9;border-radius:999px;padding:5px 9px;font-size:.68rem}.nutrition-search{background:#fff;border:1px solid #d7e0d8;border-radius:9px;align-items:center;gap:8px;max-width:420px;padding:8px 10px;display:flex}.nutrition-search input{border:0;outline:0;width:100%}.nutrition-options{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;max-height:280px;display:grid;overflow:auto}.nutrition-options label{background:#fafcfa;border:1px solid #e0e6e0;border-radius:8px;align-items:center;gap:9px;padding:9px 10px;display:flex}.nutrition-options small{color:var(--muted);margin-top:2px;font-size:.64rem;display:block}.stepper{grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:18px;display:grid}.step{background:#fff;border:1px solid #dce4dc;border-radius:11px;grid-template-columns:28px 1fr;align-items:center;gap:7px;padding:12px;display:grid}.step>span{background:#eef1ed;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.72rem;font-weight:800;display:grid}.step small{color:#839087;font-size:.64rem;display:block}.step.succeeded>span,.step.skipped>span{color:#2c6b49;background:#dff0e4}.step.failed{border-color:#eabfae}.step.running{border-color:#8eb69d}.run-banner{color:#315f46;background:#edf4ee;border-radius:10px;align-items:center;gap:9px;margin-bottom:18px;padding:12px 15px;display:flex}.run-banner.failed{color:#974626;background:#fff0e9}.run-banner span{font-size:.74rem}.file-button{cursor:pointer}.file-button.disabled{cursor:default;opacity:.45}.source-list>div,.simple-list>div{border:1px solid #e5e9e3;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:10px 11px;display:flex}.source-list span{margin:0}.source-actions,.item-actions{flex:none;gap:5px;display:flex}.icon-button.danger{color:#a34d2c}.edit-table{overflow-x:auto}.edit-row{border-bottom:1px solid #edf0eb;grid-template-columns:28px 125px 140px minmax(220px,1fr) 100px 105px 112px;align-items:start;gap:8px;min-width:920px;padding:7px 0;display:grid}.edit-row input{border:1px solid #dce3da;border-radius:7px;width:100%;min-width:0;padding:8px}.edit-row input:disabled{color:#718078;background:#f4f6f3}.edit-row.head{color:#7b8780;text-transform:uppercase;font-size:.68rem;font-weight:800}.drag-handle{color:#92a097;cursor:grab;place-items:center;height:36px;display:grid}.food-field small{color:#87938c;text-overflow:ellipsis;white-space:nowrap;margin:3px 2px 0;font-size:.64rem;display:block;overflow:hidden}.item-actions .icon-button{width:32px;height:32px}.source-preview{height:min(82vh,900px)}.source-preview iframe{border:0;border-top:1px solid #e5e9e3;width:100%;height:calc(100% - 84px)}.csv-preview{white-space:pre;background:#f8faf7;border-top:1px solid #e5e9e3;height:calc(100% - 84px);margin:0;padding:18px;font-size:.75rem;overflow:auto}.check-label{color:#52655a;align-items:center;gap:7px;font-size:.75rem;display:flex}.review-table{gap:8px;display:grid}.review-row{border:1px solid #e0e6de;border-radius:10px;grid-template-columns:1fr 1.25fr minmax(100px,.65fr) auto;align-items:center;gap:14px;padding:13px;display:grid}.review-row span,.review-row small{color:#7f8c84;margin-top:3px;font-size:.68rem;display:block}.review-row.needs_review{border-left:4px solid #ef8d32}.review-row.verified{border-left:4px solid #3d8560}.technical-details{color:#617168;font-size:.72rem}.technical-details summary{cursor:pointer;font-weight:700}.review-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.primary.compact{padding:6px 9px;font-size:.72rem}.protocol-page-head{margin-bottom:20px}.compact-stepper{margin-bottom:12px}.compact-stepper .step{padding:9px 10px}.sources-panel{padding:0;overflow:hidden}.sources-toggle{width:100%;color:inherit;text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.sources-toggle h2{margin:0 0 3px;font-size:1rem}.sources-toggle h2 span{color:#617067;background:#edf2ec;border-radius:20px;place-items:center;min-width:22px;height:22px;margin-left:5px;padding:0 6px;font-size:.68rem;display:inline-grid}.sources-toggle p{color:#7d8982;margin:0;font-size:.73rem}.sources-toggle svg{transition:transform .2s}.sources-panel.open .sources-toggle svg{transform:rotate(180deg)}.sources-content{border-top:1px solid #e8ece6;padding:0 18px 18px}.source-upload-row{color:#7d8982;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:.73rem;display:flex}.protocol-workbench{padding:0;overflow:hidden}.protocol-workbench-head{border-bottom:1px solid #e5eae3;margin:0;padding:17px 18px}.compact-alert{margin:12px 18px 0}.protocol-toolbar{background:#fafbf8;border-bottom:1px solid #e5eae3;align-items:center;gap:12px;min-height:55px;padding:9px 14px;display:flex}.protocol-search{color:#78877e;background:#fff;border:1px solid #dce3da;border-radius:8px;align-items:center;gap:7px;width:min(270px,100%);padding:7px 9px;display:flex}.protocol-search input{background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:.76rem}.filter-pills{gap:5px;display:flex;overflow-x:auto}.filter-pills button{color:#66756c;background:#fff;border:1px solid #dfe5dc;border-radius:20px;flex:none;align-items:center;gap:5px;padding:6px 9px;font-size:.7rem;display:inline-flex}.filter-pills button span{background:#edf1ec;border-radius:10px;min-width:18px;padding:1px 5px;font-size:.62rem}.filter-pills button.active{color:#245d3e;background:#eaf3ec;border-color:#78a48a}.edit-hint{color:#738078;font-size:.72rem}.protocol-split-view{grid-template-columns:minmax(620px,1.65fr) minmax(300px,.85fr);min-height:540px;display:grid}.protocol-split-view.with-source-preview{grid-template-columns:minmax(320px,.9fr) minmax(480px,1.3fr) minmax(280px,.75fr)}.protocol-source-pane{background:#f1f4f0;border-right:1px solid #e3e8e1;grid-template-rows:auto 1fr;min-width:0;max-height:min(68vh,780px);display:grid}.protocol-source-pane>header{background:#fbfcf9;border-bottom:1px solid #dce3da;justify-content:space-between;align-items:center;gap:10px;min-height:58px;padding:9px 11px;display:flex}.protocol-source-pane header>div:first-child{min-width:0}.protocol-source-pane header strong{text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;display:block;overflow:hidden}.protocol-source-pane header small{color:#728078;margin-top:2px;font-size:.65rem;display:block}.source-pane-actions{align-items:center;gap:6px;display:flex}.source-pane-actions select{color:#344b3d;background:#fff;border:1px solid #d4dfd5;border-radius:7px;max-width:150px;min-height:34px;padding:6px 26px 6px 8px;font-size:.68rem}.source-pane-content{place-items:center;min-height:0;display:grid;overflow:auto}.source-pane-content iframe,.source-pane-content img{-o-object-fit:contain;object-fit:contain;background:#e8ece7;border:0;width:100%;height:100%;min-height:480px}.source-pane-content img{-o-object-position:center top;object-position:center top}.source-pane-content pre{white-space:pre;background:#fff;place-self:stretch stretch;min-width:max-content;min-height:100%;margin:0;padding:14px;font-size:.7rem;line-height:1.5}.source-inline-action{color:#37664c;background:#fff;border:1px solid #d3dfd5;border-radius:7px;align-items:center;gap:5px;margin-top:9px;padding:5px 8px;font-size:.68rem;font-weight:750;display:inline-flex}.protocol-item-list{border-right:1px solid #e3e8e1;max-height:min(68vh,780px);overflow:auto}.protocol-list-row{width:100%;min-height:58px;color:inherit;text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0eb;grid-template-columns:34px minmax(210px,1.2fr) minmax(210px,1fr) 125px;align-items:center;gap:10px;padding:8px 12px;display:grid}.protocol-list-row:hover{background:#f7faf6}.protocol-list-row.selected{background:#eaf2eb;box-shadow:inset 3px 0 #367757}.protocol-list-row.needs_review{box-shadow:inset 3px 0 #ed9039}.protocol-list-row.selected.needs_review{background:#fff6eb}.row-number{color:#9aa49e;text-align:center;font-size:.65rem}.protocol-food,.protocol-target{min-width:0}.protocol-food strong,.protocol-target strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;display:block;overflow:hidden}.protocol-food small,.protocol-target small{color:#839087;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.64rem;display:block;overflow:hidden}.protocol-list-row .status-pill{white-space:nowrap;justify-content:center;align-items:center;gap:4px;display:inline-flex}.status-pill.needs_review{color:#a45a20;background:#fff0df}.status-pill.verified{color:#2e704c;background:#e4f2e8}.status-pill.unmapped,.status-pill.invalidated{color:#718078;background:#eef1ed}.protocol-inspector{background:#fbfcf9;align-self:start;max-height:min(68vh,780px);position:sticky;top:12px;overflow:auto}.inspector-section{border-bottom:1px solid #e4e9e2;padding:17px 18px}.inspector-section.subtle{background:#f6f8f4}.inspector-label{color:#7a8780;letter-spacing:.11em;text-transform:uppercase;margin-bottom:7px;font-size:.63rem;font-weight:850;display:block}.inspector-section h3{margin:0;font-size:1rem;line-height:1.3}.inspector-section p{color:#66756c;margin:7px 0 0;font-size:.74rem;line-height:1.45}.inspector-section small{color:#89958e;margin-top:7px;font-size:.66rem;display:block}.inspector-section code{color:#397252;margin-top:7px;font-size:.7rem;display:inline-block}.inspector-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.inspector-title-row .status-pill{flex:none}.mapping-result{background:#fff}.mapping-result .technical-details{margin-top:12px}.mapping-result .technical-details span{margin-top:4px;display:block}.inspector-actions{flex-wrap:wrap;gap:8px;padding:16px 18px;display:flex}.inspector-actions .check-label{flex-basis:100%;margin-top:3px}.protocol-edit-head,.protocol-edit-row{grid-template-columns:26px 106px minmax(260px,1fr) 178px;align-items:start;gap:7px;min-width:620px;padding:7px 10px;display:grid}.protocol-edit-head{z-index:1;color:#7e8a83;text-transform:uppercase;background:#fafbf8;border-bottom:1px solid #e2e7df;padding-top:9px;padding-bottom:9px;font-size:.62rem;font-weight:800;position:sticky;top:0}.protocol-edit-row{background:#fff;border-bottom:1px solid #edf0eb}.protocol-edit-row.selected{background:#f0f6f1}.protocol-edit-row input{background:#fff;border:1px solid #dce3da;border-radius:7px;width:100%;min-width:0;padding:7px;font-size:.72rem}.protocol-edit-row .drag-handle{height:32px}.edit-actions{gap:3px}.edit-actions .icon-button{width:31px;height:31px}.inline-add{margin:10px}.split-dialog{width:min(800px,100vw - 32px)}.split-parts{max-height:48vh;padding:0 20px;overflow:auto}.split-part{border-bottom:1px solid #edf0eb;grid-template-columns:minmax(220px,1fr) 100px 150px 34px;align-items:center;gap:8px;padding:6px 0;display:grid}.split-part.head{color:#7c8981;text-transform:uppercase;font-size:.66rem;font-weight:800}.split-part input,.split-part select{background:#fff;border:1px solid #dce3da;border-radius:7px;width:100%;min-width:0;padding:8px}.split-dialog>.add-row{margin-left:20px}.dialog-actions{border-top:1px solid #e7ebe5;justify-content:flex-end;gap:8px;padding:15px 20px 20px;display:flex}.info-banner{color:#315f46;background:#eef6ef;border:1px solid #cfe0d3;border-radius:11px;align-items:baseline;gap:8px 14px;margin-bottom:18px;padding:13px 16px;display:flex}.info-banner span{font-size:.78rem}.inline-empty{color:#829087;text-align:center;padding:18px;font-size:.8rem}.rule-table{overflow-x:auto}.rule-row{border-bottom:1px solid #edf0eb;grid-template-columns:1fr 1.4fr 80px 90px 90px;align-items:center;gap:12px;min-width:760px;padding:12px 6px;display:grid}.rule-row small{color:#829087;font-size:.67rem;display:block}.rule-row.head{color:#7d8982;text-transform:uppercase;font-size:.69rem;font-weight:800}.rule-actions{gap:6px;display:flex}.two-column{grid-template-columns:1fr 1fr;gap:16px;display:grid}.compact-form{border-bottom:1px solid #e7ebe5;grid-template-columns:1fr 1fr;padding-bottom:16px}.compact-form button{grid-column:1/-1}.secret-reveal{background:#fff8ed;border:1px solid #e5b983;border-radius:12px;grid-template-columns:30px 1fr auto;align-items:center;gap:12px;margin-bottom:18px;padding:15px;display:grid}.secret-reveal code{overflow-wrap:anywhere;margin-top:5px;display:block}.organization-card{gap:16px;display:flex}.organization-card>svg{color:#347151;flex:none}.organization-card span{color:#7b8880;margin-bottom:3px;font-size:.72rem;display:block}.organization-card code{overflow-wrap:anywhere;margin-bottom:16px;display:block}.scope-grid{border:1px solid #d8e1d8;border-radius:9px;flex-wrap:wrap;grid-column:1/-1;gap:8px 14px;margin:0;padding:10px;display:flex}.scope-grid legend{color:#66766d;padding:0 5px;font-size:.72rem;font-weight:750}.scope-grid label{color:#52655a;align-items:center;gap:5px;font-size:.7rem;display:flex}.usage-summary{color:#78867e;border-top:1px solid #e7ebe5;justify-content:space-between;gap:16px;margin-top:18px;padding-top:14px;font-size:.76rem;display:flex}.usage-summary strong{color:#263f32}.activation-card{background:#eef7ef;grid-template-columns:minmax(220px,.8fr) minmax(280px,1.4fr) auto;align-items:center;gap:16px;margin-bottom:18px;display:grid}.activation-card p{color:#65766c;margin:4px 0 0}.activation-card code{color:#315742;text-overflow:ellipsis;white-space:nowrap;background:#fff;border-radius:7px;padding:10px;overflow:hidden}.platform-form{margin-bottom:18px}.platform-form h2{margin-top:0}.platform-layout{grid-template-columns:minmax(280px,.7fr) minmax(520px,1.3fr);align-items:start;gap:18px;display:grid}.organization-list{gap:7px;display:grid}.organization-list>button{color:#294236;text-align:left;cursor:pointer;background:#fff;border:1px solid #e0e7df;border-radius:9px;align-items:center;gap:11px;width:100%;padding:13px;display:flex}.organization-list>button.selected{background:#eef6ef;border-color:#4c8a67}.organization-list>button span{min-width:0}.organization-list>button strong,.organization-list>button small{display:block}.organization-list>button small{color:#728178;margin-top:3px}.platform-detail hr{border:0;border-top:1px solid #e5ebe4;margin:20px 0}.quota-grid{grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0 18px;display:grid}.quota-grid span{background:#f2f6f1;border-radius:9px;padding:12px}.quota-grid small,.quota-grid strong{display:block}.quota-grid small{color:#748177}.quota-grid strong{color:#294236;margin-top:4px}.batch-participant-form{grid-template-columns:1.2fr repeat(3,minmax(145px,.7fr)) auto;align-items:end;gap:14px;display:grid}.batch-participant-form h2{margin:0 0 4px}.batch-participant-form p{color:var(--muted);margin:0;font-size:.78rem}.batch-participant-form label{color:var(--muted);gap:6px;font-size:.72rem;font-weight:700;display:grid}.batch-participant-form>small,.batch-participant-form>.alert{grid-column:1/-1}.unit-select{appearance:none;color:#263e31;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235b6e62' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border:1px solid #d4dfd5;border-radius:8px;outline:none;width:100%;min-width:0;min-height:38px;padding:8px 34px 8px 10px}.unit-select:hover{border-color:#aebfb1}.unit-select:focus{border-color:#438260;box-shadow:0 0 0 3px #4382601f}.unit-select:disabled{color:#8a968f;cursor:not-allowed;background-color:#f2f4f1}.quick-food-row{color:var(--green);background:#f5faf6;border-top:1px solid #cfe0d3;grid-template-columns:24px minmax(220px,1fr) 90px minmax(160px,190px);align-items:end;gap:8px;padding:13px 12px 11px;display:grid}.quick-food-row>svg{align-self:center;margin-bottom:10px}.quick-field{gap:5px;min-width:0;display:grid}.quick-field>span,.quantity-editor-fields label>span{color:#65756b;letter-spacing:.04em;font-size:.64rem;font-weight:800}.quick-food-row input{background:#fff;border:1px solid #d4dfd5;border-radius:8px;outline:none;width:100%;min-width:0;min-height:38px;padding:8px 10px}.quick-food-row input:focus{border-color:#438260;box-shadow:0 0 0 3px #4382601f}.quick-food-row>button{white-space:nowrap;grid-area:2/4;min-height:38px}.quick-mapping-preview{color:var(--muted);grid-area:2/2/auto/4;align-self:center;margin:0;font-size:.66rem;line-height:1.4}.quantity-editor{background:#f7faf7}.quantity-editor-fields{grid-template-columns:minmax(90px,.7fr) minmax(150px,1.3fr);gap:9px;display:grid}.quantity-editor-fields label{gap:5px;min-width:0;display:grid}.quantity-editor-fields input{background:#fff;border:1px solid #d4dfd5;border-radius:8px;outline:none;width:100%;min-width:0;min-height:38px;padding:8px 10px}.quantity-editor-fields input:focus{border-color:#438260;box-shadow:0 0 0 3px #4382601f}.quantity-editor-actions{justify-content:flex-end;margin-top:9px;display:flex}.unsaved-label{color:#9a581f;background:#fff0df;border-radius:12px;padding:3px 7px;font-size:.62rem}.edit-inspector-actions>p{color:#6f7d75;flex-basis:100%;margin:0;font-size:.72rem;line-height:1.45}.live-mapping-preview{background:#f2faf5}.live-mapping-preview p{align-items:center;gap:6px;display:flex}.live-mapping-preview small{margin-top:5px;display:block}.spin{animation:.8s linear infinite spin}.error-text{color:#a84b2b}.quantity-resolution{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.quantity-resolution strong{color:#285f42}.quantity-resolution span{color:#9b6429;font-size:.66rem}.quantity-missing{background:#fff6ed;border:1px solid #efc7a8;border-radius:8px;padding:8px 10px;font-weight:700;color:#9a521f!important}.quantity-source{color:#53695b;background:#edf2ed;border-radius:999px;width:max-content;padding:3px 7px;font-size:.64rem;font-style:normal;display:inline-flex}.quantity-source.ai_estimate{color:#9a5b20;background:#fff0dc}.quantity-source.organization{color:#2c6a47;background:#e5f1e8}.quantity-source.optidiet{color:#476485;background:#e9eff8}.text-link{color:#347151;font-weight:700}.size-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.size-toolbar>label:last-of-type{align-items:center;gap:7px;display:flex}.size-toolbar select,.size-form select,.size-form input,.inline-size-edit input,.inline-size-edit select{background:#fff;border:1px solid #d9e1d8;border-radius:8px;padding:8px 10px}.size-result-count{color:#617168;white-space:nowrap;margin-left:auto;font-size:.72rem}.size-editor{margin-bottom:14px}.size-editor h2{margin:0 0 4px}.size-editor>div:first-child>p{color:var(--muted);margin:0 0 14px;font-size:.74rem}.size-form{grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;margin-bottom:14px;display:grid}.size-target-picker{color:#315f43;text-align:left;cursor:pointer;background:#f8fbf8;border:1px solid #cbd9ce;border-radius:8px;grid-column:span 2;align-items:center;gap:9px;padding:8px 11px;display:flex}.size-target-picker span,.size-target-picker small{display:block}.size-target-picker span{min-width:0}.size-target-picker strong,.size-target-picker small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.size-target-picker small{color:#75837a;margin-top:2px;font-size:.64rem}.size-row{border-bottom:1px solid #e7ece6;grid-template-columns:minmax(230px,1.3fr) 150px 145px 150px 155px;align-items:center;gap:12px;min-width:850px;padding:11px 8px;display:grid}.size-row.head{z-index:1;color:#7a8780;text-transform:uppercase;background:#fff;font-size:.68rem;font-weight:800;position:sticky;top:0}.size-row strong,.size-row small{display:block}.size-row small{color:#859189;margin-top:3px;font-size:.67rem}.size-table{max-height:72vh;overflow:auto}.inline-size-edit{gap:5px;display:flex}.inline-size-edit input{width:88px}.import-issues{max-height:420px;overflow:auto}.import-issues summary{cursor:pointer;background:#fff;padding:4px 0;font-weight:750;position:sticky;top:0}.import-issues p{color:#68776e;margin:8px 0;font-size:.73rem}.muted-note{color:#7b8880;font-size:.72rem}@media (width<=1450px){.protocol-split-view.with-source-preview{grid-template-columns:minmax(300px,.8fr) minmax(440px,1.2fr)}.protocol-split-view.with-source-preview .protocol-inspector{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;display:grid;position:static}}@media (width<=1250px){.protocol-split-view{grid-template-columns:minmax(540px,1.4fr) minmax(280px,.8fr)}.protocol-edit-head,.protocol-edit-row{grid-template-columns:26px 96px minmax(210px,1fr) 178px}}@media (width<=1100px){.tool-grid,.project-grid,.stepper,.review-row{grid-template-columns:1fr 1fr}.review-row .icon-button{justify-self:end}.protocol-split-view,.protocol-split-view.with-source-preview{grid-template-columns:1fr}.protocol-split-view.with-source-preview .protocol-inspector{grid-column:auto;display:block}.protocol-source-pane{border-bottom:1px solid #e3e8e1;border-right:0;max-height:62vh}.protocol-item-list{border-bottom:1px solid #e3e8e1;border-right:0}.protocol-inspector{max-height:none;position:static}.batch-participant-form{grid-template-columns:1fr 1fr}}@media (width<=1000px){.app-shell{grid-template-columns:1fr}.sidebar{width:100%;height:auto;padding:13px 20px;position:static}.sidebar nav{grid-template-columns:repeat(3,1fr)}.brand{padding:0 0 12px}.sidebar-account{display:none}.privacy-note{border:0;align-items:center;margin-top:12px;padding:6px 2px}.input-panel{grid-template-columns:1fr 1fr}.paste-box{grid-column:1/-1}.metric-grid{grid-template-columns:1fr}}@media (width<=700px){.workspace{padding:28px 16px 60px}.workspace-head,.page-head{flex-direction:column}.input-panel,.tool-grid,.project-grid,.two-column,.form-grid,.simple-project-form{grid-template-columns:1fr}.paste-box{grid-column:auto}.table-toolbar{flex-direction:column;align-items:flex-start;gap:12px}.job-progress{grid-template-columns:1fr}.sidebar nav{grid-template-columns:1fr 1fr}.inline-form{flex-direction:column;align-items:stretch}.stepper,.review-row,.secret-reveal{grid-template-columns:1fr}.info-banner{flex-direction:column;align-items:flex-start}.protocol-toolbar{flex-direction:column;align-items:stretch}.protocol-search{width:100%}.protocol-list-row{grid-template-columns:26px minmax(170px,1fr) 105px}.protocol-target{display:none}.protocol-workbench-head{flex-direction:column;align-items:flex-start}.split-part{grid-template-columns:1fr 76px 76px 32px}.participant-toolbar,.participant-edit-form,.visit-create-form,.visit-edit-form,.batch-participant-form{grid-template-columns:1fr}.visit-create-form .form-actions,.visit-edit-form .form-actions{grid-column:1}.visit-edit-form{margin-left:0}.batch-participant-form>small,.batch-participant-form>.alert{grid-column:1}.quick-food-row{grid-template-columns:24px minmax(0,1fr) 82px}.quick-food-row .quick-field:first-of-type{grid-column:2/-1}.quick-food-row .quick-field:nth-of-type(2){grid-column:2}.quick-food-row .quick-field:nth-of-type(3){grid-column:3}.quick-food-row>button,.quick-mapping-preview{grid-area:auto/2/auto/-1}.quantity-editor-fields{grid-template-columns:1fr}.participant-card>header{grid-template-columns:28px 1fr}.participant-head-actions{flex-wrap:wrap;grid-column:1/-1}.visit-title{grid-template-columns:24px 1fr}.visit-actions{flex-wrap:wrap;grid-column:2}}.protocol-split-view.with-source-preview{grid-template-columns:minmax(420px,1fr) minmax(520px,1.25fr);position:relative;overflow:hidden}.protocol-inspector.drawer{z-index:40;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #dbe4da;border-radius:14px;width:min(520px,100vw - 32px);min-height:0;max-height:calc(100dvh - 32px);transition:transform .18s;position:fixed;top:16px;bottom:16px;right:16px;overflow:hidden auto;transform:translate(calc(100% + 34px));box-shadow:-14px 0 34px #1c342633}.protocol-inspector.drawer.open{transform:translate(0)}.inspector-resize-handle{z-index:5;cursor:ew-resize;touch-action:none;width:12px;position:absolute;top:0;bottom:0;left:0}.inspector-resize-handle:after{content:"";background:#a9b9ae;border-radius:999px;width:3px;height:54px;transition:background .15s,height .15s;position:absolute;top:50%;left:3px;transform:translateY(-50%);box-shadow:0 0 0 3px #ffffffe0}.inspector-resize-handle:hover:after{background:#397858;height:72px}body.resizing-inspector{cursor:ew-resize;-webkit-user-select:none;user-select:none}body.resizing-inspector iframe{pointer-events:none}.inspector-close{z-index:2;float:right;background:#fff;margin:-4px -4px 0 8px;position:sticky;top:12px;box-shadow:0 2px 8px #1c34261a}.source-layout-actions{align-items:center;gap:7px;margin-left:auto;display:flex}.source-layout-actions a{text-decoration:none}.protocol-context-line{color:#61736a;font-weight:650}.quantity-state{color:#985a22;background:#fff1df;border-radius:999px;width:max-content;margin-top:4px;padding:2px 7px;font-size:.6rem;font-style:normal;font-weight:750;display:block}.quantity-state.exact,.quantity-state.resolved{color:#2d7049;background:#e5f2e8}.quantity-state-banner{background:#fff1df;border-radius:8px;padding:8px 10px;font-weight:750;color:#91561f!important;margin:9px 0 0!important}.protocol-list-row{cursor:pointer;grid-template-columns:34px minmax(190px,1.2fr) minmax(190px,1fr) 115px 36px}.protocol-source-action{color:#376b50;place-self:center end}@media (width>=1001px){.app-shell.protocol-focus{grid-template-columns:72px minmax(0,1fr)}.protocol-focus .sidebar{padding:22px 10px}.protocol-focus .brand{justify-content:center;gap:0;padding:0 0 26px}.protocol-focus .brand strong,.protocol-focus .nav-label,.protocol-focus .sidebar-account>strong,.protocol-focus .sidebar-account>span,.protocol-focus .sidebar-account button>span,.protocol-focus .privacy-note{display:none}.protocol-focus .sidebar nav a{justify-content:center;gap:0;padding:12px}.protocol-focus .sidebar-account{justify-content:center;padding:15px 0;display:flex}.protocol-focus .sidebar-account button{border-radius:9px;justify-content:center;width:36px;height:36px;margin:0}.protocol-focus .sidebar-account button:hover{background:#285943}.protocol-focus .workspace{padding-left:28px;padding-right:28px}}.participant-shell{color:#183c2a;background:#f5f7f3;min-height:100vh}.participant-shell>header{background:#fff;border-bottom:1px solid #dde5dc;justify-content:space-between;align-items:center;height:64px;padding:0 20px;display:flex}.participant-shell>header .brand{align-items:center;gap:10px;display:flex;position:static}.participant-shell>header .brand span{color:#fff;background:#315f46;border-radius:10px;place-items:center;width:32px;height:32px;display:grid}.participant-shell>main{width:min(100% - 28px,640px);margin:0 auto;padding:28px 0 64px}.participant-logout{color:#52665a;background:0 0;border:0;align-items:center;gap:7px;min-height:42px;display:flex}.diary-intro{justify-content:space-between;align-items:end;gap:18px;margin-bottom:20px;display:flex}.diary-intro h1{margin:4px 0 6px;font-size:clamp(1.7rem,7vw,2.35rem)}.diary-intro p{color:#627268;margin:0}.diary-intro>label{min-width:180px;position:relative}.diary-intro>label svg{pointer-events:none;position:absolute;bottom:13px;right:12px}.diary-add{justify-content:center;width:100%;min-height:52px;margin-bottom:24px}.diary-card{background:#fff;border:1px solid #dce5dc;border-radius:18px;margin-bottom:24px;padding:20px;box-shadow:0 10px 30px #1a3e2b0f}.diary-card h2{margin:0 0 18px;font-size:1.2rem}.diary-form{gap:14px;display:grid}.diary-form label{gap:6px;font-weight:650;display:grid}.diary-form label small{color:#718077;font-weight:400}.diary-form input,.diary-form select,.diary-form textarea,.diary-intro select{width:100%;min-height:46px;font:inherit;color:inherit;background:#fff;border:1px solid #cbd8ce;border-radius:10px;padding:10px 12px}.diary-form textarea{resize:vertical}.diary-form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.diary-food-search{border:1px solid #cbd8ce;border-radius:10px;align-items:center;gap:8px;padding:0 12px;display:flex}.diary-food-search:focus-within{border-color:#477c5d;box-shadow:0 0 0 3px #477c5d1f}.diary-food-search.confirmed{background:#f4faf5;border-color:#57926c}.diary-food-search input{box-shadow:none;border:0;outline:0;padding-inline:0}.diary-results{background:#fff;border:1px solid #dce5dc;border-radius:10px;margin-top:-10px;overflow:hidden}.diary-results button{text-align:left;background:#fff;border:0;border-bottom:1px solid #edf1ed;justify-content:space-between;gap:10px;width:100%;min-height:50px;padding:9px 12px;display:flex}.diary-results button:hover{background:#f4f8f4}.diary-results .freetext-choice{color:#53685a;border-bottom:0;justify-content:flex-start}.diary-selection,.diary-hint{color:#315f46;background:#eaf5ed;border-radius:9px;align-items:center;gap:7px;padding:9px 11px;font-size:.9rem;display:flex}.diary-selection button{background:0 0;border:0;place-items:center;margin-left:auto;display:grid}.diary-hint{color:#74571f;background:#fff7e8}.diary-unit-hint{color:#315f46;background:#edf6ef;border-radius:9px;align-items:center;gap:6px;margin-top:-8px;padding:8px 10px;font-size:.84rem;display:flex}.diary-unit-hint.known{background:#e7f3e9;font-weight:600}.diary-unit-hint.review{color:#74571f;background:#fff7e8}.diary-days{gap:24px;display:grid}.diary-days section>h2{text-transform:capitalize;color:#52665a;margin:0 0 9px;font-size:1rem}.diary-entry{background:#fff;border:1px solid #dce5dc;border-radius:13px;grid-template-columns:66px 1fr auto;align-items:center;gap:12px;min-height:78px;margin-bottom:8px;padding:13px;display:grid}.diary-entry>div{gap:3px;min-width:0;display:grid}.diary-entry span,.diary-entry small{color:#6a786f;overflow-wrap:anywhere;font-size:.84rem}.diary-entry-time{border-right:1px solid #e5ebe5}.diary-entry-actions{gap:4px!important;display:flex!important}.diary-entry-actions button{color:#46604f;background:#f1f5f1;border:0;border-radius:9px;place-items:center;width:40px;height:40px;display:grid}.diary-empty{text-align:center;color:#6a786f;border:1px dashed #c8d4ca;border-radius:14px;padding:38px 20px}@media (width<=540px){.participant-shell>header .brand strong{font-size:.92rem}.participant-logout span{display:none}.participant-shell>main{padding-top:20px}.diary-intro{flex-direction:column;align-items:stretch}.diary-intro>label{width:100%}.diary-form-grid{grid-template-columns:1fr}.diary-entry{grid-template-columns:54px 1fr}.diary-entry-actions{grid-column:2;justify-content:flex-end}}@media (width<=700px){.protocol-list-row{grid-template-columns:26px minmax(170px,1fr) 105px 34px}}.quantity-state-banner.exact,.quantity-state-banner.resolved{background:#e8f3ea;color:#2e6f4a!important}.inline-size-panel{border-top:1px solid #dfe7df;margin-top:14px;padding-top:12px}.inline-size-panel .inspector-title-row{margin-bottom:8px}.text-button{color:#347151;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:.7rem;font-weight:750;display:inline-flex}.size-card-list{gap:7px;max-height:240px;display:grid;overflow:auto}.size-card{background:#fff;border:1px solid #dbe4da;border-radius:9px;grid-template-columns:1fr auto;align-items:center;display:grid;overflow:hidden}.size-card.selected{border-color:#4b8b66;box-shadow:0 0 0 2px #4b8b661f}.size-card-select{color:#294236;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:1fr auto;gap:2px 8px;padding:9px 10px;display:grid}.size-card-select small{color:#77877e;grid-column:1/-1}.size-confirm{color:#347151;cursor:pointer;background:#f4f8f4;border:0;border-left:1px solid #e1e8e0;align-self:stretch;padding:0 9px;font-size:.65rem;font-weight:750}.autosave-label{color:#718078;text-align:right;font-size:.6rem;font-weight:650}.inline-size-create{background:#eef5ef;border-radius:9px;grid-template-columns:1.2fr 1fr 76px 58px;gap:7px;margin-top:9px;padding:10px;display:grid}.inline-size-create input,.inline-size-create select{background:#fff;border:1px solid #cfdbd0;border-radius:7px;min-width:0;padding:8px}.inline-size-create>div{grid-column:1/-1;justify-content:flex-end;gap:7px;display:flex}@media (width<=900px){.platform-layout,.activation-card,.quota-grid{grid-template-columns:1fr}}.participant-card.focused{outline:3px solid #40855b38;box-shadow:0 14px 34px #274e3524}.project-activity{color:var(--muted);margin-top:7px;font-size:.68rem}.project-activity summary{cursor:pointer;width:max-content;max-width:100%}.project-activity div{gap:3px;margin-top:6px;display:grid}.project-activity span{font-weight:400}.project-activity strong{color:#5f6d64}@media (width<=700px){.size-form{grid-template-columns:1fr}.size-target-picker{grid-column:auto}}@media (width>=1700px){.protocol-split-view.with-source-preview{grid-template-columns:minmax(560px,.95fr) minmax(720px,1.3fr)}.protocol-source-pane,.protocol-item-list{max-height:min(76vh,900px)}.protocol-inspector.drawer{width:min(560px,100vw - 48px)}}@media (width<=1100px){.protocol-split-view.with-source-preview{grid-template-columns:1fr}.protocol-inspector.drawer{width:min(440px,100vw - 24px);max-height:calc(100dvh - 24px);top:12px;bottom:12px;right:12px}.inline-size-create{grid-template-columns:1fr 1fr}}@media (width<=700px){.source-layout-actions{width:100%;margin-left:0}.source-layout-actions>*{flex:1;justify-content:center}.protocol-inspector.drawer{width:auto;left:12px}.inspector-section{padding-left:15px;padding-right:15px}}.context-return{color:#28583d;background:#edf7ef;border:1px solid #bfd8c5;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;padding:13px 16px;display:flex}.context-return>div{min-width:0}.context-return span{color:#6b7c71;letter-spacing:.06em;text-transform:uppercase;font-size:.66rem;font-weight:800;display:block}.context-return strong{text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.8rem;display:block;overflow:hidden}.context-return.invalid{color:#8b5729;background:#fff7ec;border-color:#ead7bd;justify-content:flex-start}.context-return.loading{color:#6b7c71;justify-content:flex-start;font-size:.75rem}.recent-protocol-list{display:grid}.recent-protocol-card{color:inherit;border-top:1px solid #e8ece6;grid-template-columns:30px minmax(0,1fr) auto 20px;align-items:center;gap:12px;padding:14px 18px;text-decoration:none;display:grid}.recent-protocol-card:hover{background:#f5f9f5}.recent-protocol-card>svg:first-child{color:#397454}.recent-protocol-card div{min-width:0}.recent-protocol-card span,.recent-protocol-card small{color:#738178;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;display:block;overflow:hidden}.recent-protocol-card strong{color:#263f32;text-overflow:ellipsis;white-space:nowrap;margin:3px 0;font-size:.86rem;display:block;overflow:hidden}.recent-protocol-card time{color:#748279;white-space:nowrap;font-size:.7rem}.navigation-guard-dialog{width:min(520px,100vw - 32px)}.navigation-guard-dialog .dialog-actions{padding:16px 20px 20px}@media (width<=700px){.context-return{flex-direction:column;align-items:stretch}.context-return strong{white-space:normal}.recent-protocol-card{grid-template-columns:26px minmax(0,1fr) 18px}.recent-protocol-card time{grid-column:2}.recent-protocol-card>svg:last-child{grid-area:1/3}}.overflow-menu{display:inline-flex;position:relative}.overflow-popover{z-index:80;background:#fff;border:1px solid #dce4db;border-radius:10px;min-width:210px;padding:5px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 14px 34px #273d302e}.overflow-popover button{color:#31483a;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;width:100%;padding:9px 10px;font-size:.75rem;display:flex}.overflow-popover button:hover,.overflow-popover button:focus-visible{background:#f0f5ef;outline:none}.overflow-popover button.danger{color:#a64e35}.overflow-popover button.danger:hover,.overflow-popover button.danger:focus-visible{background:#fff0eb}.overflow-popover button:disabled{opacity:.5;cursor:not-allowed}.participant-card{overflow:visible}.participant-detail-link{color:inherit;text-decoration:none}.participant-detail-link:hover{color:#2f704e;text-decoration:underline}.participant-nutrition-head{align-items:flex-start}.nutrition-selection,.comparison-controls{margin-bottom:16px}.selection-tabs{flex-wrap:wrap;gap:6px;display:flex}.selection-tabs button{color:#586b60;background:#fff;border:1px solid #dce4db;border-radius:20px;padding:8px 13px}.selection-tabs button.active{color:#245d3e;background:#eaf3ec;border-color:#4e8a68;font-weight:750}.selection-shortcuts{gap:7px;margin:14px 0 9px;display:flex}.nutrition-choice-grid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:8px;display:grid}.nutrition-choice-grid>label{cursor:pointer;background:#fbfcfa;border:1px solid #e0e6de;border-radius:9px;grid-template-columns:18px 18px 1fr;align-items:center;gap:8px;padding:10px;display:grid}.nutrition-choice-grid>label.empty{opacity:.68}.nutrition-choice-grid strong,.nutrition-choice-grid small{display:block}.nutrition-choice-grid small{color:#7e8b83;margin-top:2px;font-size:.67rem}.nutrition-dashboard{grid-template-columns:minmax(230px,.65fr) minmax(440px,1.35fr);gap:16px;display:grid}.calorie-card{flex-direction:column;justify-content:center;min-height:230px;display:flex}.calorie-card span{color:#6d7b73;font-size:.78rem}.calorie-card strong{color:#234b35;margin:8px 0;font-size:2.5rem}.calorie-card small{color:#738178}.macro-chart-card{background:#fff;border:1px solid #dce4db;border-radius:15px;grid-template-columns:190px 1fr;align-items:center;gap:12px 24px;padding:20px;display:grid}.macro-chart-card h3{grid-column:1/-1;margin:0}.macro-donut{aspect-ratio:1;border-radius:50%;place-items:center;width:180px;display:grid}.macro-donut:after{content:"";aspect-ratio:1;background:#fff;border-radius:50%;grid-area:1/1;width:58%}.macro-donut span{z-index:1;color:#53655b;text-align:center;grid-area:1/1;max-width:80px;font-size:.72rem;font-weight:750}.macro-donut.empty{background:#edf1ec}.macro-legend{gap:10px;display:grid}.macro-legend>div{grid-template-columns:10px 1fr auto auto;align-items:center;gap:8px;display:grid}.macro-legend i{border-radius:50%;width:9px;height:9px}.macro-legend span{color:#55685d;font-size:.76rem}.macro-legend strong{font-size:.76rem}.macro-legend small{color:#7c8981;text-align:right;min-width:48px;font-size:.68rem}.nutrition-gap,.nutrition-empty{grid-column:1/-1}.comparison-controls{grid-template-columns:minmax(280px,1fr) minmax(210px,.45fr) minmax(210px,.45fr);align-items:end;gap:18px;display:grid}.comparison-controls h2,.comparison-controls p{margin:0}.comparison-controls p{color:#738178;margin-top:4px;font-size:.75rem}.comparison-controls label{color:#617168;gap:5px;font-size:.7rem;font-weight:750;display:grid}.comparison-controls select{background:#fff;border:1px solid #d8e1d8;border-radius:8px;padding:10px}.comparison-intro{gap:8px;display:grid}.compact-tabs button{padding:6px 11px;font-size:.7rem}.comparison-dashboard{grid-template-columns:1fr 1fr;gap:16px;display:grid}.comparison-kcal{grid-column:1/-1;grid-template-columns:1fr minmax(190px,.55fr) 1fr;align-items:center;gap:24px;padding:22px 28px;display:grid}.comparison-kcal>div:first-child{text-align:left}.comparison-kcal>div:last-child{text-align:right}.comparison-kcal span,.comparison-kcal small{color:#718078;display:block}.comparison-kcal strong{color:#214f37;margin:5px 0;font-size:1.8rem;display:block}.comparison-table{grid-column:1/-1}.comparison-table h2{margin-top:0}.comparison-table>div{border-top:1px solid #e7ece5;grid-template-columns:minmax(150px,.9fr) 1fr 1fr minmax(170px,.8fr);align-items:center;gap:18px;padding:12px 0;font-size:.75rem;display:grid}.comparison-table-head{color:#829087;text-transform:uppercase;font-weight:800;font-size:.65rem!important}.comparison-nutrient{font-weight:750}.comparison-value{gap:6px;display:grid}.comparison-value strong{text-align:left}.comparison-value i{background:#a9b8ae;border-radius:5px;height:6px;display:block}.comparison-value-current i{background:#2f7650}.comparison-change{color:#637168;background:#f2f5f1;border-radius:9px;align-items:center;gap:9px;min-width:0;padding:8px 10px;display:flex}.comparison-change span,.comparison-change small{display:block}.comparison-change strong{text-align:left}.comparison-change small{color:inherit;margin-top:2px}.comparison-change.positive{color:#267148;background:#e8f5ec}.comparison-change.negative{color:#aa5139;background:#fff0eb}.nutrition-advanced{margin-top:16px}.nutrition-advanced summary{cursor:pointer;align-items:center;gap:8px;font-weight:750;display:flex}.nutrition-advanced[open] summary{margin-bottom:14px}.nutrition-advanced p{color:#728078;font-size:.75rem}.micronutrient-table{margin-top:16px}.micronutrient-table h2{margin-top:0}.micronutrient-table>div{border-top:1px solid #e7ece5;grid-template-columns:1fr auto auto;gap:18px;padding:9px 0;font-size:.76rem;display:grid}.micronutrient-table small{color:#718078;text-align:right;min-width:120px}@media (width<=900px){.nutrition-choice-grid{grid-template-columns:1fr 1fr}.nutrition-dashboard,.comparison-dashboard,.comparison-controls{grid-template-columns:1fr}.comparison-table{grid-column:auto}.macro-chart-card{grid-template-columns:160px 1fr}.macro-donut{width:150px}}@media (width<=600px){.nutrition-choice-grid,.macro-chart-card{grid-template-columns:1fr}.macro-donut{justify-self:center}.comparison-table>div{grid-template-columns:1fr 1fr}.comparison-table strong{text-align:left}.micronutrient-table>div{grid-template-columns:1fr auto}.micronutrient-table small{text-align:left;grid-column:1/-1}.legal-page{padding:16px}.legal-header{flex-direction:column;align-items:flex-start}.legal-document{border-radius:16px;padding:28px 20px}.legal-document h1{margin-bottom:26px}}.legal-download{background:#f5f9f5;border:1px solid #d8e5da;border-radius:12px;margin-top:18px;padding:16px 18px}.legal-download>strong{color:#214c36;font-size:.86rem;display:block}.legal-download p{color:#617168;margin:6px 0 12px;font-size:.76rem}.legal-download p span{white-space:nowrap}.legal-download-actions{flex-wrap:wrap;gap:8px;display:flex}.legal-download-actions a{color:#2f6d4c;background:#fff;border:1px solid #c6d9ca;border-radius:8px;align-items:center;min-height:34px;padding:7px 11px;font-size:.7rem;font-weight:750;text-decoration:none;display:inline-flex}.legal-download-actions a:hover{background:#edf6ef;border-color:#8eb39a}.recipe-toolbar{align-items:center;gap:12px;margin-bottom:18px;padding:12px;display:flex}.recipe-toolbar .protocol-search{flex:1;width:auto}.recipe-toolbar select{background:#fff;border:1px solid #dce3da;border-radius:8px;padding:8px 10px}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.recipe-card{cursor:pointer;background:#fff;border:1px solid #dce4db;border-radius:15px;grid-template-columns:44px 1fr auto;gap:14px;min-height:170px;padding:18px;display:grid}.recipe-card:hover{border-color:#9bb9a5;box-shadow:0 8px 25px #1b3e2c0f}.recipe-icon{color:#2f704e;background:#edf5ee;border-radius:11px;place-items:center;width:42px;height:42px;display:grid}.recipe-card h2{margin:10px 0 5px;font-size:1.08rem}.recipe-card p{color:#718078;margin:0 0 14px;font-size:.78rem;line-height:1.45}.recipe-card small{color:#8a958e;font-size:.68rem}.recipe-card-actions{gap:5px;display:flex}.back-link{color:#397151;align-items:center;gap:5px;margin-bottom:10px;font-size:.75rem;font-weight:750;display:inline-flex}.recipe-meta{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}.recipe-meta label{color:#637269;gap:6px;font-size:.72rem;font-weight:750;display:grid}.recipe-meta input,.recipe-meta textarea{background:#fff;border:1px solid #d9e1d8;border-radius:8px;width:100%;padding:9px 10px}.recipe-meta textarea{resize:vertical;min-height:84px}.recipe-import{align-items:center;gap:12px;margin-bottom:16px;display:flex}.recipe-import>div{flex:1}.recipe-import h2,.recipe-ingredients h2{margin:0 0 4px;font-size:1.05rem}.recipe-import p,.recipe-ingredients p{color:#7a8780;margin:0;font-size:.74rem}.ingredient-table{overflow-x:auto}.ingredient-row{border-bottom:1px solid #edf0eb;grid-template-columns:minmax(180px,1fr) 90px 145px minmax(230px,1.25fr) 104px;align-items:center;gap:8px;min-width:850px;padding:7px 0;display:grid}.ingredient-row.head{color:#7c8981;text-transform:uppercase;font-size:.66rem;font-weight:800}.ingredient-row>input,.ingredient-unit select{background:#fff;border:1px solid #dce3da;border-radius:7px;width:100%;min-width:0;padding:8px}.ingredient-unit{gap:3px;display:grid}.ingredient-unit small{color:#73827a;font-size:.62rem}.ingredient-match{color:#4b6557;text-align:left;background:#fafbf8;border:1px solid #dce4db;border-radius:8px;flex-direction:column;align-items:flex-start;min-height:39px;padding:7px 9px;display:flex}.ingredient-match.verified{background:#eef7f0;border-color:#a7cbb2}.ingredient-match.needs_review{background:#fff7ed;border-color:#e7b886}.ingredient-match strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.72rem;overflow:hidden}.ingredient-match small{color:#819087;margin-top:2px;font-size:.62rem}@media (width<=700px){.recipe-grid,.recipe-meta{grid-template-columns:1fr}.recipe-import{flex-direction:column;align-items:stretch}}
