*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}:root{--brand-deep:#062040;--brand-panel:#0c2848;--accent:#2563eb;--accent-ink:#062040;--accent-wash:#eff6ff;--accent-soft:#3b82f6;--focus:#7eb8e0;--on-deep:#bbd5ec;--on-deep-soft:#8fb4d4;--field-bg:#f8fafc;--field-line:#e0e8f0;--ink:#0f172a;--ink-body:#334155;--ink-muted:#5a6e85;--ink-soft:#64748b;--line:#e2e8f0;--surface:#fff;--surface-2:#f7f9fc;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--fs-caption:12px;--fs-small:13px;--fs-body:15px;--fs-lead:17px;--fs-title:20px;--fs-display:26px;--lh-tight:1.25;--lh-body:1.55;--track-label:.04em;--r-sm:8px;--r-md:10px;--r-lg:14px;--r-xl:20px;--shadow-card:0 16px 48px #0000002e;--tap:44px}body{background:var(--brand-deep);color:var(--ink);font-family:Inter,system-ui,Segoe UI,Roboto,sans-serif;font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}#root{min-height:100dvh}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}@media (forced-colors:active){:focus-visible{outline:3px solid highlight}}.fld{border:2px solid var(--field-line);background:var(--field-bg);width:100%;color:var(--ink);outline:none;font-family:inherit}.fld:focus{border-color:var(--accent)}.fld:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.fld::placeholder{color:var(--ink-soft);opacity:1}.fld-bare{color:var(--ink);background:0 0;border:none;border-bottom:2px solid #0000;outline:none;font-family:inherit}.fld-bare:focus{border-bottom-color:var(--accent)}button{font-family:inherit}.fld[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.fld[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fld[type=number]{appearance:textfield}.tap44{position:relative}.tap44:after{content:"";width:max(100%, var(--tap));height:max(100%, var(--tap));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}button{min-width:48px;min-height:48px}select.fld{min-height:48px;padding:10px 12px}.menuu-paneel>*{flex-shrink:0}.tooriista-sisu{overflow-wrap:anywhere;min-width:0}.tooriista-sisu input,.tooriista-sisu select{min-width:0;max-width:100%}
