:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--palette-ink-900:#14251f;--palette-ink-800:#153129;--palette-ink-700:#183f34;--palette-ink-500:#52635d;--palette-ink-400:#6c7b76;--palette-ink-300:#82908b;--palette-green-700:#176b52;--palette-green-600:#2f8d6d;--palette-green-100:#e5f3ed;--palette-green-050:#f1f7f4;--palette-coral-600:#b55642;--palette-coral-500:#ef7a61;--palette-coral-100:#ffe5df;--palette-amber-700:#8d631a;--palette-amber-100:#fff0cb;--palette-blue-700:#4968a6;--palette-blue-100:#e7edff;--palette-violet-700:#7b5b92;--palette-violet-100:#f1e8fa;--palette-neutral-000:#fff;--palette-neutral-025:#fbfcfa;--palette-neutral-050:#f4f6f5;--palette-neutral-075:#f6f8f7;--palette-neutral-100:#edf1ef;--palette-neutral-200:#dde5e1;--palette-warm-050:#f5f3ec;--color-text-primary:var(--palette-ink-900);--color-text-secondary:var(--palette-ink-400);--color-text-tertiary:var(--palette-ink-300);--color-text-inverse:var(--palette-neutral-000);--color-text-on-action:var(--palette-neutral-000);--color-surface-canvas:var(--palette-neutral-025);--color-surface:var(--palette-neutral-000);--color-surface-subtle:var(--palette-neutral-050);--color-surface-muted:var(--palette-neutral-075);--color-surface-control:#f3f5f4;--color-surface-input:#f8faf9;--color-surface-row:#f5f7f6;--color-surface-notice:#fff7ed;--color-surface-warm:var(--palette-warm-050);--color-surface-inverse:var(--palette-ink-800);--color-border:var(--palette-neutral-200);--color-border-subtle:var(--palette-neutral-100);--color-action-primary:var(--palette-green-700);--color-action-primary-hover:var(--palette-green-600);--color-action-subtle:var(--palette-green-100);--color-action-subtle-hover:var(--palette-green-050);--color-accent:var(--palette-coral-500);--color-text-body:var(--palette-ink-500);--color-text-danger-strong:#a33d2d;--color-text-inverse-muted:#a9beb7;--color-text-inverse-subtle:#7f9d93;--color-status-success:#17735a;--color-status-success-surface:#dff4eb;--color-status-warning:var(--palette-amber-700);--color-status-warning-surface:var(--palette-amber-100);--color-status-danger:var(--palette-coral-600);--color-status-danger-surface:var(--palette-coral-100);--color-status-info:var(--palette-blue-700);--color-status-info-surface:var(--palette-blue-100);--color-status-neutral:#66736f;--color-status-neutral-surface:#edf0ef;--color-status-special:var(--palette-violet-700);--color-status-special-surface:var(--palette-violet-100);--color-data-ring-center:#245743;--color-data-ring-progress:#9fdbc6;--color-overlay-inverse-subtle:#ffffff1f;--font-family-sans:"Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", system-ui, sans-serif;--font-size-2xs:11px;--font-size-xs:12px;--font-size-sm:13px;--font-size-md:14px;--font-size-lg:15px;--font-size-xl:16px;--font-size-2xl:18px;--font-size-3xl:22px;--font-size-4xl:28px;--font-size-5xl:32px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.35;--line-height-body:1.65;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-4-5:18px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:999px;--shadow-focus:0 0 0 3px #176b521a;--shadow-xs:0 1px 2px #14251f14;--shadow-raised:0 8px 24px #0000001a;--shadow-elevated:0 24px 60px #1a44371f;--motion-fast:.15s;--motion-standard:.2s}
.cw-exam-item-label.cw-exam-item-label{text-align:start;white-space:normal;flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.cw-exam-item-label>.cw-exam-item-label__name{font-weight:var(--font-weight-medium,600);overflow-wrap:anywhere;display:block}.cw-exam-item-label>.cw-exam-item-label__description{color:var(--color-text-secondary,#617069);font-size:var(--font-size-sm,13px);font-weight:var(--font-weight-regular,400);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5;display:block}.cw-button{border-radius:var(--radius-sm,6px);min-height:42px;font:inherit;font-weight:var(--font-weight-bold,700);letter-spacing:0;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.cw-button--primary{background:var(--color-action-primary,#15745a);color:var(--color-text-on-action,#fff)}.cw-button--primary:hover:not(:disabled){background:var(--color-action-primary-hover,#106249)}.cw-button--secondary{border-color:var(--color-border,#d9e1dd);background:var(--color-surface,#fff);color:var(--color-text-primary,#14251f)}.cw-button--ghost{color:var(--color-action-primary,#15745a);background:0 0}.cw-button--danger{background:var(--color-status-error,#c8503b);color:#fff}.cw-button:disabled{opacity:.48;cursor:not-allowed}.cw-control--sm{min-height:34px;font-size:var(--font-size-sm,13px);padding-inline:11px}.cw-control--lg{min-height:50px;font-size:var(--font-size-lg,17px);padding-inline:22px}.cw-icon-button{width:42px;padding:0;font-size:24px}.cw-input,.cw-select,.cw-textarea{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-sm,6px);background:var(--color-surface,#fff);width:100%;min-height:44px;color:var(--color-text-primary,#14251f);font:inherit;letter-spacing:0;padding:10px 13px}.cw-textarea{resize:vertical;min-height:108px}.cw-input:focus,.cw-select:focus,.cw-textarea:focus{outline:2px solid var(--color-focus-ring,#2d8cff);outline-offset:1px}.cw-input[aria-invalid=true],.cw-select[aria-invalid=true],.cw-textarea[aria-invalid=true]{border-color:var(--color-status-error,#c8503b)}.cw-validated-input{gap:6px;width:100%;min-width:0;display:grid}.cw-validated-input__feedback{min-height:17px;color:var(--color-text-secondary,#617069);font-size:var(--font-size-xs,12px);line-height:1.4}.cw-validated-input__feedback[data-state=error]{color:var(--color-status-error,#c8503b)}.cw-validated-input__feedback[data-state=valid]{color:var(--color-status-success,#16795b)}.cw-field{color:var(--color-text-secondary,#617069);gap:7px;display:grid}.cw-field__label{font-weight:var(--font-weight-bold,700);align-items:center;gap:8px;display:flex}.cw-field__label em,.cw-field__label small{font-size:var(--font-size-xs,12px);border-radius:999px;padding:2px 7px;font-style:normal}.cw-field__label em{background:var(--color-status-error-surface,#fff0ed);color:var(--color-status-error,#c8503b)}.cw-field__label small{background:var(--color-surface-muted,#f3f5f4);color:var(--color-text-tertiary,#809089)}.cw-field__hint,.cw-field__error{font-size:var(--font-size-sm,13px)}.cw-field__error{color:var(--color-status-error,#c8503b)}.cw-check,.cw-switch{cursor:pointer;align-items:flex-start;gap:10px;display:inline-flex}.cw-checkbox-input,.cw-radio-input{width:18px;height:18px;accent-color:var(--color-action-primary,#15745a)}.cw-check>input,.cw-switch>input{opacity:0;pointer-events:none;position:absolute}.cw-check__mark{border:1px solid var(--color-border,#d9e1dd);background:var(--color-surface,#fff);border-radius:4px;flex:none;place-items:center;width:20px;height:20px;display:grid}.cw-check input:checked+.cw-check__mark{border-color:var(--color-action-primary,#15745a);background:var(--color-action-primary,#15745a)}.cw-check input:checked+.cw-check__mark:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:8px;height:4px;transform:translateY(-1px)rotate(-45deg)}.cw-check input:focus-visible+.cw-check__mark,.cw-switch input:focus-visible+.cw-switch__track{outline:2px solid var(--color-focus-ring,#2d8cff);outline-offset:2px}.cw-check__copy{gap:2px;display:grid}.cw-check__copy strong{font-weight:var(--font-weight-medium,600)}.cw-check__copy small{color:var(--color-text-secondary,#617069)}.cw-switch__track{background:var(--color-border,#d9e1dd);border-radius:999px;flex:none;width:38px;height:22px;padding:3px}.cw-switch__track i{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .16s;display:block}.cw-switch input:checked+.cw-switch__track{background:var(--color-action-primary,#15745a)}.cw-switch input:checked+.cw-switch__track i{transform:translate(16px)}.cw-radio-group{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.cw-radio-group legend{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.cw-radio-group label{align-items:center;gap:7px;display:inline-flex}.cw-segmented{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-sm,6px);background:var(--color-surface-control,#f3f5f4);padding:3px;display:inline-flex}.cw-segmented button{min-height:34px;color:var(--color-text-secondary,#617069);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0 13px;font-weight:600}.cw-segmented button[aria-checked=true]{background:var(--color-surface,#fff);color:var(--color-action-primary,#15745a);box-shadow:var(--shadow-sm,0 1px 3px #14251f1f)}.cw-alert{border-radius:var(--radius-sm,6px);border:1px solid;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.cw-alert--error{border-color:var(--color-status-error,#c8503b);background:var(--color-status-error-surface,#fff0ed);color:var(--color-status-error,#c8503b)}.cw-alert--success{border-color:var(--color-status-success,#16795b);background:var(--color-status-success-surface,#edf9f4);color:var(--color-status-success,#16795b)}.cw-alert--warning{border-color:var(--color-status-warning,#b76d20);background:var(--color-status-warning-surface,#fff7ed);color:var(--color-status-warning,#b76d20)}.cw-alert--info{border-color:var(--color-border,#d9e1dd);background:var(--color-surface-subtle,#f7f9f8);color:var(--color-text-primary,#14251f)}.cw-toast-viewport{z-index:2147483000;top:max(20px, env(safe-area-inset-top));right:max(20px, env(safe-area-inset-right));pointer-events:none;background:0 0;border:0;gap:10px;width:min(390px,100vw - 32px);margin:0;padding:0;display:grid;position:fixed;bottom:auto;left:auto;overflow:visible}.cw-toast-viewport--dialog{z-index:2147483647}.cw-toast{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-md,8px);background:var(--color-surface,#fff);min-height:64px;color:var(--color-text-primary,#14251f);box-shadow:var(--shadow-lg,0 24px 60px #14251f3d);pointer-events:auto;border-left:4px solid;grid-template-columns:22px minmax(0,1fr) 32px;align-items:start;gap:11px;padding:14px 11px 14px 14px;animation:.18s ease-out cw-toast-in;display:grid}.cw-toast__icon{width:20px;height:20px;color:inherit;background:currentColor;border-radius:50%;place-items:center;display:grid}.cw-toast__icon:after{color:#fff;font-size:13px;font-weight:800;line-height:1}.cw-toast--success{border-left-color:var(--color-status-success,#16795b)}.cw-toast--success .cw-toast__icon{color:var(--color-status-success,#16795b)}.cw-toast--success .cw-toast__icon:after{content:"✓"}.cw-toast--error{border-left-color:var(--color-status-error,#c8503b)}.cw-toast--error .cw-toast__icon{color:var(--color-status-error,#c8503b)}.cw-toast--error .cw-toast__icon:after{content:"!"}.cw-toast--warning{border-left-color:var(--color-status-warning,#b76d20)}.cw-toast--warning .cw-toast__icon{color:var(--color-status-warning,#b76d20)}.cw-toast--warning .cw-toast__icon:after{content:"!"}.cw-toast--info{border-left-color:var(--color-action-primary,#15745a)}.cw-toast--info .cw-toast__icon{color:var(--color-action-primary,#15745a)}.cw-toast--info .cw-toast__icon:after{content:"i"}.cw-toast__copy{gap:3px;min-width:0;line-height:1.45;display:grid}.cw-toast__copy strong{font-size:var(--font-size-md,15px)}.cw-toast__copy>div{color:var(--color-text-secondary,#617069);font-size:var(--font-size-sm,13px);overflow-wrap:anywhere}.cw-toast__close{border-radius:var(--radius-sm,6px);width:32px;height:32px;color:var(--color-text-secondary,#617069);font:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font-size:22px;display:grid}.cw-toast__close:hover{background:var(--color-surface-muted,#f3f5f4);color:var(--color-text-primary,#14251f)}.cw-toast__close:focus-visible{outline:2px solid var(--color-focus-ring,#2d8cff);outline-offset:1px}.cw-empty-state{text-align:center;align-content:center;place-items:center;gap:10px;min-height:230px;display:grid}.cw-empty-state>span{color:var(--color-action-primary,#15745a);font-size:var(--font-size-sm,13px);font-weight:700}.cw-empty-state h2,.cw-empty-state p{margin:0}.cw-empty-state p{color:var(--color-text-secondary,#617069)}.cw-loading-state{min-height:180px;color:var(--color-text-secondary,#617069);justify-content:center;align-items:center;gap:10px;display:flex}.cw-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite cw-spin;display:inline-block}.cw-loading-overlay{z-index:2147482900;background:#ffffffc7;background:color-mix(in srgb, var(--color-surface,#fff) 78%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:center;padding:24px;display:grid;position:fixed;inset:0}.cw-loading-overlay__content{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-md,8px);background:var(--color-surface,#fff);min-width:min(320px,100vw - 48px);color:var(--color-text-primary,#14251f);box-shadow:var(--shadow-lg,0 24px 60px #14251f3d);text-align:center;justify-items:center;gap:18px;padding:32px 28px;display:grid}.cw-loading-overlay__spinner{border:4px solid var(--color-action-subtle,#d8eee7);border-top-color:var(--color-action-primary,#15745a);border-radius:50%;width:42px;height:42px;animation:.76s linear infinite cw-spin;display:block}.cw-loading-overlay__content p{color:var(--color-text-secondary,#617069);font-size:var(--font-size-md,15px);font-weight:var(--font-weight-medium,600);margin:0;line-height:1.5}.cw-dialog{width:min(720px,100vw - 32px);max-height:calc(100vh - 32px);color:inherit;background:0 0;border:0;padding:0}.cw-dialog::backdrop{background:var(--color-overlay-backdrop,#14251f94)}.cw-dialog__surface{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-md,8px);background:var(--color-surface,#fff);box-shadow:var(--shadow-lg,0 24px 60px #14251f3d);overflow:hidden}.cw-dialog__surface>header{border-bottom:1px solid var(--color-border-subtle,#edf1ef);justify-content:space-between;align-items:flex-start;gap:18px;padding:24px;display:flex}.cw-dialog__surface>header span{color:var(--color-text-secondary,#617069);font-size:var(--font-size-sm,13px);font-weight:700}.cw-dialog__surface>header h2{font-size:var(--font-size-2xl,24px);margin:4px 0 0}.cw-dialog__body{max-height:calc(100vh - 220px);padding:24px;overflow:auto}.cw-dialog__surface>footer{border-top:1px solid var(--color-border-subtle,#edf1ef);justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.cw-confirm-copy{color:var(--color-text-secondary,#617069);margin:0}.cw-pagination{justify-content:center;align-items:center;gap:12px;display:flex}.cw-pagination>span{text-align:center;min-width:74px;color:var(--color-text-secondary,#617069)}.cw-pagination__controls{align-items:center;gap:8px;display:flex}.cw-pagination__page-size{align-items:center;display:inline-flex}.cw-pagination__page-size .cw-select{min-width:124px;min-height:34px;font-size:var(--font-size-sm,13px);padding-block:5px}.cw-table-scroll-area{max-height:min(680px, calc(100dvh - var(--cw-table-scroll-offset,360px)));scrollbar-gutter:stable;min-height:0;overflow:auto}.cw-table-scroll-area>table>thead{z-index:2;position:sticky;top:0}.cw-table-scroll-area>table>thead th{background:var(--color-surface-control,#f3f5f4);box-shadow:0 1px 0 var(--color-border-subtle,#edf1ef)}.cw-search-field{min-width:220px;position:relative}.cw-search-field>span{color:var(--color-text-tertiary,#809089);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.cw-search-field .cw-input{padding-left:34px}.cw-filter-bar{justify-content:space-between;align-items:flex-end;gap:14px;display:flex}.cw-filter-bar>div,.cw-filter-bar>aside{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.cw-selection-field{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-md,8px);background:var(--color-surface,#fff);width:100%;min-width:0;min-height:92px;color:var(--color-text-primary,#14251f);font:inherit;text-align:left;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label action""content action";align-items:center;gap:6px 18px;padding:16px 18px;transition:border-color .16s,background-color .16s,box-shadow .16s,transform .16s;display:grid}.cw-selection-field:hover:not(:disabled){border-color:var(--color-action-primary,#15745a);background:var(--color-action-subtle,#e7f4ef);transform:translateY(-1px)}.cw-selection-field:focus-visible{outline:2px solid var(--color-focus-ring,#2d8cff);outline-offset:2px}.cw-selection-field:disabled{cursor:not-allowed;opacity:.52}.cw-selection-field--selected{border-color:color-mix(in srgb, var(--color-action-primary,#15745a) 42%, var(--color-border,#d9e1dd))}.cw-selection-field__label{color:var(--color-text-secondary,#617069);font-size:var(--font-size-xs,12px);font-weight:var(--font-weight-bold,700);grid-area:label}.cw-selection-field__content{grid-area:content;gap:3px;min-width:0;display:grid}.cw-selection-field__content strong,.cw-selection-field__content small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cw-selection-field__content strong{color:var(--color-text-primary,#14251f);font-size:var(--font-size-md,15px)}.cw-selection-field:not(.cw-selection-field--selected) .cw-selection-field__content strong{color:var(--color-text-tertiary,#809089);font-weight:var(--font-weight-medium,600)}.cw-selection-field__content small{color:var(--color-text-secondary,#617069);font-size:var(--font-size-sm,13px);font-weight:var(--font-weight-regular,400)}.cw-selection-field__action{color:var(--color-action-primary,#15745a);font-size:var(--font-size-sm,13px);font-weight:var(--font-weight-bold,700);white-space:nowrap;grid-area:action;align-items:center;gap:8px;display:inline-flex}.cw-selection-field__action i{font-size:22px;font-style:normal;font-weight:400;line-height:1}@keyframes cw-spin{to{transform:rotate(360deg)}}@keyframes cw-toast-in{0%{opacity:0;transform:translateY(-8px)}}@media (max-width:620px){.cw-filter-bar{flex-direction:column;align-items:stretch}.cw-dialog__surface>header,.cw-dialog__body{padding:18px}.cw-toast-viewport{top:max(12px, env(safe-area-inset-top));width:auto;left:12px;right:12px}.cw-table-scroll-area{max-height:min(620px, calc(100dvh - var(--cw-table-scroll-offset-mobile,260px)))}.cw-selection-field{min-height:78px;padding:13px 14px}}@media (prefers-reduced-motion:reduce){.cw-toast{animation:none}.cw-loading-overlay__spinner{animation-duration:1.4s}}.cw-table-column{align-items:center;display:inline-flex}.cw-table-column__label{color:inherit;font:inherit;font-weight:inherit}.cw-table-column__trigger{border-radius:var(--radius-sm,6px);min-height:32px;color:inherit;font:inherit;font-weight:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 6px;display:inline-flex}.cw-table-column__trigger:hover{background:var(--color-action-subtle,#e7f4ef);color:var(--color-action-primary,#15745a)}.cw-table-column__trigger:focus-visible{outline:2px solid var(--color-focus-ring,#2d8cff);outline-offset:1px}.cw-table-column__sort{min-width:12px;color:var(--color-text-tertiary,#809089);font-size:var(--font-size-sm,13px);line-height:1}.cw-table-column__active{background:var(--color-action-primary,#15745a);border-radius:50%;width:7px;height:7px}.cw-table-column__popover{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-md,8px);background:var(--color-surface,#fff);width:min(320px,100vw - 24px);color:var(--color-text-primary,#14251f);box-shadow:var(--shadow-lg,0 24px 60px #14251f3d);padding:16px;position:fixed}.cw-table-column__popover:popover-open{gap:12px;display:grid}.cw-table-column__popover>strong{font-size:var(--font-size-md,15px)}.cw-table-column__sort-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.cw-table-column__filters{border-top:1px solid var(--color-border-subtle,#edf1ef);gap:10px;padding-top:12px;display:grid}.cw-table-column__filters>label{color:var(--color-text-secondary,#617069);font-size:var(--font-size-sm,13px);gap:5px;display:grid}.cw-table-filter-actions{justify-content:flex-end;gap:8px;padding-top:2px;display:flex}.cw-table-checklist{gap:10px;display:grid}.cw-table-checklist>.cw-input{height:36px;min-height:36px}.cw-table-checklist__options{overscroll-behavior-y:contain;max-height:240px;padding:2px;display:grid;overflow-y:auto}.cw-table-checklist__options .cw-check{border-radius:var(--radius-sm,6px);min-height:38px;padding:7px 8px}.cw-table-checklist__options .cw-check:hover{background:var(--color-action-subtle,#e7f4ef)}.cw-table-checklist__options .cw-check__copy strong{font-size:var(--font-size-sm,13px)}.cw-table-checklist__empty{color:var(--color-text-tertiary,#809089);font-size:var(--font-size-sm,13px);text-align:center;margin:0;padding:14px 8px}@supports (anchor-name:--cw-table-column){.cw-table-column__trigger{anchor-name:var(--cw-column-anchor)}.cw-table-column__popover{position-anchor:var(--cw-column-anchor);inset:auto;top:anchor(bottom);left:anchor(left);position-try-fallbacks:flip-block, flip-inline;margin:6px 0 0}}.cw-reservation-toolbar{align-items:center;gap:var(--space-3,12px);border-bottom:1px solid var(--color-border-subtle,#edf1ef);padding-bottom:14px;display:flex}.cw-reservation-toolbar__periods{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-md,8px);background:var(--color-surface-control,#f3f5f4);grid-template-columns:repeat(4,auto);padding:3px;display:inline-grid}.cw-reservation-toolbar__periods button{border-radius:var(--radius-sm,6px);min-width:42px;height:32px;min-height:32px;color:var(--color-text-secondary,#617069);font-size:var(--font-size-md,15px);font-weight:var(--font-weight-bold,700);background:0 0;border:0;padding:0 11px}.cw-reservation-toolbar__periods button[aria-pressed=true]{background:var(--color-surface-inverse,#14251f);color:var(--color-text-inverse,#fff)}.cw-reservation-toolbar__navigation{align-items:center;gap:var(--space-1,4px);min-width:0;display:flex}.cw-reservation-toolbar__navigation>button{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-sm,6px);background:var(--color-surface,#fff);width:32px;height:32px;min-height:32px;color:var(--color-text-primary,#14251f);font-size:var(--font-size-2xl,24px);padding:0}.cw-reservation-toolbar__navigation .cw-reservation-toolbar__today{width:auto;font-size:var(--font-size-sm,13px);font-weight:var(--font-weight-bold,700);padding:0 10px}.cw-reservation-toolbar__navigation .cw-input{width:128px;height:32px;min-height:32px;margin-left:var(--space-1,4px);padding:0 var(--space-2,8px);border-radius:var(--radius-sm,6px);font-size:var(--font-size-sm,13px)}.cw-reservation-toolbar__navigation strong{margin-left:var(--space-2,8px);color:var(--color-text-primary,#14251f);font-size:var(--font-size-lg,17px);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cw-reservation-toolbar__custom label{align-items:center;gap:var(--space-1,4px);color:var(--color-text-secondary,#617069);font-size:var(--font-size-xs,12px);font-weight:var(--font-weight-bold,700);white-space:nowrap;display:flex}.cw-reservation-toolbar__custom .cw-input{margin-left:0}.cw-reservation-toolbar__custom>span{color:var(--color-text-tertiary,#809089)}.cw-reservation-toolbar__navigation .cw-reservation-toolbar__apply{border-color:var(--color-action-primary,#15745a);background:var(--color-action-primary,#15745a);width:auto;color:var(--color-text-inverse,#fff);font-size:var(--font-size-sm,13px);font-weight:var(--font-weight-bold,700);padding:0 12px}.cw-reservation-toolbar__display{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-sm,6px);background:var(--color-surface-control,#f3f5f4);grid-template-columns:repeat(2,34px);padding:2px;display:inline-grid}.cw-reservation-toolbar__display button{border-radius:calc(var(--radius-sm,6px) - 2px);width:32px;height:30px;min-height:30px;color:var(--color-text-secondary,#617069);background:0 0;border:0;place-items:center;padding:0;display:grid}.cw-reservation-toolbar__display button[aria-pressed=true]{background:var(--color-surface,#fff);color:var(--color-action-primary,#15745a);box-shadow:var(--shadow-xs,0 1px 2px #14251f1a)}.cw-reservation-toolbar__display button:disabled{cursor:not-allowed;opacity:.45}.cw-reservation-toolbar__actions{align-items:center;gap:var(--space-2,8px);margin-left:auto;display:flex}.cw-reservation-search-toolbar{align-items:center;gap:var(--space-2,8px);margin-top:var(--space-3,12px);padding:var(--space-3,12px);border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-sm,6px);background:var(--color-surface,#fff);grid-template-columns:minmax(0,1fr) auto;display:grid}.cw-reservation-search-toolbar .cw-input{width:100%;height:40px;min-height:40px}.cw-reservation-search-toolbar .cw-button{min-height:40px}@media (max-width:900px){.cw-reservation-toolbar{flex-wrap:wrap;align-items:flex-start}.cw-reservation-toolbar__navigation{flex-wrap:wrap;order:3;width:100%}.cw-reservation-toolbar__navigation strong{flex:1;min-width:150px}}@media (max-width:560px){.cw-reservation-search-toolbar{gap:0;padding:0;overflow:hidden}.cw-reservation-search-toolbar .cw-input{border:0;border-radius:0}.cw-reservation-search-toolbar .cw-button{border-radius:0}}.cw-reservation-schedule__heading{justify-content:space-between;align-items:flex-end;margin:22px 0 12px;display:flex}.cw-reservation-schedule__heading span{color:var(--color-text-secondary,#617069);font-size:var(--font-size-xs,12px);font-weight:var(--font-weight-bold,700)}.cw-reservation-schedule__heading h2{font-size:var(--font-size-2xl,24px);margin:3px 0 0}.cw-reservation-schedule__heading>strong{color:var(--color-action-primary,#15745a);font-size:var(--font-size-2xl,24px)}.cw-reservation-schedule__heading-meta{align-items:center;gap:8px;display:flex}.cw-reservation-schedule__heading-meta>strong{color:var(--color-action-primary,#15745a);font-size:var(--font-size-2xl,24px)}.cw-reservation-schedule__notice{border-radius:var(--radius-full,999px);color:#b33b2e;font-size:11px;font-weight:var(--font-weight-bold,700);white-space:nowrap;background:#fff0ed;align-items:center;padding:3px 7px;line-height:1.2;display:inline-flex}.cw-reservation-schedule__date--blocked{background:#fff8f6!important}.cw-reservation-schedule__periods{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-md,8px);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.cw-reservation-schedule__lane+.cw-reservation-schedule__lane{border-left:1px solid var(--color-border,#d9e1dd)}.cw-reservation-schedule__lane>header{border-bottom:1px solid var(--color-border,#d9e1dd);background:var(--color-surface-subtle,#f7f9f8);justify-content:space-between;align-items:center;height:42px;padding:0 12px;display:flex}.cw-reservation-schedule__lane>header span,.cw-reservation-schedule__lane>header strong{font-size:var(--font-size-md,15px)}.cw-reservation-schedule__lane>header strong{color:var(--color-action-primary,#15745a)}.cw-reservation-schedule__lane>.cw-reservation-schedule__slot-content{min-height:280px;padding:var(--space-2,8px);background:var(--color-surface-muted,#f3f5f4)}.cw-reservation-card{width:100%;height:auto;min-height:104px;margin-bottom:var(--space-2,8px);border:1px solid var(--color-border,#d9e1dd);border-left:4px solid var(--color-action-primary,#15745a);border-radius:var(--radius-sm,6px);background:var(--color-surface,#fff);color:var(--color-text-primary,#14251f);text-align:left;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:7px;padding:12px;display:flex}.cw-reservation-card:hover{border-color:var(--color-action-primary,#15745a);background:var(--color-surface-subtle,#f7f9f8)}.cw-reservation-card--tentative{border-style:dashed;border-left-color:var(--color-text-secondary,#617069);background:var(--color-surface-subtle,#f7f9f8)}.cw-reservation-card--tentative:hover{border-color:var(--color-action-primary,#15745a);background:var(--color-action-subtle,#e7f4ef)}.cw-reservation-card[draggable=true]{cursor:grab}.cw-reservation-card[draggable=true]:active,.cw-reservation-card[aria-pressed=true]{cursor:grabbing;opacity:.58}.cw-reservation-card__header,.cw-reservation-card__service,.cw-reservation-card__meta{min-width:0}.cw-reservation-card__header{justify-content:space-between;align-items:center;gap:var(--space-2,8px);display:flex}.cw-reservation-card__person,.cw-reservation-card__field{align-items:center;gap:6px;min-width:0;display:flex}.cw-reservation-card__person>strong,.cw-reservation-card__field>strong,.cw-reservation-card__field>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cw-reservation-card__person>strong{font-size:var(--font-size-lg,17px)}.cw-reservation-card__person>span:not(.cw-reservation-card__icon){color:var(--color-text-secondary,#617069);font-size:var(--font-size-xs,12px);flex:none}.cw-reservation-card__month-period{display:none}.cw-reservation-card__icon{width:16px;height:16px;color:var(--color-action-primary,#15745a);flex:0 0 16px;justify-content:center;align-items:center;display:inline-flex}.cw-reservation-card__number{font-size:var(--font-size-sm,13px);font-weight:var(--font-weight-bold,700)}.cw-reservation-card__service{align-items:baseline;gap:var(--space-2,8px);grid-template-columns:minmax(0,1fr) minmax(80px,40%);display:grid}.cw-reservation-card__product>strong{font-size:var(--font-size-md,15px)}.cw-reservation-card__context{color:var(--color-text-secondary,#617069);font-size:var(--font-size-sm,13px)}.cw-reservation-card__meta{justify-content:space-between;align-items:center;gap:var(--space-2,8px);border-top:1px solid var(--color-border-subtle,#edf1ef);padding-top:7px;display:flex}.cw-reservation-card__meta>.cw-reservation-card__field{color:var(--color-text-secondary,#617069);font-size:var(--font-size-xs,12px)}.cw-reservation-card__meta>.cw-reservation-card__field:first-child{color:var(--color-text-primary,#14251f);font-weight:var(--font-weight-semibold,600)}.cw-reservation-card--compact{min-height:82px;padding:var(--space-2,8px);gap:5px}.cw-reservation-card--compact .cw-reservation-card__service{display:block}.cw-reservation-card--compact .cw-reservation-card__context,.cw-reservation-card--compact .cw-reservation-card__meta>.cw-reservation-card__field:first-child{display:none}.cw-reservation-card--compact .cw-reservation-card__meta{padding-top:5px;display:block}.cw-reservation-schedule__empty{min-height:82px;color:var(--color-text-secondary,#617069);font-size:var(--font-size-sm,13px);place-items:center;display:grid}.cw-reservation-schedule__slot-content{min-height:100%;position:relative}.cw-reservation-schedule__create-action{z-index:4;border:1px solid var(--color-action-primary,#15745a);border-radius:var(--radius-full,999px);background:var(--color-surface,#fff);min-height:34px;color:var(--color-action-primary,#15745a);box-shadow:var(--shadow-sm,0 1px 3px #14251f1f);font:inherit;opacity:0;visibility:hidden;pointer-events:none;cursor:pointer;transition:opacity var(--motion-fast,.12s ease), visibility var(--motion-fast,.12s ease), transform var(--motion-fast,.12s ease), background-color var(--motion-fast,.12s ease);align-items:center;gap:5px;padding:5px 10px;display:inline-flex;position:absolute;top:8px;right:8px;transform:translateY(-4px)}.cw-reservation-schedule__create-action span{font-size:18px;font-weight:var(--font-weight-regular,400);line-height:1}.cw-reservation-schedule__create-action strong{font-size:var(--font-size-xs,12px);white-space:nowrap}.cw-reservation-schedule__create-action:hover{background:var(--color-action-subtle,#e7f4ef)}.cw-reservation-schedule__create-action:focus-visible{outline:2px solid var(--color-focus-ring,#2d8cff);outline-offset:2px}.cw-reservation-schedule__lane:hover .cw-reservation-schedule__create-action,.cw-reservation-schedule__lane:focus-within .cw-reservation-schedule__create-action,.cw-reservation-schedule__weekday:hover .cw-reservation-schedule__create-action,.cw-reservation-schedule__weekday:focus-within .cw-reservation-schedule__create-action,.cw-reservation-schedule__month-day:hover .cw-reservation-schedule__create-action,.cw-reservation-schedule__month-day:focus-within .cw-reservation-schedule__create-action{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.cw-reservation-schedule__create-action--compact strong{display:none}.cw-reservation-schedule__create-action--compact{justify-content:center;width:32px;min-height:32px;padding:0}.cw-reservation-schedule__week,.cw-reservation-schedule__month{border:1px solid var(--color-border,#d9e1dd);border-radius:var(--radius-md,8px);margin-top:18px;overflow-x:auto}.cw-reservation-schedule__week-grid{grid-template-columns:repeat(7,minmax(132px,1fr));min-width:924px;display:grid}.cw-reservation-schedule__weekday+.cw-reservation-schedule__weekday{border-left:1px solid var(--color-border,#d9e1dd)}.cw-reservation-schedule__weekday>header{border-bottom:1px solid var(--color-border,#d9e1dd);background:var(--color-surface-subtle,#f7f9f8);grid-template-columns:1fr auto;align-items:center;min-height:58px;padding:8px 10px;display:grid}.cw-reservation-schedule__weekday>header span,.cw-reservation-schedule__weekday>header small{color:var(--color-text-secondary,#617069);font-size:var(--font-size-xs,12px)}.cw-reservation-schedule__weekday>header button{border-radius:var(--radius-full,999px);width:30px;height:30px;min-height:30px;color:var(--color-text-primary,#14251f);font-size:var(--font-size-2xl,24px);font-weight:var(--font-weight-bold,700);background:0 0;border:0;grid-row:span 2;padding:0}.cw-reservation-schedule__weekday>header button:hover,.cw-reservation-schedule__month-day>header button:hover{background:var(--color-action-subtle,#e7f4ef);color:var(--color-action-primary,#15745a)}.cw-reservation-schedule__weekday>.cw-reservation-schedule__slot-content{background:var(--color-surface-muted,#f3f5f4);min-height:430px;padding:6px}.cw-reservation-schedule__month-weekdays,.cw-reservation-schedule__month-grid{grid-template-columns:repeat(7,minmax(120px,1fr));min-width:840px;display:grid}.cw-reservation-schedule__month-weekdays span{background:var(--color-surface-subtle,#f7f9f8);color:var(--color-text-secondary,#617069);font-size:var(--font-size-xs,12px);font-weight:var(--font-weight-bold,700);text-align:center;padding:9px}.cw-reservation-schedule__month-grid{background:var(--color-border,#d9e1dd);gap:1px}.cw-reservation-schedule__month-day{background:var(--color-surface,#fff);min-height:138px;padding:6px}.cw-reservation-schedule__month-day--outside{background:var(--color-surface-subtle,#f7f9f8);color:var(--color-text-secondary,#617069)}.cw-reservation-schedule__month-day>header{justify-content:space-between;align-items:center;min-height:24px;padding:0 2px 5px;display:flex}.cw-reservation-schedule__month-day>header button{border-radius:var(--radius-full,999px);width:24px;height:24px;min-height:24px;color:inherit;font-size:var(--font-size-md,15px);font-weight:var(--font-weight-bold,700);background:0 0;border:0;padding:0}.cw-reservation-schedule__month-day>header span,.cw-reservation-schedule__more{color:var(--color-action-primary,#15745a);font-size:var(--font-size-xs,12px);font-weight:var(--font-weight-bold,700)}.cw-reservation-schedule__month-day .cw-reservation-card{border-left-width:2px;gap:0;min-height:0;margin-bottom:4px;padding:5px 6px}.cw-reservation-schedule__month-day .cw-reservation-card__person>strong{font-size:var(--font-size-sm,13px)}.cw-reservation-schedule__month-day .cw-reservation-card__month-period{border-radius:var(--radius-full,999px);background:var(--color-action-subtle,#e7f4ef);color:var(--color-action-primary,#15745a);font-size:10px;font-weight:var(--font-weight-bold,700);white-space:nowrap;flex:none;align-items:center;padding:2px 5px;line-height:1.2;display:inline-flex}.cw-reservation-schedule__month-day .cw-reservation-card__person>.cw-reservation-card__icon,.cw-reservation-schedule__month-day .cw-reservation-card__person>span,.cw-reservation-schedule__month-day .cw-reservation-card__service,.cw-reservation-schedule__month-day .cw-reservation-card__meta,.cw-reservation-schedule__month-day .cw-reservation-card__status{display:none}.cw-reservation-schedule__more{text-align:left;background:0 0;border:0;width:100%;min-height:0;padding:3px;display:block}.cw-reservation-schedule__dropzone--active{outline:2px dashed var(--color-action-primary,#15745a);outline-offset:-3px}.cw-reservation-schedule__dropzone--active:focus{background:var(--color-action-subtle,#e7f4ef);outline-style:solid}@media (max-width:900px){.cw-reservation-schedule__periods{grid-template-columns:1fr}.cw-reservation-schedule__lane+.cw-reservation-schedule__lane{border-top:1px solid var(--color-border,#d9e1dd);border-left:0}.cw-reservation-schedule__lane>.cw-reservation-schedule__slot-content{min-height:100px}}@media (hover:none){.cw-reservation-schedule__create-action{opacity:.86;visibility:visible;pointer-events:auto;justify-content:center;width:32px;min-height:32px;padding:0;transform:none}.cw-reservation-schedule__create-action strong{display:none}}.cw-reservation-date-picker{min-width:0;position:relative}.cw-reservation-date-picker__trigger{border:1px solid var(--cw-border,#d7e2de);border-radius:var(--cw-radius-sm,8px);background:var(--cw-surface,#fff);width:100%;min-height:44px;color:var(--cw-text,#12251f);text-align:left;cursor:pointer;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:8px;padding:9px 12px;display:grid}.cw-reservation-date-picker__trigger>span,.cw-reservation-date-picker__trigger>i{color:var(--cw-primary,#15745a);text-align:center;font-style:normal}.cw-reservation-date-picker__trigger:focus-visible{outline:2px solid var(--cw-primary,#15745a);outline-offset:2px}.cw-reservation-date-picker__popover{z-index:80;border:1px solid var(--cw-border,#d7e2de);border-radius:var(--cw-radius-md,12px);background:var(--cw-surface,#fff);width:min(360px,100vw - 32px);padding:12px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 18px 48px #12251f2e}.cw-reservation-date-picker__popover>header{grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;margin-bottom:8px;display:grid}.cw-reservation-date-picker__popover>header strong{text-align:center}.cw-reservation-date-picker__popover>header button{border:1px solid var(--cw-border,#d7e2de);background:var(--cw-surface,#fff);min-height:34px;color:var(--cw-primary,#15745a);cursor:pointer;border-radius:8px}.cw-reservation-date-picker__weekdays,.cw-reservation-date-picker__grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.cw-reservation-date-picker__weekdays span{color:var(--cw-text-muted,#71807b);text-align:center;padding:5px 0;font-size:11px}.cw-reservation-date-picker__grid button{background:var(--cw-surface,#fff);min-width:0;min-height:48px;color:var(--cw-text,#12251f);cursor:pointer;border:1px solid #0000;border-radius:8px;align-content:center;padding:3px 1px;display:grid}.cw-reservation-date-picker__grid button:hover:not(:disabled){border-color:var(--cw-primary,#15745a);background:var(--cw-primary-subtle,#e8f4f0)}.cw-reservation-date-picker__grid button.selected{border-color:var(--cw-primary,#15745a);background:var(--cw-primary,#15745a);color:#fff}.cw-reservation-date-picker__grid button small{color:var(--cw-primary,#15745a);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.cw-reservation-date-picker__grid button.selected small{color:#fff}.cw-reservation-date-picker__grid button.limited:not(.selected) small{color:#b45309}.cw-reservation-date-picker__grid button:disabled{background:var(--cw-surface-muted,#f4f7f6);color:var(--cw-text-muted,#8b9994);cursor:not-allowed;opacity:.72}.cw-reservation-date-picker__grid button.pending:disabled{color:var(--cw-text-muted,#71807b);opacity:1}.cw-reservation-date-picker__grid button.pending:disabled small{color:var(--cw-primary,#15745a)}.cw-reservation-date-picker__grid button.out-of-range:disabled small{color:var(--cw-text-muted,#8b9994)}.cw-reservation-date-picker__grid button.blocked-closure:disabled{color:#b42318;opacity:1;background:#fff0ef;border-color:#f4aaa4}.cw-reservation-date-picker__grid button.blocked-closure:disabled small{color:#b42318}.cw-reservation-date-picker__grid button.blocked-full:disabled{color:#52615c;opacity:1;background:#edf1ef;border-color:#cbd5d1}.cw-reservation-date-picker__grid button.blocked-full:disabled small{color:#52615c}.cw-reservation-date-picker__grid button.blocked-unconfigured:disabled{color:#245ea8;opacity:1;background:#eef5ff;border-color:#a9c5eb}.cw-reservation-date-picker__grid button.blocked-unconfigured:disabled small{color:#245ea8}.cw-reservation-date-picker__grid button.outside{visibility:hidden}.cw-reservation-date-picker__popover>footer{border-top:1px solid var(--cw-border,#d7e2de);color:var(--cw-text-muted,#71807b);flex-wrap:wrap;gap:6px 10px;margin-top:9px;padding-top:9px;font-size:10px;display:flex}.cw-reservation-date-picker__popover>footer span{align-items:center;gap:4px;display:inline-flex}.cw-reservation-date-picker__popover>footer i{background:var(--cw-primary,#15745a);border-radius:50%;width:7px;height:7px}.cw-reservation-date-picker__popover>footer i.limited{background:#d97706}.cw-reservation-date-picker__popover>footer i.closure{background:#d92d20}.cw-reservation-date-picker__popover>footer i.full{background:#66756f}.cw-reservation-date-picker__popover>footer i.unconfigured{background:#3b82d0}.cw-reservation-date-picker__popover>footer strong{color:var(--cw-primary,#15745a);margin-left:auto}@media (min-width:641px){.cw-dialog__body .cw-reservation-date-picker--open{z-index:1}.cw-dialog__body .cw-reservation-date-picker__popover{width:100%;max-width:360px;margin-top:6px;position:relative;top:auto;left:auto}}@media (max-width:640px){.cw-reservation-date-picker__popover{z-index:200;width:min(360px,100vw - 24px);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}}.reservation-product-edit-dialog{width:min(920px,100vw - 32px)}.reservation-product-edit-dialog .cw-dialog__body{max-height:min(70vh,720px);overflow:auto}.cw-reservation-product-editor{gap:var(--cw-space-3,16px);display:grid}.cw-reservation-product-editor__note{border:1px solid var(--cw-border,#d7e2de);border-radius:var(--cw-radius-md,12px);padding:var(--cw-space-3,16px);color:var(--cw-text-muted,#71807b);margin:0}.cw-reservation-product-editor__note.is-changed{border-color:var(--cw-primary,#15745a);color:var(--cw-primary,#15745a)}.cw-reservation-product-editor__groups{gap:var(--cw-space-3,16px);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.cw-reservation-product-editor__group{border:1px solid var(--cw-border,#d7e2de);border-radius:var(--cw-radius-md,12px);min-width:0;padding:var(--cw-space-3,16px);margin:0}.cw-reservation-product-editor__group legend{justify-content:space-between;align-items:center;gap:var(--cw-space-2,8px);width:100%;padding:0 var(--cw-space-1,4px);display:flex}.cw-reservation-product-editor__group legend span{color:var(--cw-text-muted,#71807b);font-size:.875rem}.cw-reservation-product-editor__items{gap:var(--cw-space-2,8px);margin-top:var(--cw-space-2,8px);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.cw-reservation-product-editor__item{align-items:center;gap:var(--cw-space-2,8px);border:1px solid var(--cw-border,#d7e2de);border-radius:var(--cw-radius-sm,8px);min-width:0;padding:var(--cw-space-2,8px);cursor:pointer;display:flex}.cw-reservation-product-editor__item:hover,.cw-reservation-product-editor__item.is-selected{border-color:var(--cw-primary,#15745a);background:var(--cw-primary-subtle,#eaf5f1)}.cw-reservation-product-editor__item:has(input:disabled){cursor:not-allowed;opacity:.55}.cw-reservation-product-editor__item input{accent-color:var(--cw-primary,#15745a)}.cw-reservation-product-editor__item span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cw-reservation-product-editor__item small{color:var(--cw-text-muted,#71807b);margin-left:auto}.cw-reservation-product-editor__error{color:var(--cw-danger,#b42318);margin:0;font-size:.875rem}@media (max-width:720px){.reservation-product-edit-dialog{width:100vw}.cw-reservation-product-editor__groups,.cw-reservation-product-editor__items{grid-template-columns:1fr}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--color-text-primary);background:var(--color-surface-canvas);font-family:var(--font-family-sans);margin:0}button,input,textarea{font:inherit}button,a{color:inherit}a{text-decoration:none}button{cursor:pointer}.muted{color:var(--color-text-secondary)}.logo{font-size:21px;font-weight:var(--font-weight-bold);letter-spacing:0;align-items:center;gap:9px;display:inline-flex}.logo-mark{flex:0 0 38px;width:38px;height:38px;display:block}.brand-mark-symbol{width:100%;height:100%;display:block}.logo-inverse{color:var(--color-surface)}.logo-inverse .logo-mark{background:var(--color-surface);border-radius:var(--radius-md);padding:2px}
.top-nav{justify-content:space-between;align-items:center;max-width:1240px;height:84px;margin:auto;padding:0 28px;display:flex}.nav-links{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);align-items:center;gap:34px;display:flex}.nav-button{background:var(--color-text-primary);color:var(--color-surface);border-radius:10px;padding:12px 18px}.hero{grid-template-columns:1.02fr .98fr;align-items:center;gap:60px;max-width:1240px;min-height:650px;margin:auto;padding:70px 28px 90px;display:grid}.eyebrow{color:var(--color-action-primary);font-weight:var(--font-weight-bold);letter-spacing:.08em;align-items:center;gap:9px;font-size:13px;display:flex}.eyebrow span{background:var(--color-accent);width:28px;height:2px}.hero h1{letter-spacing:-.065em;margin:22px 0 24px;font-size:64px;line-height:1.12}.hero h1 em{color:var(--color-action-primary);font-style:normal}.hero-copy>p{font-size:var(--font-size-3xl);color:var(--color-text-secondary);max-width:520px;line-height:1.75}.hero-actions{align-items:center;gap:var(--space-7);margin-top:34px;display:flex}.primary-button{background:var(--color-action-primary);color:var(--color-surface);justify-content:center;align-items:center;gap:var(--space-6);font-weight:var(--font-weight-bold);border:0;border-radius:13px;padding:15px 21px;display:inline-flex;box-shadow:0 12px 26px #176b5233}.text-button{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);align-items:center;gap:7px;display:inline-flex}.trust-row{gap:var(--space-4-5);color:var(--color-text-secondary);font-size:var(--font-size-lg);margin-top:36px;display:flex}.trust-row span{gap:var(--space-1);align-items:center;display:flex}.trust-row svg{color:var(--color-action-primary)}.hero-visual{background:radial-gradient(circle,#dceee6 0,#ecf5f0 45%,#0000 70%);border-radius:50%;place-items:center;height:520px;display:grid;position:relative}.orbit{border:1px solid #176b521f;border-radius:50%;position:absolute}.orbit-one{inset:25px}.orbit-two{inset:75px}.preview-card{z-index:2;background:var(--color-surface);width:390px;box-shadow:var(--shadow-elevated);border:1px solid #176b521f;border-radius:24px;padding:28px;position:relative;transform:rotate(-1deg)}.preview-head,.hospital-identity{justify-content:space-between;align-items:center;display:flex}.preview-head>div{flex-direction:column;gap:5px;display:flex}.preview-head strong{font-size:20px}.status{border-radius:var(--radius-full);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);white-space:nowrap;padding:6px 10px;display:inline-flex}.confirmed,.status-confirmed{color:var(--color-status-success);background:var(--color-status-success-surface)}.status-pending{color:var(--color-status-warning);background:var(--color-status-warning-surface)}.status-cancel_requested{color:var(--color-status-danger);background:var(--color-status-danger-surface)}.status-cancelled{color:var(--color-status-neutral);background:var(--color-status-neutral-surface)}.status-completed{color:var(--color-status-info);background:var(--color-status-info-surface)}.status-no_show{color:var(--color-status-special);background:var(--color-status-special-surface)}.hospital-identity{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);justify-content:flex-start;gap:13px;margin:20px 0;padding:23px 0}.hospital-symbol{background:var(--color-action-subtle);width:48px;height:48px;color:var(--color-action-primary);border-radius:14px;place-items:center;display:grid}.hospital-identity>div:last-child{flex-direction:column;gap:5px;display:flex}.hospital-identity span{font-size:var(--font-size-lg);color:var(--color-text-secondary)}.timeline{justify-content:space-between;margin:28px 5px;display:flex;position:relative}.timeline-line{background:var(--color-action-primary);height:2px;position:absolute;top:12px;left:20px;right:20px}.timeline-item{z-index:1;align-items:center;gap:var(--space-2);flex-direction:column;display:flex;position:relative}.timeline-item>span{background:var(--color-action-primary);width:25px;height:25px;color:var(--color-surface);font-size:var(--font-size-sm);box-shadow:0 0 0 1px var(--color-action-primary);border:3px solid #fff;border-radius:50%;place-items:center;display:grid}.timeline-item small{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.soft-button{background:var(--color-action-subtle);width:100%;color:var(--color-action-primary);font-weight:var(--font-weight-bold);border:0;border-radius:10px;padding:13px}.float-card{z-index:3;background:var(--color-surface);align-items:center;gap:var(--space-2-5);border-radius:14px;padding:13px 16px;display:flex;position:absolute;box-shadow:0 16px 35px #13362b21}.float-card>div:last-child{flex-direction:column;gap:2px;display:flex}.float-card strong{font-size:var(--font-size-lg)}.float-card span{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.mini-icon{border-radius:10px;place-items:center;width:37px;height:37px;display:grid}.coral{color:var(--color-accent);background:#ffebe6}.green{background:var(--color-action-subtle);color:var(--color-action-primary)}.family{top:115px;left:4px}.capacity{bottom:90px;right:-2px}.flow-section{background:var(--color-surface-warm);padding:110px 28px}.section-heading{text-align:center;max-width:650px;margin:0 auto 52px}.section-heading>span{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);letter-spacing:.18em;color:var(--color-accent)}.section-heading h2{letter-spacing:-.045em;margin:13px 0;font-size:38px}.section-heading p{color:var(--color-text-secondary)}.step-grid{grid-template-columns:repeat(3,1fr);gap:22px;max-width:1120px;margin:auto;display:grid}.step-card{background:var(--color-surface);border:1px solid #ebece7;border-radius:18px;padding:32px}.step-top{color:var(--color-action-primary);justify-content:space-between;align-items:center;display:flex}.step-top>span{font-size:var(--font-size-lg);color:#a5aea9;font-weight:var(--font-weight-bold)}.step-icon{background:var(--color-action-subtle);border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.step-card h3{margin:34px 0 10px;font-size:21px}.step-card p{font-size:var(--font-size-xl);color:var(--color-text-secondary);line-height:1.65}.portal-section{max-width:1180px;margin:auto;padding:110px 28px}.align-left{text-align:left;margin-left:0}.portal-grid{gap:var(--space-5);grid-template-columns:repeat(3,1fr);display:grid}.portal-card{min-height:320px;transition:var(--motion-standard) transform;border-radius:22px;padding:32px;position:relative;overflow:hidden}.portal-card:hover{transform:translateY(-4px)}.patient-portal{color:var(--color-surface);background:#183f34}.company-portal{background:#e8f1ed}.hospital-portal{background:#f2e9e1}.portal-number{font-size:64px;font-weight:var(--font-weight-bold);opacity:.07;position:absolute;top:14px;right:22px}.portal-icon{width:50px;height:50px;color:var(--color-action-primary);background:#fff9;border-radius:15px;place-items:center;display:grid}.patient-portal .portal-icon{color:var(--color-surface);background:#ffffff1a}.portal-card h3{margin:44px 0 12px;font-size:25px}.portal-card p{line-height:1.7;font-size:var(--font-size-xl);opacity:.72;max-width:260px}.portal-card>span:last-child{font-size:13px;font-weight:var(--font-weight-bold);align-items:center;gap:7px;display:flex;position:absolute;bottom:30px;left:32px}footer{background:var(--color-surface-inverse);color:#ffffff8c;align-items:center;gap:var(--space-7);font-size:var(--font-size-lg);padding:36px max(28px,50% - 590px);display:flex}footer span:last-child{margin-left:auto}
.app-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);align-items:center;height:72px;padding:0 34px;display:flex}.app-header .secure-note{background:var(--color-action-subtle);color:var(--color-action-primary);font-size:var(--font-size-md);font-weight:var(--font-weight-bold);border-radius:20px;margin-left:auto;margin-right:28px;padding:6px 10px}.app-header>a:last-child{color:var(--color-text-secondary);font-size:13px}.reservation-layout{grid-template-columns:350px 1fr;min-height:calc(100vh - 72px);display:grid}.reservation-aside{background:var(--color-surface-inverse);color:var(--color-surface);flex-direction:column;justify-content:space-between;padding:68px 42px;display:flex}.aside-kicker{font-size:var(--font-size-md);letter-spacing:.16em;color:#8fc8b5;font-weight:var(--font-weight-bold)}.reservation-aside h1{letter-spacing:-.04em;margin:15px 0;font-size:32px;line-height:1.35}.reservation-aside p{color:#a9c0b8;line-height:1.6;font-size:var(--font-size-xl)}.reservation-aside p strong{color:var(--color-surface)}.benefit-card{border-radius:var(--radius-xl);gap:var(--space-2);background:#ffffff0d;border:1px solid #ffffff26;flex-direction:column;padding:22px;display:flex}.benefit-card span,.benefit-card small{font-size:var(--font-size-md);color:#9fb8af}.reservation-main{width:100%;max-width:900px;margin:auto;padding:40px 56px}.stepper{justify-content:space-between;margin-bottom:55px;display:flex;position:relative}.stepper:before{content:"";background:var(--color-border);height:1px;position:absolute;top:15px;left:25px;right:25px}.stepper-item{z-index:1;align-items:center;gap:var(--space-2);color:#aab3b0;flex-direction:column;display:flex;position:relative}.stepper-item>span{background:var(--color-surface);border:1px solid var(--color-border);width:30px;height:30px;font-size:var(--font-size-md);border-radius:50%;place-items:center;display:grid}.stepper-item small{font-size:var(--font-size-sm)}.stepper-item.active{color:var(--color-action-primary);font-weight:var(--font-weight-bold)}.stepper-item.active>span{background:var(--color-action-primary);color:var(--color-surface);border-color:var(--color-action-primary)}.step-content{min-height:465px}.content-title>span{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:.14em;color:var(--color-accent)}.content-title h2{letter-spacing:-.045em;margin:10px 0;font-size:31px}.content-title p{color:var(--color-text-secondary);font-size:var(--font-size-xl);margin:0 0 30px}.person-grid{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.select-card{align-items:center;gap:var(--space-3-5);text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;padding:20px;display:flex;position:relative}.select-card.selected,.hospital-card.selected,.package-card.selected{border:1.5px solid var(--color-action-primary);box-shadow:0 6px 20px #176b5214}.select-card i,.hospital-card i{background:var(--color-action-primary);width:22px;height:22px;color:var(--color-surface);border-radius:50%;place-items:center;display:grid;position:absolute;top:15px;right:15px}.avatar{background:var(--color-action-subtle);width:44px;height:44px;color:var(--color-action-primary);font-weight:var(--font-weight-bold);border-radius:50%;place-items:center;display:grid}.select-card>div:nth-child(2){flex-direction:column;gap:5px;display:flex}.select-card span{font-size:var(--font-size-md);color:var(--color-text-secondary)}.hospital-list{gap:var(--space-2-5);display:grid}.hospital-card{text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:15px;gap:17px;width:100%;padding:15px;display:flex;position:relative}.hospital-photo{border-radius:11px;place-items:center;width:105px;min-width:105px;display:grid}.hospital-photo.mint{color:var(--color-action-primary);background:#dceee6}.hospital-photo.blue{color:#49738e;background:#e2edf5}.hospital-photo.violet{color:#71588a;background:#eee7f5}.hospital-info{flex:1}.hospital-info>div:first-child{justify-content:space-between;padding-right:30px;display:flex}.hospital-info>div:first-child span{color:#e59b33;font-size:var(--font-size-lg)}.hospital-info p{font-size:var(--font-size-md);color:var(--color-text-secondary);margin:5px 0}.tag-row{gap:5px;display:flex}.tag-row span{font-size:var(--font-size-xs);background:var(--color-surface-control);border-radius:var(--radius-xs);padding:4px 6px}.hospital-info small{color:var(--color-action-primary);align-items:center;gap:5px;margin-top:9px;display:flex}.package-list{gap:var(--space-3);display:grid}.package-card{text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:15px;justify-content:space-between;align-items:center;width:100%;padding:24px;display:flex}.package-card>div>span{font-size:var(--font-size-xs);color:var(--color-action-primary);background:var(--color-action-subtle);border-radius:var(--radius-xs);padding:4px 6px}.package-card h3{font-size:var(--font-size-3xl);margin:10px 0 6px}.package-card p{font-size:var(--font-size-md);color:var(--color-text-secondary);margin:0}.package-card>strong{font-size:15px}.add-test{background:var(--color-surface-input);width:100%;color:var(--color-action-primary);font-weight:var(--font-weight-bold);border:1px dashed #aabbb5;border-radius:13px;justify-content:space-between;margin-top:12px;padding:17px;display:flex}.add-test small{color:var(--color-text-secondary);font-weight:var(--font-weight-regular)}.date-summary{color:var(--color-action-primary);border-radius:var(--radius-lg);background:#f1f7f4;align-items:center;gap:13px;margin-bottom:22px;padding:15px;display:flex}.date-summary>div{gap:var(--space-1);flex-direction:column;display:flex}.date-summary span{font-size:var(--font-size-md);color:var(--color-text-secondary)}.preference-grid{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.preference-grid label,.request-field{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.date-choice{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-lg);align-items:center;gap:var(--space-3);text-align:left;width:100%;margin-top:8px;padding:16px;display:flex}.date-choice svg{color:var(--color-action-primary)}.date-choice span{flex-direction:column;gap:3px;display:flex}.date-choice small{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.request-field{margin-top:20px;display:block}.request-field textarea{border:1px solid var(--color-border);border-radius:var(--radius-lg);resize:none;width:100%;height:80px;font-size:var(--font-size-lg);margin-top:8px;padding:13px;display:block}.step-actions{justify-content:flex-end;gap:var(--space-2-5);border-top:1px solid var(--color-border);padding-top:22px;display:flex}.step-actions>button:first-child{color:var(--color-text-primary);background:0 0;border:0;padding:14px 22px}.step-actions>button:disabled{opacity:.3}.complete-state{text-align:center;max-width:540px;margin:15px auto}.complete-mark{background:var(--color-action-subtle);width:76px;height:76px;color:var(--color-action-primary);border-radius:50%;place-items:center;margin:auto;display:grid}.complete-state>span{font-size:var(--font-size-md);color:var(--color-action-primary);font-weight:var(--font-weight-bold);margin:20px 0 8px;display:block}.complete-state h2{margin:0 0 10px;font-size:27px}.complete-state>p{color:var(--color-text-secondary);font-size:13px}.receipt{background:var(--color-surface-muted);border-radius:14px;margin:24px 0;padding:8px 22px}.receipt div{border-bottom:1px solid var(--color-border);font-size:var(--font-size-lg);justify-content:space-between;padding:11px 0;display:flex}.receipt div:last-child{border:0}.receipt span{color:var(--color-text-secondary)}.centered{margin:auto}.admin-page{background:var(--color-surface-subtle);grid-template-columns:235px 1fr;min-height:100vh;display:grid}.admin-sidebar{background:var(--color-surface-inverse);flex-direction:column;height:100vh;padding:28px 20px;display:flex;position:sticky;top:0}.admin-sidebar nav{flex-direction:column;gap:5px;margin-top:45px;display:flex}.admin-sidebar nav>span{font-size:var(--font-size-xs);color:var(--color-text-inverse-subtle);letter-spacing:.15em;margin:20px 13px 8px}.admin-sidebar nav a{border-radius:var(--radius-md);color:var(--color-text-inverse-muted);font-size:var(--font-size-lg);align-items:center;gap:11px;padding:12px 13px;display:flex}.admin-sidebar nav a.active{background:var(--color-overlay-inverse-subtle);color:var(--color-surface)}.admin-sidebar>a:last-child{color:var(--color-text-inverse-subtle);font-size:var(--font-size-md);margin-top:auto;padding:12px}.admin-main{min-width:0;padding:0 38px 50px}.admin-top{justify-content:space-between;align-items:center;height:102px;display:flex}.admin-top>div:first-child span{font-size:var(--font-size-sm);color:var(--color-action-primary);font-weight:var(--font-weight-bold)}.admin-top h1{font-size:var(--font-size-5xl);margin:5px 0}.admin-user{font-size:var(--font-size-md);align-items:center;gap:9px;display:flex}.admin-user>span{background:var(--color-surface);border-radius:var(--radius-full);color:var(--color-text-secondary);margin-right:14px;padding:7px 10px}.admin-user>div{background:var(--color-action-subtle);width:34px;height:34px;color:var(--color-action-primary);font-weight:var(--font-weight-bold);border-radius:50%;place-items:center;display:grid}.dashboard-banner{background:var(--color-surface-inverse);min-height:175px;color:var(--color-text-inverse);border-radius:var(--radius-md);padding:var(--space-8) 40px;justify-content:space-between;align-items:center;display:flex;overflow:hidden}.dashboard-banner span{font-size:var(--font-size-sm);color:var(--color-text-inverse-muted)}.dashboard-banner h2{font-size:var(--font-size-5xl);margin:9px 0}.dashboard-banner p{font-size:var(--font-size-lg);color:var(--color-text-inverse-muted)}.progress-ring{background:radial-gradient(circle, var(--color-data-ring-center) 57%, transparent 58%), conic-gradient(var(--color-data-ring-progress) var(--progress-rate,61%), var(--color-overlay-inverse-subtle) 0);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:112px;height:112px;display:flex}.progress-ring strong{font-size:var(--font-size-4xl)}.progress-ring span{font-size:var(--font-size-xs)}.metric-grid{gap:var(--space-3-5);grid-template-columns:repeat(4,1fr);margin:18px 0;display:grid}.metric-card{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:20px;position:relative}.metric-icon{border-radius:var(--radius-sm);background:var(--color-action-subtle);width:39px;height:39px;color:var(--color-action-primary);place-items:center;display:grid}.metric-card>span{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:17px 0 5px;display:block}.metric-card>strong{font-size:var(--font-size-4xl)}.metric-card>small{font-size:var(--font-size-xs);color:var(--color-action-primary);position:absolute;bottom:22px;right:18px}.data-panel,.today-card,.capa-card{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:24px}.panel-head{justify-content:space-between;align-items:center;display:flex}.panel-head h2{margin:0 0 5px;font-size:17px}.panel-head p,.panel-head>div>span{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.panel-head>button,.filter-pills button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary);border-radius:var(--radius-md);font-size:var(--font-size-sm);padding:8px 11px}.table-wrap{margin-top:18px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:var(--font-size-md)}th{text-align:left;color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-bottom:1px solid var(--color-border);padding:11px}td{border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-body);padding:13px 11px}td strong{color:var(--color-text-primary)}td small{color:var(--color-text-secondary);margin-top:3px;display:block}.hospital-overview{gap:var(--space-4);grid-template-columns:1.4fr 1fr;margin-bottom:18px;display:grid}.today-card .panel-head h2{margin-top:8px;font-size:22px}.today-card .panel-head h2 strong{color:var(--color-action-primary)}.today-stats{grid-template-columns:repeat(3,1fr);margin-top:24px;display:grid}.today-stats>div{border-right:1px solid var(--color-border);flex-direction:column;gap:7px;display:flex}.today-stats>div+div{padding-left:25px}.today-stats>div:last-child{border:0}.today-stats span{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.today-stats strong{font-size:22px}.capa-card{flex-direction:column;justify-content:center;display:flex}.capa-head{align-items:center;gap:var(--space-3);display:flex}.capa-head>div:last-child{flex-direction:column;display:flex}.capa-head span{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.capa-head strong{font-size:21px}.bar{background:var(--color-border-subtle);border-radius:10px;height:8px;margin:25px 0 14px;overflow:hidden}.bar span{background:var(--color-action-primary);border-radius:10px;height:100%;display:block}.capa-legend{font-size:var(--font-size-xs);color:var(--color-text-secondary);justify-content:space-between;display:flex}.capa-legend strong{color:var(--color-text-primary);margin-top:4px;display:block}.filter-pills{gap:5px;display:flex}.filter-pills button.active{background:var(--color-action-subtle);color:var(--color-action-primary);border-color:#0000}.row-action{border-radius:var(--radius-sm);background:var(--color-action-primary);color:var(--color-text-on-action);font-size:var(--font-size-xs);border:0;padding:7px 10px}
.patient-home{background:radial-gradient(circle at 92% 2%, #9fdbc638, transparent 32%), var(--color-surface-canvas);min-height:100vh}.patient-home-header{border-bottom:1px solid var(--color-border-subtle);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe0;justify-content:space-between;align-items:center;height:76px;padding:0 max(28px,50vw - 560px);display:flex}.patient-home-header>div{align-items:center;gap:var(--space-3);display:flex}.patient-home-header>div>span{color:var(--color-text-secondary);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.patient-home-hero,.patient-home-menu{width:min(1120px,100% - 56px);margin:0 auto}.patient-home-hero{align-items:end;gap:var(--space-8);grid-template-columns:1fr 330px;padding:64px 0 38px;display:grid}.patient-home-kicker,.patient-home-section-title span{color:var(--color-accent);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:.15em}.patient-home-hero h1{letter-spacing:-.045em;margin:12px 0 8px;font-size:clamp(32px,4vw,48px);line-height:1.2}.patient-home-hero h1 strong{color:var(--color-action-primary)}.patient-home-hero p{color:var(--color-text-secondary);font-size:var(--font-size-2xl);margin:0}.patient-home-benefit{gap:var(--space-2);color:var(--color-text-inverse);background:var(--color-surface-inverse);border-radius:var(--radius-xl);box-shadow:var(--shadow-raised);padding:23px 25px;display:grid}.patient-home-benefit span,.patient-home-benefit small{color:var(--color-text-inverse-muted);font-size:var(--font-size-sm)}.patient-home-benefit strong{font-size:var(--font-size-2xl)}.patient-home-menu{padding:28px 0 24px}.patient-home-section-title{justify-content:space-between;align-items:end;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.patient-home-section-title h2{font-size:var(--font-size-4xl);letter-spacing:-.035em;margin:6px 0 0}.patient-home-section-title>small{color:var(--color-text-secondary);font-size:var(--font-size-md)}.patient-entry-grid{gap:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}.patient-entry-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);min-height:250px;box-shadow:var(--shadow-xs);transition:transform var(--motion-standard), box-shadow var(--motion-standard), border-color var(--motion-standard);flex-direction:column;padding:24px;display:flex}.patient-entry-card:hover{box-shadow:var(--shadow-raised);border-color:#b8cec5;transform:translateY(-4px)}.patient-entry-card:focus-visible{box-shadow:var(--shadow-focus), var(--shadow-raised);outline:none}.patient-entry-icon{border-radius:18px;place-items:center;width:58px;height:58px;margin-bottom:27px;display:grid}.patient-entry-icon.is-green{color:var(--color-action-primary);background:var(--color-action-subtle)}.patient-entry-icon.is-blue{color:var(--color-status-info);background:var(--color-status-info-surface)}.patient-entry-icon.is-coral{color:var(--color-status-danger);background:var(--color-status-danger-surface)}.patient-entry-icon.is-violet{color:var(--color-status-special);background:var(--color-status-special-surface)}.patient-entry-card h3{font-size:var(--font-size-3xl);letter-spacing:-.025em;margin:0 0 8px}.patient-entry-card p{color:var(--color-text-secondary);font-size:var(--font-size-md);line-height:var(--line-height-body);margin:0}.patient-entry-meta{padding-top:var(--space-5);color:var(--color-action-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);justify-content:space-between;align-items:center;margin-top:auto;display:flex}.patient-home-footer{border-top:1px solid var(--color-border-subtle);width:min(1120px,100% - 56px);color:var(--color-text-tertiary);font-size:var(--font-size-sm);background:0 0;margin:36px auto 0;padding:18px 0 24px;display:block}.patient-home-footer span:last-child{margin-left:0}@media (max-width:900px){.patient-entry-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.patient-home-header{height:68px;padding:0 18px}.patient-home-header>div>span{display:none}.patient-home-hero,.patient-home-menu,.patient-home-footer{width:min(100% - 32px,1120px)}.patient-home-hero{gap:var(--space-5);grid-template-columns:1fr;padding:38px 0 18px}.patient-home-hero p{font-size:var(--font-size-xl)}.patient-home-section-title>small{display:none}.patient-entry-grid{gap:var(--space-3);grid-template-columns:1fr 1fr}.patient-entry-card{min-height:214px;padding:19px}.patient-entry-icon{border-radius:15px;width:50px;height:50px;margin-bottom:20px}.patient-entry-card h3{font-size:var(--font-size-2xl)}.patient-entry-card p{font-size:var(--font-size-sm)}.patient-entry-meta{font-size:var(--font-size-xs)}.patient-home-footer{margin-top:28px;padding-bottom:24px}}
.updates-page{background:var(--color-surface-canvas);min-height:100vh}.updates-home-link{color:var(--color-action-primary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:8px 12px}.updates-home-link:hover{background:var(--color-action-subtle)}.updates-workspace{width:min(920px,100% - 56px);margin:0 auto;padding:56px 0 12px}.updates-title{margin-bottom:var(--space-7)}.updates-title>span{color:var(--color-accent);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:.15em}.updates-title h1{font-size:var(--font-size-4xl);letter-spacing:-.035em;margin:8px 0}.updates-title p,.updates-panel-heading span{color:var(--color-text-secondary)}.updates-title p{font-size:var(--font-size-lg);margin:0}.updates-panel{margin-bottom:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-xs);padding:28px}.updates-panel-heading{justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.updates-panel-heading h2{font-size:var(--font-size-2xl);margin:0}.updates-panel-heading span,.updates-empty{font-size:var(--font-size-sm)}.updates-empty{color:var(--color-text-tertiary);text-align:center;margin:0;padding:30px 0}.portal-notices.is-standalone{gap:var(--space-3);margin:0}.portal-notices.is-standalone details{border:1px solid var(--color-border-subtle);border-left:3px solid var(--color-accent);border-radius:var(--radius-sm);padding:16px 18px}.notification-inbox.is-standalone{margin:0;display:block}.notification-inbox.is-standalone>div{width:auto;box-shadow:none;border:0;padding:0;position:static}.notification-inbox.is-standalone>div button{border:1px solid var(--color-border-subtle);border-radius:var(--radius-sm);padding:14px}.notification-inbox.is-standalone>div button+button{margin-top:var(--space-2)}.notification-inbox.is-standalone>div>p{color:var(--color-text-tertiary);text-align:center;margin:0;padding:30px 0}@media (max-width:620px){.updates-workspace{width:min(100% - 32px,920px);padding-top:36px}.updates-panel{padding:20px}.updates-panel-heading{gap:var(--space-1);display:grid}}
@media (max-width:900px){.hero{grid-template-columns:1fr;padding-top:40px}.hero-copy{text-align:center}.eyebrow,.hero-actions,.trust-row{justify-content:center}.hero-copy>p{margin-left:auto;margin-right:auto}.portal-grid,.step-grid,.reservation-layout{grid-template-columns:1fr}.reservation-aside{display:none}.admin-page{grid-template-columns:76px 1fr}.admin-sidebar{padding:24px 12px}.admin-sidebar .logo>span:last-child,.admin-sidebar nav a:not(.active){font-size:0}.admin-sidebar nav span,.admin-sidebar>a:last-child{display:none}.admin-sidebar nav a{justify-content:center}.admin-main{padding:0 18px 35px}.metric-grid{grid-template-columns:1fr 1fr}.hospital-overview{grid-template-columns:1fr}}@media (max-width:620px){.nav-links>a:not(.nav-button){display:none}.hero{padding-top:25px}.hero h1{font-size:44px}.hero-visual{height:430px}.preview-card{width:90%;padding:20px}.float-card{display:none}.trust-row{flex-wrap:wrap}.reservation-main{padding:28px 20px}.stepper-item small{display:none}.person-grid,.preference-grid{grid-template-columns:1fr}.step-content{min-height:540px}.metric-grid{grid-template-columns:1fr}.admin-page{display:block}.admin-sidebar{display:none}.admin-main{padding:0 12px 30px}.dashboard-banner{padding:25px}.progress-ring{display:none}.hospital-overview{grid-template-columns:1fr}.today-stats>div+div{padding-left:12px}.app-header{padding:0 20px}}
