@layer reset,tokens,defaults,layout,utilities;@layer tokens{:root{--root-font-size: 100%;--content-width: 128rem;--gutter: clamp(2rem, .8695652174vw + 1.6869565217rem, 2.8rem);--content-feature: 6rem;--content-feature-max: 12rem;--white: #fff;--black: #000;--primary: oklch(.612 .138 164);--primary-hover: oklch(.692 .138 164);--primary-ultra-light: oklch(.96 .138 164);--primary-light: oklch(.87 .138 164);--primary-semi-light: oklch(.72 .138 164);--primary-semi-dark: oklch(.4 .138 164);--primary-dark: oklch(.25 .138 164);--primary-ultra-dark: oklch(.1 .138 164);--secondary: oklch(.185 .032 253);--secondary-hover: oklch(.265 .032 253);--secondary-ultra-light: oklch(.96 .032 253);--secondary-light: oklch(.87 .032 253);--secondary-semi-light: oklch(.72 .032 253);--secondary-semi-dark: oklch(.4 .032 253);--secondary-dark: oklch(.25 .032 253);--secondary-ultra-dark: oklch(.1 .032 253);--accent: oklch(.634 .149 35);--accent-hover: oklch(.714 .149 35);--accent-ultra-light: oklch(.96 .149 35);--accent-light: oklch(.87 .149 35);--accent-semi-light: oklch(.72 .149 35);--accent-semi-dark: oklch(.4 .149 35);--accent-dark: oklch(.25 .149 35);--accent-ultra-dark: oklch(.1 .149 35);--neutral: oklch(.55 .008 90);--neutral-hover: oklch(.63 .008 90);--neutral-ultra-light: oklch(.96 .008 90);--neutral-light: oklch(.87 .008 90);--neutral-semi-light: oklch(.72 .008 90);--neutral-semi-dark: oklch(.4 .008 90);--neutral-dark: oklch(.25 .008 90);--neutral-ultra-dark: oklch(.1 .008 90);--success: oklch(.7 .16 164);--success-hover: oklch(.78 .16 164);--success-ultra-light: oklch(.96 .16 164);--success-light: oklch(.87 .16 164);--success-semi-light: oklch(.72 .16 164);--success-semi-dark: oklch(.4 .16 164);--success-dark: oklch(.25 .16 164);--success-ultra-dark: oklch(.1 .16 164);--warning: oklch(.75 .16 75);--warning-hover: oklch(.83 .16 75);--warning-ultra-light: oklch(.96 .16 75);--warning-light: oklch(.87 .16 75);--warning-semi-light: oklch(.72 .16 75);--warning-semi-dark: oklch(.4 .16 75);--warning-dark: oklch(.25 .16 75);--warning-ultra-dark: oklch(.1 .16 75);--danger: oklch(.52 .2 20);--danger-hover: oklch(.6 .2 20);--danger-ultra-light: oklch(.96 .2 20);--danger-light: oklch(.87 .2 20);--danger-semi-light: oklch(.72 .2 20);--danger-semi-dark: oklch(.4 .2 20);--danger-dark: oklch(.25 .2 20);--danger-ultra-dark: oklch(.1 .2 20);--info: oklch(.62 .12 240);--info-hover: oklch(.7 .12 240);--info-ultra-light: oklch(.96 .12 240);--info-light: oklch(.87 .12 240);--info-semi-light: oklch(.72 .12 240);--info-semi-dark: oklch(.4 .12 240);--info-dark: oklch(.25 .12 240);--info-ultra-dark: oklch(.1 .12 240);--white-trans-10: oklch(1 0 0 / .1);--white-trans-20: oklch(1 0 0 / .2);--white-trans-40: oklch(1 0 0 / .4);--white-trans-60: oklch(1 0 0 / .6);--white-trans-80: oklch(1 0 0 / .8);--black-trans-10: oklch(0 0 0 / .1);--black-trans-20: oklch(0 0 0 / .2);--black-trans-40: oklch(0 0 0 / .4);--black-trans-60: oklch(0 0 0 / .6);--black-trans-80: oklch(0 0 0 / .8);--font-body: Plus Jakarta Sans, system-ui, -apple-system, sans-serif;--font-heading: Plus Jakarta Sans, system-ui, -apple-system, sans-serif;--font-mono: JetBrains Mono, ui-monospace, monospace;--text-xs: clamp(.9722222222rem, .0562801932vw + .9519613527rem, 1.024rem);--text-s: clamp(1.1666666667rem, .1231884058vw + 1.1223188406rem, 1.28rem);--text-m: clamp(1.4rem, .2173913043vw + 1.3217391304rem, 1.6rem);--text-l: clamp(1.68rem, .347826087vw + 1.5547826087rem, 2rem);--text-xl: clamp(2.016rem, .5260869565vw + 1.8266086957rem, 2.5rem);--text-xxl: clamp(2.4192rem, .767173913vw + 2.1430173913rem, 3.125rem);--text-s-to-xs: clamp(.9722222222rem, .3345410628vw + .8517874396rem, 1.28rem);--text-m-to-s: clamp(1.1666666667rem, .4710144928vw + .9971014493rem, 1.6rem);--text-m-to-xs: clamp(.9722222222rem, .6823671498vw + .7265700483rem, 1.6rem);--text-l-to-m: clamp(1.4rem, .652173913vw + 1.1652173913rem, 2rem);--text-l-to-s: clamp(1.1666666667rem, .9057971014vw + .8405797101rem, 2rem);--text-xl-to-l: clamp(1.68rem, .8913043478vw + 1.3591304348rem, 2.5rem);--text-xl-to-m: clamp(1.4rem, 1.1956521739vw + .9695652174rem, 2.5rem);--text-xxl-to-xl: clamp(2.016rem, 1.2054347826vw + 1.5820434783rem, 3.125rem);--text-xxl-to-l: clamp(1.68rem, 1.5706521739vw + 1.1145652174rem, 3.125rem);--h6: clamp(.9722222222rem, .0562801932vw + .9519613527rem, 1.024rem);--h5: clamp(1.1666666667rem, .1231884058vw + 1.1223188406rem, 1.28rem);--h4: clamp(1.4rem, .2173913043vw + 1.3217391304rem, 1.6rem);--h3: clamp(1.68rem, .347826087vw + 1.5547826087rem, 2rem);--h2: clamp(2.016rem, .5260869565vw + 1.8266086957rem, 2.5rem);--h1: clamp(2.4192rem, .767173913vw + 2.1430173913rem, 3.125rem);--h1-to-h2: clamp(2.016rem, 1.2054347826vw + 1.5820434783rem, 3.125rem);--h1-to-h3: clamp(1.68rem, 1.5706521739vw + 1.1145652174rem, 3.125rem);--h2-to-h3: clamp(1.68rem, .8913043478vw + 1.3591304348rem, 2.5rem);--h2-to-h4: clamp(1.4rem, 1.1956521739vw + .9695652174rem, 2.5rem);--h3-to-h4: clamp(1.4rem, .652173913vw + 1.1652173913rem, 2rem);--h3-to-h5: clamp(1.1666666667rem, .9057971014vw + .8405797101rem, 2rem);--text-line-height: 1.6;--text-font-weight: 400;--text-letter-spacing: normal;--text-text-wrap: pretty;--text-max-width: 72ch;--heading-line-height: 1.2;--heading-font-weight: 700;--heading-letter-spacing: -.02em;--heading-text-wrap: balance;--space-xs: clamp(1.0666666667rem, .1269187891vw + 1.0209759026rem, 1.1834319527rem);--space-s: clamp(1.5384615385rem, .0668896321vw + 1.5143812709rem, 1.6rem);--space-m: clamp(2rem, .4347826087vw + 1.8434782609rem, 2.4rem);--space-l: clamp(2.6rem, 1.0869565217vw + 2.2086956522rem, 3.6rem);--space-xl: clamp(3.38rem, 2.1956521739vw + 2.5895652174rem, 5.4rem);--space-xxl: clamp(4.394rem, 4.0282608696vw + 2.943826087rem, 8.1rem);--space-s-to-xs: clamp(1.1834319527rem, .4527913558vw + 1.0204270646rem, 1.6rem);--space-m-to-s: clamp(1.5384615385rem, .9364548495vw + 1.2013377926rem, 2.4rem);--space-m-to-xs: clamp(1.1834319527rem, 1.3223565732vw + .7073835863rem, 2.4rem);--space-l-to-m: clamp(2rem, 1.7391304348vw + 1.3739130435rem, 3.6rem);--space-l-to-s: clamp(1.5384615385rem, 2.2408026756vw + .7317725753rem, 3.6rem);--space-l-to-xs: clamp(1.1834319527rem, 2.6267043993vw + .2378183689rem, 3.6rem);--space-xl-to-l: clamp(2.6rem, 3.0434782609vw + 1.5043478261rem, 5.4rem);--space-xl-to-m: clamp(2rem, 3.6956521739vw + .6695652174rem, 5.4rem);--space-xl-to-s: clamp(1.5384615385rem, 4.1973244147vw + .0274247492rem, 5.4rem);--space-xxl-to-xl: clamp(3.38rem, 5.1304347826vw + 1.5330434783rem, 8.1rem);--space-xxl-to-l: clamp(2.6rem, 5.9782608696vw + .447826087rem, 8.1rem);--space-xxl-to-m: clamp(2rem, 6.6304347826vw + -.3869565217rem, 8.1rem);--section-space-xs: clamp(3.550295858rem, .7786639225vw + 3.2699768459rem, 4.2666666667rem);--section-space-s: clamp(4.6153846154rem, 1.9397993311vw + 3.9170568562rem, 6.4rem);--section-space-m: clamp(6rem, 3.9130434783vw + 4.5913043478rem, 9.6rem);--section-space-l: clamp(7.8rem, 7.1739130435vw + 5.2173913043rem, 14.4rem);--section-space-xl: clamp(10.14rem, 12.4565217391vw + 5.6556521739rem, 21.6rem);--section-space-xxl: clamp(13.182rem, 20.8891304348vw + 5.6619130435rem, 32.4rem);--section-padding-block: var(--section-space-m);--width-xs: 20rem;--width-s: 30rem;--width-m: 48rem;--width-l: 64rem;--width-xl: 80rem;--width-xxl: 90rem;--border-width: 1px;--border-style: solid;--border-color-dark: var(--black-trans-20);--border-color-light: var(--white-trans-20);--border: var(--border-width) var(--border-style) var(--border-color-dark);--border-light: var(--border-width) var(--border-style) var(--border-color-light);--border-dark: var(--border-width) var(--border-style) var(--border-color-dark);--radius-xs: .4444444444rem;--radius-s: .6666666667rem;--radius-m: 1rem;--radius-l: 1.5rem;--radius-xl: 2.25rem;--radius-xxl: 3.375rem;--radius-full: 9999px;--radius: var(--radius-m);--shadow-1: 0 2px 4px -8px hsla(0, 0%, 0%, .03), 0 8px 12px -8px hsla(0, 0%, 0%, .05), 0 24px 40px -8px hsla(0, 0%, 0%, .06);--shadow-2: 0 2px 3px -4px hsla(0, 0%, 0%, .03), 0 6px 8px -4px hsla(0, 0%, 0%, .05), 0 14px 20px -4px hsla(0, 0%, 0%, .07), 0 40px 60px -4px hsla(0, 0%, 0%, .09);--shadow-3: 2px 2px 2px hsla(0, 0%, 0%, .02), 0 5px 4px -4px hsla(0, 0%, 0%, .03), 0 10px 8px -4px hsla(0, 0%, 0%, .05), 0 18px 14px -4px hsla(0, 0%, 0%, .07), 0 32px 26px -4px hsla(0, 0%, 0%, .08), 0 60px 60px -4px hsla(0, 0%, 0%, .09);--text-shadow-1: 0 1px 2px hsl(0 0% 0% / .2);--text-shadow-2: 0 2px 4px hsl(0 0% 0% / .3);--text-shadow-3: 0 4px 8px hsl(0 0% 0% / .4);--drop-shadow-1: 0 1px 2px hsl(0 0% 0% / .15);--drop-shadow-2: 0 4px 6px hsl(0 0% 0% / .2);--drop-shadow-3: 0 10px 15px hsl(0 0% 0% / .25);--transition-duration: .25s;--transition-timing: cubic-bezier(.4, 0, .2, 1);--transition-delay: 0ms;--transition: var(--transition-duration) var(--transition-timing) var(--transition-delay);--transition-fast: .15s var(--transition-timing);--transition-slow: .5s var(--transition-timing);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--z-below: -1;--z-base: 0;--z-above: 1;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--z-max: 9999;--surface-1: var(--white);--surface-2: var(--neutral-ultra-light);--surface-3: var(--neutral-light);--surface-4: var(--neutral-semi-light);--surface-5: var(--neutral);--heading-spacing: 1.5em;--paragraph-spacing: 1em;--list-spacing: 1em;--list-item-spacing: .5em;--figure-spacing: 1em;--figcaption-spacing: .5em;--blockquote-spacing: 1em;--header-height: 0px;--scroll-padding: var(--header-height);--selection-bg: var(--primary);--selection-text: var(--white);--focus-outline-width: 3px;--focus-outline-style: solid;--focus-outline-color: var(--primary);--focus-outline-offset: 2px}}@layer tokens{:root{--brand-primary: var(--primary);--brand-primary-light: var(--primary-light);--brand-primary-subtle: var(--primary-ultra-light);--brand-primary-dark: var(--primary-dark);--brand-primary-hover: var(--primary-hover);--brand-accent: var(--accent);--brand-accent-subtle: var(--accent-ultra-light);--brand-accent-hover: var(--accent-hover);--brand-ink: var(--secondary);--surface-page: var(--neutral-ultra-light);--surface-base: var(--white);--surface-card: var(--white);--surface-hover: var(--neutral-ultra-light);--surface-active: var(--primary-ultra-light);--surface-overlay: oklch(0 0 0 / .4);--text-primary: var(--secondary);--text-secondary: var(--neutral);--text-muted: var(--neutral-semi-light);--text-inverse: var(--white);--text-brand: var(--primary);--border-default: var(--neutral-light);--border-subtle: var(--neutral-ultra-light);--border-strong: var(--neutral-semi-light);--border-brand: var(--primary);--border-focus: var(--primary);--status-scheduled: var(--primary-light);--status-in-progress: var(--warning);--status-completed: var(--success);--status-missed: var(--danger);--status-cancelled: var(--neutral-semi-light);--status-evv-compliant: var(--success);--status-non-compliant: var(--danger);--status-pending-sync: var(--neutral-semi-light);--status-sync-failed: var(--danger);--auth-ok: var(--success);--auth-warning: var(--warning);--auth-exceeded: var(--danger);--credential-active: var(--success);--credential-expiring: var(--warning);--credential-expired: var(--danger);--goal-independent: var(--success);--goal-prompted: var(--warning);--goal-physical: var(--info);--goal-not-addressed: var(--neutral-semi-light);--sidebar-bg: var(--secondary);--sidebar-border: transparent;--sidebar-width: 15rem;--sidebar-item-height: 2.75rem;--sidebar-active-bg: var(--primary);--sidebar-active-text: var(--white);--sidebar-active-border: var(--primary);--sidebar-hover-bg: oklch(1 0 0 / .06);--sidebar-text: oklch(1 0 0 / .7);--sidebar-group-label: oklch(1 0 0 / .4);--sidebar-logo-text: var(--white);--btn-primary-bg: var(--primary);--btn-primary-hover: var(--primary-hover);--btn-primary-text: var(--white);--btn-accent-bg: var(--accent);--btn-accent-hover: var(--accent-hover);--btn-accent-text: var(--white);--btn-ghost-bg: transparent;--btn-ghost-hover: var(--primary-ultra-light);--btn-ghost-text: var(--primary);--btn-ghost-border: var(--primary);--btn-danger-bg: var(--danger);--btn-danger-hover: var(--danger-dark);--btn-danger-text: var(--white);--btn-radius: var(--radius-m);--btn-height-sm: 2rem;--btn-height-md: 2.5rem;--btn-height-lg: 3rem;--card-bg: var(--white);--card-border: oklch(.8 .02 164 / .2);--card-radius: 1rem;--card-padding: var(--space-l);--card-shadow: 0 4px 24px rgba(26, 35, 50, .04);--card-shadow-hover: 0 4px 24px rgba(26, 35, 50, .08);--table-header-bg: var(--surface-page);--table-header-text: var(--text-muted);--table-row-bg: var(--white);--table-row-hover: var(--surface-hover);--table-row-border: var(--border-default);--table-row-selected: var(--surface-active);--input-bg: var(--white);--input-border: var(--border-default);--input-border-focus: var(--primary);--input-radius: .5rem;--input-height: 2.75rem;--input-padding-x: 1rem;--input-text: var(--text-primary);--input-placeholder: var(--text-muted);--input-shadow-focus: 0 0 0 3px oklch(.88 .12 164 / .4);--badge-radius: var(--radius-full);--badge-padding-x: .75rem;--badge-padding-y: .25rem;--badge-font-size: var(--text-xs);--badge-font-weight: 600;--evv-font: var(--font-mono);--evv-compliant-color: var(--status-evv-compliant);--evv-non-compliant-color: var(--status-non-compliant);--evv-pending-color: var(--status-pending-sync);--focus-ring: 0 0 0 3px oklch(.88 .12 164 / .35);--focus-ring-offset: 2px;--header-height: 4rem;--header-bg: var(--white);--header-border: var(--card-border);--toast-bg: #283140;--toast-text: var(--white);--toast-radius: var(--radius-m)}}@layer reset{:root{interpolate-size:allow-keywords}*,*:before,*:after{box-sizing:border-box}body{min-block-size:100dvh;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}input,button,textarea,select{font:inherit}:where(p,h1,h2,h3,h4,h5,h6,ul,ol,li,figure,blockquote,dd){margin:0}:where(img,picture,video,canvas,svg){display:block;max-inline-size:100%;block-size:auto}:where(dd){margin-inline-start:0}:where(table){border-collapse:collapse}:where(a){color:inherit;text-decoration-skip-ink:auto}}@layer defaults{html{font-size:var(--root-font-size);scroll-behavior:smooth;scroll-padding-block-start:var(--scroll-padding);hanging-punctuation:first last}body{font-family:var(--font-body);font-size:var(--text-m);line-height:var(--text-line-height);font-weight:var(--text-font-weight);letter-spacing:var(--text-letter-spacing);color:var(--black);background-color:var(--white)}:where(h1,h2,h3,h4,h5,h6){font-family:var(--font-heading);line-height:var(--heading-line-height);font-weight:var(--heading-font-weight);letter-spacing:var(--heading-letter-spacing);text-wrap:var(--heading-text-wrap)}h1{font-size:var(--h1)}h2{font-size:var(--h2)}h3{font-size:var(--h3)}h4{font-size:var(--h4)}h5{font-size:var(--h5)}h6{font-size:var(--h6)}:where(p,li){line-height:var(--text-line-height);text-wrap:var(--text-text-wrap);max-inline-size:var(--text-max-width);width:100%}:where(body a:not([class*=btn])){color:var(--link-color, var(--primary));font-weight:var(--link-weight, inherit);text-decoration:var(--link-decoration, underline);text-underline-offset:var(--link-underline-offset, .2em);transition:color var(--transition)}@media(hover:hover)and (pointer:fine){:where(body a:not([class*=btn])):hover{color:var(--link-color-hover, var(--primary-hover))}}:where(h1,h2,h3,h4,h5,h6) a{font-weight:inherit;text-decoration:inherit;color:currentcolor}::selection{background:var(--selection-bg);color:var(--selection-text)}:focus-visible{outline:var(--focus-outline-width) var(--focus-outline-style) var(--focus-outline-color);outline-offset:var(--focus-outline-offset)}@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}}@layer layout{:where(.content-grid){--full: minmax(var(--gutter), 1fr);padding-inline:0;column-gap:0;display:grid;grid-template-columns:[full-start] var(--full) [feature-max-start] minmax(0,var(--feature-max-width, var(--content-feature-max))) [feature-start] minmax(0,var(--feature-width, var(--content-feature))) [content-start] min(var(--content-width),100% - var(--gutter) * 2) [content-end] minmax(0,var(--feature-width, var(--content-feature))) [feature-end] minmax(0,var(--feature-max-width, var(--content-feature-max))) [feature-max-end] var(--full) [full-end]}:where(.content-grid)>:not(.content--feature,.content--feature-max,.content--full,.content--full-safe){width:100%;max-width:100%}:where(.content-grid)>:where(:not(.content--feature,.content--feature-max,.content--full,.content--full-safe)){grid-column:content}.content--feature{grid-column:feature}.content--feature-max{grid-column:feature-max}.content--full{grid-column:full}.content--full-safe{grid-column:full;padding-inline:var(--gutter)}:is(.content--feature,.content--feature-max,.content--full,.content--full-safe){width:100%;max-width:100%}:is(.content--feature,.content--feature-max,.content--full,.content--full-safe) :is(figure img,picture img){width:100%}.content-grid:where([class*=padding--],[class*=section--]){padding-inline:0}[class*=grid--auto]{--grid-gap: var(--space-m);--aggressiveness: .7;--min-formula: min(100%, max(var(--min), (100% - (var(--column-count) - 1) * var(--grid-gap)) / var(--column-count)));display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--min-formula),1fr));gap:var(--grid-gap);inline-size:100%}[class*=grid--auto]>*{min-width:0;max-width:100%;overflow-wrap:break-word}.grid--auto-2{--column-count: 2;--min: calc((var(--content-width) - 1 * var(--grid-gap)) / 2 * var(--aggressiveness))}.grid--auto-3{--column-count: 3;--min: calc((var(--content-width) - 2 * var(--grid-gap)) / 3 * var(--aggressiveness))}.grid--auto-4{--column-count: 4;--min: calc((var(--content-width) - 3 * var(--grid-gap)) / 4 * var(--aggressiveness))}.grid--auto-5{--column-count: 5;--min: calc((var(--content-width) - 4 * var(--grid-gap)) / 5 * var(--aggressiveness))}.grid--auto-6{--column-count: 6;--min: calc((var(--content-width) - 5 * var(--grid-gap)) / 6 * var(--aggressiveness))}.grid--auto-1-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--grid-gap, var(--space-m))}.grid--auto-1-3{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:var(--grid-gap, var(--space-m))}.grid--auto-2-1{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--grid-gap, var(--space-m))}.grid--auto-2-3{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:var(--grid-gap, var(--space-m))}.grid--auto-3-1{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:var(--grid-gap, var(--space-m))}.grid--auto-3-2{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:var(--grid-gap, var(--space-m))}@media(max-width:62rem){:is(.grid--auto-1-2,.grid--auto-1-3,.grid--auto-2-1,.grid--auto-2-3,.grid--auto-3-1,.grid--auto-3-2){grid-template-columns:1fr}}.grid--auto-fill{grid-template-columns:repeat(auto-fill,minmax(var(--min-formula),1fr))}.grid--auto-fit{grid-template-columns:repeat(auto-fit,minmax(var(--min-formula),1fr))}:where(section){padding-block:var(--section-padding-block);padding-inline:var(--gutter)}:where(section):where(.content-grid){padding-inline:0}}@layer utilities{body :where(p,h1,h2,h3,h4,h5,h6,ul,ol,li){margin-block:0}.smart-spacing-normalize :where(p,h1,h2,h3,h4,h5,h6,ul,ol,li){margin-block:0}.smart-spacing{gap:0!important}.smart-spacing>*+*{margin-block-start:var(--flow-spacing, initial);margin-block-end:0}.smart-spacing>*+:where(h1,h2,h3,h4,h5,h6){margin-block-start:var(--heading-spacing, var(--flow-spacing, initial));margin-block-end:0}.smart-spacing>:where(*+h2){margin-block-start:var(--h2-spacing, var(--heading-spacing));margin-block-end:0}.smart-spacing>:where(*+h3){margin-block-start:var(--h3-spacing, var(--heading-spacing));margin-block-end:0}.smart-spacing>:where(*+h4){margin-block-start:var(--h4-spacing, var(--heading-spacing));margin-block-end:0}.smart-spacing>:where(*+h5){margin-block-start:var(--h5-spacing, var(--heading-spacing));margin-block-end:0}.smart-spacing>:where(*+h6){margin-block-start:var(--h6-spacing, var(--heading-spacing));margin-block-end:0}.smart-spacing>*+p{margin-block-start:var(--paragraph-spacing, var(--flow-spacing, initial));margin-block-end:0}.smart-spacing>:is(*+ul,*+ol){margin-block:var(--list-spacing, var(--flow-spacing, initial))}.smart-spacing>:is(ul,ol){padding-inline-start:var(--list-indent-spacing, var(--flow-spacing, initial))}.smart-spacing>ul *+li,.smart-spacing>ol *+li{margin-block-start:var(--list-item-spacing, var(--flow-spacing, initial));margin-block-end:0}.smart-spacing>ul ul,.smart-spacing>ol ol,.smart-spacing>ul ol,.smart-spacing>ol ul{margin-block:var(--nested-list-spacing, var(--list-item-spacing, initial));padding-inline-start:var(--nested-list-indent-spacing, initial)}.smart-spacing>*+figure,.smart-spacing>*+picture{margin-block:var(--figure-spacing, var(--flow-spacing, initial))}.smart-spacing figcaption{margin-block:var(--figcaption-spacing, var(--flow-spacing, initial))}.smart-spacing>*+blockquote:where(:not(figure>blockquote)){margin-block:var(--blockquote-spacing, var(--flow-spacing, initial))}.smart-spacing>blockquote *+*{margin-block-start:var(--paragraph-spacing, var(--flow-spacing, initial));margin-block-end:0}.smart-spacing--off :where(p,h1,h2,h3,h4,h5,h6,ul,ol,li){margin-block:0}.text--xs{font-size:var(--text-xs)}.text--s{font-size:var(--text-s)}.text--m{font-size:var(--text-m)}.text--l{font-size:var(--text-l)}.text--xl{font-size:var(--text-xl)}.text--xxl{font-size:var(--text-xxl)}.text--s-to-xs{font-size:var(--text-s-to-xs)}.text--m-to-s{font-size:var(--text-m-to-s)}.text--m-to-xs{font-size:var(--text-m-to-xs)}.text--l-to-m{font-size:var(--text-l-to-m)}.text--l-to-s{font-size:var(--text-l-to-s)}.text--xl-to-l{font-size:var(--text-xl-to-l)}.text--xl-to-m{font-size:var(--text-xl-to-m)}.text--xxl-to-xl{font-size:var(--text-xxl-to-xl)}.text--xxl-to-l{font-size:var(--text-xxl-to-l)}.text--100{font-weight:100}.text--200{font-weight:200}.text--300{font-weight:300}.text--400{font-weight:400}.text--500{font-weight:500}.text--600{font-weight:600}.text--700{font-weight:700}.text--800{font-weight:800}.text--900{font-weight:900}.text--bold{font-weight:700}.text--italic{font-style:italic}.text--oblique{font-style:oblique}.text--left{text-align:left}.text--center{text-align:center}.text--right{text-align:right}.text--justify{text-align:justify}.text--uppercase{text-transform:uppercase}.text--lowercase{text-transform:lowercase}.text--capitalize{text-transform:capitalize}.text--underline{text-decoration:underline}.text--no-decoration{text-decoration:none}.text--line-through{text-decoration:line-through}.text--balance{text-wrap:balance}.text--pretty{text-wrap:pretty}.line-clamp-1{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.line-clamp-2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.line-clamp-4{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.gap--0{gap:0}.gap--xs{gap:var(--space-xs)}.gap--s{gap:var(--space-s)}.gap--m{gap:var(--space-m)}.gap--l{gap:var(--space-l)}.gap--xl{gap:var(--space-xl)}.gap--xxl{gap:var(--space-xxl)}.section--0{padding-block:0}.section--xs{padding-block:var(--section-space-xs)}.section--s{padding-block:var(--section-space-s)}.section--m{padding-block:var(--section-space-m)}.section--l{padding-block:var(--section-space-l)}.section--xl{padding-block:var(--section-space-xl)}.section--xxl{padding-block:var(--section-space-xxl)}.bg--primary{background-color:var(--primary)}.bg--secondary{background-color:var(--secondary)}.bg--accent{background-color:var(--accent)}.bg--neutral{background-color:var(--neutral)}.bg--neutral-light{background-color:var(--neutral-light)}.bg--neutral-ultra-light{background-color:var(--neutral-ultra-light)}.bg--white{background-color:var(--white)}.bg--black{background-color:var(--black)}.bg--success{background-color:var(--success)}.bg--warning{background-color:var(--warning)}.bg--danger{background-color:var(--danger)}.bg--info{background-color:var(--info)}.surface--1{background-color:var(--surface-1)}.surface--2{background-color:var(--surface-2)}.surface--3{background-color:var(--surface-3)}.surface--4{background-color:var(--surface-4)}.surface--5{background-color:var(--surface-5)}.border{border:var(--border)}.border--light{border:var(--border-light)}.border--dark{border:var(--border-dark)}.border-top{border-block-start:var(--border)}.border-bottom{border-block-end:var(--border)}.border--0{border:0}.rounded{border-radius:var(--radius)}.rounded--xs{border-radius:var(--radius-xs)}.rounded--s{border-radius:var(--radius-s)}.rounded--m{border-radius:var(--radius-m)}.rounded--l{border-radius:var(--radius-l)}.rounded--xl{border-radius:var(--radius-xl)}.rounded--xxl{border-radius:var(--radius-xxl)}.rounded--full{border-radius:var(--radius-full)}.shadow--1{box-shadow:var(--shadow-1)}.shadow--2{box-shadow:var(--shadow-2)}.shadow--3{box-shadow:var(--shadow-3)}.shadow--0{box-shadow:none}.overlay{position:relative;isolation:isolate}.overlay:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--overlay-bg, var(--black-trans-60))}.clickable-parent{position:relative}.clickable-parent>a:after,a.clickable-parent:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer;z-index:1}.object-cover{object-fit:cover}.object-contain{object-fit:contain}.object-fill{object-fit:fill}.sticky{position:sticky;inset-block-start:var(--sticky-offset, var(--header-height));z-index:var(--z-sticky)}.sr-only{position:absolute!important;inline-size:1px!important;block-size:1px!important;padding:0;margin:-1px;overflow:hidden;clip-path:inset(100%);white-space:nowrap;border:0}.skip-link{position:absolute;inset-inline-start:0;inset-block-start:0;transform:translateY(-100%);transition:transform var(--transition);z-index:var(--z-max);padding:var(--space-xs) var(--space-s);background:var(--primary);color:var(--white)}.skip-link:focus{transform:translateY(0)}}.messaging-panel{display:grid;grid-template-columns:320px 1fr;height:calc(100vh - var(--nav-height) - var(--space-xl));border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden;background:var(--white)}.messaging-panel__sidebar{border-right:1px solid var(--border-default);display:flex;flex-direction:column}.messaging-panel__header{padding:var(--space-md);border-bottom:1px solid var(--border-default);display:flex;justify-content:space-between;align-items:center}.messaging-panel__title{font-size:var(--text-base);font-weight:700}.messaging-panel__actions{display:flex;gap:var(--space-xs)}.messaging-panel__list{flex:1;overflow-y:auto}.messaging-panel__empty,.messaging-panel__placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);height:100%;color:var(--text-muted);font-size:var(--text-sm)}.messaging-panel__main{display:flex;flex-direction:column}.conversation-item{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-md);border:none;border-bottom:1px solid var(--border-default);background:transparent;cursor:pointer;text-align:left;transition:background .15s}.conversation-item:hover{background:var(--warm-50)}.conversation-item--active{background:var(--teal-50)}.conversation-item__avatar{color:var(--text-muted);flex-shrink:0}.conversation-item__content{flex:1;min-width:0}.conversation-item__name{font-size:var(--text-sm);font-weight:600;display:flex;align-items:center;gap:var(--space-xs)}.conversation-item__preview{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-item__badge{background:var(--brand-primary);color:#fff;font-size:11px;font-weight:700;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 6px;flex-shrink:0}.message-thread{display:flex;flex-direction:column;height:100%}.message-thread__messages{flex:1;overflow-y:auto;padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-xs)}.message-thread__compose{padding:var(--space-md);border-top:1px solid var(--border-default);display:flex;gap:var(--space-xs)}.message-bubble{max-width:75%;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);font-size:var(--text-sm);line-height:1.5}.message-bubble--mine{align-self:flex-end;background:var(--brand-primary);color:#fff;border-bottom-right-radius:4px}.message-bubble--theirs{align-self:flex-start;background:var(--warm-100);border-bottom-left-radius:4px}.message-bubble__sender{font-size:var(--text-xs);font-weight:700;color:var(--brand-primary);margin-bottom:2px}.message-bubble__time{font-size:10px;opacity:.6;margin-top:2px;text-align:right}.notification-bell,.notification-bell__trigger{position:relative}.notification-bell__badge{position:absolute;top:-4px;right:-4px;background:var(--coral-500);color:#fff;font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--white)}.notification-bell__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.notification-bell__dropdown{position:absolute;top:calc(100% + 8px);right:0;width:360px;max-height:480px;background:var(--white);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:0 12px 40px #0000001f;z-index:100;overflow:hidden;display:flex;flex-direction:column}.notification-bell__header{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-default);display:flex;justify-content:space-between;align-items:center}.notification-bell__list{overflow-y:auto;flex:1}.notification-item{display:flex;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:none;border-bottom:1px solid var(--border-default);background:transparent;cursor:pointer;text-align:left;width:100%;transition:background .15s;position:relative}.notification-item:hover{background:var(--warm-50)}.notification-item--unread{background:var(--teal-50)}.notification-item--unread:hover{background:var(--teal-100)}.notification-item__icon{flex-shrink:0;padding-top:2px}.notification-item__content{flex:1;min-width:0}.notification-item__title{font-size:var(--text-sm);font-weight:600;line-height:1.3}.notification-item__body{font-size:var(--text-xs);color:var(--text-muted);line-height:1.4;margin-top:2px}.notification-item__time{font-size:10px;color:var(--text-muted);margin-top:4px}.notification-item__dot{width:8px;height:8px;border-radius:50%;background:var(--brand-primary);flex-shrink:0;margin-top:6px}.card--alert{border-color:var(--coral-200)}.card-header--coral{background:var(--coral-500);color:#fff}.cg-messages__header{padding:var(--space-md);border-bottom:1px solid var(--border-default)}.cg-messages__header h2{font-size:var(--text-lg);font-weight:700}.cg-messages__empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-3xl);color:var(--text-muted)}.cg-conversation-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--space-md);border:none;border-bottom:1px solid var(--border-default);background:transparent;cursor:pointer;text-align:left}.cg-conversation-item:active{background:var(--warm-50)}.cg-conversation-item__name{font-weight:700;font-size:var(--text-sm);display:flex;align-items:center;gap:var(--space-xs)}.cg-conversation-item__preview{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.cg-conversation-item__time{font-size:var(--text-xs);color:var(--text-muted)}.cg-conversation-item__badge{background:var(--brand-primary);color:#fff;font-size:11px;font-weight:700;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 6px;margin-top:var(--space-xs)}.cg-thread{display:flex;flex-direction:column;height:100vh}.cg-thread__header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-default)}.cg-thread__header h3{font-size:var(--text-base);font-weight:700}.cg-thread__messages{flex:1;overflow-y:auto;padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-xs)}.cg-thread__compose{padding:var(--space-sm) var(--space-md);padding-bottom:calc(var(--space-sm) + env(safe-area-inset-bottom));border-top:1px solid var(--border-default);display:flex;gap:var(--space-xs);background:var(--white)}.cg-bubble{max-width:80%;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.5}.cg-bubble--mine{align-self:flex-end;background:var(--brand-primary);color:#fff;border-bottom-right-radius:4px}.cg-bubble--theirs{align-self:flex-start;background:var(--warm-100);border-bottom-left-radius:4px}.cg-bubble__sender{font-size:11px;font-weight:700;color:var(--brand-primary);margin-bottom:1px}.cg-bubble__time{font-size:10px;opacity:.5;text-align:right}@container (max-width: 640px){.messaging-panel{grid-template-columns:1fr}.messaging-panel__main,.messaging-panel.messaging-panel--thread-open .messaging-panel__sidebar{display:none}.messaging-panel.messaging-panel--thread-open .messaging-panel__main{display:flex}}.ai-summary{margin-top:var(--space-md)}.ai-summary__loading{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:var(--teal-50);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--teal-600)}.ai-summary__spinner{width:18px;height:18px;border:2px solid var(--teal-200);border-top-color:var(--teal-500);border-radius:50%;animation:spin .8s linear infinite}.ai-summary__error{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);background:var(--coral-50);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--coral-600)}.ai-summary__result{border:1px solid var(--teal-200);border-radius:var(--radius-md);padding:var(--space-md);background:var(--teal-50)}.ai-summary__badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-xs);font-weight:700;color:var(--teal-600);margin-bottom:var(--space-sm)}.ai-summary__sections{display:grid;gap:var(--space-sm);margin-bottom:var(--space-md)}.ai-summary__section{background:#fff;border-radius:var(--radius-sm);padding:var(--space-sm)}.ai-summary__section--concern{border-left:3px solid var(--coral-500)}.ai-summary__label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:2px}.ai-summary__text{font-size:var(--text-sm);line-height:1.5}.ai-summary__actions{display:flex;gap:var(--space-xs);margin-bottom:var(--space-xs)}.ai-summary__disclaimer{font-size:10px;color:var(--text-muted);font-style:italic}.spin{animation:spin .8s linear infinite}.isp-report__controls{display:flex;gap:var(--space-md);align-items:end;flex-wrap:wrap}.isp-report__history-item{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-xs) var(--space-sm);border:none;background:transparent;cursor:pointer;font-size:var(--text-sm);text-align:left;border-radius:var(--radius-sm)}.isp-report__history-item:hover{background:var(--warm-50)}.isp-report__preview{margin-top:var(--space-lg)}.isp-report__content{max-width:800px}.isp-report__header{margin-bottom:var(--space-xl);padding-bottom:var(--space-md);border-bottom:2px solid var(--brand-primary)}.isp-report__header h2{font-size:var(--text-2xl);font-weight:800;color:var(--brand-primary)}.isp-report__meta{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs);font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-sm)}.isp-report__goals h3{font-size:var(--text-lg);font-weight:800;margin-bottom:var(--space-lg)}.isp-report__goal{margin-bottom:var(--space-xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--border-default)}.isp-report__goal-header{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md)}.isp-report__goal-header h4{font-size:var(--text-base);font-weight:700}.isp-report__goal-stats{display:flex;gap:var(--space-md);flex-wrap:wrap;margin-bottom:var(--space-sm)}.isp-report__stat-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.isp-report__stat-value{font-size:var(--text-sm);font-weight:700}.isp-report__direction{font-size:var(--text-sm);margin-bottom:var(--space-md)}.isp-report__chart{background:var(--warm-50);border-radius:var(--radius-md);padding:var(--space-md)}.isp-report__chart-label{font-size:var(--text-xs);font-weight:700;color:var(--text-muted);margin-bottom:var(--space-sm)}.isp-report__chart-bars{display:flex;gap:4px;align-items:flex-end;height:120px}.isp-report__chart-bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.isp-report__chart-bar{width:100%;min-width:12px;border-radius:3px 3px 0 0;transition:height .3s ease}.isp-report__chart-week{font-size:9px;color:var(--text-muted);margin-top:4px;writing-mode:vertical-rl;text-orientation:mixed;white-space:nowrap}.isp-report__chart-legend{display:flex;justify-content:space-between;font-size:10px;color:var(--text-muted);margin-top:var(--space-xs)}@media print{.card-header__meta,.isp-report__controls,.btn{display:none!important}.isp-report__content{max-width:none}.isp-report__chart-bar{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.survey-form{padding:var(--space-lg);max-width:400px}.survey-form__header{text-align:center;margin-bottom:var(--space-lg)}.survey-form__header h3{font-weight:700;margin-top:var(--space-xs)}.survey-form__header p{font-size:var(--text-sm);color:var(--text-muted)}.survey-form__question{margin-bottom:var(--space-lg)}.survey-form__question label{display:block;font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-sm)}.survey-form__scale{display:flex;gap:4px}.survey-form__dot{width:32px;height:32px;border-radius:50%;border:2px solid var(--border-default);background:#fff;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.survey-form__dot:hover{border-color:var(--brand-primary)}.survey-form__dot--active{color:#fff;border-color:transparent}.survey-complete{text-align:center;padding:var(--space-xl)}.survey-complete p{color:var(--text-muted);margin-top:var(--space-sm)}.card--warning{border-color:var(--amber-200)}.card-header--amber{background:var(--amber-500);color:#fff}.overtime-check{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--text-sm);margin-top:var(--space-sm)}.overtime-check--warning{background:var(--amber-50);border:1px solid var(--amber-200)}.overtime-check--over{background:var(--coral-50);border:1px solid var(--coral-200)}.overtime-check__message{margin-bottom:var(--space-xs);line-height:1.5}.overtime-check__override{display:flex;gap:var(--space-xs);flex-wrap:wrap;margin-top:var(--space-xs)}@container dashboard (max-width: 768px){.dashboard-grid{grid-template-columns:1fr}.stat-cards{grid-template-columns:repeat(2,1fr)}.schedule-calendar__week-view{display:none}.schedule-calendar__day-view{display:block}}@container dashboard (max-width: 480px){.stat-cards{grid-template-columns:1fr}}.admin-bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--white);border-top:1px solid var(--border-default);padding:var(--space-xs) 0;padding-bottom:calc(var(--space-xs) + env(safe-area-inset-bottom));z-index:50}.admin-bottom-nav__items{display:flex;justify-content:space-around}.admin-bottom-nav__item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-xs);border:none;background:transparent;cursor:pointer;color:var(--text-muted);font-size:10px;font-weight:600}.admin-bottom-nav__item--active{color:var(--brand-primary)}@media(max-width:768px){.admin-bottom-nav{display:block}}@media(max-width:768px){.admin-sidebar{display:none}.admin-main{padding-bottom:calc(60px + env(safe-area-inset-bottom))}}.form-renderer{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.form-renderer__field{width:100%}.form-renderer__field--half{width:calc(50% - var(--space-xs))}.form-renderer__section{width:100%;padding-top:var(--space-md);margin-top:var(--space-sm);border-top:2px solid var(--brand-primary)}.form-renderer__section h3{font-size:var(--text-base);font-weight:800;color:var(--brand-primary)}.form-renderer__instructions{width:100%;padding:var(--space-md);background:var(--teal-50);border-radius:var(--radius-md);border-left:3px solid var(--teal-500)}.form-renderer__instructions p{font-size:var(--text-sm);line-height:1.6;color:var(--ink-600);margin:0}.form-renderer__checkbox-group,.form-renderer__radio-group{display:flex;flex-direction:column;gap:var(--space-xs)}.form-renderer__checkbox-item,.form-renderer__radio-item{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-sm);cursor:pointer}.form-renderer__checkbox-item input,.form-renderer__radio-item input{width:18px;height:18px;accent-color:var(--brand-primary)}.form-renderer__signature{border:2px dashed var(--border-default);border-radius:var(--radius-md);overflow:hidden;background:var(--white)}.form-renderer__signature canvas{display:block;width:100%;height:150px;cursor:crosshair;touch-action:none}.form-renderer__signature--error{border-color:var(--coral-500)}.form-renderer__signature-actions{padding:var(--space-xs);border-top:1px solid var(--border-default);display:flex;justify-content:space-between;align-items:center}.form-renderer__signature-hint{display:flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--text-muted)}.form-renderer__photo-capture{width:100%;padding:var(--space-lg);border:2px dashed var(--border-default);border-radius:var(--radius-md);background:var(--warm-50);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);color:var(--text-muted);font-size:var(--text-sm);transition:border-color .15s}.form-renderer__photo-capture:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.form-renderer__photo-preview img{max-width:100%;max-height:200px;border-radius:var(--radius-sm);object-fit:cover}.form-renderer__error{display:flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--coral-500);margin-top:2px}.form-renderer__help{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.form-renderer__char-count{font-size:10px;text-align:right;margin-top:2px}.form-renderer__actions{width:100%;padding-top:var(--space-lg)}.form-label__required{color:var(--coral-500);margin-left:2px}.input--error{border-color:var(--coral-500)}@container (max-width: 480px){.form-renderer__field--half{width:100%}}.form-builder__toolbar{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-default);background:var(--warm-50);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.form-builder__toolbar-right{display:flex;gap:var(--space-xs)}.form-builder__layout{display:grid;grid-template-columns:200px 1fr 260px;min-height:500px;border:1px solid var(--border-default);border-top:none;border-radius:0 0 var(--radius-lg) var(--radius-lg);overflow:hidden}.form-builder__palette{padding:var(--space-md);border-right:1px solid var(--border-default);background:var(--warm-50);overflow-y:auto}.form-builder__palette-title{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:var(--space-sm)}.form-builder__palette-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.form-builder__palette-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-xs);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--white);cursor:pointer;font-size:10px;color:var(--text-secondary);transition:all .15s}.form-builder__palette-item:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--teal-50)}.form-builder__setting{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-xs);cursor:pointer;margin-bottom:var(--space-xs)}.form-builder__setting input[type=checkbox]{accent-color:var(--brand-primary)}.form-builder__canvas{padding:var(--space-md);overflow-y:auto;background:var(--white)}.form-builder__empty{display:flex;align-items:center;justify-content:center;height:200px;color:var(--text-muted);font-size:var(--text-sm)}.form-builder__field-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border:1px solid var(--border-default);border-radius:var(--radius-sm);margin-bottom:4px;cursor:pointer;transition:all .15s}.form-builder__field-item:hover{border-color:var(--brand-primary);background:var(--teal-50)}.form-builder__field-item--selected{border-color:var(--brand-primary);background:var(--teal-50);box-shadow:0 0 0 2px #0d9b7a33}.form-builder__field-handle{color:var(--text-muted);flex-shrink:0}.form-builder__field-label{flex:1;font-size:var(--text-sm);font-weight:600;display:flex;align-items:center;gap:var(--space-xs)}.form-builder__field-actions{display:flex;gap:2px}.form-builder__field-actions button{padding:4px;border:none;background:transparent;cursor:pointer;color:var(--text-muted);border-radius:4px}.form-builder__field-actions button:hover{background:var(--warm-100);color:var(--brand-primary)}.form-builder__field-actions button:disabled{opacity:.3;cursor:default}.form-builder__properties{padding:var(--space-md);border-left:1px solid var(--border-default);background:var(--warm-50);overflow-y:auto}.form-builder__properties-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);height:200px;color:var(--text-muted);font-size:var(--text-sm)}.form-builder__props-title{font-size:var(--text-sm);font-weight:700;margin-bottom:var(--space-md);padding-bottom:var(--space-xs);border-bottom:1px solid var(--border-default)}.form-builder__preview-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md);border-bottom:1px solid var(--border-default)}.form-builder__preview-body{max-width:600px;margin:var(--space-lg) auto;padding:var(--space-md)}.form-manager__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-md)}.form-manager__card{border:1px solid var(--border-default);border-radius:var(--radius-md);overflow:hidden}.form-manager__card-header{padding:var(--space-sm) var(--space-md)}.form-manager__card-header h4{font-size:var(--text-sm);font-weight:700}.form-manager__card-body{padding:0 var(--space-md) var(--space-sm)}.form-manager__card-actions{padding:var(--space-xs) var(--space-md) var(--space-sm);display:flex;gap:var(--space-xs);border-top:1px solid var(--border-default)}.cg-forms__header{padding:var(--space-md)}.cg-forms__header h3{font-size:var(--text-lg);font-weight:700}.cg-forms__empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-3xl);color:var(--text-muted)}.cg-form-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--space-md);border:none;border-bottom:1px solid var(--border-default);background:transparent;cursor:pointer;text-align:left}.cg-form-item:active{background:var(--warm-50)}.cg-form-item__title{font-weight:700;font-size:var(--text-sm)}.cg-form-item__desc{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.cg-form-item__meta{font-size:10px;color:var(--text-muted);margin-top:4px;display:flex;gap:var(--space-xs);align-items:center}.cg-form-item__arrow{font-size:var(--text-lg);color:var(--text-muted)}.cg-form-fill{display:flex;flex-direction:column;height:100vh}.cg-form-fill__header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-default);flex-shrink:0}.cg-form-fill__header h3{font-size:var(--text-base);font-weight:700}.cg-form-fill__header-info{flex:1}.cg-form-fill__status{display:flex;gap:var(--space-xs);margin-top:2px}.cg-form-fill__draft-badge{display:inline-flex;align-items:center;gap:2px;font-size:10px;color:var(--amber-600);background:var(--amber-50);padding:2px 6px;border-radius:4px}.cg-form-fill__offline-badge{display:inline-flex;align-items:center;gap:2px;font-size:10px;color:var(--coral-600);background:var(--coral-50);padding:2px 6px;border-radius:4px}.cg-form-fill__body{flex:1;overflow-y:auto;padding:var(--space-md)}.cg-form-fill__desc{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-md)}.cg-form-fill__footer{padding:var(--space-sm) var(--space-md);padding-bottom:calc(var(--space-sm) + env(safe-area-inset-bottom));border-top:1px solid var(--border-default);background:var(--white);flex-shrink:0}.btn--full{width:100%}.spinner{display:inline-block;border-radius:var(--radius-full);border-style:solid;border-color:transparent;border-top-color:currentColor;animation:spin .65s linear infinite;flex-shrink:0}.spinner--inline{width:1rem;height:1rem;border-width:2px;color:currentColor}.spinner--page{width:2rem;height:2rem;border-width:3px;color:var(--brand-primary)}.spinner--overlay{width:2rem;height:2rem;border-width:3px;color:var(--brand-primary);position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;z-index:var(--z-overlay)}@keyframes spin{to{transform:rotate(360deg)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);border:none;border-radius:var(--btn-radius);font-family:var(--font-body);font-weight:600;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),opacity var(--transition-fast)}.btn:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.btn:disabled,.btn--loading{opacity:.55;cursor:not-allowed;pointer-events:none}.btn--full-width{width:100%}.btn--sm{height:var(--btn-height-sm);font-size:var(--text-xs);padding:0 var(--space-s)}.btn--md{height:var(--btn-height-md);font-size:var(--text-s);padding:0 var(--space-m)}.btn--lg{height:var(--btn-height-lg);font-size:var(--text-m);padding:0 var(--space-l)}.btn--primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn--primary:hover:not(:disabled){background:var(--btn-primary-hover)}.btn--accent{background:var(--btn-accent-bg);color:var(--btn-accent-text)}.btn--accent:hover:not(:disabled){background:var(--btn-accent-hover)}.btn--ghost{background:var(--btn-ghost-bg);color:var(--btn-ghost-text);border:1px solid var(--btn-ghost-border)}.btn--ghost:hover:not(:disabled){background:var(--btn-ghost-hover)}.btn--danger{background:var(--btn-danger-bg);color:var(--btn-danger-text)}.btn--danger:hover:not(:disabled){background:var(--btn-danger-hover)}.btn--subtle{background:var(--surface-hover);color:var(--text-primary)}.btn--subtle:hover:not(:disabled){background:var(--border-default)}.btn__icon{display:flex;align-items:center;flex-shrink:0}.btn__label{line-height:1}.badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-full);padding:.2rem .6rem;line-height:1.4}.badge--default{background:var(--surface-hover);color:var(--text-secondary)}.badge--teal{background:var(--brand-primary-subtle);color:var(--brand-primary-dark)}.badge--coral{background:var(--brand-accent-subtle);color:var(--brand-accent)}.badge--amber{background:var(--warning-ultra-light);color:var(--warning-dark)}.badge--red{background:var(--danger-ultra-light);color:var(--danger-dark)}.badge--gray{background:var(--neutral-ultra-light);color:var(--neutral-dark)}.badge--green{background:var(--success-ultra-light);color:var(--success-dark)}.badge--blue{background:var(--info-ultra-light);color:var(--info-dark)}.badge--dot{gap:.375rem}.badge__dot{width:.375rem;height:.375rem;border-radius:50%;background:currentColor;flex-shrink:0}.status-badge{display:inline-flex;align-items:center;font-size:var(--badge-font-size);font-weight:var(--badge-font-weight);border-radius:var(--badge-radius);padding:var(--badge-padding-y) var(--badge-padding-x);line-height:1.4}.status-badge.status--scheduled{background:var(--status-scheduled);color:var(--primary-dark)}.status-badge.status--in-progress{background:var(--status-in-progress);color:var(--warning-dark)}.status-badge.status--completed{background:var(--status-completed);color:oklch(from var(--success) .25 c h)}.status-badge.status--missed{background:var(--status-missed);color:var(--danger-dark)}.status-badge.status--cancelled{background:var(--status-cancelled);color:var(--neutral-dark)}.status-badge.status--evv-compliant{background:var(--status-evv-compliant);color:oklch(from var(--success) .25 c h)}.status-badge.status--non-compliant{background:var(--status-non-compliant);color:var(--danger-dark)}.status-badge.status--pending-sync{background:var(--status-pending-sync);color:var(--neutral-dark)}.status-badge.status--auth-ok{background:var(--auth-ok);color:oklch(from var(--success) .25 c h)}.status-badge.status--auth-warning{background:var(--auth-warning);color:var(--warning-dark)}.status-badge.status--auth-exceeded{background:var(--auth-exceeded);color:var(--danger-dark)}.status-badge.status--active{background:var(--credential-active);color:oklch(from var(--success) .25 c h)}.status-badge.status--expiring{background:var(--credential-expiring);color:var(--warning-dark)}.status-badge.status--expired{background:var(--credential-expired);color:var(--danger-dark)}.status-badge--dot{gap:.375rem}.status-badge__dot{width:.375rem;height:.375rem;border-radius:50%;background:currentColor;flex-shrink:0}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);padding:var(--card-padding);box-shadow:var(--card-shadow)}.card--interactive{cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.card--interactive:hover{transform:translateY(-2px);box-shadow:var(--card-shadow-hover)}.card--interactive:active{transform:translateY(0)}.card--interactive:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.card--flat{box-shadow:none}.card--compact{padding:var(--space-s)}.card--no-padding{padding:0}.card--alert{border-left:3px solid var(--danger)}.card--warning{border-left:3px solid var(--warning)}.card-header{display:flex;align-items:center;gap:var(--space-xs);padding-bottom:var(--space-s);border-bottom:1px solid var(--card-border);margin-bottom:var(--space-s);font-size:var(--text-s);font-weight:700}.card-header__meta{margin-left:auto;display:flex;align-items:center;gap:var(--space-xs)}.card-header--coral{color:var(--danger)}.card-header--amber{color:var(--warning-dark)}.card-title{font-size:var(--text-m);font-weight:700;line-height:1.3;letter-spacing:-.01em}.card-description{font-size:var(--text-s);color:var(--text-muted);line-height:1.5}.card-footer{display:flex;align-items:center;gap:var(--space-s);padding-top:var(--space-s);border-top:1px solid var(--card-border);margin-top:var(--space-s)}.stat-card{display:flex;align-items:flex-start;gap:var(--space-m)}.stat-card__icon-wrap{width:3rem;height:3rem;border-radius:var(--radius-m);background:var(--brand-primary-subtle);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--brand-primary)}.stat-card__body{display:flex;flex-direction:column;gap:.25rem;flex:1}.stat-card__label{font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.stat-card__value{font-size:var(--text-xxl);font-weight:800;color:var(--brand-primary);line-height:1.1}.stat-card__value--loading{display:block;width:5rem;height:2rem;background:var(--surface-hover);border-radius:var(--radius-s);animation:pulse 1.5s ease-in-out infinite}.stat-card__delta{font-size:var(--text-xs);font-weight:500}.stat-card__delta--positive{color:var(--success)}.stat-card__delta--negative{color:var(--danger)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.data-table{background:var(--table-row-bg);border:1px solid var(--border-default);border-radius:var(--radius-m);overflow:hidden}.data-table__loading{display:grid;place-items:center;padding:var(--space-xxl)}.data-table__header{display:flex;align-items:center;background:var(--table-header-bg);border-bottom:1px solid var(--table-row-border);padding:0 var(--space-m)}.data-table__header-cell{padding:var(--space-s) 0;font-size:var(--text-xs);font-weight:600;color:var(--table-header-text);text-transform:uppercase;letter-spacing:.06em;-webkit-user-select:none;user-select:none}.data-table__row{display:flex;align-items:center;padding:0 var(--space-m);border-bottom:1px solid var(--table-row-border);transition:background var(--transition-fast)}.data-table__row:last-child{border-bottom:none}.data-table__row--clickable{cursor:pointer}.data-table__row--clickable:hover{background:var(--table-row-hover)}.data-table__row--clickable:focus-visible{outline:var(--focus-ring);outline-offset:-2px}.data-table__row--selected{background:var(--table-row-selected)}.data-table__cell{padding:var(--space-s) 0;font-size:var(--text-s);color:var(--text-primary)}.data-table__cell--mono{font-family:var(--evv-font);font-size:var(--text-xs);color:var(--text-secondary)}.data-table__empty{padding:0;border:none}.field{display:flex;flex-direction:column;gap:.375rem}.field__label{font-size:var(--text-xs);font-weight:600;color:var(--text-primary)}.field__required{color:var(--danger)}.field__input-wrap{position:relative}.field__input-wrap--select:after{content:"";position:absolute;right:var(--space-s);top:50%;transform:translateY(-50%);width:.5rem;height:.5rem;border-right:2px solid var(--text-muted);border-bottom:2px solid var(--text-muted);transform:translateY(-70%) rotate(45deg);pointer-events:none}.field__icon{position:absolute;left:var(--space-s);top:50%;transform:translateY(-50%);color:var(--text-muted);display:flex;align-items:center;pointer-events:none}.field__input{width:100%;height:var(--input-height);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--input-radius);padding:0 var(--input-padding-x);font-family:var(--font-body);font-size:var(--text-s);color:var(--input-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none}.field__input::placeholder{color:var(--input-placeholder)}.field__input:focus{outline:none;border-color:var(--input-border-focus);box-shadow:var(--input-shadow-focus)}.field__input--error{border-color:var(--danger)}.field__input--error:focus{box-shadow:0 0 0 3px oklch(from var(--danger) l c h/.2)}.field__input--has-icon{padding-left:calc(var(--input-padding-x) + 1.5rem)}.field__input--disabled{opacity:.6;cursor:not-allowed;background:var(--surface-hover)}.field__input--select{cursor:pointer;padding-right:2rem}.field__input--textarea{height:auto;padding-top:var(--space-s);padding-bottom:var(--space-s);resize:vertical;min-height:6rem}.field__helper{font-size:var(--text-xs);color:var(--text-muted)}.field__error{font-size:var(--text-xs);color:var(--danger)}.field__footer{display:flex;align-items:center;justify-content:space-between}.field__count{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--evv-font)}.field__count--limit{color:var(--danger)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--surface-overlay);display:grid;place-items:center;padding:var(--space-m);z-index:var(--z-modal);animation:fade-in .15s ease}.modal{background:var(--surface-base);border-radius:var(--radius-l);box-shadow:var(--shadow-3);display:flex;flex-direction:column;max-height:calc(100dvh - var(--space-xxl));width:100%;animation:scale-in .15s var(--ease-out-expo)}.modal--sm{max-width:var(--width-s)}.modal--md{max-width:var(--width-m)}.modal--lg{max-width:var(--width-l)}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-m) var(--space-l);border-bottom:1px solid var(--border-default);flex-shrink:0}.modal__title{font-size:var(--text-l);font-weight:700;color:var(--text-primary)}.modal__close{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius-s);border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);flex-shrink:0}.modal__close:hover{background:var(--surface-hover);color:var(--text-primary)}.modal__close:focus-visible{outline:var(--focus-ring)}.modal__body{padding:var(--space-l);overflow-y:auto;flex:1}.modal__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-s);padding:var(--space-m) var(--space-l);border-top:1px solid var(--border-default);flex-shrink:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-xxl) var(--space-l);gap:var(--space-s)}.empty-state__icon{color:var(--text-muted)}.empty-state__title{font-size:var(--text-m);font-weight:600;color:var(--text-primary)}.empty-state__description{font-size:var(--text-s);color:var(--text-muted);max-width:36ch;line-height:var(--text-line-height)}.empty-state__action{margin-top:var(--space-xs)}.auth-meter{display:flex;flex-direction:column;gap:.375rem}.auth-meter__labels{display:flex;justify-content:space-between;align-items:baseline}.auth-meter__used{font-family:var(--evv-font);font-size:var(--text-xs);color:var(--text-secondary)}.auth-meter__pct{font-family:var(--evv-font);font-size:var(--text-xs);font-weight:600}.auth-meter__pct--ok{color:var(--auth-ok)}.auth-meter__pct--warning{color:var(--auth-warning)}.auth-meter__pct--exceeded{color:var(--auth-exceeded)}.auth-meter__track{height:.5rem;background:var(--border-default);border-radius:var(--radius-full);overflow:hidden}.auth-meter__fill{height:100%;border-radius:var(--radius-full);transition:width .4s var(--ease-out-expo)}.auth-meter__fill--ok{background:var(--auth-ok)}.auth-meter__fill--warning{background:var(--auth-warning)}.auth-meter__fill--exceeded{background:var(--auth-exceeded)}.auth-meter__days{font-size:var(--text-xs);color:var(--text-muted)}.auth-meter__days--urgent{color:var(--danger);font-weight:600}.login-page{min-height:100dvh;display:grid;place-items:center;background:var(--surface-page);padding:var(--space-m)}.login-card{width:100%;max-width:26rem;background:var(--surface-base);border:1px solid var(--border-default);border-radius:var(--radius-l);padding:var(--space-xl);box-shadow:var(--shadow-2);display:flex;flex-direction:column;gap:var(--space-m)}.login-card__logo{font-size:var(--text-xl);font-weight:800;letter-spacing:-.03em;margin-bottom:var(--space-xs)}.login-card__logo-tend{color:var(--text-primary)}.login-card__logo-ara{color:var(--brand-primary)}.login-card__title{font-size:var(--h4);font-weight:700;color:var(--text-primary);letter-spacing:var(--heading-letter-spacing);margin:0}.login-card__body{font-size:var(--text-s);color:var(--text-muted);line-height:var(--text-line-height);margin:0}.login-card__form{display:flex;flex-direction:column;gap:var(--space-m)}.login-card__sent{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-s);padding:var(--space-m) 0}.login-card__sent-icon{color:var(--brand-primary)}.login-card__resend{background:none;border:none;color:var(--brand-primary);font-size:var(--text-s);font-weight:500;cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-s);transition:background var(--transition-fast)}.login-card__resend:hover{background:var(--brand-primary-subtle)}.onboarding{min-height:100dvh;background:var(--surface-page);display:flex;flex-direction:column;align-items:center;padding:var(--space-l) var(--space-m)}.onboarding__header{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:42rem;margin-bottom:var(--space-l)}.onboarding__logo{font-size:var(--text-xl);font-weight:800;letter-spacing:-.03em}.onboarding__logo-tend{color:var(--text-primary)}.onboarding__logo-ara{color:var(--brand-primary)}.onboarding__header-label{font-size:var(--text-s);color:var(--text-muted);font-weight:500}.onboarding__progress{display:flex;align-items:center;width:100%;max-width:42rem;margin-bottom:var(--space-l)}.onboarding__step{display:flex;align-items:center;flex:1}.onboarding__step:last-child{flex:none}.onboarding__step-dot{width:2rem;height:2rem;border-radius:var(--radius-full);background:var(--surface-base);border:2px solid var(--border-default);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:700;color:var(--text-muted);flex-shrink:0;transition:all var(--transition-fast)}.onboarding__step-dot--active{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--brand-primary-subtle)}.onboarding__step-dot--done{border-color:var(--brand-primary);background:var(--brand-primary);color:var(--white)}.onboarding__step-label{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;margin-left:.5rem;font-weight:500}.onboarding__step-label--active{color:var(--brand-primary);font-weight:600}.onboarding__step-label--done{color:var(--text-secondary)}.onboarding__step-line{flex:1;height:2px;background:var(--border-default);margin:0 var(--space-s);transition:background var(--transition-fast)}.onboarding__step-line--done{background:var(--brand-primary)}.onboarding__card{background:var(--surface-base);border:1px solid var(--border-default);border-radius:var(--radius-l);padding:var(--space-xl);width:100%;max-width:42rem;box-shadow:var(--shadow-1)}.onboarding__form{display:flex;flex-direction:column;gap:var(--space-l)}.onboarding__form--complete{align-items:center;text-align:center}.onboarding__form-header{display:flex;flex-direction:column;gap:var(--space-xs)}.onboarding__title{font-size:var(--h3);font-weight:700;color:var(--text-primary);letter-spacing:var(--heading-letter-spacing);margin:0}.onboarding__subtitle{font-size:var(--text-s);color:var(--text-muted);line-height:var(--text-line-height);margin:0}.onboarding__fields{display:flex;flex-direction:column;gap:var(--space-m)}.onboarding__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-m)}.onboarding__section{display:flex;flex-direction:column;gap:var(--space-s)}.onboarding__section-label{font-size:var(--text-xs);font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.06em}.onboarding__optional{font-weight:400;text-transform:none;letter-spacing:normal;color:var(--text-muted)}.onboarding__error{font-size:var(--text-s);color:var(--danger);background:var(--danger-ultra-light);border:1px solid var(--danger-light);border-radius:var(--radius-s);padding:var(--space-s);margin:0}.onboarding__field-label{font-size:var(--text-xs);font-weight:600;color:var(--text-primary)}.onboarding__actions{display:flex;flex-direction:column;gap:var(--space-s)}.onboarding__actions--split{flex-direction:row;justify-content:space-between;align-items:center}.onboarding__actions-right{display:flex;gap:var(--space-s);align-items:center}.onboarding__mode-grid{display:flex;flex-direction:column;gap:var(--space-s)}.mode-card{display:flex;align-items:flex-start;gap:var(--space-m);padding:var(--space-m);border:2px solid var(--border-default);border-radius:var(--radius-m);background:var(--surface-base);cursor:pointer;text-align:left;transition:border-color var(--transition-fast),background var(--transition-fast);width:100%}.mode-card:hover{border-color:var(--brand-primary-light);background:var(--brand-primary-subtle)}.mode-card--selected{border-color:var(--brand-primary);background:var(--brand-primary-subtle)}.mode-card__check{width:1.25rem;height:1.25rem;border-radius:var(--radius-full);border:2px solid var(--border-default);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:700;color:var(--brand-primary);flex-shrink:0;margin-top:.125rem}.mode-card--selected .mode-card__check{border-color:var(--brand-primary);background:var(--brand-primary);color:var(--white)}.mode-card__body{display:flex;flex-direction:column;gap:.25rem}.mode-card__title{font-size:var(--text-s);font-weight:600;color:var(--text-primary)}.mode-card__desc{font-size:var(--text-xs);color:var(--text-muted);line-height:1.5}.onboarding__geofence{display:flex;flex-direction:column;gap:var(--space-s)}.onboarding__geofence-note{display:flex;align-items:flex-start;gap:var(--space-xs);font-size:var(--text-xs);color:var(--text-muted);line-height:1.5;color:var(--brand-primary);background:var(--brand-primary-subtle);border-radius:var(--radius-s);padding:var(--space-s)}.invite-table{display:flex;flex-direction:column;gap:var(--space-s)}.invite-table__header{display:grid;grid-template-columns:1fr 10rem 2rem;gap:var(--space-s);font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;padding:0 var(--space-xs)}.invite-table__row{display:grid;grid-template-columns:1fr 10rem 2rem;gap:var(--space-s);align-items:center}.invite-table__remove{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius-s);border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.invite-table__remove:hover:not(:disabled){background:var(--danger-ultra-light);color:var(--danger)}.invite-table__remove:disabled{opacity:.3;cursor:default}.invite-table__add{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-s);font-weight:500;color:var(--brand-primary);background:none;border:none;cursor:pointer;padding:var(--space-xs) 0;transition:opacity var(--transition-fast)}.invite-table__add:hover{opacity:.75}.onboarding__import-hint{display:flex;flex-direction:column;gap:.25rem;padding:var(--space-s) var(--space-m);background:var(--surface-hover);border-radius:var(--radius-s);font-size:var(--text-s);color:var(--text-secondary);font-weight:500}.onboarding__import-hint-sub{font-size:var(--text-xs);color:var(--text-muted);font-weight:400}.onboarding__complete-icon{color:var(--brand-primary);margin-bottom:var(--space-s)}.onboarding__next-steps{display:flex;flex-direction:column;gap:var(--space-s);width:100%}.next-step-card{display:flex;align-items:center;gap:var(--space-m);padding:var(--space-m);border:1px solid var(--border-default);border-radius:var(--radius-m);background:var(--surface-base);cursor:pointer;text-align:left;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.next-step-card:hover{border-color:var(--brand-primary-light);box-shadow:var(--shadow-1)}.next-step-card__icon{width:2.5rem;height:2.5rem;border-radius:var(--radius-s);background:var(--brand-primary-subtle);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.next-step-card__body{display:flex;flex-direction:column;gap:.2rem;flex:1}.next-step-card__title{font-size:var(--text-s);font-weight:600;color:var(--text-primary)}.next-step-card__desc{font-size:var(--text-xs);color:var(--text-muted)}.next-step-card__action{font-size:var(--text-xs);font-weight:600;color:var(--brand-primary);flex-shrink:0}.csv-importer{display:flex;flex-direction:column;gap:var(--space-m)}.csv-drop{border:2px dashed var(--border-default);border-radius:var(--radius-m);padding:var(--space-xxl) var(--space-l);display:flex;flex-direction:column;align-items:center;gap:var(--space-s);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.csv-drop:hover,.csv-drop--active{border-color:var(--brand-primary);background:var(--brand-primary-subtle)}.csv-drop__input{display:none}.csv-drop__icon{color:var(--text-muted)}.csv-drop__title{font-size:var(--text-m);font-weight:600;color:var(--text-primary)}.csv-drop__sub{font-size:var(--text-s);color:var(--text-muted)}.csv-importer__file-banner{display:flex;align-items:center;justify-content:space-between;padding:var(--space-s) var(--space-m);background:var(--brand-primary-subtle);border-radius:var(--radius-s);font-size:var(--text-s);color:var(--brand-primary);font-weight:500}.csv-importer__file-reset{display:flex;align-items:center;gap:.25rem;font-size:var(--text-xs);color:var(--text-muted);background:none;border:none;cursor:pointer}.csv-importer__file-reset:hover{color:var(--text-primary)}.csv-importer__actions{display:flex;justify-content:flex-end;gap:var(--space-s)}.csv-importer__warning{display:flex;align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);background:var(--warning-ultra-light);border:1px solid var(--warning-light);border-radius:var(--radius-s);font-size:var(--text-s);color:var(--warning-dark)}.csv-mapper{border:1px solid var(--border-default);border-radius:var(--radius-m);overflow:hidden}.csv-mapper__title{padding:var(--space-s) var(--space-m);font-size:var(--text-xs);font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;background:var(--table-header-bg);border-bottom:1px solid var(--border-default);margin:0}.csv-mapper__grid{display:flex;flex-direction:column}.csv-mapper__row{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:var(--space-s) var(--space-m);border-bottom:1px solid var(--border-subtle);gap:var(--space-m)}.csv-mapper__row:last-child{border-bottom:none}.csv-mapper__label{font-size:var(--text-s);font-weight:500;color:var(--text-primary)}.csv-mapper__required{color:var(--danger)}.csv-mapper__select{height:var(--input-height);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--input-radius);padding:0 var(--space-s);font-size:var(--text-s);color:var(--input-text);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.csv-mapper__select:focus{outline:none;border-color:var(--input-border-focus);box-shadow:var(--input-shadow-focus)}.csv-preview{border:1px solid var(--border-default);border-radius:var(--radius-m);overflow:hidden}.csv-preview__title{padding:var(--space-s) var(--space-m);font-size:var(--text-xs);font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;background:var(--table-header-bg);border-bottom:1px solid var(--border-default);margin:0}.csv-preview__errors{color:var(--danger)}.csv-preview__header{display:flex;background:var(--surface-hover);border-bottom:1px solid var(--border-default)}.csv-preview__row{display:flex;border-bottom:1px solid var(--border-subtle);transition:background var(--transition-fast)}.csv-preview__row:last-child{border-bottom:none}.csv-preview__row--error{background:var(--danger-ultra-light)}.csv-preview__cell{flex:1;padding:var(--space-s) var(--space-m);font-size:var(--text-xs);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csv-preview__header .csv-preview__cell{font-weight:600;color:var(--text-muted);text-transform:uppercase}.csv-preview__cell--status{flex:none;width:8rem}.csv-preview__empty{color:var(--text-muted)}.csv-preview__badge{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-full);padding:.15rem .5rem}.csv-preview__badge--ok{background:var(--success-ultra-light);color:var(--success-dark)}.csv-preview__badge--error{background:var(--danger-ultra-light);color:var(--danger-dark)}.csv-preview__more{padding:var(--space-s) var(--space-m);font-size:var(--text-xs);color:var(--text-muted);text-align:center;background:var(--surface-hover)}.csv-done{display:flex;flex-direction:column;align-items:center;gap:var(--space-m);padding:var(--space-xxl) var(--space-l);text-align:center}.csv-done__icon{color:var(--brand-primary)}.csv-done__title{font-size:var(--h4);font-weight:700;color:var(--text-primary);margin:0}.csv-done__stats{font-size:var(--text-s);color:var(--text-muted)}.csv-done__success{color:var(--success);font-weight:600}.csv-done__failed{color:var(--danger);font-weight:600}.csv-done__actions{display:flex;gap:var(--space-s)}.csv-importing{display:flex;flex-direction:column;align-items:center;gap:var(--space-m);padding:var(--space-xxl)}.csv-importing__spinner{width:2.5rem;height:2.5rem;border-radius:var(--radius-full);border:3px solid var(--border-default);border-top-color:var(--brand-primary);animation:spin .7s linear infinite}.csv-importing__label{font-size:var(--text-m);font-weight:600;color:var(--text-primary)}.csv-importing__sub{font-size:var(--text-s);color:var(--text-muted)}.import-page{display:grid;grid-template-columns:18rem 1fr;gap:var(--space-l);align-items:start}@container (max-width: 48rem){.import-page{grid-template-columns:1fr}}.import-page__info{background:var(--surface-base);border:1px solid var(--border-default);border-radius:var(--radius-m);padding:var(--space-m)}.import-page__info-title{font-size:var(--text-s);font-weight:700;color:var(--text-primary);margin:0 0 var(--space-s)}.import-page__info-list{display:flex;flex-direction:column;gap:var(--space-xs);padding-left:var(--space-m);margin:0}.import-page__info-list li{font-size:var(--text-xs);color:var(--text-muted);line-height:1.5}.dashboard__welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-m)}.dashboard__greeting{font-size:1.875rem;font-weight:800;letter-spacing:-.02em;color:var(--text-primary);margin:0;line-height:1.2}.dashboard__date{font-size:.75rem;color:var(--text-muted);font-weight:500;margin:.25rem 0 0}.dashboard__date-dot{display:inline-block;margin:0 .25rem}.dashboard__metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}@container (max-width: 72rem){.dashboard__metrics{grid-template-columns:repeat(3,1fr)}}@container (max-width: 48rem){.dashboard__metrics{grid-template-columns:repeat(2,1fr)}}@container (max-width: 32rem){.dashboard__metrics{grid-template-columns:1fr}}.dashboard__secondary{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@container (max-width: 56rem){.dashboard__secondary{grid-template-columns:1fr}}.dashboard__empty-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;background:var(--card-bg);border-radius:var(--card-radius);border:1px solid var(--card-border);text-align:center}.dashboard__empty-title{font-size:var(--text-s);font-weight:600;color:var(--text-primary);margin:1rem 0 0}.dashboard__section{display:flex;flex-direction:column;gap:var(--space-s)}.dashboard__section-header{display:flex;align-items:center;justify-content:space-between}.dashboard__section-title{font-size:1rem;font-weight:800;color:var(--text-primary);margin:0}.dashboard__alert-banner{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff3c4;border:1px solid #FDE68A;border-radius:.75rem;box-shadow:var(--card-shadow)}.dashboard__alert-banner-icon{width:2.5rem;height:2.5rem;border-radius:50%;background:#fff6;display:flex;align-items:center;justify-content:center;color:#d97706;flex-shrink:0}.dashboard__alert-banner-body{display:flex;flex-direction:column;gap:.125rem;flex:1}.dashboard__alert-banner-title{font-size:var(--text-s);font-weight:700;color:var(--text-primary)}.dashboard__alert-banner-sub{font-size:.75rem;color:var(--text-muted)}.dashboard__alert-icon{color:var(--warning);flex-shrink:0}.dashboard__alert-body{display:flex;flex-direction:column;gap:.2rem;flex:1}.dashboard__alert-title{font-size:var(--text-s);font-weight:600;color:var(--text-primary)}.dashboard__alert-sub{font-size:var(--text-xs);color:var(--text-muted)}.evv__summary{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-m)}@container (max-width: 48rem){.evv__summary{grid-template-columns:repeat(2,1fr)}}.evv__tile{background:var(--surface-base);border:1px solid var(--border-default);border-radius:var(--radius-m);padding:var(--space-m);display:flex;flex-direction:column;gap:.25rem}.evv__tile-value{font-size:var(--text-xxl);font-weight:800;color:var(--text-primary);font-family:var(--evv-font);line-height:1}.evv__tile-label{font-size:var(--text-xs);color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.06em}.evv__filters{display:flex;align-items:center;gap:var(--space-s);flex-wrap:wrap}.evv__count{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--evv-font);margin-left:auto}.evv__hint{font-size:var(--text-xs);color:var(--text-muted);text-align:center;margin:0}.scheduling__controls{display:flex;align-items:center;gap:var(--space-m);flex-wrap:wrap}.scheduling__week-nav{display:flex;align-items:center;gap:var(--space-xs)}.scheduling__week-label{font-size:var(--text-s);font-weight:600;color:var(--text-primary);background:none;border:1px solid var(--border-default);border-radius:var(--radius-s);padding:.375rem var(--space-s);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast)}.scheduling__week-label:hover{background:var(--surface-hover)}.scheduling__count{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--evv-font);margin-left:auto}.scheduling__day-group{display:flex;flex-direction:column;gap:var(--space-xs)}.scheduling__day-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-xs) 0}.scheduling__day-label{font-size:var(--text-s);font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:var(--space-xs)}.scheduling__today-badge{font-size:var(--text-xs);font-weight:600;color:var(--brand-primary);background:var(--brand-primary-subtle);border-radius:var(--radius-full);padding:.15rem .5rem}.scheduling__day-count{font-size:var(--text-xs);color:var(--text-muted)}.mobile-page--centered{display:flex;align-items:center;justify-content:center}.clock-loading{width:2.5rem;height:2.5rem;border-radius:var(--radius-full);border:3px solid var(--border-default);border-top-color:var(--brand-primary);animation:spin .7s linear infinite}.clock-idle{display:flex;flex-direction:column;align-items:center;gap:var(--space-l);padding:var(--space-l) 0}.clock-next-visit{background:var(--surface-base);border:1px solid var(--border-default);border-radius:var(--radius-m);padding:var(--space-m);width:100%;display:flex;flex-direction:column;gap:.25rem}.clock-next-visit__label{font-size:var(--text-xs);color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.06em}.clock-next-visit__time{font-size:var(--text-l);font-weight:700;color:var(--text-primary);font-family:var(--evv-font)}.clock-next-visit__code{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--evv-font)}.clock-no-visit{display:flex;flex-direction:column;align-items:center;gap:var(--space-s);text-align:center;padding:var(--space-xxl) 0}.clock-no-visit__title{font-size:var(--text-m);font-weight:600;color:var(--text-primary);margin:0}.clock-no-visit__sub{font-size:var(--text-s);color:var(--text-muted);margin:0}.clock-no-visit__link{display:flex;align-items:center;gap:.25rem;font-size:var(--text-s);font-weight:500;color:var(--brand-primary);background:none;border:none;cursor:pointer}.clock-no-visit__link:hover{opacity:.75}.clock-locating{display:flex;flex-direction:column;align-items:center;gap:var(--space-m);padding:var(--space-xxl) 0}.clock-locating__spinner{width:3rem;height:3rem;border-radius:var(--radius-full);border:3px solid var(--border-default);border-top-color:var(--brand-primary);animation:spin .7s linear infinite}.clock-locating__label{font-size:var(--text-m);font-weight:600;color:var(--text-primary)}.clock-locating__sub{font-size:var(--text-s);color:var(--text-muted)}.clock-confirm{display:flex;flex-direction:column;align-items:center;gap:var(--space-m);padding:var(--space-l) 0}.clock-confirm__geo{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-m);border-radius:var(--radius-m);width:100%;font-weight:600}.clock-confirm__geo--ok{background:var(--success-ultra-light);color:var(--success-dark)}.clock-confirm__geo--warn{background:var(--warning-ultra-light);color:var(--warning-dark)}.clock-confirm__distance{font-size:var(--text-xs);font-family:var(--evv-font);font-weight:400}.clock-confirm__warn{font-size:var(--text-s);color:var(--text-muted);text-align:center;margin:0}.clock-confirm__actions{display:flex;flex-direction:column;align-items:center;gap:var(--space-s);width:100%}.clock-confirm__cancel{font-size:var(--text-s);color:var(--text-muted);background:none;border:none;cursor:pointer;padding:var(--space-s)}.clock-confirm__cancel:hover{color:var(--text-primary)}.clock-btn--confirm{border-color:var(--brand-primary);background:var(--brand-primary-subtle)}.clock-active{display:flex;flex-direction:column;align-items:center;gap:var(--space-l);padding:var(--space-m) 0}.clock-active__visit{display:flex;flex-direction:column;align-items:center;gap:.25rem}.clock-active__label{font-size:var(--text-xs);color:var(--brand-primary);font-weight:600;text-transform:uppercase;letter-spacing:.08em}.clock-active__service{font-size:var(--text-s);color:var(--text-muted);font-family:var(--evv-font)}.clock-active__links{display:flex;flex-direction:column;align-items:center;gap:var(--space-s)}.clock-active__link{display:flex;align-items:center;gap:.25rem;font-size:var(--text-s);font-weight:500;color:var(--brand-primary);background:none;border:none;cursor:pointer}.clock-active__link:hover{opacity:.75}.clock-timer{display:flex;flex-direction:column;align-items:center;gap:.25rem}.clock-timer__value{font-size:clamp(2.5rem,10vw,4rem);font-weight:800;font-family:var(--evv-font);color:var(--text-primary);letter-spacing:.05em;line-height:1}.clock-timer__label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.clock-timer__since{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--evv-font)}.clock-done{display:flex;flex-direction:column;align-items:center;gap:var(--space-m);padding:var(--space-xxl) 0;text-align:center}.clock-done__title{font-size:var(--h3);font-weight:700;color:var(--text-primary);margin:0}.clock-done__sub{font-size:var(--text-s);color:var(--text-muted);max-width:28ch;margin:0}.clock-done__action{background:var(--brand-primary);color:var(--white);border:none;border-radius:var(--btn-radius);height:var(--btn-height-lg);padding:0 var(--space-l);font-size:var(--text-m);font-weight:600;cursor:pointer;font-family:var(--font-body);transition:background var(--transition-fast)}.clock-done__action:hover{background:var(--brand-primary-hover)}.clock-error{display:flex;align-items:center;gap:var(--space-s);padding:var(--space-m);background:var(--danger-ultra-light);border:1px solid var(--danger-light);border-radius:var(--radius-m);font-size:var(--text-s);color:var(--danger-dark)}.clock-error svg{flex-shrink:0}.clock-error button{margin-left:auto;background:none;border:none;font-size:var(--text-xs);color:var(--danger);font-weight:600;cursor:pointer;flex-shrink:0}.visit-detail__back{margin-bottom:calc(var(--space-s) * -1)}.visit-detail__back-btn{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:var(--text-s);color:var(--text-muted);background:none;border:none;cursor:pointer;padding:0;font-family:var(--font-body);font-weight:500}.visit-detail__back-btn:hover{color:var(--text-primary)}.visit-detail__grid{display:grid;grid-template-columns:1fr 18rem;gap:var(--space-l);align-items:start}@container (max-width: 52rem){.visit-detail__grid{grid-template-columns:1fr}}.visit-detail__main,.visit-detail__sidebar{display:flex;flex-direction:column;gap:var(--space-m)}.visit-detail__card-header{display:flex;align-items:center;gap:var(--space-s);font-size:var(--text-s);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-m);padding-bottom:var(--space-s);border-bottom:1px solid var(--border-subtle)}.visit-detail__evv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-m)}@container (max-width: 36rem){.visit-detail__evv-grid{grid-template-columns:repeat(2,1fr)}}.visit-detail__evv-item{display:flex;flex-direction:column;gap:.25rem}.visit-detail__evv-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:500}.visit-detail__evv-value{font-size:var(--text-s);font-family:var(--evv-font);font-weight:600;color:var(--text-primary)}.visit-detail__evv-value--mono{font-family:var(--evv-font);font-size:var(--text-xs)}.visit-detail__evv-sub{font-size:var(--text-xs);color:var(--text-muted);text-transform:capitalize}.visit-detail__section{display:flex;flex-direction:column;gap:var(--space-s)}.visit-detail__section-title{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-s);font-weight:700;color:var(--text-primary);margin:0}.visit-detail__notes{font-size:var(--text-s);color:var(--text-secondary);line-height:var(--text-line-height);margin:0}.visit-detail__info-list{display:flex;flex-direction:column;gap:var(--space-s)}.visit-detail__info-row{display:flex;flex-direction:column;gap:.2rem}.visit-detail__info-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:500}.visit-detail__info-value{font-size:var(--text-s);color:var(--text-primary)}.visit-detail__info-value--mono{font-family:var(--evv-font)}.visit-detail__view-link{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--text-xs);color:var(--brand-primary);background:none;border:none;cursor:pointer;padding:0;font-family:var(--font-body);font-weight:500;margin-top:var(--space-xs)}.visit-detail__view-link:hover{opacity:.75}.client-detail__auths{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:var(--space-m)}.client-detail__auth-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-s)}.client-detail__auth-code{font-family:var(--evv-font);font-size:var(--text-s);font-weight:700;color:var(--text-primary)}.client-detail__auth-num{font-family:var(--evv-font);font-size:var(--text-xs);color:var(--text-muted);margin-left:var(--space-xs)}.client-detail__auth-period{font-size:var(--text-xs);color:var(--text-muted)}.client-detail__auth-detail{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-s)}.client-detail__tabs{display:flex;border-bottom:2px solid var(--border-default);gap:0}.client-detail__tab{padding:var(--space-s) var(--space-m);font-size:var(--text-s);font-weight:500;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;margin-bottom:-2px;font-family:var(--font-body);transition:color var(--transition-fast),border-color var(--transition-fast)}.client-detail__tab:hover{color:var(--text-primary)}.client-detail__tab--active{color:var(--brand-primary);border-bottom-color:var(--brand-primary);font-weight:600}.schedule__offline-badge{font-size:var(--text-xs);font-weight:600;color:var(--warning-dark);background:var(--warning-ultra-light);border-radius:var(--radius-full);padding:.2rem .6rem}.schedule__loading{display:flex;flex-direction:column;gap:var(--space-s);padding:var(--space-m) 0}.schedule__skeleton{height:5rem;background:var(--surface-hover);border-radius:var(--radius-m);animation:pulse 1.5s ease-in-out infinite}.schedule__empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-s);padding:var(--space-xxl) 0;text-align:center}.schedule__empty-title{font-size:var(--text-m);font-weight:600;color:var(--text-primary);margin:0}.schedule__empty-sub{font-size:var(--text-s);color:var(--text-muted);margin:0}.schedule__day-group{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-m)}.schedule__day-header{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) 0}.schedule__day-label{font-size:var(--text-xs);font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.schedule__today-dot{width:.5rem;height:.5rem;border-radius:var(--radius-full);background:var(--brand-primary)}.schedule__visit-list{display:flex;flex-direction:column;gap:var(--space-xs)}.schedule__visit-card{display:flex;flex-direction:column;gap:var(--space-xs);background:var(--surface-base);border:1px solid var(--border-default);border-radius:var(--radius-m);padding:var(--space-m);text-align:left;cursor:pointer;width:100%;font-family:var(--font-body);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.schedule__visit-card:hover{border-color:var(--brand-primary-light);box-shadow:var(--shadow-1)}.schedule__visit-card:active{transform:scale(.99)}.schedule__visit-card--active{border-color:var(--brand-primary);background:var(--brand-primary-subtle)}.schedule__visit-card--done{opacity:.7}.schedule__visit-time{font-family:var(--evv-font);font-size:var(--text-s);font-weight:600;color:var(--text-primary)}.schedule__visit-duration{font-weight:400;color:var(--text-muted)}.schedule__visit-body{display:flex;align-items:center;justify-content:space-between}.schedule__visit-code{font-family:var(--evv-font);font-size:var(--text-xs);color:var(--text-muted)}.visit-page__header{display:flex;align-items:center;gap:var(--space-m);margin-bottom:var(--space-m)}.visit-page__back{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-full);background:var(--surface-hover);border:none;cursor:pointer;color:var(--text-primary);flex-shrink:0}.visit-page__back:hover{background:var(--border-default)}.visit-page__title-group{flex:1}.visit-page__title{font-size:var(--text-l);font-weight:700;color:var(--text-primary);margin:0;line-height:1.2}.visit-page__time{font-family:var(--evv-font);font-size:var(--text-xs);color:var(--text-muted)}.visit-page__code{font-family:var(--evv-font);font-size:var(--text-xs);font-weight:600;color:var(--brand-primary);background:var(--brand-primary-subtle);border-radius:var(--radius-full);padding:.2rem .6rem;flex-shrink:0}.visit-page__progress{display:flex;gap:var(--space-m);background:var(--surface-base);border:1px solid var(--border-default);border-radius:var(--radius-m);padding:var(--space-m);margin-bottom:var(--space-m)}.visit-page__prog-item{display:flex;flex-direction:column;align-items:center;gap:.2rem;flex:1}.visit-page__prog-value{font-family:var(--evv-font);font-size:var(--text-l);font-weight:700;color:var(--brand-primary)}.visit-page__prog-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.visit-page__tabs{display:flex;border-bottom:2px solid var(--border-default);margin-bottom:var(--space-m)}.visit-page__tab{flex:1;padding:var(--space-s);font-size:var(--text-s);font-weight:500;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;margin-bottom:-2px;font-family:var(--font-body);transition:color var(--transition-fast)}.visit-page__tab--active{color:var(--brand-primary);border-bottom-color:var(--brand-primary);font-weight:600}.visit-page__list{display:flex;flex-direction:column;gap:var(--space-xs)}.visit-task{display:flex;align-items:center;gap:var(--space-m);background:var(--surface-base);border:1px solid var(--border-default);border-radius:var(--radius-m);padding:var(--space-m);text-align:left;cursor:pointer;width:100%;font-family:var(--font-body);transition:border-color var(--transition-fast),background var(--transition-fast)}.visit-task:active{transform:scale(.99)}.visit-task--done{background:var(--brand-primary-subtle);border-color:var(--brand-primary-light)}.visit-task__check{flex-shrink:0}.visit-task__label{font-size:var(--text-s);font-weight:500;color:var(--text-primary)}.visit-goal{background:var(--surface-base);border:1px solid var(--border-default);border-radius:var(--radius-m);overflow:hidden;transition:border-color var(--transition-fast)}.visit-goal--recorded{border-color:var(--brand-primary-light);background:var(--brand-primary-subtle)}.visit-goal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-m);gap:var(--space-m);width:100%;text-align:left;background:none;border:none;cursor:pointer;font-family:var(--font-body)}.visit-goal__info{display:flex;flex-direction:column;gap:.2rem}.visit-goal__domain{font-size:var(--text-xs);color:var(--brand-primary);font-weight:600;text-transform:capitalize}.visit-goal__title{font-size:var(--text-s);font-weight:500;color:var(--text-primary)}.visit-goal__form{border-top:1px solid var(--border-default);padding:var(--space-m);display:flex;flex-direction:column;gap:var(--space-s);background:var(--surface-hover)}.visit-goal__prompt{font-size:var(--text-xs);color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin:0}.visit-goal__levels{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs)}.visit-goal__level{padding:var(--space-s);background:var(--surface-base);border:1px solid var(--border-default);border-radius:var(--radius-s);font-size:var(--text-xs);font-weight:500;color:var(--text-primary);cursor:pointer;font-family:var(--font-body);text-align:center;transition:background var(--transition-fast),border-color var(--transition-fast)}.visit-goal__level:hover{border-color:var(--brand-primary);background:var(--brand-primary-subtle)}.visit-goal__skip{font-size:var(--text-xs);color:var(--text-muted);background:none;border:none;cursor:pointer;font-family:var(--font-body);text-align:center;padding:var(--space-xs)}.visit-goal__skip:hover{color:var(--text-secondary)}.visit-goal__recorded{border-top:1px solid var(--brand-primary-light);padding:var(--space-s) var(--space-m);font-size:var(--text-xs);color:var(--brand-primary);font-weight:600;text-transform:capitalize}.visit-page__notes{display:flex;flex-direction:column;gap:var(--space-m)}.visit-page__textarea{width:100%;min-height:12rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--input-radius);padding:var(--space-m);font-size:var(--text-s);font-family:var(--font-body);color:var(--input-text);resize:vertical;line-height:var(--text-line-height)}.visit-page__textarea::placeholder{color:var(--input-placeholder)}.visit-page__textarea:focus{outline:none;border-color:var(--input-border-focus);box-shadow:var(--input-shadow-focus)}.visit-page__save-btn{height:var(--btn-height-lg);background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:var(--btn-radius);font-size:var(--text-m);font-weight:600;cursor:pointer;font-family:var(--font-body);transition:background var(--transition-fast)}.visit-page__save-btn:hover:not(:disabled){background:var(--btn-primary-hover)}.visit-page__save-btn:disabled{opacity:.5;cursor:not-allowed}.visit-page__save-btn--saved{background:var(--success)}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-overlay);background:#0006;animation:fadeIn .15s ease-out}.dialog-content{position:fixed;left:50%;top:50%;z-index:var(--z-modal);transform:translate(-50%,-50%);width:calc(100% - 2rem);max-width:28rem;max-height:85vh;overflow-y:auto;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--shadow-3);padding:var(--space-l);animation:dialogIn .2s ease-out}.dialog-close{position:absolute;right:var(--space-s);top:var(--space-s);width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-s);border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:background var(--transition-fast)}.dialog-close:hover{background:var(--surface-hover)}.dialog-header{display:flex;flex-direction:column;gap:.25rem;margin-bottom:var(--space-m)}.dialog-footer{display:flex;justify-content:flex-end;gap:var(--space-s);margin-top:var(--space-l)}.dialog-title{font-size:var(--text-m);font-weight:700;line-height:1.3}.dialog-description{font-size:var(--text-s);color:var(--text-muted);line-height:1.5}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes dialogIn{0%{opacity:0;transform:translate(-50%,-48%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.tabs-list{display:inline-flex;align-items:center;background:var(--surface-hover);border-radius:var(--radius-m);padding:.25rem;gap:.125rem}.tabs-trigger{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;font-size:var(--text-s);font-weight:600;color:var(--text-muted);background:transparent;border:none;border-radius:calc(var(--radius-m) - .125rem);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.tabs-trigger:hover{color:var(--text-primary)}.tabs-trigger[data-state=active]{background:var(--card-bg);color:var(--text-primary);box-shadow:0 1px 3px #00000014}.tabs-content{margin-top:var(--space-m)}.tabs-content:focus-visible{outline:none}.tooltip-content{z-index:var(--z-toast);background:var(--toast-bg);color:var(--toast-text);font-size:.75rem;font-weight:500;padding:.375rem .75rem;border-radius:var(--radius-s);line-height:1.4;max-width:16rem;animation:tooltipIn .1s ease-out;box-shadow:0 4px 12px #00000026}@keyframes tooltipIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.dropdown-content{z-index:var(--z-dropdown);min-width:10rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-m);padding:.25rem;box-shadow:var(--shadow-2);animation:dropdownIn .1s ease-out}.dropdown-item{display:flex;align-items:center;gap:var(--space-s);padding:.5rem .75rem;font-size:var(--text-s);font-weight:500;color:var(--text-primary);border-radius:calc(var(--radius-m) - .125rem);cursor:pointer;outline:none;transition:background var(--transition-fast)}.dropdown-item:hover,.dropdown-item[data-highlighted]{background:var(--surface-hover)}.dropdown-item[data-disabled]{opacity:.5;pointer-events:none}.dropdown-separator{height:1px;background:var(--card-border);margin:.25rem -.25rem}.dropdown-label{padding:.375rem .75rem;font-size:.625rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}@keyframes dropdownIn{0%{opacity:0;transform:scale(.96) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.checkbox{width:1.25rem;height:1.25rem;border:2px solid var(--brand-primary);border-radius:.25rem;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast);flex-shrink:0}.checkbox[data-state=checked]{background:var(--brand-primary);color:var(--white)}.checkbox:hover{background:oklch(from var(--primary) l c h/.05)}.checkbox:focus-visible{box-shadow:var(--focus-ring)}.checkbox__indicator{display:flex;align-items:center;justify-content:center}.radio-group{display:flex;flex-direction:column;gap:var(--space-s)}.radio-item{width:1.25rem;height:1.25rem;border:2px solid var(--brand-primary);border-radius:50%;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.radio-item[data-state=checked]{color:var(--brand-primary)}.radio-item:focus-visible{box-shadow:var(--focus-ring)}.radio-item__indicator{display:flex;align-items:center;justify-content:center}.switch{width:2.5rem;height:1.5rem;background:var(--border-default);border-radius:var(--radius-full);border:none;cursor:pointer;position:relative;transition:background var(--transition-fast)}.switch[data-state=checked]{background:var(--brand-primary)}.switch:focus-visible{box-shadow:var(--focus-ring)}.switch__thumb{display:block;width:1rem;height:1rem;background:var(--white);border-radius:50%;box-shadow:0 1px 3px #00000026;transition:transform var(--transition-fast);transform:translate(.25rem)}.switch[data-state=checked] .switch__thumb{transform:translate(1.25rem)}.separator{height:1px;width:100%;background:var(--card-border);flex-shrink:0}.separator--vertical{height:auto;width:1px}.progress{height:.375rem;width:100%;background:var(--surface-hover);border-radius:var(--radius-full);overflow:hidden}.progress__fill{height:100%;background:var(--brand-primary);border-radius:var(--radius-full);transition:width .3s ease}.app-loading{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--surface-page)}.app-loading:after{content:"";width:2.5rem;height:2.5rem;border-radius:var(--radius-full);border:3px solid var(--border-default);border-top-color:var(--brand-primary);animation:spin .7s linear infinite}.caregiver-layout{display:flex;flex-direction:column;min-height:100dvh;background:var(--surface-page)}.caregiver-layout__main{flex:1;overflow-y:auto;padding-bottom:5rem}.caregiver-layout__nav{position:fixed;bottom:0;left:0;right:0;height:5rem;background:var(--surface-base);border-top:1px solid var(--card-border);box-shadow:0 -4px 24px #0208130a;display:flex;align-items:center;justify-content:space-around;padding:0 var(--space-s);padding-bottom:env(safe-area-inset-bottom);z-index:var(--z-sticky)}.caregiver-nav__item{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:var(--space-xs) var(--space-m);border-radius:var(--radius-m);text-decoration:none;color:var(--text-muted);transition:color var(--transition-fast),background var(--transition-fast);flex:1}.caregiver-nav__item:hover{color:var(--text-primary)}.caregiver-nav__item--active{color:var(--brand-primary);background:var(--brand-primary-subtle);border-radius:.75rem}.caregiver-nav__icon{flex-shrink:0}.caregiver-nav__label{font-size:var(--text-xs);font-weight:500;line-height:1}.mobile-page{display:flex;flex-direction:column;min-height:calc(100dvh - 5rem);background:var(--surface-page);padding:var(--space-m);gap:var(--space-m);container-type:inline-size}.mobile-page__header{display:flex;align-items:center;justify-content:space-between}.mobile-page__title{font-size:var(--h3);font-weight:700;color:var(--text-primary);margin:0}.clock-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-s);width:12rem;height:12rem;border-radius:var(--radius-full);border:3px solid var(--brand-primary);background:var(--brand-primary-subtle);cursor:pointer;font-family:var(--font-body);transition:all var(--transition-fast)}.clock-btn:hover{background:var(--brand-primary-light);transform:scale(1.02)}.clock-btn:active{transform:scale(.98)}.clock-btn--clocked-in{border-color:var(--brand-accent);background:var(--brand-accent-subtle)}.clock-btn--clocked-in:hover{background:oklch(from var(--brand-accent) l c h/.15)}.clock-btn--confirm{border-color:var(--brand-primary);background:var(--brand-primary-subtle);width:100%;height:auto;border-radius:var(--radius-l);padding:var(--space-l);flex-direction:row;gap:var(--space-m)}.clock-btn__label{font-size:var(--text-l);font-weight:800;color:var(--text-primary)}.profile__avatar{width:4rem;height:4rem;border-radius:var(--radius-full);background:var(--brand-primary-subtle);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-s)}.profile__name{font-size:var(--text-l);font-weight:700;color:var(--text-primary);text-align:center}.profile__role{font-size:var(--text-s);color:var(--text-muted);text-align:center;text-transform:capitalize;margin-bottom:var(--space-xs)}.profile__email{font-size:var(--text-xs);color:var(--text-muted);text-align:center;font-family:var(--evv-font)}.profile__sync{display:flex;align-items:center;gap:var(--space-s)}.profile__sync-dot{width:.5rem;height:.5rem;border-radius:var(--radius-full);flex-shrink:0}.profile__sync-dot--ok{background:var(--success)}.profile__sync-dot--pending{background:var(--warning)}.profile__sync-label{font-size:var(--text-s);color:var(--text-secondary)}.profile__offline-note{font-size:var(--text-xs);color:var(--warning);margin:var(--space-s) 0 0}
