.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:grid;place-items:center;padding:var(--size-24);z-index:110;animation:fade-in var(--dur-180) var(--ease-out)}.modal-scrim--closing{animation:fade-out var(--dur-180) var(--ease-out) forwards}.modal-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow);width:min(480px,100%);max-height:min(84vh,100%);display:flex;flex-direction:column;animation:modal-in var(--dur-280) var(--ease-out)}.modal-panel--closing{animation:modal-out var(--dur-180) var(--ease-out) forwards}.modal-panel:focus-visible{outline-offset:-2px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--size-12);padding:var(--size-16) var(--size-16);border-bottom:1px solid var(--border)}.modal-title{margin:0;font-family:var(--font-display);font-size:var(--fs-heading);color:var(--text)}.modal-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;border:none;background:transparent;color:var(--faint);font-size:var(--fs-caption);line-height:1;padding:var(--size-4);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--dur-120) var(--ease-out)}.modal-close:hover{color:var(--text)}.modal-close:focus-visible{outline-offset:-2px}.modal-close--floating{position:absolute;top:10px;right:10px}.modal-description{margin:0;padding:var(--size-12) var(--size-16) 0;color:var(--muted);font-size:var(--fs-body);line-height:1.5}.modal-body{padding:var(--size-16) var(--size-16);color:var(--text);font-size:var(--fs-body);line-height:1.5;overflow-y:auto;min-height:0}.modal-footer{display:flex;justify-content:flex-end;gap:var(--size-12);padding:var(--size-12) var(--size-16);border-top:1px solid var(--border)}.modal-panel{position:relative}@media (prefers-reduced-motion: reduce){.modal-scrim,.modal-scrim--closing,.modal-panel,.modal-panel--closing{animation:none}.modal-close{transition:none}}.pop{position:fixed;z-index:80;box-sizing:border-box;display:flex;flex-direction:column;gap:var(--size-8);min-width:min(14rem,calc(100vw - var(--size-16)));max-width:calc(100vw - var(--size-16));padding:var(--size-12);overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-body);font-weight:400;letter-spacing:normal;line-height:1.4;text-align:left;text-transform:none;white-space:normal}.pop:focus{outline:none}.pop-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:79;background:var(--scrim)}.pop--sheet{left:0;right:0;bottom:0;width:auto;max-width:none;max-height:80vh;padding:var(--size-16);padding-bottom:calc(var(--size-16) + env(safe-area-inset-bottom,0px));border-width:1px 0 0;border-radius:var(--radius) var(--radius) 0 0}.pop-section{display:flex;flex-direction:column;gap:var(--size-8);min-width:0}.pop-section+.pop-section{padding-top:var(--size-8);border-top:1px solid var(--border)}.pop-title{margin:0;font-size:var(--fs-caption);font-weight:650;color:var(--muted)}.pop-item{display:flex;align-items:baseline;justify-content:space-between;gap:var(--size-12);width:100%;padding:var(--size-6) var(--size-8);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;box-shadow:none;color:var(--text);font-weight:600;text-align:left}.pop-item:hover:not(:disabled){border-color:var(--accent-soft);background:var(--accent-soft);box-shadow:none;color:var(--text)}.pop-item-note{font-size:var(--fs-caption);font-weight:400;color:var(--muted)}.pop .field select,.pop .field input{width:100%;min-width:0;box-sizing:border-box}.pop-note{margin:0;font-size:var(--fs-caption);color:var(--muted)}.pop .notice,.pop .error-note{margin:0}.pop-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--size-8) var(--size-12)}.pop-terms{display:flex;flex-direction:column;gap:var(--size-8);margin:0;padding:0;list-style:none}.pop-terms li{display:flex;flex-direction:column;gap:var(--size-2)}.pop-term{font-weight:600}.pop-term-text{font-size:var(--fs-caption);color:var(--muted)}.pop-trigger{display:inline-flex;align-items:center;max-width:100%;margin:0;padding:0;border:none;border-radius:var(--radius-sm);background:none;box-shadow:none;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.pop-trigger:hover:not(:disabled){border:none;background:none;box-shadow:none;color:inherit}@media (pointer: coarse){button.pop-trigger[type=button]{position:relative;min-height:0}.pop-trigger:after{content:"";position:absolute;inset:calc(var(--size-12) * -1) calc(var(--size-4) * -1)}}.change-password-form{display:grid;gap:var(--size-12)}.segmented{display:inline-flex;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);overflow:hidden}.segmented__option{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--muted);font-family:var(--font-ui);font-size:var(--fs-body);font-weight:600;padding:var(--size-8) var(--size-16);display:inline-flex;align-items:center;gap:var(--size-6);cursor:pointer;transition:color var(--dur-120) var(--ease-out),background var(--dur-120) var(--ease-out)}.segmented__option+.segmented__option{border-left:1px solid var(--border-strong)}.segmented__option:hover:not([aria-pressed=true]):not(:disabled){color:var(--text);background:var(--surface-2)}.segmented__option[aria-pressed=true],.segmented__option[aria-pressed=true]:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.segmented__option:disabled{color:var(--faint);cursor:default}.segmented__option:focus-visible{outline-offset:-2px}.segmented--sm .segmented__option{padding:var(--size-4) var(--size-12);font-size:var(--fs-caption)}@media (prefers-reduced-motion: reduce){.segmented__option{transition:none}}.new-client{display:flex;flex-direction:column;gap:var(--size-12)}.new-client-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--size-12)}.new-client-field{display:flex;flex-direction:column;gap:var(--size-4);min-width:0;font-size:var(--fs-caption);font-weight:600;color:var(--muted)}.new-client-field input,.new-client-field select{width:100%;font-weight:400}.new-client-cost{margin:0;font-size:var(--fs-caption);color:var(--muted)}.new-client-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--size-8)}
