:root{color:#000000de;font-synthesis:none;text-rendering:optimizelegibility;letter-spacing:-.01em;--ink:#000000de;--muted:#00000094;--paper:#f2f0eb;--canvas:#edebe9;--surface-card:#fff;--surface-quiet:#f9f9f9;--green-brand:#006241;--green-action:#00754a;--green-deep:#1e3932;--green-muted:#2b5148;--green-pale:#d4e9e2;--line:#d6dbde;--danger:#c82014;--danger-soft:#c820140d;--success-soft:#d3e8e18c;--shadow-card:0 0 .5px #00000024, 0 1px 1px #0000003d;--shadow-navigation:0 1px 3px #0000001a, 0 2px 2px #0000000f, 0 0 2px #00000012;background:#f2f0eb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px;min-height:100%}body{background:var(--canvas);min-width:320px;min-height:100dvh;margin:0}#app{min-height:100dvh}button,input,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent;transition:color .2s,background-color .2s,border-color .2s,box-shadow .2s,transform .2s}button:active:not(:disabled){transform:scale(.95)}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #00754a6b}.app-shell{background:var(--paper);width:min(100%,760px);min-height:100dvh;box-shadow:var(--shadow-navigation);flex-direction:column;margin:0 auto;display:flex}.app-header{z-index:5;min-height:64px;padding:max(.5rem, env(safe-area-inset-top)) .75rem .5rem;color:#fff;background:var(--green-deep);box-shadow:var(--shadow-navigation);align-items:center;gap:.75rem;display:flex;position:sticky;top:0}.skip-link{color:var(--green-deep);z-index:10;background:#fff;border-radius:.5rem;padding:.6rem .9rem;position:absolute;top:-5rem;left:1rem}.skip-link:focus{top:.75rem}.brand-mark{object-fit:contain;border-radius:50%;flex:none;width:40px;height:40px;display:block}.app-main{flex-direction:column;flex:1 0 auto;display:flex}.login-panel{flex:1;padding:clamp(2.5rem,9vw,5.5rem) clamp(1.25rem,7vw,4rem)}.login-intro{max-width:530px;margin-bottom:2.5rem}.eyebrow{color:var(--green-brand);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .5rem;font-size:.72rem;font-weight:700}h1,h2{letter-spacing:-.01em;margin:0;font-weight:600}h1{color:var(--green-brand);font-size:clamp(2.75rem,10vw,4.6rem);line-height:.96}.login-intro>p:last-child{max-width:470px;color:var(--muted);margin:1.5rem 0 0;line-height:1.6}.login-form{gap:1rem;max-width:430px;display:grid}.login-form label,.notes-field,.date-time-field{color:var(--ink);gap:.45rem;font-size:.82rem;font-weight:700;display:grid}.login-form input,.notes-field textarea,.date-time-field input{width:100%;color:var(--ink);background:var(--surface-card);border:1px solid var(--line);border-radius:.75rem;padding:.9rem 1rem}.login-form input{min-height:50px}.primary-button{color:#fff;background:var(--green-action);cursor:pointer;border:0;border-radius:50px;min-height:50px;padding:.8rem 1.1rem;font-weight:700;box-shadow:0 0 6px #00000029,0 8px 12px #0000001a}.primary-button:hover:not(:disabled){background:var(--green-brand)}.primary-button:disabled{color:#7c8582;box-shadow:none;cursor:not-allowed;background:#d9ddd9}.error-message{color:var(--danger);background:var(--danger-soft);border:1px solid #c8201433;border-radius:.75rem;margin:0;padding:.8rem 1rem;font-size:.82rem}.error-message--panel{margin-bottom:1rem}.error-message button{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:.4rem;padding:0;font-weight:700;text-decoration:underline}.panel-tabs{flex:1;grid-template-columns:1fr 1fr;min-width:0;padding:0;display:grid}.panel-tabs button{color:#a8bdb7;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:.5rem;min-height:48px;font-size:.87rem;font-weight:700;display:flex;position:relative}.panel-tabs button:after{content:"";background:0 0;border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0;left:18%;right:18%}.panel-tabs button.active{color:#fff}.panel-tabs button.active:after{background:var(--green-pale)}.tab-icon{background:currentColor;flex:none;width:1.25rem;height:1.25rem;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.tab-icon--intakes{-webkit-mask-image:url(/icons/ui/capsule-pill.svg);mask-image:url(/icons/ui/capsule-pill.svg)}.tab-icon--observations{-webkit-mask-image:url(/icons/ui/activity.svg);mask-image:url(/icons/ui/activity.svg)}.panel-content{flex:1;padding:2rem clamp(1rem,5vw,2.5rem) 2.5rem}.section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.5rem;display:flex}.section-heading h2{font-size:clamp(2rem,8vw,3rem);line-height:1}.card-list,.indicator-groups{gap:.85rem;display:grid}.entry-row{background:var(--surface-card);border:1px solid var(--line);min-height:68px;box-shadow:var(--shadow-card);border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .75rem .7rem 1rem;display:flex}.entry-row h4{color:var(--ink);margin:0;font-size:1rem;font-weight:600}.entry-row-title{align-items:center;gap:.7rem;min-width:0;display:flex}.entry-emoji{text-align:center;background:var(--green-pale);border-radius:.75rem;flex:0 0 36px;place-items:center;width:36px;height:36px;padding:0;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:1.15rem;line-height:1;display:grid}.add-entry-button{width:44px;height:44px;color:var(--green-action);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.add-entry-button:hover{color:var(--green-brand);background:var(--green-pale)}.plus-circle-icon{background:currentColor;width:1.7rem;height:1.7rem;-webkit-mask:url(/icons/ui/plus-circle.svg) 50%/contain no-repeat;mask:url(/icons/ui/plus-circle.svg) 50%/contain no-repeat}.indicator-groups{gap:1.75rem}.indicator-group{gap:.75rem;display:grid}.indicator-group>h3{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.72rem}.entry-dialog{width:min(100% - 2rem,440px);max-width:440px;max-height:calc(100dvh - 2rem);color:var(--ink);background:0 0;border:0;border-radius:1.25rem;padding:0;overflow:hidden;box-shadow:0 24px 70px #00000047}.entry-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0c1f1a94}.entry-sheet{background:var(--surface-card);max-height:calc(100dvh - 2rem);padding:1.3rem;display:grid;overflow-y:auto}.entry-sheet-handle{display:none}.entry-sheet-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.35rem;display:flex}.entry-sheet-kicker{color:var(--green-brand);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .25rem;font-size:.62rem;font-weight:700}.entry-sheet-header h3{margin:0;font-size:1.5rem;line-height:1.15}.entry-sheet-close{width:44px;height:44px;color:var(--muted);background:var(--surface-quiet);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:1.7rem;line-height:1;display:grid}.entry-form{gap:1.25rem;display:grid}.field-group{gap:.55rem;display:grid}.field-label{font-size:.82rem;font-weight:700}.quantity-stepper{background:var(--surface-quiet);border:1px solid var(--line);border-radius:50px;align-items:stretch;width:100%;min-height:58px;display:flex;overflow:hidden}.quantity-stepper button{width:62px;color:var(--green-deep);cursor:pointer;background:0 0;border:0;flex:0 0 62px;place-items:center;font-size:1.5rem;display:grid}.quantity-stepper button:last-child{color:#fff;background:var(--green-action)}.quantity-stepper button:disabled{color:#aeb6b2;cursor:not-allowed;background:#e2e5e1}.quantity-stepper output{flex-direction:column;flex:1;justify-content:center;align-items:center;min-width:0;line-height:1;display:flex}.quantity-stepper output strong{font-size:1.2rem}.quantity-stepper output span{color:var(--muted);margin-top:.25rem;font-size:.68rem}.indicator-description,.occurrence-explanation{color:var(--muted);margin:0;font-size:.88rem;line-height:1.5}.score-field{border:0;min-width:0;margin:0;padding:0}.score-field legend{padding:0}.score-options{justify-content:space-between;gap:.5rem;margin-top:.55rem;display:flex}.score-option{cursor:pointer;place-items:center;display:grid;position:relative}.score-option input{opacity:0;width:1px;height:1px;position:absolute}.score-option span{width:48px;height:48px;color:var(--green-deep);background:var(--surface-quiet);border:1px solid var(--line);border-radius:50%;place-items:center;font-size:1rem;font-weight:700;transition:color .12s,background .12s,border-color .12s,transform .12s;display:grid}.score-option input:checked+span{color:#fff;background:var(--green-action);border-color:var(--green-action)}.score-option input:focus-visible+span{outline-offset:3px;outline:3px solid #00754a40}.score-option input:disabled+span{cursor:default;opacity:.6}.score-option:active span{transform:scale(.94)}.score-bounds{color:var(--muted);justify-content:space-between;gap:1rem;font-size:.7rem;line-height:1.25;display:flex}.score-bounds span{max-width:46%}.score-bounds span:last-child{text-align:right}.optional-entry-block{background:var(--surface-quiet);border-radius:.9rem;gap:.6rem;padding:1rem;display:grid}.notes-field textarea{resize:vertical}.date-time-field input{min-height:48px}.text-button{min-height:44px;color:var(--green-action);cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;padding:.5rem 0;font-size:.78rem;font-weight:700;display:inline-flex}.entry-options{flex-wrap:wrap;gap:.1rem 1.25rem;display:flex}.entry-option-button{min-height:44px;color:var(--green-action);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.5rem;padding:.5rem 0;font-size:.82rem;font-weight:700;display:inline-flex}.text-button:disabled,.entry-option-button:disabled{color:#8d9893;cursor:default}.entry-option-icon{background:currentColor;flex:none;width:1rem;height:1rem;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.entry-option-icon--comment{-webkit-mask-image:url(/icons/ui/plus-circle.svg);mask-image:url(/icons/ui/plus-circle.svg)}.entry-option-icon--date{-webkit-mask-image:url(/icons/ui/pencil.svg);mask-image:url(/icons/ui/pencil.svg)}.entry-actions{gap:.65rem;display:grid}.entry-actions .primary-button{width:100%}.form-message{border-radius:.7rem;margin:1rem 0 0;padding:.8rem 1rem;font-size:.82rem}.form-message--error{color:var(--danger);background:var(--danger-soft);border:1px solid #c8201433}.success-toast{bottom:max(1rem, env(safe-area-inset-bottom));z-index:20;width:min(100% - 2rem,440px);color:var(--ink);background:var(--surface-card);pointer-events:none;border:1px solid #0062412e;border-radius:12px;align-items:center;gap:.85rem;padding:1rem;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 0 6px #00000029,0 8px 18px #0000001f}.success-toast-mark{width:40px;height:40px;color:var(--green-brand);background:var(--green-pale);border-radius:50%;flex:0 0 40px;place-items:center;font-size:1.1rem;font-weight:700;display:grid}.success-toast-copy{gap:.2rem;min-width:0;font-size:.82rem;line-height:1.35;display:grid}.success-toast-copy strong{color:var(--green-brand);font-size:.9rem;line-height:1.3}.success-toast-copy>span{color:var(--muted)}.success-toast-enter-active,.success-toast-leave-active{transition:opacity .2s,transform .2s}.success-toast-enter-from,.success-toast-leave-to{opacity:0;transform:translate(-50%,.75rem)scale(.98)}.empty-state,.loading-state{color:var(--muted);text-align:center;background:var(--surface-quiet);border-radius:.75rem;padding:2rem 1rem}.loading-state{border-radius:0;justify-content:center;align-items:center;gap:.7rem;min-height:180px;display:flex}.loading-dot{background:var(--green-action);border-radius:50%;width:9px;height:9px;animation:1s ease-in-out infinite alternate pulse}@keyframes pulse{to{opacity:.35;transform:scale(.75)}}.app-footer{padding:1.1rem 1.25rem max(1.1rem, env(safe-area-inset-bottom));color:#81908b;text-align:left;background:var(--green-deep);grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:.75rem;margin-top:auto;font-size:.62rem;display:grid}.footer-copy{flex-direction:column;grid-column:1;gap:.15rem;display:flex}.logout-button{color:#a8bdb7;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:50%;grid-column:2;place-items:center;width:44px;height:44px;padding:0;display:grid}.logout-icon{background:currentColor;width:1.2rem;height:1.2rem;-webkit-mask:url(/icons/ui/box-arrow-right.svg) 50%/contain no-repeat;mask:url(/icons/ui/box-arrow-right.svg) 50%/contain no-repeat}@media (width>=600px){body{padding:2rem 0}.app-shell{border-radius:1.4rem;min-height:calc(100dvh - 4rem);overflow:hidden}.entry-row{padding:1rem 1.2rem}}@media (width<=599px){html,body,#app{background:var(--green-deep)}.entry-dialog{width:100%;max-width:none;max-height:calc(100dvh - max(.75rem, env(safe-area-inset-top)));border-radius:1.25rem 1.25rem 0 0;margin:auto 0 0}.entry-sheet{max-height:calc(100dvh - max(.75rem, env(safe-area-inset-top)));padding:.65rem 1.1rem max(1.1rem, env(safe-area-inset-bottom))}.entry-sheet-handle{background:#c8cdca;border-radius:4px;width:42px;height:4px;margin:0 auto .8rem;display:block}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.success-toast-enter-active,.success-toast-leave-active{transition:none}}
