@import"https://fonts.googleapis.com/css2?family=Archivo:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap";:root{--bg: #f3f6f4;--bg-elevated: #f8faf9;--surface: #ffffff;--surface-2: #eaeeeb;--surface-3: #dfe4e1;--surface-hover: #eef2f0;--header-bg: rgba(248, 250, 249, .78);--scrim: rgba(15, 23, 32, .45);--camera-stage: #0b1014;--border: rgba(15, 23, 32, .1);--border-strong: rgba(15, 23, 32, .18);--divider: rgba(15, 23, 32, .07);--text: #0f1720;--text-secondary: #4e5862;--text-tertiary: #5d666e;--text-inverse: #ffffff;--accent: #67997d;--accent-hover: #5a8a70;--accent-press: #4e7a62;--accent-soft: rgba(103, 153, 125, .13);--accent-softer: rgba(103, 153, 125, .06);--accent-ring: rgba(103, 153, 125, .38);--accent-strong: #436e57;--accent-strong-hover: #3a6049;--accent-strong-press: #30503d;--optimal: #1c734d;--optimal-soft: rgba(28, 115, 77, .11);--watch: #7d4e06;--watch-soft: rgba(125, 78, 6, .13);--risk: #94261f;--risk-soft: rgba(148, 38, 31, .1);--neutral-dot: #6f787f;--font-display: "Archivo", "Inter", system-ui, -apple-system, sans-serif;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "SF Mono", ui-monospace, "JetBrains Mono", Menlo, monospace;--fs-display: 2.125rem;--fs-stat: 1.75rem;--fs-title: 1.3125rem;--fs-heading: 1.0625rem;--fs-body: .9375rem;--fs-label: .8125rem;--fs-micro: .6875rem;--lh-tight: 1.1;--lh-snug: 1.3;--lh-body: 1.5;--tracking-display: -.035em;--tracking-stat: -.025em;--tracking-title: -.015em;--tracking-wide: .055em;--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.25rem;--sp-6: 1.5rem;--sp-8: 2rem;--sp-10: 2.5rem;--sp-12: 3rem;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 20px;--r-2xl: 26px;--r-full: 999px;--shadow-sm: 0 1px 2px rgba(15, 23, 32, .06);--shadow-md: 0 4px 14px rgba(15, 23, 32, .08);--shadow-lg: 0 14px 36px rgba(15, 23, 32, .12);--shadow-accent: 0 6px 18px rgba(71, 117, 93, .28);--ease: cubic-bezier(.32, .72, 0, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--dur-fast: .12s;--dur: .2s;--dur-slow: .32s;--nav-height: 62px;--header-height: 56px;--content-max: 560px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);color-scheme:light}@media(prefers-reduced-motion:reduce){:root{--dur-fast: .01ms;--dur: .01ms;--dur-slow: .01ms}}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text);background-color:var(--bg);min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none;overscroll-behavior-y:none}#root{min-height:100vh;min-height:100dvh;background:var(--bg)}img,svg,video{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed}a{color:var(--accent-strong);text-decoration:none}ul,ol{list-style:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:var(--lh-tight);letter-spacing:var(--tracking-title)}h1{font-size:var(--fs-display);letter-spacing:var(--tracking-display)}h2{font-size:var(--fs-title)}h3{font-size:var(--fs-heading)}.screen{min-height:100vh;min-height:100dvh;background:var(--bg);padding-top:var(--safe-top);display:flex;flex-direction:column}.screen--nav{padding-bottom:calc(var(--nav-height) + var(--safe-bottom) + var(--sp-4))}.container{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:var(--sp-4)}.stack{display:flex;flex-direction:column;gap:var(--sp-4)}.stack-sm{display:flex;flex-direction:column;gap:var(--sp-2)}.stack-lg{display:flex;flex-direction:column;gap:var(--sp-6)}.row{display:flex;align-items:center;gap:var(--sp-3)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.spacer{flex:1}.app-header{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:var(--sp-2);min-height:var(--header-height);padding:var(--sp-2) var(--sp-3);background:var(--header-bg);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--divider)}.app-header__title{font-family:var(--font-display);font-size:var(--fs-heading);font-weight:600;text-align:center;letter-spacing:var(--tracking-title)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-4)}.card--flush{padding:0;overflow:hidden}.card--inset{background:var(--surface-2);border-color:transparent}.card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-4)}.card__title{font-family:var(--font-display);font-size:var(--fs-heading);font-weight:600;letter-spacing:var(--tracking-title)}.card--tappable{width:100%;text-align:left;transition:background var(--dur) var(--ease),transform var(--dur-fast) var(--ease)}.card--tappable:hover{background:var(--surface-hover)}.card--tappable:active{transform:scale(.985)}.section-title{font-family:var(--font-display);font-size:var(--fs-title);font-weight:700;letter-spacing:var(--tracking-title);margin-bottom:var(--sp-3)}.section-label{font-size:var(--fs-label);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--text-tertiary)}.stat__label{font-size:var(--fs-label);color:var(--text-secondary);margin-bottom:2px}.stat__value{font-family:var(--font-display);font-size:var(--fs-stat);font-weight:700;line-height:var(--lh-tight);letter-spacing:var(--tracking-stat);font-variant-numeric:tabular-nums}.stat__value--display{font-size:var(--fs-display);letter-spacing:var(--tracking-display)}.stat__unit{font-family:var(--font-sans);font-size:var(--fs-body);font-weight:500;color:var(--text-secondary);letter-spacing:0;margin-left:3px}.stat__delta{display:inline-flex;align-items:center;gap:3px;font-size:var(--fs-label);font-weight:600;font-variant-numeric:tabular-nums}.stat__delta--up{color:var(--optimal)}.stat__delta--down{color:var(--risk)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:48px;padding:0 var(--sp-5);border-radius:var(--r-full);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:600;letter-spacing:-.01em;transition:background var(--dur) var(--ease),transform var(--dur-fast) var(--ease),opacity var(--dur) var(--ease)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{background:var(--surface-3);color:var(--text-tertiary);box-shadow:none}.btn--primary{background:var(--accent-strong);color:var(--text-inverse);box-shadow:var(--shadow-accent)}.btn--primary:hover:not(:disabled){background:var(--accent-strong-hover)}.btn--primary:active:not(:disabled){background:var(--accent-strong-press)}.btn--secondary{background:var(--surface-2);color:var(--text)}.btn--secondary:hover:not(:disabled){background:var(--surface-3)}.btn--ghost{background:transparent;color:var(--text-secondary)}.btn--ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.btn--danger{background:var(--risk-soft);color:var(--risk)}.btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--risk) 18%,transparent)}.btn--block{width:100%}.btn--sm{min-height:38px;padding:0 var(--sp-4);font-size:var(--fs-label)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border-radius:var(--r-full);background:var(--surface-2);color:var(--text);transition:background var(--dur) var(--ease),transform var(--dur-fast) var(--ease)}.icon-btn:hover{background:var(--surface-3)}.icon-btn:active{transform:scale(.92)}.icon-btn--plain{background:transparent}.icon-btn--plain:hover{background:var(--surface-2)}.brand-logo{display:block;aspect-ratio:240 / 33;background-color:var(--accent-strong);-webkit-mask:url(/app/assets/omiver-CYj-HSyy.svg) no-repeat center / contain;mask:url(/app/assets/omiver-CYj-HSyy.svg) no-repeat center / contain}.brand-logo--inverse{background-color:var(--text-inverse)}.segmented{display:inline-flex;align-items:center;gap:2px;padding:3px;background:var(--surface-2);border-radius:var(--r-full)}.segmented--block{display:flex;width:100%}.segmented__item{flex:1;min-height:34px;padding:0 var(--sp-4);border-radius:var(--r-full);font-size:var(--fs-label);font-weight:600;color:var(--text-secondary);white-space:nowrap;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.segmented__item:hover{color:var(--text)}.segmented__item[aria-selected=true],.segmented__item.is-active{background:var(--surface-3);color:var(--text)}.chip{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:30px;padding:0 var(--sp-3);border-radius:var(--r-full);background:var(--surface-2);font-size:var(--fs-label);font-weight:500;color:var(--text-secondary);white-space:nowrap}.chip--accent{background:var(--accent-soft);color:var(--accent-strong)}.chip--optimal{background:var(--optimal-soft);color:var(--optimal)}.chip--watch{background:var(--watch-soft);color:var(--watch)}.chip--risk{background:var(--risk-soft);color:var(--risk)}.chip__dot{width:6px;height:6px;border-radius:var(--r-full);background:currentColor;flex-shrink:0}.list{display:flex;flex-direction:column}.list__row{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-4);text-align:left;background:transparent;border-bottom:1px solid var(--divider);transition:background var(--dur) var(--ease)}.list__row:last-child{border-bottom:none}button.list__row:hover{background:var(--surface-hover)}button.list__row:active{background:var(--surface-2)}.list__body{flex:1;min-width:0;display:flex;flex-direction:column}.list__title{font-size:var(--fs-body);font-weight:600;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list__meta{font-size:var(--fs-label);color:var(--text-secondary);margin-top:2px;font-variant-numeric:tabular-nums}.list__chevron{color:var(--text-tertiary);flex-shrink:0}.field{display:flex;flex-direction:column;gap:var(--sp-2)}.field__label{font-size:var(--fs-label);font-weight:600;color:var(--text-secondary)}.field__hint{font-size:var(--fs-label);color:var(--text-tertiary)}.field__error{font-size:var(--fs-label);color:var(--risk);font-weight:500}.input,.textarea,.select{width:100%;min-height:50px;padding:var(--sp-3) var(--sp-4);background:var(--surface-2);border:1px solid transparent;border-radius:var(--r-md);font-size:var(--fs-body);color:var(--text);transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.input::placeholder,.textarea::placeholder{color:var(--text-tertiary)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-ring)}.input[aria-invalid=true]{border-color:var(--risk)}.textarea{min-height:104px;resize:vertical;line-height:var(--lh-body)}.select{appearance:none;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='%239b9ba1' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--sp-4) center;padding-right:var(--sp-10)}.progress{height:6px;border-radius:var(--r-full);background:var(--surface-3);overflow:hidden}.progress__fill{height:100%;border-radius:var(--r-full);background:var(--accent);transition:width var(--dur-slow) var(--ease-out)}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--sp-3);padding:var(--sp-12) var(--sp-6)}.empty-state__icon{display:grid;place-items:center;width:56px;height:56px;border-radius:var(--r-full);background:var(--surface-2);color:var(--text-tertiary)}.empty-state__title{font-size:var(--fs-heading);font-weight:600}.empty-state__body{font-size:var(--fs-body);color:var(--text-secondary);max-width:30ch}.error-banner{display:flex;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--risk-soft);color:var(--risk);font-size:var(--fs-body);font-weight:500}.skeleton{border-radius:var(--r-md);background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 50%,var(--surface-2) 75%);background-size:200% 100%;animation:skeleton-sweep 1.4s ease-in-out infinite}@keyframes skeleton-sweep{0%{background-position:200% 0}to{background-position:-200% 0}}.spinner{width:18px;height:18px;border:2px solid var(--border-strong);border-top-color:currentColor;border-radius:var(--r-full);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-accent{color:var(--accent-strong)}.text-optimal{color:var(--optimal)}.text-watch{color:var(--watch)}.text-risk{color:var(--risk)}.text-label{font-size:var(--fs-label)}.text-body{font-size:var(--fs-body)}.wizard{display:flex;flex-direction:column;height:100vh;height:100dvh;background-color:var(--bg);overflow:hidden}.wizard__header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-4);padding-top:calc(var(--sp-2) + var(--safe-top));background:var(--header-bg);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--divider)}.wizard__title{font-family:var(--font-display);font-size:var(--fs-heading);font-weight:600;letter-spacing:var(--tracking-title);color:var(--text)}.wizard__header-spacer{flex:0 0 40px;width:40px}.wizard__progress{flex-shrink:0;padding:var(--sp-3) var(--sp-4);background:var(--surface);border-bottom:1px solid var(--divider)}.wizard__body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--sp-6) var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-6)}.wizard__step-container{max-width:var(--content-max);margin:0 auto;width:100%}.wizard__step-header{display:flex;flex-direction:column;gap:var(--sp-2);margin-bottom:var(--sp-6)}.wizard__step-content{display:flex;flex-direction:column;gap:var(--sp-4)}.wizard__footer{flex-shrink:0;display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4);padding-bottom:calc(var(--sp-4) + var(--safe-bottom));background:var(--surface);border-top:1px solid var(--border)}.wizard__footer-content{width:100%;max-width:var(--content-max);margin:0 auto;display:flex;gap:var(--sp-3)}.display-name{font-family:var(--font-display);font-size:var(--fs-display);font-weight:700;letter-spacing:var(--tracking-display);line-height:var(--lh-tight);overflow-wrap:anywhere}.kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}.kv-grid__value{margin-top:2px;font-size:var(--fs-body);font-weight:600}.tabular{font-variant-numeric:tabular-nums}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.divider{height:1px;background:var(--divider);border:none}.scroll-x{display:flex;gap:var(--sp-2);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.scroll-x::-webkit-scrollbar{display:none}.fade-in{animation:fade-in var(--dur-slow) var(--ease-out) both}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.splash{min-height:100dvh;display:flex;flex-direction:column;justify-content:space-between;gap:var(--sp-8);padding:calc(var(--safe-top) + var(--sp-8)) var(--sp-5) calc(var(--safe-bottom) + var(--sp-6));background:radial-gradient(90% 60% at 50% 0%,var(--accent-softer) 0%,transparent 70%),var(--bg)}.splash__inner{flex:1;display:flex;flex-direction:column;justify-content:center;gap:var(--sp-8);max-width:30rem;width:100%;margin-inline:auto}.splash__logo{width:120px;align-self:flex-start}.splash__copy{display:flex;flex-direction:column;gap:var(--sp-3)}.splash__title{font-family:var(--font-display);font-size:clamp(2rem,9vw,2.75rem);font-weight:700;line-height:1.05;letter-spacing:var(--tracking-display);color:var(--text);text-wrap:balance}.splash__sub{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-secondary);max-width:34ch}.splash__actions{display:flex;flex-direction:column;gap:var(--sp-2);max-width:30rem;width:100%;margin-inline:auto}.splash__checking{display:flex;align-items:center;justify-content:center;gap:var(--sp-3);min-height:100px;font-size:var(--fs-body)}.auth{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--sp-6) var(--sp-4);padding-top:calc(var(--safe-top) + var(--sp-8));padding-bottom:calc(var(--safe-bottom) + var(--sp-8));background:var(--bg)}.auth__inner{width:100%;max-width:400px;display:flex;flex-direction:column;gap:var(--sp-5)}.auth__mark{width:52px;height:52px;margin-inline:auto}.auth__head{text-align:center;display:flex;flex-direction:column;gap:var(--sp-2)}.auth__title{font-family:var(--font-display);font-size:1.875rem;font-weight:700;letter-spacing:var(--tracking-display)}.auth__subtitle{font-size:var(--fs-body);color:var(--text-secondary)}.auth__form{display:flex;flex-direction:column;gap:var(--sp-4)}.auth__options{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap}.auth__check{display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-label);color:var(--text-secondary);cursor:pointer}.auth__check input{width:17px;height:17px;accent-color:var(--accent-strong);cursor:pointer}.auth__link{font-size:var(--fs-label);font-weight:600;color:var(--accent-strong);padding:var(--sp-1);border-radius:var(--r-sm);transition:color var(--dur) var(--ease)}.auth__link:hover{color:var(--accent-hover)}.auth__sep{display:flex;align-items:center;gap:var(--sp-3);color:var(--text-tertiary);font-size:var(--fs-label)}.auth__sep:before,.auth__sep:after{content:"";flex:1;height:1px;background:var(--divider)}.auth__terms{font-size:var(--fs-label);color:var(--text-tertiary);text-align:center;line-height:var(--lh-body)}.auth__terms a{color:var(--text-secondary);text-decoration:underline;text-underline-offset:2px}.auth__terms a:hover{color:var(--text)}.auth__requirements{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3);background:var(--accent-soft);border-radius:var(--r-md)}.auth__requirement{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-label);color:var(--text-tertiary)}.auth__requirement--met{color:var(--optimal)}.route-guard{flex:1;display:flex;align-items:center;justify-content:center;min-height:60dvh;color:var(--text-secondary)}
