:root{--brand-90:#114b34;--brand-80:#166144;--brand-70:#1c7e57;--brand-60:#24a170;--brand-50:#28b17b;--brand-40:#53c195;--brand-30:#6fcba7;--brand-20:#9cdbc2;--brand-10:#bce7d6;--brand-5:#eaf7f2;--base-100:#000;--base-90:#191c1f;--base-80:#343b42;--base-70:#697886;--base-60:#818f9c;--base-50:#bdc4cb;--base-40:#dde0e4;--base-30:#ebedef;--base-20:#f5f6f7;--base-10:#f9fafb;--base-0:#fff;--system-error-3:#e35044;--system-error-2:#e45a4e;--system-error-1:#fef3f2;--system-warning-3:#dc6803;--system-warning-2:#f79009;--system-warning-1:#fffaeb;--system-success-3:#24a170;--system-success-2:#28b17b;--system-success-1:#eaf7f2;--accent-blue:#64acec;--accent-orange:#f4b248;--accent-pink:#db7d97;--accent-purple:#987dde;--content-primary:var(--base-80);--content-secondary:var(--base-70);--content-tertiary:var(--base-50);--content-contrast:var(--base-90);--content-invert:var(--base-0);--content-link:var(--brand-60);--background-white:var(--base-10);--background-elevated:var(--base-20);--fill-white:var(--base-0);--fill-brand-bold:var(--brand-90);--fill-brand-regular:var(--brand-60);--fill-brand-light:var(--brand-5);--border-default:var(--base-40);--border-brand:var(--brand-60);--font-en:"Healthy Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-xs:14px;--text-sm:16px;--text-md:18px;--text-lg:22px;--text-xl:28px;--text-2xl:36px;--text-3xl:48px;--leading-tight:1.15;--leading-normal:1.4;--space-1:2px;--space-2:4px;--space-3:8px;--space-4:12px;--space-5:16px;--space-6:24px;--space-7:32px;--space-8:48px;--space-9:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-full:999px;--elevation-1:0 1px 2px #191c1f0f, 0 1px 3px #191c1f14;--elevation-2:0 4px 8px #191c1f0f, 0 2px 4px #191c1f0f;--elevation-3:0 12px 24px #191c1f1a, 0 4px 8px #191c1f0f;--tap-min:64px;--tap-hero:96px;--tap-secondary:48px;--row-min:72px;--content-max:1280px}@font-face{font-family:Healthy Sans;src:url(/fonts/HealthySans-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Healthy Sans;src:url(/fonts/HealthySans-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Healthy Sans;src:url(/fonts/HealthySans-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Healthy Sans;src:url(/fonts/HealthySans-Black.ttf)format("truetype");font-weight:900;font-style:normal;font-display:swap}:root{--type-display2:900 48px/56px var(--font-en);--type-display3:900 40px/44px var(--font-en);--type-heading1:700 32px/40px var(--font-en);--type-heading2:700 24px/32px var(--font-en);--type-heading3:700 20px/24px var(--font-en);--type-heading4:700 16px/22px var(--font-en);--type-paragraph-2xl:400 20px/28px var(--font-en);--type-paragraph-2xl-strong:700 20px/28px var(--font-en);--type-paragraph-xl:400 18px/24px var(--font-en);--type-paragraph-xl-strong:700 18px/24px var(--font-en);--type-paragraph-lg:400 16px/22px var(--font-en);--type-paragraph-lg-strong:700 16px/22px var(--font-en);--type-paragraph-md:400 14px/20px var(--font-en);--type-caption-lg:400 16px/24px var(--font-en);--type-caption-md:400 14px/18px var(--font-en)}@font-face{font-family:Healthy Sans;src:url(/fonts/HealthySans-Regular.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Healthy Sans;src:url(/fonts/HealthySans-Medium.ttf)format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Healthy Sans;src:url(/fonts/HealthySans-Bold.ttf)format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Healthy Sans;src:url(/fonts/HealthySans-Black.ttf)format("truetype");font-weight:900;font-display:swap}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--background-white);color:var(--content-primary);font-family:var(--font-en);font-size:var(--text-sm);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;text-align:inherit;background:0 0;border:0;padding:0}button:disabled{cursor:default}a{color:var(--content-link)}h1,h2,h3,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}h1{font-size:var(--text-xl);line-height:var(--leading-tight);color:var(--content-contrast);font-weight:700}h2{font-size:var(--text-lg);line-height:var(--leading-tight);color:var(--content-contrast);font-weight:700}h3{font-size:var(--text-md);line-height:var(--leading-tight);color:var(--content-contrast);font-weight:700}:focus-visible{outline:2px solid var(--border-brand);outline-offset:2px}.muted{color:var(--content-secondary)}.small{font-size:var(--text-xs)}.strong{color:var(--content-contrast);font-weight:700}.stack{gap:var(--space-4);display:grid}.stack--tight{gap:var(--space-3)}.row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.spread{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}@media (width<=479px){.spread{flex-wrap:wrap}}.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.tabular{font-variant-numeric:tabular-nums}input[type=text],input[type=time],input[type=search],input[type=password],input[type=tel],textarea{width:100%;min-height:var(--tap-min);padding:var(--space-4) var(--space-5);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--fill-white);font-size:var(--text-md)}textarea{resize:vertical;line-height:var(--leading-normal)}input::placeholder,textarea::placeholder{color:var(--content-tertiary)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.screen{max-width:var(--content-max);min-height:100dvh;padding:var(--space-5) var(--space-5) 0;margin:0 auto}.screen__body{gap:var(--space-5);padding-bottom:calc(var(--tap-hero) + var(--space-8) + var(--tap-min) + var(--space-5));align-content:start;display:grid}.screen--bare .screen__body{padding-bottom:calc(var(--tap-hero) + var(--space-8))}.screen--no-action .screen__body{padding-bottom:calc(var(--tap-min) + var(--space-6))}.screen--bare.screen--no-action .screen__body{padding-bottom:var(--space-6)}.screen__action{left:0;right:0;bottom:var(--tap-min);z-index:1;padding:var(--space-4) var(--space-5) var(--space-5);background:linear-gradient(to bottom, transparent, var(--background-white) 30%);position:fixed}.screen--bare .screen__action{bottom:0}.screen__action-inner{max-width:calc(var(--content-max) - 2 * var(--space-5));margin:0 auto}.narrow{max-width:720px}.narrow .screen__action-inner{max-width:calc(720px - 2 * var(--space-5))}@media (width>=600px){.screen,.screen__action{padding-left:var(--space-6);padding-right:var(--space-6)}.screen__action-inner{max-width:calc(var(--content-max) - 2 * var(--space-6))}.narrow .screen__action-inner{max-width:calc(720px - 2 * var(--space-6))}}.header{gap:var(--space-2);display:grid}.header__top{align-items:center;gap:var(--space-3);min-height:var(--tap-min);display:flex}.header__actions{flex-wrap:wrap;justify-content:flex-end;display:flex}.combo{position:relative}.combo .combo__input{padding-right:calc(var(--tap-secondary) + var(--space-3))}.combo--open .combo__input{border-color:var(--border-brand)}.combo__btn{top:50%;right:var(--space-3);width:var(--tap-secondary);height:var(--tap-secondary);border-radius:var(--radius-full);color:var(--content-secondary);background:0 0;justify-content:center;align-items:center;display:inline-flex;position:absolute;transform:translateY(-50%)}.combo__list{left:0;right:0;top:calc(100% + var(--space-2));z-index:4;max-height:calc(var(--tap-secondary) * 5.5);padding:var(--space-2);background:var(--fill-white);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--elevation-3);margin:0;list-style:none;position:absolute;overflow-y:auto}.combo__option{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--tap-secondary);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-md);cursor:pointer;display:flex}.combo__option--active,.combo__option:hover{background:var(--fill-brand-light)}.combo__option--selected{color:var(--brand-90);font-weight:700}.combo__empty{padding:var(--space-3) var(--space-4);color:var(--content-secondary)}.header__back{width:var(--tap-secondary);height:var(--tap-secondary);margin-left:calc(var(--space-3) * -1);border-radius:var(--radius-full);color:var(--content-primary);justify-content:center;align-items:center;display:inline-flex}.header__back:hover{background:var(--background-elevated)}.header__title{flex:1}.header__meta{gap:var(--space-2) var(--space-4);color:var(--content-secondary);flex-wrap:wrap;display:flex}.btn{justify-content:center;align-items:center;gap:var(--space-3);min-height:var(--tap-min);width:100%;padding:var(--space-4) var(--space-6);border-radius:var(--radius-full);font-size:var(--text-md);font-weight:700;transition:background-color .2s ease-out,opacity .2s ease-out;display:inline-flex}.btn--primary{background:var(--fill-brand-bold);color:var(--content-invert)}.btn--primary:hover{background:var(--brand-80)}.btn--secondary{background:var(--fill-white);color:var(--content-primary);border:1px solid var(--border-default)}.btn--secondary:hover{background:var(--background-elevated)}.btn--quiet{color:var(--content-link);min-height:var(--tap-secondary);width:auto;padding:var(--space-3) var(--space-4);background:0 0}.btn--warn{background:var(--system-warning-1);color:var(--content-primary);border:1px solid var(--system-warning-3)}.btn--hero{min-height:var(--tap-hero);font-size:var(--text-xl)}.btn--looks-disabled,.btn:disabled{background:var(--base-40);color:var(--content-secondary);border-color:#0000}.btn--looks-disabled:hover{background:var(--base-40)}.btn--fit{width:auto}.btn--wide{width:100%}.choice-card{gap:var(--space-2);text-align:left;min-height:var(--tap-hero);padding:var(--space-5);border-radius:var(--radius-md);border:2px solid var(--border-default);background:var(--fill-white);display:grid}.choice-card:disabled{color:var(--content-secondary);background:var(--background-elevated)}.choice-card__title{font:var(--type-heading3);color:var(--content-contrast)}.sev-tiles{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.sev-tile{gap:var(--space-2);text-align:left;min-height:var(--tap-hero);padding:var(--space-4);border-radius:var(--radius-md);border:2px solid var(--border-default);background:var(--fill-white);display:grid}.sev-tile--on{border-color:var(--fill-brand-bold);background:var(--fill-brand-light)}.sev-tile__code{font:var(--type-heading3);color:var(--content-contrast)}.sev-tile__def{font-size:var(--text-xs);color:var(--content-primary)}.sev-tile__clock{font-size:var(--text-xs);color:var(--content-primary);font-weight:700}@media (width<=479px){.sev-tiles{grid-template-columns:1fr}}.btn-row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.chips{gap:var(--space-3);flex-wrap:wrap;display:flex}.chip{min-height:var(--tap-secondary);padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);border:1px solid var(--border-default);background:var(--fill-white);align-items:center;font-weight:500;display:inline-flex}.chip--on{background:var(--fill-brand-bold);color:var(--content-invert);border-color:var(--fill-brand-bold)}.tag{min-height:28px;padding:0 var(--space-3);border-radius:var(--radius-full);background:var(--background-elevated);color:var(--content-primary);font-size:var(--text-xs);white-space:nowrap;align-items:center;font-weight:500;display:inline-flex}.tag--ok{background:var(--system-success-1)}.tag--warn{background:var(--system-warning-1)}.tag--error{background:var(--system-error-1)}.tag--brand{background:var(--fill-brand-light)}.banner{gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);background:var(--background-elevated);border-left:6px solid var(--border-default);align-items:flex-start;display:flex}.banner--ok{background:var(--system-success-1);border-left-color:var(--system-success-3)}.banner--warn{background:var(--system-warning-1);border-left-color:var(--system-warning-3)}.banner--error{background:var(--system-error-1);border-left-color:var(--system-error-3)}.banner--brand{background:var(--fill-brand-light);border-left-color:var(--border-brand)}.card{background:var(--fill-white);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space-5)}.card--elevated{background:var(--background-elevated);border-color:#0000}.tile{background:var(--fill-white);border:1px solid var(--border-default);border-radius:var(--radius-md);transition:background-color .2s ease-out,border-color .2s ease-out}.tile--met{background:var(--fill-brand-light);border-color:var(--border-brand)}.tile--not_met{background:var(--system-warning-1)}.tile--not_applicable{background:var(--background-elevated)}.tile__main{align-items:center;gap:var(--space-4);width:100%;min-height:var(--row-min);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);display:flex}.tile__main:disabled{cursor:default}.tile__code{border-radius:var(--radius-full);background:var(--background-elevated);width:40px;height:40px;font-weight:700;font-size:var(--text-xs);flex:none;justify-content:center;align-items:center;display:inline-flex}.tile--met .tile__code{background:var(--fill-brand-bold);color:var(--content-invert)}.tile__text{font-size:var(--text-md);line-height:var(--leading-normal);flex:1}.tile__hint{margin-top:var(--space-2);color:var(--content-secondary);font-size:var(--text-xs);display:block}.tile__mark{width:var(--tap-min);height:var(--tap-min);border-radius:var(--radius-md);border:2px solid var(--border-default);background:var(--fill-white);color:var(--system-success-3);flex:none;justify-content:center;align-items:center;display:inline-flex}.tile__mark--met{border-color:var(--border-brand)}.tile__mark--not_met{border-color:var(--system-warning-3);color:var(--system-warning-3);background:var(--system-warning-1)}.tile__mark--error{border-color:var(--system-error-3);color:var(--system-error-3);background:var(--system-error-1)}.tile__mark--not_applicable{color:var(--content-secondary);background:var(--background-elevated)}.tile__answer{gap:var(--space-1);display:grid}.tile__reason{font-size:var(--text-md);color:var(--content-primary)}.tile__reason--warn{background:var(--system-warning-1);border-left:6px solid var(--system-warning-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm)}.section-item{scroll-margin-top:var(--space-5)}.tile__foot{align-items:center;gap:var(--space-3);padding:0 var(--space-5) var(--space-4) calc(40px + var(--space-4) + var(--space-5));flex-wrap:wrap;display:flex}.tile__meta{color:var(--content-secondary);font-size:var(--text-xs)}.tile__extra{padding:0 var(--space-5) var(--space-4);gap:var(--space-3);display:grid}.numfield{gap:var(--space-4);display:grid}.numfield__value{align-items:baseline;gap:var(--space-3);min-height:var(--row-min);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);border:2px solid var(--border-default);background:var(--fill-white);display:flex}.numfield--ok .numfield__value{border-color:var(--system-success-3);background:var(--system-success-1)}.numfield--warn .numfield__value{border-color:var(--system-error-3);background:var(--system-error-1)}.numfield__number{font-size:var(--text-3xl);color:var(--content-contrast);font-weight:700;line-height:1}.numfield__number--empty{color:var(--content-tertiary)}.numfield__unit{font-size:var(--text-lg);color:var(--content-secondary)}.keypad{gap:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}.keypad__key{min-height:var(--tap-min);border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--fill-white);font-size:var(--text-lg);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.keypad__key:disabled{color:var(--content-tertiary);background:var(--background-elevated)}.keypad__key--wide{grid-column:span 2}.keypad__key--next{background:var(--fill-brand-bold);color:var(--content-invert);border-color:var(--fill-brand-bold);font-size:var(--text-md)}.keypad__key--next:disabled{background:var(--base-40);color:var(--content-secondary);border-color:#0000}.photo{gap:var(--space-3);display:grid}.photo__pick{justify-content:center;align-items:center;gap:var(--space-3);min-height:var(--tap-hero);border:2px dashed var(--border-default);border-radius:var(--radius-md);background:var(--fill-white);cursor:pointer;font-weight:700;display:flex}.photo__pick input{opacity:0;width:1px;height:1px;position:absolute}.photo__preview{object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--border-default);width:100%;max-height:320px}.photo__thumb{object-fit:cover;border-radius:var(--radius-sm);width:56px;height:56px}.steps{gap:var(--space-4);display:grid}@media (width>=600px){.steps{grid-template-columns:1fr 1fr}}.step{align-items:center;gap:var(--space-4);min-height:88px;padding:var(--space-4) var(--space-5);background:var(--fill-white);border:1px solid var(--border-default);border-radius:var(--radius-md);color:inherit;text-decoration:none;display:flex}.step--done{background:var(--fill-brand-light);border-color:var(--border-brand)}.step--late{border-color:var(--system-warning-3)}.step__num{border-radius:var(--radius-full);background:var(--background-elevated);flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-weight:700;display:inline-flex}.step--done .step__num{background:var(--fill-brand-bold);color:var(--content-invert)}.step__body{gap:var(--space-1);flex:1;display:grid}.step__label{font-size:var(--text-md);color:var(--content-contrast);font-weight:700}.step__meta{gap:var(--space-2) var(--space-3);color:var(--content-secondary);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.bottom-bar{height:var(--tap-min);background:var(--fill-white);border-top:1px solid var(--border-default);z-index:2;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-bar__link{justify-content:center;align-items:center;gap:var(--space-1);color:var(--content-secondary);font-size:var(--text-xs);flex-direction:column;flex:1;font-weight:500;text-decoration:none;display:flex}.bottom-bar__link.active{color:var(--brand-80)}.tiles{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.person{gap:var(--space-2);min-height:120px;padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--fill-white);justify-items:start;display:grid}.person--on{background:var(--fill-brand-light);border-color:var(--border-brand)}.disc{width:var(--tap-secondary);height:var(--tap-secondary);border-radius:var(--radius-full);background:var(--fill-brand-light);color:var(--brand-90);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.person--on .disc{background:var(--fill-brand-bold);color:var(--content-invert)}.presence{align-items:center;gap:var(--space-4);min-height:var(--row-min);padding:var(--space-3) var(--space-5);background:var(--fill-white);border:1px solid var(--border-default);border-radius:var(--radius-md);display:flex}.presence--present{background:var(--fill-brand-light);border-color:var(--border-brand)}.presence--absent{background:var(--system-warning-1)}.presence__name{flex:1}.choice{min-width:96px;min-height:var(--tap-min);padding:0 var(--space-4);border-radius:var(--radius-md);border:2px solid var(--border-default);background:var(--fill-white);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.choice--on{background:var(--fill-brand-bold);color:var(--content-invert);border-color:var(--fill-brand-bold)}.choice--warn-on{background:var(--system-warning-1);border-color:var(--system-warning-3)}.status-line{align-items:center;gap:var(--space-2);min-height:var(--tap-secondary);font-size:var(--text-md);color:var(--content-primary);display:inline-flex}.status-line--ok svg{color:var(--system-success-3)}.status-line--warn svg{color:var(--system-warning-3)}.link{min-height:var(--tap-secondary);text-align:left;font-size:var(--text-md);color:var(--content-link);background:0 0;padding:0;text-decoration:underline}@media (width<=479px){.presence{flex-wrap:wrap}.presence__name{flex:100%}.presence .choice{flex:1 1 0}.presence .status-line{flex:auto}.presence .btn--quiet{flex:none}}.list{gap:var(--space-3);display:grid}.list--dense{gap:var(--space-2)}@media (width>=600px){.list--dense{grid-template-columns:1fr 1fr}}.list__row--compact{min-height:var(--tap-secondary);padding:var(--space-2) var(--space-4)}.list__row{align-items:center;gap:var(--space-4);min-height:var(--tap-min);padding:var(--space-3) var(--space-5);background:var(--fill-white);border:1px solid var(--border-default);border-radius:var(--radius-md);color:inherit;text-decoration:none;display:flex}.list__row--warn{background:var(--system-warning-1)}.list__row--error{background:var(--system-error-1)}.list__row--ok{background:var(--system-success-1)}.list__body{gap:var(--space-1);flex:1;display:grid}.report{white-space:pre-wrap;word-break:break-word;font-size:var(--text-sm);color:var(--content-primary);line-height:1.55}.tasting-card{gap:var(--space-5);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--fill-white);border:1px solid var(--border-default);display:grid}.tasting-card__name{font-size:var(--text-2xl);line-height:var(--leading-tight);color:var(--content-contrast);font-weight:700}.verdicts{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.verdict{min-height:var(--tap-hero);border-radius:var(--radius-md);border:2px solid var(--border-default);background:var(--fill-white);font-size:var(--text-md);text-align:center;padding:var(--space-3);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.verdict--pass{background:var(--fill-brand-bold);color:var(--content-invert);border-color:var(--fill-brand-bold)}.verdict--fail{background:var(--system-error-1);border-color:var(--system-error-3)}.verdict--note{background:var(--system-success-1);border-color:var(--system-success-3)}.live-hero{gap:var(--space-3);padding:var(--space-7) var(--space-6);border-radius:var(--radius-lg);background:var(--fill-brand-bold);color:var(--content-invert);display:grid}.live-hero h1{color:var(--content-invert);font-size:var(--text-3xl)}.live-hero--late{background:var(--system-warning-3)}.login-brand{align-items:center;gap:var(--space-4);display:flex}.login-brand__badge{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--fill-brand-bold);flex:none;justify-content:center;align-items:center;display:inline-flex}.login-brand__badge img{width:calc(var(--space-9) + var(--space-5));height:var(--space-7);display:block}.overlay{z-index:3;background:var(--background-white);padding:var(--space-5);position:fixed;inset:0;overflow:auto}
