﻿:root{--v2-font-latin: "IBM Plex Sans TC", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--v2-font-sans: "IBM Plex Sans TC", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--v2-ink: #071513;--v2-ink-soft: #183632;--v2-green: #006b5c;--v2-green-dark: #00473d;--v2-green-light: #d9f4eb;--v2-dept-derm: #8b5bb7;--v2-dept-derm-dark: #5d347f;--v2-dept-derm-soft: #f1e7fa;--v2-dept-ent: #2f7d4f;--v2-dept-ent-dark: #1f5f39;--v2-dept-ent-soft: #e2f3e8;--v2-department-color: var(--v2-green);--v2-department-color-dark: var(--v2-green-dark);--v2-department-soft: var(--v2-green-light);--v2-department-glass: rgba(0, 107, 92, 0.14);--v2-department-glass-border: rgba(0, 107, 92, 0.28);--v2-red: #df321f;--v2-red-dark: #9d1f13;--v2-yellow: #ffd23d;--v2-blue: #223a8f;--v2-paper: #f4f7f7;--v2-surface: #ffffff;--v2-line: #cfdcda;--v2-muted: #58706c;--v2-shadow: 0 20px 48px rgba(7, 21, 19, 0.12);--v2-space-1: 4px;--v2-space-2: 8px;--v2-space-3: 12px;--v2-space-4: 16px;--v2-space-5: 24px;--v2-space-6: 32px;--v2-panel-pad: 22px;--v2-panel-pad-compact: 14px;--v2-public-page-title-size: clamp(38px, 5vw, 64px);--v2-public-page-title-size-mobile: clamp(30px, 8.4vw, 34px);--v2-public-lead-size: 19px;--v2-public-lead-size-mobile: 17px;--v2-public-card-title-size: 22px;--v2-public-body-size: 16px;--v2-calendar-row-week: 40px;--v2-calendar-row-day: 48px;--v2-sticky-offset: 78px}html:has(>.v2-body){scrollbar-gutter:stable}[data-department-theme="皮膚科"],.v2-booking-shell[data-current-department="皮膚科"]{--v2-department-color: var(--v2-dept-derm);--v2-department-color-dark: var(--v2-dept-derm-dark);--v2-department-soft: var(--v2-dept-derm-soft);--v2-department-glass: rgba(139, 91, 183, 0.16);--v2-department-glass-border: rgba(139, 91, 183, 0.34)}[data-department-theme="耳鼻喉科"],.v2-booking-shell[data-current-department="耳鼻喉科"]{--v2-department-color: var(--v2-dept-ent);--v2-department-color-dark: var(--v2-dept-ent-dark);--v2-department-soft: var(--v2-dept-ent-soft);--v2-department-glass: rgba(47, 125, 79, 0.16);--v2-department-glass-border: rgba(47, 125, 79, 0.32)}.v2-body{background:linear-gradient(180deg, rgba(0,107,92,0.06), rgba(255,255,255,0) 260px),var(--v2-paper);color:var(--v2-ink);font-family:var(--v2-font-sans);letter-spacing:0;margin:0}.v2-body *,.v2-body *::before,.v2-body *::after{box-sizing:border-box}.v2-body p,.v2-body ol,.v2-body ul,.v2-body td,.v2-body th{font-family:inherit}.v2-body a:not([class]),.v2-body a:not([class]):visited{color:var(--v2-green-dark)}.v2-body a:not([class]):hover{background-color:transparent;color:var(--v2-green-dark)}.v2-body input,.v2-body button,.v2-body textarea,.v2-body select{font-family:inherit}.v2-body time,.v2-body input[type="date"],.v2-body input[type="time"],.v2-body input[type="datetime-local"],.v2-calendar-title p,.v2-date-card strong,.v2-session-label span,.v2-slot span,.v2-schedule-time,.v2-time-cell{font-family:var(--v2-font-latin);font-variant-numeric:tabular-nums}.v2-body [hidden]{display:none !important}.v2-body img,.v2-body table{max-width:100%}.v2-body h1,.v2-body h2,.v2-body h3,.v2-body p,.v2-body a,.v2-body strong,.v2-body span,.v2-body small,.v2-body td,.v2-body th{overflow-wrap:anywhere}.v2-topbar{align-items:center;background:rgba(255,255,255,0.98);border-bottom:3px solid var(--v2-ink);display:flex;gap:var(--v2-space-5);justify-content:space-between;padding:10px clamp(18px, 4vw, 56px)}.v2-brand{align-items:center;color:var(--v2-ink);display:inline-flex;flex:0 0 auto;gap:10px;min-width:0;text-decoration:none}.v2-brand:visited{color:var(--v2-ink)}.v2-brand strong,.v2-brand small{display:block}.v2-brand strong{font-size:16px;line-height:1.25}.v2-brand small{color:var(--v2-muted);font-size:12px;margin-top:2px}.v2-brand-departments{align-items:center;display:flex !important;flex-wrap:wrap;gap:4px}.v2-brand-mark{align-items:center;background:var(--v2-ink);border:2px solid var(--v2-green);border-radius:8px;color:white;display:inline-flex;font-weight:900;height:40px;justify-content:center;flex:0 0 auto;width:40px}.v2-brand-logo-frame{align-items:center;background:transparent;border:0;border-radius:0;display:inline-flex;padding:8px 10px}.v2-brand-logo{display:block;height:auto;width:clamp(176px, 22vw, 260px)}.v2-department-label{align-items:center;border-left:4px solid var(--v2-department-color);color:var(--v2-department-color-dark);display:inline-flex !important;font-size:12px !important;font-weight:900 !important;line-height:1 !important;padding:1px 0 1px 7px;vertical-align:middle;white-space:nowrap}.v2-department-label-compact{font-size:11px !important;padding-left:6px}.v2-department-label-inline{margin:0 2px}.v2-department-label-heading{font-size:18px !important;padding:2px 0 2px 9px}.v2-nav{align-items:center;display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end;min-width:0}.v2-nav a{border:1px solid transparent;border-radius:6px;color:var(--v2-ink);font-size:14px;font-weight:800;min-width:72px;padding:8px 10px;text-align:center;text-decoration:none;white-space:nowrap}.v2-nav a:visited{color:var(--v2-ink)}.v2-nav a:hover{background:var(--v2-ink);color:white}.v2-nav a.is-active{background:var(--v2-ink);color:white}.v2-nav a.v2-side-switch{border-color:var(--v2-green);color:var(--v2-green-dark);min-width:0}.v2-nav a:hover:visited,.v2-nav a.is-active:visited{color:white}.v2-nav a.v2-side-switch:visited{color:var(--v2-green-dark)}.v2-nav a.v2-side-switch:hover{background:var(--v2-green);color:white}.v2-nav a.v2-side-switch:hover:visited{color:white}.v2-nav .button_to{margin:0}.v2-nav-user{background:#eef6f4;border:1px solid var(--v2-line);border-radius:6px;color:var(--v2-ink-soft);font-size:13px;font-weight:900;padding:8px 10px}.v2-nav-button{background:white;border:1px solid var(--v2-line);border-radius:6px;color:var(--v2-ink);cursor:pointer;font:inherit;font-size:14px;font-weight:800;padding:8px 10px}.v2-nav-button:hover{background:var(--v2-ink);color:white}.v2-staff-body{background:#eef2f1}.v2-staff-topbar{align-items:center;background:#071513;border-bottom:4px solid var(--v2-green);color:white;display:flex;gap:var(--v2-space-5);justify-content:space-between;padding:12px clamp(18px, 4vw, 56px);position:sticky;top:0;z-index:40}.v2-staff-brand{align-items:center;color:white;display:inline-flex;gap:12px;min-width:0;text-decoration:none}.v2-staff-brand:visited{color:white}.v2-staff-brand strong,.v2-staff-brand small{display:block}.v2-staff-brand strong{font-size:17px;font-weight:900;line-height:1.15}.v2-staff-brand small{color:#b8cbc8;font-size:12px;font-weight:800;margin-top:2px}.v2-staff-brand-mark{align-items:center;background:var(--v2-green);border-radius:8px;color:white;display:inline-flex;flex:0 0 42px;font-weight:900;height:42px;justify-content:center;width:42px}.v2-staff-nav{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;min-width:0}.v2-body .v2-staff-nav a,.v2-body .v2-staff-nav-button{align-items:center;background:transparent;border:1px solid rgba(255,255,255,0.24);border-radius:6px;color:white;cursor:pointer;display:inline-flex;font:inherit;font-size:14px;font-weight:850;justify-content:center;line-height:1;min-height:36px;padding:8px 10px;text-decoration:none;white-space:nowrap}.v2-body .v2-staff-nav a:visited{color:white}.v2-body .v2-staff-nav a:hover,.v2-body .v2-staff-nav a.is-active,.v2-body .v2-staff-nav-button:hover{background:white;color:var(--v2-ink)}.v2-body .v2-staff-nav a:hover:visited,.v2-body .v2-staff-nav a.is-active:visited{color:var(--v2-ink)}.v2-body .v2-staff-nav a.v2-side-switch{background:rgba(0,107,92,0.34);border-color:var(--v2-green)}.v2-body .v2-staff-nav a.v2-side-switch:visited{color:white}.v2-body .v2-staff-nav a.v2-side-switch:hover{background:white;color:var(--v2-green-dark)}.v2-body .v2-staff-nav a.v2-side-switch:hover:visited{color:var(--v2-green-dark)}.v2-staff-nav .button_to{display:inline-flex;margin:0}.v2-role-preview-switch{align-items:center;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.18);border-radius:8px;display:inline-flex;gap:4px;min-height:36px;padding:3px}.v2-role-preview-switch>span{color:#b8cbc8;font-size:11px;font-weight:900;padding:0 6px;white-space:nowrap}.v2-role-preview-form{display:inline-flex;margin:0}.v2-body .v2-role-preview-button{align-items:center;background:transparent;border:0;border-radius:5px;color:white;cursor:pointer;display:inline-flex;font:inherit;font-size:12px;font-weight:900;justify-content:center;line-height:1;min-height:28px;padding:6px 8px;white-space:nowrap}.v2-body .v2-role-preview-button:hover,.v2-body .v2-role-preview-button.is-active{background:white;color:var(--v2-ink)}.v2-staff-user{border-left:1px solid rgba(255,255,255,0.24);display:grid;gap:1px;padding-left:12px}.v2-staff-user strong{color:white;font-size:13px;font-weight:900;line-height:1.1}.v2-staff-user small{color:#b8cbc8;font-size:11px;font-weight:800}.v2-staff-page{max-width:1520px}.v2-address-strip{align-items:center;background:var(--v2-ink);color:white;display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:center;padding:7px clamp(16px, 4vw, 48px);text-align:center;width:100%}.v2-address-strip strong,.v2-address-strip span{font-size:14px}.v2-address-strip a,.v2-address-strip a:link,.v2-address-strip a:visited,.v2-address-strip a:hover,.v2-address-strip a:active,.v2-address-strip a:focus,.v2-address-strip .v2-address-phone,.v2-address-strip .v2-address-phone:link,.v2-address-strip .v2-address-phone:visited,.v2-address-strip .v2-address-phone:hover,.v2-address-strip .v2-address-phone:active,.v2-address-strip .v2-address-phone:focus,.v2-address-strip a[x-apple-data-detectors],.v2-address-strip .v2-address-phone[x-apple-data-detectors]{-webkit-text-fill-color:white !important;color:white !important;font-size:14px;font-weight:900;text-decoration:none !important;text-decoration-color:currentColor !important}.v2-address-strip a:hover{opacity:0.86}.v2-notice-banner{align-items:center;background:#ce3838;border:1px solid rgba(255,255,255,0.42);border-radius:8px;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);box-shadow:0 22px 56px rgba(110,29,25,0.24);color:white;display:grid;gap:var(--v2-space-3);grid-template-columns:38px minmax(0, 1fr) auto;margin:12px auto 0;max-width:1120px;padding:12px clamp(18px, 3vw, 32px);width:calc(100% - clamp(32px, 8vw, 112px))}.v2-notice-symbol{align-items:center;background:rgba(255,255,255,0.18);border:1px solid rgba(255,255,255,0.76);border-radius:7px;backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);color:white;display:flex;height:34px;justify-content:center;width:34px}.v2-notice-copy{max-width:82ch;min-width:0}.v2-notice-symbol svg,.v2-flash-symbol svg{fill:none;height:22px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4;width:22px}.v2-notice-copy strong{display:block;font-size:17px;line-height:1.24}.v2-notice-copy p{display:block;font-size:14px;font-weight:400;line-height:1.42;margin:4px 0 0;overflow:visible}.v2-notice-copy p+p{margin-top:2px}.v2-notice-link{align-items:center;background:rgba(255,255,255,0.68);border:1px solid rgba(255,255,255,0.76);border-radius:7px;backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);box-shadow:inset 0 1px 0 rgba(255,255,255,0.58),0 12px 28px rgba(93,20,18,0.18);color:#7f211e;display:inline-flex;font-weight:900;min-height:36px;padding:7px 12px;text-decoration:none;white-space:nowrap}.v2-notice-link:visited{color:#7f211e}.v2-notice-link:hover,.v2-notice-link:hover:visited{background:rgba(255,255,255,0.84);border-color:rgba(255,255,255,0.92);color:#671713}.v2-page{margin:0 auto;max-width:1480px;padding:var(--v2-space-5) clamp(16px, 4vw, 48px) 72px;width:100%}.v2-public-footer{align-items:center;background:#071513;color:white;display:grid;gap:12px;justify-items:center;padding:34px clamp(16px, 4vw, 48px) 38px;text-align:center}.v2-public-footer strong{color:white;font-size:clamp(22px, 3vw, 32px);font-weight:900;line-height:1.2}.v2-public-footer p{color:#dce9e5;font-size:16px;font-weight:650;line-height:1.55;margin:0;max-width:560px}.v2-footer-cta{min-width:144px}.v2-flash-stack{display:grid;gap:8px;left:50%;max-width:1120px;pointer-events:none;position:fixed;top:clamp(12px, 3vh, 28px);transform:translateX(-50%);width:calc(100% - clamp(32px, 8vw, 112px));z-index:1200}.v2-flash{align-items:center;animation:v2-flash-enter 180ms ease-out;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);border:1px solid rgba(255,255,255,0.46);border-radius:8px;box-shadow:0 22px 56px rgba(10,53,34,0.18),inset 0 1px 0 rgba(255,255,255,0.18);color:white;display:grid;gap:var(--v2-space-3);grid-template-columns:34px minmax(0, 1fr) auto;padding:12px clamp(14px, 3vw, 24px);pointer-events:auto}.v2-flash.is-dismissing{opacity:0;transform:translateY(-10px);transition:opacity 180ms ease, transform 180ms ease}.v2-flash-notice{background:linear-gradient(135deg, rgba(15,99,63,0.92), rgba(20,122,76,0.86)),rgba(15,99,63,0.82)}.v2-flash-department-derm{background:linear-gradient(135deg, rgba(93,52,127,0.94), rgba(139,91,183,0.88)),var(--v2-dept-derm)}.v2-flash-department-ent{background:linear-gradient(135deg, rgba(31,95,57,0.94), rgba(47,125,79,0.88)),var(--v2-dept-ent)}.v2-flash-alert{background:linear-gradient(135deg, rgba(202,61,55,0.9), rgba(174,48,45,0.86)),rgba(202,61,55,0.82)}.v2-flash-symbol{align-items:center;background:rgba(255,255,255,0.18);border:1px solid rgba(255,255,255,0.76);border-radius:7px;color:white;display:flex;height:34px;justify-content:center;width:34px}.v2-flash p{font-size:15px;font-weight:850;line-height:1.42;margin:0}.v2-flash-close{align-items:center;background:rgba(255,255,255,0.2);border:1px solid rgba(255,255,255,0.62);border-radius:7px;color:white;cursor:pointer;display:inline-flex;font:inherit;font-size:18px;font-weight:900;height:34px;justify-content:center;line-height:1;padding:0;width:34px}.v2-flash-close:hover{background:rgba(255,255,255,0.32)}@keyframes v2-flash-enter{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.v2-auth-shell{display:grid;gap:var(--v2-space-5);margin:18px auto 0;max-width:1040px}.v2-auth-copy{max-width:760px}.v2-kicker{color:var(--v2-green-dark);display:inline-block;font-size:13px;font-weight:900;letter-spacing:0;margin-bottom:8px;text-transform:uppercase}.v2-auth-copy h1{font-size:clamp(38px, 6vw, 68px);font-weight:900;letter-spacing:0;line-height:1;margin:0 0 14px}.v2-auth-copy p{color:var(--v2-ink-soft);font-size:19px;font-weight:700;line-height:1.55;margin:0}.v2-auth-grid{display:grid;gap:16px;grid-template-columns:minmax(0, 1.25fr) minmax(300px, 0.75fr)}.v2-auth-grid-single{grid-template-columns:minmax(0, 760px)}.v2-auth-grid-single.is-password-step{grid-template-columns:minmax(0, 500px)}.v2-auth-panel{background:var(--v2-surface);border:2px solid var(--v2-line);border-radius:8px;box-shadow:var(--v2-shadow);display:grid;gap:14px;padding:var(--v2-panel-pad)}.v2-panel-heading{align-items:baseline;border-bottom:1px solid var(--v2-line);display:flex;gap:10px;justify-content:space-between;padding-bottom:10px}.v2-panel-heading-action{align-items:center}.v2-panel-title{display:grid;gap:3px;min-width:0}.v2-panel-heading strong{font-size:17px;font-weight:900}.v2-panel-heading span{color:var(--v2-muted);font-size:13px;font-weight:850}.v2-profile-grid{display:grid;gap:10px;grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-profile-role-list,.v2-profile-role-group{display:grid;gap:12px}.v2-profile-role-heading{align-items:center;color:var(--v2-ink);display:flex;gap:10px;justify-content:space-between;min-width:0}.v2-profile-role-heading strong{font-size:14px;font-weight:900}.v2-profile-role-heading span{color:var(--v2-muted);flex:0 0 auto;font-size:12px;font-weight:850}.v2-profile-card,.v2-selected-profile{align-items:center;border-radius:8px;display:flex;gap:12px;min-width:0}.v2-profile-card{background:#fbffff;border:2px solid var(--v2-line);color:var(--v2-ink);padding:12px;text-decoration:none}.v2-profile-card:visited{color:var(--v2-ink)}.v2-profile-card:hover,.v2-profile-card.is-selected{background:var(--v2-green-light);border-color:var(--v2-green);transform:translateY(-1px)}.v2-profile-initial{align-items:center;background:var(--v2-ink);border-radius:8px;color:white;display:inline-flex;flex:0 0 42px;font-size:18px;font-weight:900;height:42px;justify-content:center;width:42px}.v2-profile-copy,.v2-selected-profile span:last-child{display:grid;gap:2px;min-width:0}.v2-profile-copy strong,.v2-selected-profile strong{font-size:16px;font-weight:900}.v2-profile-copy small,.v2-selected-profile small{color:var(--v2-muted);font-size:12px;font-weight:850}.v2-selected-profile{background:#eef6f4;border:1px solid var(--v2-line);padding:10px}.v2-auth-form{align-content:start}.v2-auth-back{flex:0 0 auto;padding:8px 12px}.v2-hero,.v2-ops-hero,.v2-page-heading{align-items:stretch;display:grid;gap:24px;grid-template-columns:minmax(0, 1fr) minmax(260px, 420px);margin:14px 0 26px}.v2-booking-hero{display:block;margin:14px 0 26px;max-width:980px}.v2-page-heading{display:block;max-width:980px}.v2-hero{grid-template-columns:minmax(0, 1fr);max-width:980px}.v2-hero h1,.v2-ops-hero h1,.v2-booking-hero h1,.v2-page-heading h1,.v2-confirmation h1{color:var(--v2-ink);font-size:var(--v2-public-page-title-size);font-weight:900;letter-spacing:0;line-height:1.08;margin:0 0 18px;max-width:980px}.v2-hero p,.v2-ops-hero p,.v2-booking-hero p,.v2-page-heading p,.v2-confirmation p{color:var(--v2-ink-soft);font-size:var(--v2-public-lead-size);font-weight:650;line-height:1.65;margin:0;max-width:960px}.v2-hero-actions,.v2-ops-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.v2-ops-body{--v2-panel-pad: var(--v2-panel-pad-compact);--v2-sticky-offset: 60px}.v2-ops-body .v2-address-strip{display:none}.v2-ops-body .v2-page{max-width:none;padding-top:var(--v2-space-3)}.v2-ops-calendar-body .v2-page{display:flex;flex-direction:column;gap:var(--v2-space-3)}.v2-ops-body .v2-notice-banner{gap:var(--v2-space-2);grid-template-columns:28px minmax(0, 1fr) auto;padding:5px clamp(16px, 3vw, 32px)}.v2-ops-body .v2-notice-symbol{height:26px;width:26px}.v2-ops-body .v2-notice-symbol svg{height:17px;width:17px}.v2-ops-body .v2-notice-copy{align-items:baseline;display:flex;gap:var(--v2-space-2);min-width:0}.v2-ops-body .v2-notice-copy strong{flex:0 1 auto;font-size:14px;max-width:34ch;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2-ops-body .v2-notice-copy p{-webkit-line-clamp:1;font-size:13px;margin:0}.v2-ops-body .v2-notice-link{font-size:13px;padding:5px 8px}.v2-ops-calendar-body .v2-ops-hero{align-items:center;gap:var(--v2-space-3);grid-template-columns:minmax(0, 1fr) auto;margin:0;order:1}.v2-ops-body .v2-ops-hero h1{font-size:clamp(24px, 2.6vw, 34px);line-height:1.05;margin:0}.v2-ops-body .v2-ops-hero p{font-size:14px;line-height:1.35;margin-top:4px}.v2-ops-body .v2-ops-actions{gap:var(--v2-space-2);justify-content:flex-end;margin-top:0}.v2-ops-body .v2-button{padding:8px 11px}.v2-ops-calendar-body .v2-ops-command{order:2}.v2-ops-calendar-body .v2-ops-calendar-layout{order:2}.v2-ops-calendar-body .v2-calendar-workspace{order:3}.v2-ops-calendar-body .v2-ops-queue-grid{order:4}.v2-booking-body .v2-booking-hero{margin:14px 0 var(--v2-space-3)}.v2-maintenance-body{background:linear-gradient(180deg, rgba(223,50,31,0.1), rgba(255,255,255,0) 280px),var(--v2-paper);min-height:100vh}.v2-maintenance-page{align-items:center;display:grid;min-height:100vh;padding:32px}.v2-maintenance-shell{background:rgba(255,255,255,0.94);border:2px solid var(--v2-ink);border-radius:8px;box-shadow:var(--v2-shadow);display:grid;gap:24px;margin:0 auto;max-width:940px;overflow:hidden;padding:34px;position:relative;width:100%}.v2-maintenance-shell::before{background:var(--v2-red);content:"";height:8px;left:0;position:absolute;right:0;top:0}.v2-maintenance-brand{align-items:center;background:transparent;border:0;box-shadow:none;display:inline-flex;justify-self:start;padding:0}.v2-maintenance-logo{display:block;height:auto;max-width:100%;width:320px}.v2-maintenance-copy{max-width:760px}.v2-maintenance-kicker{color:var(--v2-red-dark);font-size:14px;font-weight:900;letter-spacing:0;margin:0 0 10px}.v2-maintenance-copy h1{color:var(--v2-ink);font-size:46px;font-weight:900;letter-spacing:0;line-height:1.12;margin:0 0 16px}.v2-maintenance-copy p{color:var(--v2-ink-soft);font-size:19px;font-weight:650;line-height:1.7;margin:0}.v2-maintenance-contact{align-items:center;border-bottom:1px solid var(--v2-line);border-top:1px solid var(--v2-line);display:flex;flex-wrap:wrap;gap:12px 18px;padding:18px 0}.v2-maintenance-phone{color:var(--v2-green-dark);font-family:var(--v2-font-latin);font-size:26px;font-variant-numeric:tabular-nums;font-weight:900;text-decoration:none}.v2-maintenance-phone:visited{color:var(--v2-green-dark)}.v2-maintenance-phone:hover{background:transparent;color:var(--v2-green)}.v2-maintenance-contact span{color:var(--v2-ink);font-size:17px;font-weight:800}.v2-maintenance-hours{display:grid;gap:12px;grid-template-columns:repeat(3, minmax(0, 1fr));margin:0}.v2-maintenance-hours div{background:#eef6f4;border:1px solid var(--v2-line);border-radius:8px;padding:14px}.v2-maintenance-hours dt{color:var(--v2-muted);font-size:13px;font-weight:900;margin:0 0 6px}.v2-maintenance-hours dd{color:var(--v2-ink);font-size:16px;font-weight:850;line-height:1.45;margin:0}.v2-button,input.v2-button,button.v2-button{background:var(--v2-green);border:2px solid var(--v2-green);border-radius:7px;color:white;cursor:pointer;display:inline-flex;font-size:15px;font-weight:900;justify-content:center;line-height:1.2;padding:11px 16px;text-decoration:none}.v2-button:hover{background:var(--v2-green-dark);border-color:var(--v2-green-dark);color:white;text-decoration:none}.v2-button:visited,.v2-button:hover:visited{color:white}.v2-button:disabled{background:#899a96;border-color:#899a96;color:white;cursor:not-allowed}.v2-button-secondary{background:white;color:var(--v2-ink)}.v2-button-secondary:visited{color:var(--v2-ink)}.v2-button-secondary:hover{background:var(--v2-ink);border-color:var(--v2-ink);color:white}.v2-button-secondary:hover:visited{color:white}.v2-button-danger{background:var(--v2-red);border-color:var(--v2-red);color:white}.v2-button-danger:visited{color:white}.v2-button-danger:hover{background:var(--v2-red-dark);border-color:var(--v2-red-dark)}.v2-button-full{width:100%}.v2-text-link{color:var(--v2-green-dark);font-size:14px;font-weight:900;text-decoration:none}.v2-text-link:visited{color:var(--v2-green-dark)}.v2-subtle-text-link,.v2-subtle-text-link:visited{color:inherit;font:inherit;font-weight:inherit;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-thickness:1px;text-underline-offset:0.18em}.v2-subtle-text-link:hover{background:transparent;color:var(--v2-green-dark)}.v2-status-card,.v2-panel,.v2-feature-link,.v2-list-item,.v2-confirmation,.v2-booking-rail,.v2-booking-calendar,.v2-booking-form-panel,.v2-calendar-panel,.v2-ops-command,.v2-attendance-clock{background:var(--v2-surface);border:2px solid var(--v2-ink);border-radius:8px;box-shadow:var(--v2-shadow)}.v2-status-card,.v2-panel,.v2-list-item,.v2-confirmation,.v2-booking-rail,.v2-booking-calendar,.v2-booking-form-panel,.v2-calendar-panel,.v2-ops-command,.v2-attendance-clock{padding:var(--v2-panel-pad)}.v2-status-card h2,.v2-panel h2,.v2-list-item h2,.v2-booking-rail h2,.v2-booking-calendar h2,.v2-booking-form-panel h2,.v2-attendance-clock h2{color:var(--v2-ink);font-size:var(--v2-public-card-title-size);font-weight:900;line-height:1.25;margin:0 0 14px}.v2-rail-instruction{color:var(--v2-ink-soft);font-size:14px;font-weight:800;line-height:1.45;margin:-4px 0 16px}.v2-status-card p,.v2-list-item p,.v2-panel p,.v2-notice-body p{color:var(--v2-ink-soft);font-size:var(--v2-public-body-size);line-height:1.6}.v2-grid{display:grid;gap:18px;margin:18px 0}.v2-hero>*,.v2-ops-hero>*,.v2-grid>*,.v2-booking-shell>*,.v2-session-band>*,.v2-ops-command>*,.v2-ops-lower-grid>*,.v2-attendance-board>*,.v2-clock-grid>*,.v2-form-row>*{min-width:0}.v2-grid-two{grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-grid-three{grid-template-columns:repeat(3, minmax(0, 1fr))}.v2-grid-four{grid-template-columns:repeat(4, minmax(0, 1fr))}.v2-feature-link{color:var(--v2-ink);display:block;padding:22px;text-decoration:none}.v2-feature-link:visited{color:var(--v2-ink)}.v2-feature-link:hover{background:var(--v2-ink);color:white}.v2-feature-link:hover:visited{color:white}.v2-feature-link strong,.v2-feature-link span{display:block}.v2-feature-link strong{font-size:var(--v2-public-card-title-size);font-weight:900;margin-bottom:8px}.v2-feature-link span{color:inherit;font-size:var(--v2-public-body-size);line-height:1.55}.v2-services-heading{margin-bottom:34px}.v2-services-overview{align-items:stretch;margin-bottom:44px}.v2-services-department{border-top:2px solid var(--v2-ink);display:grid;gap:22px;margin:34px 0 42px;max-width:980px;padding-top:26px}.v2-services-overview-card{align-content:start;height:100%;margin:0;max-width:none}.v2-services-department-header{display:grid;gap:6px}.v2-services-department-header p{color:var(--v2-department-color-dark);font-size:14px;font-weight:900;margin:0}.v2-services-department-header h2{color:var(--v2-ink);font-size:clamp(28px, 3vw, 38px);font-weight:900;letter-spacing:0;line-height:1.15;margin:0}.v2-services-doctor-card{backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);background:linear-gradient(135deg, var(--v2-department-glass), rgba(255,255,255,0.68)),rgba(255,255,255,0.58);border:1px solid var(--v2-department-glass-border);border-left:6px solid var(--v2-department-color);border-radius:8px;box-shadow:inset 0 1px 0 rgba(255,255,255,0.72),var(--v2-shadow);display:grid;gap:10px;justify-self:start;max-width:520px;padding:22px}.v2-services-doctor-card h3{color:var(--v2-department-color-dark);font-size:22px;font-weight:900;line-height:1.28;margin:0}.v2-services-doctor-card ul{color:var(--v2-ink-soft);display:grid;font-size:15px;gap:4px;line-height:1.45;list-style:none;margin:0;padding:0}.v2-services-overview-card .v2-services-doctor-card{justify-self:stretch;max-width:none}.v2-services-overview-copy{color:var(--v2-ink-soft);font-size:var(--v2-public-body-size);line-height:1.6;margin:0}.v2-services-topic-list{display:grid;gap:18px;grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-services-topic{background:var(--v2-surface);border:2px solid var(--v2-ink);border-radius:8px;box-shadow:var(--v2-shadow);display:block;padding:22px}.v2-services-topic h3{color:var(--v2-department-color-dark);font-size:22px;font-weight:900;line-height:1.28;margin:0 0 10px}.v2-services-topic p{color:var(--v2-ink-soft);font-size:var(--v2-public-body-size);line-height:1.6;margin:0;max-width:900px}.v2-services-cta{background:var(--v2-department-color);border-color:var(--v2-department-color);justify-self:start}.v2-services-cta:hover{background:var(--v2-department-color-dark);border-color:var(--v2-department-color-dark)}.v2-services-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.v2-services-actions .v2-button{white-space:normal}.v2-clinic-card{display:grid;gap:12px}.v2-traffic-layout{grid-template-columns:minmax(280px, 0.82fr) minmax(0, 1.18fr)}.v2-traffic-contact{align-content:start;display:grid;gap:14px}.v2-clinic-logo,.v2-map-image{display:block;height:auto;width:100%}.v2-clinic-logo{background:var(--v2-ink);border-radius:7px;max-height:112px;object-fit:contain;object-position:left center;padding:12px}.v2-map-panel{padding:12px}.v2-map-image{border-radius:6px}.v2-address-callout{background:var(--v2-ink);border-radius:7px;color:white !important;font-size:24px;font-weight:900;line-height:1.35;padding:16px}.v2-traffic-facts{display:grid;gap:10px;margin:0}.v2-traffic-facts div{border-top:1px solid var(--v2-line);display:grid;gap:6px;grid-template-columns:76px minmax(0, 1fr);padding-top:10px}.v2-traffic-facts dt{color:var(--v2-muted);font-size:13px;font-weight:900}.v2-traffic-facts dd{color:var(--v2-ink-soft);font-weight:850;line-height:1.45;margin:0}.v2-traffic-facts a,.v2-traffic-link-list a{color:var(--v2-green-dark);font-weight:900;text-decoration:none}.v2-traffic-facts a:visited,.v2-traffic-link-list a:visited{color:var(--v2-green-dark)}.v2-traffic-reservation{background:var(--v2-green-light);border:2px solid var(--v2-green);border-radius:7px;display:grid;gap:10px;margin-top:16px;padding:12px}.v2-traffic-reservation strong{color:var(--v2-green-dark);font-size:18px;line-height:1.25}.v2-route-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:14px 0 0;padding:0}.v2-route-list li{background:var(--v2-green-light);border:1px solid var(--v2-green);border-radius:6px;color:var(--v2-green-dark);font-size:14px;font-weight:900;line-height:1;padding:8px 10px}.v2-traffic-link-list{display:grid;gap:10px;line-height:1.45;margin:0;padding-left:20px}.v2-form,.v2-filter-bar,.v2-search-form{display:grid;gap:12px}.v2-field{display:grid;gap:6px}.v2-field-heading{align-items:center;display:flex;gap:8px;justify-content:space-between}.v2-field-label{min-width:0}.v2-required{background:var(--v2-yellow);border-radius:999px;color:var(--v2-ink);flex:0 0 auto;font-size:11px;font-weight:900;padding:3px 7px}.v2-field-hint{color:var(--v2-muted);font-size:12px;font-weight:750}.v2-field-hint.is-error{color:var(--v2-red-dark)}.v2-date-text-field{align-items:center;display:flex;gap:8px;min-width:0;width:100%}.v2-date-text-field input{flex:1 1 auto;min-width:0}.v2-date-text-field>input[type="hidden"]{display:none}.v2-date-segments{align-items:center;display:grid;flex:1 1 auto;gap:4px;grid-template-columns:minmax(56px, 1.25fr) auto minmax(38px, 0.8fr) auto minmax(38px, 0.8fr);min-width:0;white-space:nowrap}.v2-date-segments .v2-date-segment{font-variant-numeric:tabular-nums;min-width:0;text-align:center}.v2-date-segment-year{inline-size:70px}.v2-date-segment-month,.v2-date-segment-day{inline-size:48px}.v2-date-separator{color:var(--v2-muted);font-size:16px;font-weight:900;line-height:1}.v2-date-text-field.has-invalid-date .v2-date-segment{border-color:var(--v2-red)}.v2-calendar-system-badge{align-items:center;background:#e8eef6;border:2px solid #8aa0bd;border-radius:999px;color:#29476d;display:inline-flex;flex:0 0 auto;font-size:13px;font-weight:900;height:28px;justify-content:center;line-height:1;width:28px}.v2-calendar-system-badge.is-minguo{background:var(--v2-green);border-color:var(--v2-green-dark);color:white}.v2-date-picker-trigger{align-items:center;background:#edf4f3;border:2px solid #bed0cc;border-radius:999px;color:var(--v2-green-dark);cursor:pointer;display:inline-flex;flex:0 0 auto;height:28px;justify-content:center;position:relative;width:28px}.v2-date-picker-trigger:hover{background:var(--v2-green-light)}.v2-date-picker-trigger:focus-within{background:var(--v2-green-light);box-shadow:0 0 0 3px rgba(0,107,92,0.18)}.v2-date-picker-trigger::before{border:2px solid currentColor;border-radius:4px;box-shadow:inset 0 4px 0 currentColor;content:"";display:block;height:15px;pointer-events:none;width:15px}.v2-date-picker-trigger::after{background:currentColor;border-radius:999px;box-shadow:5px 0 0 currentColor, 0 5px 0 currentColor, 5px 5px 0 currentColor;content:"";display:block;height:2px;left:9px;opacity:0.75;pointer-events:none;position:absolute;top:14px;width:2px}.v2-date-picker-input{border:0;box-shadow:none;cursor:pointer;height:100%;inset:0;min-height:0;opacity:0;padding:0;pointer-events:none;position:absolute;width:100%;z-index:2}.v2-filter-bar{align-items:end;grid-template-columns:1fr 1fr auto}.v2-filter-bar-single{grid-template-columns:minmax(0, 1fr) auto}.v2-search-form{align-items:center;grid-template-columns:minmax(220px, 1fr) auto}.v2-form label,.v2-filter-bar label,.v2-inline-form label{color:var(--v2-ink);display:grid;font-size:13px;font-weight:900;gap:6px}.v2-form input,.v2-form textarea,.v2-form select,.v2-filter-bar input,.v2-filter-bar select,.v2-search-form input,.v2-search-form select,.v2-inline-form input,.v2-inline-form textarea,.v2-inline-form select,.v2-inline-correction input,.v2-inline-correction textarea{background:#fbffff;border:2px solid #9db0ad;border-radius:7px;color:var(--v2-ink);font-size:15px;max-width:100%;min-height:42px;min-width:0;padding:8px 10px;width:100%}.v2-form input[type="date"],.v2-form input[type="datetime-local"],.v2-filter-bar input[type="date"],.v2-filter-bar input[type="month"],.v2-inline-form input[type="date"],.v2-inline-form input[type="datetime-local"],.v2-inline-correction input[type="date"],.v2-inline-correction input[type="datetime-local"],.v2-search-form input[type="search"]{-webkit-appearance:none;appearance:none;display:block;inline-size:100%;min-inline-size:0}.v2-form .v2-date-picker-input,.v2-inline-form .v2-date-picker-input,.v2-filter-bar .v2-date-picker-input{inline-size:100%}.v2-form input:focus,.v2-form textarea:focus,.v2-form select:focus,.v2-search-form input:focus,.v2-inline-form input:focus,.v2-inline-form textarea:focus,.v2-inline-form select:focus{border-color:var(--v2-green);box-shadow:0 0 0 3px rgba(0,107,92,0.18);outline:none}.v2-form-row{display:grid;gap:12px;grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-check{align-items:center;display:flex !important;flex-direction:row;gap:8px !important}.v2-check input{min-height:auto;width:auto}.v2-booking-shell{display:grid;gap:18px;grid-template-columns:minmax(0, 1fr);margin:18px auto 0;max-width:1120px}@media (min-width: 1181px){.v2-booking-shell{align-items:start;grid-template-columns:minmax(180px, 240px) minmax(0, 1fr) minmax(290px, 360px);max-width:1480px}.v2-booking-rail,.v2-booking-form-panel{position:sticky;top:var(--v2-sticky-offset)}.v2-booking-rail .v2-segment-list{grid-template-columns:1fr}}.v2-booking-rail,.v2-booking-form-panel{align-self:start;position:static}.v2-step-panel{transition:border-color 160ms ease, opacity 160ms ease, transform 160ms ease}.v2-step-panel.is-muted{opacity:0.56}.v2-booking-rail,.v2-booking-calendar{border-width:3px}.v2-booking-shell[data-current-department] .v2-booking-calendar,.v2-booking-shell[data-current-department] .v2-booking-form-panel{border-color:var(--v2-department-color)}.v2-segment-list{display:grid;gap:8px}.v2-booking-rail .v2-segment-list{grid-template-columns:repeat(2, minmax(0, 1fr));max-width:680px}.v2-segment{background:white;border:2px solid var(--v2-ink);border-radius:7px;color:var(--v2-ink);cursor:pointer;font-size:18px;font-weight:900;padding:16px 14px;text-align:left;text-decoration:none}.v2-segment[data-department-theme]{background:var(--v2-department-soft);border-color:var(--v2-department-color);color:var(--v2-department-color-dark)}.v2-segment.is-active,.v2-segment:hover{background:var(--v2-ink);color:white}.v2-segment.is-active[data-department-theme],.v2-segment[data-department-theme]:hover{background:var(--v2-department-color);border-color:var(--v2-department-color-dark);color:white}.v2-calendar-title{align-items:end;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.v2-calendar-title h2,.v2-calendar-title p{margin:0}.v2-calendar-title p{color:var(--v2-muted);font-weight:800}.v2-date-strip{background:linear-gradient(90deg, rgba(255,255,255,0.92), rgba(255,255,255,0) 18px) left center/24px 100% no-repeat,linear-gradient(270deg, rgba(255,255,255,0.92), rgba(255,255,255,0) 18px) right center/24px 100% no-repeat,rgba(239,247,245,0.74);border:1px solid rgba(25,86,59,0.18);border-radius:8px;display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:18px;max-width:100%;min-width:0;overscroll-behavior-x:contain;overflow-x:auto;padding:6px 6px 7px;scroll-padding-inline:6px;scroll-snap-type:x proximity;scrollbar-color:rgba(25,86,59,0.36) transparent;scrollbar-width:thin;-webkit-overflow-scrolling:touch;width:100%}.v2-date-strip::-webkit-scrollbar{height:4px}.v2-date-strip::-webkit-scrollbar-track{background:transparent}.v2-date-strip::-webkit-scrollbar-thumb{background:rgba(25,86,59,0.3);border-radius:999px}.v2-date-card{background:#f9ffff;border:2px solid var(--v2-line);border-radius:7px;color:var(--v2-ink);cursor:pointer;display:grid;gap:3px;font:inherit;flex:0 0 clamp(112px, 13vw, 128px);min-height:68px;min-width:0;padding:8px;scroll-snap-align:start;text-align:left;text-decoration:none}.v2-date-card span,.v2-date-card small{color:var(--v2-muted);font-size:12px;font-weight:850}.v2-date-card strong{font-size:20px;font-weight:900}.v2-date-card.is-active{background:var(--v2-ink);border-color:var(--v2-ink);color:white}.v2-booking-shell[data-current-department] .v2-date-card.is-active{background:var(--v2-department-color);border-color:var(--v2-department-color-dark)}.v2-date-card.is-active span,.v2-date-card.is-active small{color:white}.v2-date-card.is-empty{opacity:0.58}.v2-session-stack{display:grid;gap:var(--v2-space-2)}.v2-session-band{border:2px solid var(--v2-ink);border-radius:8px;display:grid;gap:var(--v2-space-3);grid-template-columns:140px minmax(0, 1fr);padding:10px}.v2-booking-shell[data-current-department] .v2-session-band{border-color:var(--v2-department-color)}.v2-session-label strong,.v2-session-label span{display:block}.v2-session-label strong{font-size:18px;font-weight:900}.v2-session-label span{color:var(--v2-muted);font-size:13px;font-weight:800;margin-top:4px}.v2-slot-grid{display:grid;gap:var(--v2-space-2);grid-template-columns:repeat(auto-fit, minmax(92px, 1fr))}.v2-slot-grid-calendar{grid-template-columns:repeat(auto-fill, minmax(92px, 1fr))}.v2-slot{align-items:center;background:var(--v2-green-light);border:2px solid #78bdae;border-radius:7px;color:var(--v2-ink);cursor:pointer;display:grid;min-height:50px;padding:8px;text-align:center}.v2-booking-shell[data-current-department] .v2-slot{background:var(--v2-department-soft);border-color:var(--v2-department-color)}.v2-slot input{opacity:0;position:absolute}.v2-slot span{font-size:18px;font-weight:900}.v2-slot small{font-size:11px;font-weight:850;line-height:1.35}.v2-slot:has(input:checked){background:var(--v2-green);border-color:var(--v2-ink);color:white;transform:translateY(-1px)}.v2-booking-shell[data-current-department] .v2-slot:has(input:checked){background:var(--v2-department-color);border-color:var(--v2-department-color-dark)}.v2-slot-disabled{background:#f1f3f3;border-color:#d3dddd;color:#667673;cursor:not-allowed}.v2-empty-state,.v2-import-note{background:#f8fbfb;border:2px dashed #9db0ad;border-radius:8px;display:grid;gap:4px;padding:16px}.v2-empty-state strong,.v2-import-note strong{font-weight:900}.v2-empty-state span,.v2-empty-state p,.v2-import-note span{color:var(--v2-muted);line-height:1.45;margin:0}.v2-error-box{background:#ffe9e5;border:2px solid #ffb8ad;border-radius:7px;color:var(--v2-red-dark);font-weight:800;margin-bottom:14px;padding:10px 12px}.v2-section-heading{align-items:end;display:flex;gap:18px;justify-content:space-between;margin-bottom:16px}.v2-section-heading h2,.v2-section-heading p{margin:0}.v2-section-heading h2,.v2-panel-summary h2,.v2-notice-card-header h2,.v2-calendar-title h2,.v2-schedule-period-heading h2{line-height:1.25}.v2-section-heading p{color:var(--v2-muted);font-weight:700}.v2-legend{align-items:center;color:var(--v2-muted);display:flex;flex-wrap:wrap;font-weight:800;gap:10px}.v2-legend span{align-items:center;display:inline-flex;gap:5px}.v2-dot{border-radius:999px;display:inline-block;height:10px;width:10px}.v2-dot-appointment{background:var(--v2-green)}.v2-dot-first-visit{background:var(--v2-yellow)}.v2-dot-return-visit{background:#ff4fa3}.v2-dot-hold{background:var(--v2-blue)}.v2-dot-block{background:var(--v2-red)}.v2-dot-done{background:#7a8b87}.v2-ops-command{align-items:center;display:grid;gap:var(--v2-space-3);grid-template-columns:minmax(0, 1fr) minmax(300px, 520px);margin-bottom:0}.v2-ops-command strong,.v2-ops-command span{display:block}.v2-ops-command strong{font-size:19px;font-weight:900}.v2-ops-command span{color:var(--v2-muted);font-size:13px;font-weight:750;margin-top:2px}.v2-ops-command-copy{display:grid;gap:var(--v2-space-1)}.v2-ops-command-meta{display:flex;flex-wrap:wrap;gap:var(--v2-space-2);margin-top:var(--v2-space-1)}.v2-ops-command .v2-ops-chip{background:#eef5f4;border:1px solid var(--v2-line);border-radius:999px;color:var(--v2-ink-soft);display:inline-flex;font-size:12px;font-weight:900;line-height:1;margin:0;padding:5px 8px}.v2-calendar-panel{margin-top:24px}.v2-ops-body .v2-calendar-panel{margin-top:0}.v2-calendar-panel-primary{margin-left:auto;margin-right:auto;width:100%}.v2-ops-body .v2-calendar-panel-primary{margin-left:0;margin-right:0;max-width:100%;width:fit-content}.v2-ops-calendar-layout{align-items:flex-start;display:flex;flex-wrap:wrap;gap:var(--v2-space-3);width:100%}.v2-ops-calendar-body .v2-ops-calendar-layout>.v2-calendar-workspace{flex:0 1 auto;max-width:100%;min-width:304px;order:1}.v2-ops-calendar-body .v2-ops-calendar-layout>.v2-calendar-workspace.is-week-view{flex:1 1 1164px}.v2-ops-support-rail{display:grid;flex:1 1 340px;gap:var(--v2-space-3);max-width:540px;min-width:320px;order:2}.v2-ops-support-rail.is-queue-focused{flex:0 1 460px;max-width:620px}.v2-ops-support-rail.is-queue-focused .v2-queue-panel{margin-bottom:var(--v2-space-4)}.v2-ops-queue-grid{display:grid;gap:var(--v2-space-3);grid-template-columns:minmax(0, 1.35fr) minmax(320px, 0.65fr);margin:0}.v2-ops-support-rail .v2-ops-queue-grid{grid-template-columns:minmax(0, 1fr)}@media (min-width: 1181px) and (max-width: 1639px){.v2-ops-calendar-layout:has(.v2-calendar-workspace.is-week-view) .v2-ops-support-rail{flex-basis:100%;max-width:none;min-width:0}.v2-ops-calendar-layout:has(.v2-calendar-workspace.is-week-view) .v2-ops-support-rail .v2-ops-queue-grid{grid-template-columns:repeat(auto-fit, minmax(320px, 1fr))}}@media (min-width: 1181px){.v2-ops-support-rail.is-queue-focused{flex-basis:clamp(420px, 30vw, 620px)}.v2-ops-support-rail.is-queue-focused .v2-queue-list{max-height:56vh}}.v2-collapsible-panel{padding:0}.v2-panel-summary{align-items:center;cursor:pointer;display:grid;gap:var(--v2-space-2);grid-template-columns:minmax(0, 1fr) auto 14px;list-style:none;padding:10px 12px}.v2-panel-summary::-webkit-details-marker{display:none}.v2-panel-summary::after{border-bottom:2px solid var(--v2-ink);border-right:2px solid var(--v2-ink);content:"";height:8px;transform:rotate(45deg);transition:transform 120ms ease;width:8px}.v2-collapsible-panel[open] .v2-panel-summary::after{transform:rotate(225deg)}.v2-panel-summary h2,.v2-panel-summary p{margin:0}.v2-panel-summary h2{font-size:18px}.v2-panel-summary p{color:var(--v2-muted);font-size:13px;font-weight:800;margin-top:2px}.v2-collapsible-body{border-top:1px solid var(--v2-line);padding:12px}.v2-queue-count{background:var(--v2-ink);border-radius:6px;color:white;display:inline-flex;font-size:13px;font-weight:900;padding:6px 8px}.v2-queue-list{display:grid;gap:10px;max-height:340px;overflow:auto;padding:2px 4px 2px 2px}.v2-queue-item{align-items:center;background:#fffdfb;border:1px solid var(--v2-line);border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0, 1fr) auto;padding:10px;transition:background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease}.v2-queue-item.is-clickable{cursor:pointer}.v2-queue-item.is-clickable:hover,.v2-queue-item.is-clickable:focus-visible,.v2-queue-item.is-clickable:focus-within,.v2-queue-item.is-clickable.is-selected-calendar-item{background:rgba(220,252,231,0.72);border-color:rgba(47,133,90,0.42);box-shadow:0 0 0 3px rgba(47,133,90,0.13);outline:none}.v2-queue-item strong,.v2-queue-item span{display:block}.v2-queue-item span{color:var(--v2-muted);font-size:13px;font-weight:800;margin-top:3px}.v2-queue-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.v2-calendar-workspace{display:grid;gap:var(--v2-space-2)}.v2-calendar-view-tools{align-items:center;background:white;border:2px solid var(--v2-line);border-radius:8px;display:grid;gap:var(--v2-space-2);grid-template-columns:minmax(150px, 0.25fr) auto minmax(0, 1fr);padding:8px 10px;position:sticky;top:var(--v2-sticky-offset);z-index:20}.v2-calendar-view-tools strong,.v2-calendar-view-tools span{display:block}.v2-calendar-view-tools span{color:var(--v2-muted);font-size:13px;font-weight:800;margin-top:3px}.v2-calendar-sync-status{color:var(--v2-green-dark);display:block;font-size:11px;font-weight:950;margin-top:3px}.v2-calendar-sync-status.is-pending-refresh{color:var(--v2-red-dark)}.v2-calendar-workspace.has-pending-calendar-refresh .v2-calendar-view-tools{border-color:var(--v2-yellow)}.v2-calendar-workspace.is-calendar-refreshing{opacity:0.68;pointer-events:none}.v2-calendar-view-tools em{font-style:normal}.v2-toggle-group,.v2-day-toggle-strip,.v2-calendar-nav-strip{display:flex;flex-wrap:wrap;gap:var(--v2-space-1)}.v2-department-toggle-group{display:none}.v2-day-toggle-strip,.v2-calendar-nav-strip{justify-content:flex-end}.v2-calendar-workspace.is-day-view .v2-week-pager,.v2-calendar-workspace.is-week-view .v2-day-pager{display:none}.v2-toggle-button,.v2-day-toggle,.v2-calendar-nav-link{background:#fbffff;border:2px solid var(--v2-line);border-radius:7px;color:var(--v2-ink);cursor:pointer;font-weight:900;padding:6px 9px}.v2-toggle-button.is-active,.v2-day-toggle.is-active,.v2-calendar-nav-link.is-active{background:var(--v2-ink);border-color:var(--v2-ink);color:white}.v2-calendar-nav-link{align-items:center;display:inline-flex;justify-content:center;line-height:1.2;min-height:36px;text-decoration:none;white-space:nowrap}.v2-calendar-nav-link:visited{color:var(--v2-ink)}.v2-calendar-nav-link.is-active:visited{color:white}.v2-calendar-nav-link:hover{background:var(--v2-ink);border-color:var(--v2-ink);color:white;text-decoration:none}.v2-calendar-nav-link:hover:visited{color:white}.v2-toggle-button[data-department-theme]{background:var(--v2-department-soft);border-color:var(--v2-department-color);color:var(--v2-department-color-dark)}.v2-toggle-button.is-active[data-department-theme]{background:var(--v2-department-color);border-color:var(--v2-department-color-dark);color:white}.v2-day-toggle{display:grid;gap:1px;min-width:58px}.v2-day-toggle span{color:inherit;font-size:11px;margin:0}.v2-calendar-workspace.is-day-view [data-calendar-day]:not(.is-active-calendar-day){display:none}.v2-calendar-workspace.is-day-view .v2-calendar{min-width:360px}.v2-department-calendars{display:grid;gap:var(--v2-space-3)}.v2-calendar-workspace.is-day-view .v2-department-calendars{align-items:start;grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-calendar-workspace.is-week-view .v2-department-calendars{align-items:start;gap:8px;grid-template-columns:repeat(auto-fit, minmax(572px, 572px))}.v2-day-combined-calendar-panel{display:none}.v2-calendar-workspace.is-day-view.has-combined-day-calendar .v2-day-combined-calendar-panel{display:block}.v2-calendar-workspace.is-day-view.has-combined-day-calendar .v2-department-calendars{display:none}.v2-calendar-workspace.is-day-view .v2-calendar-panel{margin-top:0}.v2-calendar-app{min-width:0;position:relative}.v2-calendar-app,.v2-department-calendars,.v2-calendar-panel,.v2-calendar-scroll{max-width:100%}.v2-department-calendars,.v2-calendar-panel,.v2-calendar-scroll{min-width:0}.v2-ops-body .v2-calendar-panel{overflow:hidden}.v2-department-calendar{border-top:5px solid var(--v2-green)}.v2-department-calendar[data-department-theme]{border-top-color:var(--v2-department-color)}.v2-calendar-scroll{max-width:100%;overflow-x:auto;width:100%;-webkit-overflow-scrolling:touch}.v2-ops-body .v2-calendar-scroll{max-height:calc(100vh - 250px);overflow:auto}.v2-ops-body .v2-calendar-workspace.is-day-view .v2-calendar-scroll{max-height:none;overflow-x:auto;overflow-y:visible}.v2-ops-body .v2-calendar-workspace.is-week-view .v2-calendar-scroll{max-height:none;overflow-x:auto;overflow-y:visible}.v2-calendar,.v2-data-table{border-collapse:separate;border-spacing:0;min-width:1020px;width:100%}.v2-day-combined-calendar{max-width:100%;min-width:304px;table-layout:fixed;width:336px}.v2-ops-body .v2-calendar-workspace.is-day-view .v2-day-combined-calendar{max-width:100%;min-width:304px;width:336px}.v2-ops-body .v2-department-calendar-table{min-width:524px;table-layout:fixed;width:524px}.v2-day-combined-calendar th:first-child,.v2-day-combined-calendar td:first-child,.v2-department-calendar-table th:first-child,.v2-department-calendar-table td:first-child{width:44px}.v2-calendar th,.v2-calendar td,.v2-data-table th,.v2-data-table td{border-bottom:1px solid var(--v2-line);border-right:1px solid var(--v2-line);padding:7px 8px;text-align:left;vertical-align:top}.v2-calendar th:first-child,.v2-calendar td:first-child,.v2-data-table th:first-child,.v2-data-table td:first-child{border-left:1px solid var(--v2-line)}.v2-calendar th,.v2-data-table th{background:var(--v2-ink);color:white;font-weight:900;position:sticky;top:0;z-index:2}.v2-calendar th.is-today{background:var(--v2-green)}.v2-day-combined-calendar th[data-department-theme]{background:var(--v2-department-color)}.v2-day-combined-calendar th .v2-department-label{border-left-color:rgba(255,255,255,0.78);color:white !important}.v2-calendar th span,.v2-time-cell small,.v2-attendance-ledger-table small,.v2-attendance-record-card small{color:inherit;display:block;font-size:12px;font-weight:750;opacity:0.82}.v2-time-cell{background:#eef5f4;color:var(--v2-ink);font-size:11px;font-weight:400;line-height:1;min-width:44px;padding-left:4px;padding-right:4px;position:sticky;text-align:center;white-space:nowrap;width:44px;left:0;z-index:1}.v2-closed-cell{background:#f0f2f2}.v2-blocked-cell{background:#fff2ef}.v2-filled-cell{background:#f7fffc}.v2-calendar-cell{height:var(--v2-calendar-row-day);min-width:116px;position:relative;transition:background-color 120ms ease, box-shadow 120ms ease}.v2-calendar td.v2-calendar-cell{padding:4px}.v2-calendar-workspace.is-week-view .v2-calendar-cell{height:var(--v2-calendar-row-week)}.v2-calendar-workspace.is-day-view .v2-calendar-cell,.v2-calendar-workspace.is-week-view .v2-calendar-cell{min-width:0}.v2-calendar-row.is-hour-row td{border-top:2px solid #b9cbc8}.v2-calendar-row.is-half-hour-row:not(.is-hour-row) td{border-top:1px solid #c4d3d1}.v2-calendar-row.is-session-start-row td{border-top:3px solid var(--v2-green)}.v2-calendar-cell[data-select-kind="slot"]{cursor:pointer}.v2-calendar-cell[data-select-kind="slot"]:hover,.v2-calendar-cell.is-selected-calendar-item{background:#e9fbf4;box-shadow:inset 0 0 0 2px var(--v2-green)}.v2-calendar-workspace.is-calendar-dragging .v2-calendar-cell[data-slot-time]{background:rgba(233,251,244,0.78)}.v2-calendar-cell.is-calendar-drop-target,.v2-calendar-cell.is-calendar-drop-target[data-department-theme]{background:var(--v2-department-soft);box-shadow:inset 0 0 0 3px var(--v2-department-color),0 10px 24px rgba(7,21,19,0.14)}.v2-calendar-cell[data-select-kind="slot"][data-department-theme]:hover,.v2-calendar-cell.is-selected-calendar-item[data-select-kind="slot"][data-department-theme]{background:var(--v2-department-soft);box-shadow:inset 0 0 0 2px var(--v2-department-color)}.v2-cell-add-mark,.v2-cell-closed{align-items:center;border-radius:6px;display:flex;font-weight:900;inset:5px;justify-content:center;position:absolute}.v2-cell-add-mark{background:rgba(255,255,255,0.62);border:1px dashed #97cfc2;color:var(--v2-green-dark);font-size:18px;opacity:0.72}.v2-calendar-cell[data-department-theme] .v2-cell-add-mark{border-color:var(--v2-department-color);color:var(--v2-department-color-dark)}.v2-calendar-cell[data-select-kind="slot"]:hover .v2-cell-add-mark{opacity:1}.v2-cell-closed{background:repeating-linear-gradient(-45deg, rgba(88,112,108,0.08), rgba(88,112,108,0.08) 6px, transparent 6px, transparent 12px)}.v2-event-pill{align-items:center;border:0;border-radius:5px;color:white;cursor:pointer;display:flex;font:inherit;font-size:14px;font-weight:400;gap:var(--v2-space-1);line-height:1.25;margin:0 0 2px;max-width:100%;min-height:26px;padding:4px 6px;text-align:left;width:100%}.v2-event-pill[draggable="true"]{cursor:grab}.v2-event-pill.is-calendar-drag-source{cursor:grabbing;opacity:0.48}.v2-event-appointment.is-calendar-drop-swap-target{box-shadow:0 0 0 3px rgba(255,244,196,0.95)}.v2-calendar-workspace.is-calendar-saving-drop .v2-event-pill{pointer-events:none}.v2-body .v2-event-pill{color:white;font-size:14px;font-weight:400;line-height:1.25}.v2-event-pill span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2-event-pill:hover,.v2-event-pill.is-selected-calendar-item{box-shadow:0 0 0 2px var(--v2-yellow),0 4px 12px rgba(7,21,19,0.18)}.v2-event-appointment{background:var(--v2-green)}.v2-event-appointment[data-department-theme]{background:var(--v2-department-color)}.v2-event-appointment.is-done{background:#63726f}.v2-event-appointment.is-done[data-department-theme]{background:linear-gradient(90deg, var(--v2-department-color) 0 6px, #63726f 6px)}.v2-event-appointment .v2-visit-dot{background:var(--v2-yellow);border-radius:999px;flex:0 0 auto;height:7px;width:7px}.v2-event-appointment[data-appointment-first="1"] .v2-visit-dot{background:var(--v2-yellow)}.v2-event-appointment[data-appointment-first="0"] .v2-visit-dot{background:#ff4fa3}.v2-event-appointment.is-done .v2-visit-dot{opacity:0.86}.v2-event-hold{background:var(--v2-blue)}.v2-event-hold[data-department-theme]{background:linear-gradient(90deg, var(--v2-department-color) 0 6px, var(--v2-blue) 6px)}.v2-event-block{background:var(--v2-red)}.v2-ops-popover{background:linear-gradient(180deg, var(--v2-department-soft), #fff 96px),white;border:1px solid rgba(7,21,19,0.16);border-top:6px solid var(--v2-department-color);border-radius:8px;box-shadow:0 24px 56px rgba(7,21,19,0.18);max-height:calc(100vh - 24px);overflow:auto;padding:0;position:fixed;max-width:calc(100vw - 24px);width:390px;z-index:80}.v2-ops-popover>section{padding:16px}.v2-ops-popover h2{font-size:20px;font-weight:900;line-height:1.16;margin:0}.v2-popover-editor-header{border-bottom:1px solid rgba(7,21,19,0.1);margin:-16px -16px 14px;padding:16px 50px 14px 16px}.v2-popover-editor-header .v2-muted{color:var(--v2-ink-soft);font-size:13px;font-weight:800;line-height:1.35;margin:6px 0 0}.v2-popover-kicker{color:var(--v2-department-color-dark);display:block;font-size:12px;font-weight:950;letter-spacing:0;margin-bottom:5px}.v2-popover-audit{background:rgba(255,255,255,0.72);border:1px solid rgba(7,21,19,0.12);border-left:5px solid var(--v2-department-color);border-radius:8px;display:grid;gap:8px;margin:0 0 12px;padding:10px 12px}.v2-popover-audit[hidden]{display:none !important}.v2-popover-audit-row{display:grid;gap:2px}.v2-popover-audit-row span{color:var(--v2-muted);font-size:11px;font-weight:950}.v2-popover-audit-row strong{color:var(--v2-ink);font-size:14px;font-weight:950;line-height:1.24}.v2-popover-audit-row small{color:var(--v2-ink-soft);font-size:12px;font-weight:800;line-height:1.35}.v2-popover-audit-history{border-top:1px solid rgba(7,21,19,0.1);display:grid;gap:7px;margin-top:2px;padding-top:9px}.v2-popover-audit-history-title{color:var(--v2-department-color-dark);font-size:11px;font-weight:950}.v2-popover-audit-history-row{border-left:3px solid rgba(7,21,19,0.16);display:grid;gap:2px;padding-left:8px}.v2-popover-audit-history-row strong{color:var(--v2-ink);font-size:12px;font-weight:900;line-height:1.24}.v2-popover-audit-history-row small{color:var(--v2-ink-soft);font-size:12px;font-weight:800;line-height:1.32}.v2-popover-close{align-items:center;background:transparent;border:0;border-radius:5px;color:var(--v2-ink);cursor:pointer;display:flex;font-size:24px;font-weight:900;height:32px;justify-content:center;line-height:1;position:absolute;right:10px;top:10px;width:32px}.v2-popover-close:hover{background:#edf5f3}.v2-popover-tabs{margin:8px 0 10px}.v2-popover-tabs .v2-toggle-button{flex:1 1 0}.v2-popover-actions{display:grid;gap:8px;grid-template-columns:repeat(2, minmax(0, 1fr));margin-top:12px}.v2-popover-actions form,.v2-popover-actions input{width:100%}.v2-ops-popover .v2-inline-form{gap:10px;margin-top:0}.v2-ops-popover .v2-inline-form input,.v2-ops-popover .v2-inline-form textarea,.v2-ops-popover .v2-inline-form select{background:rgba(255,255,255,0.92);border-color:rgba(7,21,19,0.24);min-height:44px}.v2-ops-popover .v2-inline-form textarea{min-height:76px;resize:vertical}.v2-appointment-time-editor{background:rgba(255,255,255,0.62);border:1px solid rgba(7,21,19,0.1);border-radius:8px;display:grid;gap:8px;padding:9px}.v2-appointment-time-editor label{margin:0}.v2-appointment-time-status{align-items:center;background:rgba(255,255,255,0.72);border:1px solid rgba(7,21,19,0.1);border-radius:7px;display:flex;gap:8px;min-height:34px;padding:7px 9px}.v2-appointment-time-status span{align-items:center;border-radius:999px;display:inline-flex;flex:0 0 auto;font-size:14px;font-weight:950;height:22px;justify-content:center;width:22px}.v2-appointment-time-status strong{color:var(--v2-ink);font-size:12px;font-weight:900;line-height:1.3}.v2-appointment-time-status.is-valid{border-color:rgba(17,100,63,0.38)}.v2-appointment-time-status.is-valid span{background:rgba(223,244,232,0.9);color:var(--v2-green-dark)}.v2-appointment-time-status.is-invalid{border-color:rgba(190,31,45,0.38)}.v2-appointment-time-status.is-invalid span,.v2-appointment-time-status.is-occupied span{background:rgba(255,224,226,0.9);color:var(--v2-red-dark)}.v2-appointment-time-status.is-occupied{border-color:rgba(190,31,45,0.38)}.v2-appointment-time-status.is-unchanged{border-color:rgba(7,21,19,0.12)}.v2-appointment-time-status.is-pending span{background:rgba(255,244,196,0.9);color:#5c4b00}.v2-appointment-time-suggestions{display:flex;flex-wrap:wrap;gap:6px}.v2-appointment-time-suggestions[hidden]{display:none !important}.v2-appointment-time-suggestions>span{color:var(--v2-muted);flex:1 0 100%;font-size:11px;font-weight:950}.v2-time-suggestion-button{background:var(--v2-department-soft);border:1px solid var(--v2-department-color);border-radius:999px;color:var(--v2-department-color-dark);cursor:pointer;font-size:12px;font-weight:950;padding:5px 8px}.v2-time-swap-button{background:var(--v2-ink);border:1px solid var(--v2-ink);border-radius:999px;color:white;cursor:pointer;font-size:12px;font-weight:950;padding:6px 10px}.v2-time-suggestion-button:hover,.v2-time-swap-button:hover{background:var(--v2-department-color);border-color:var(--v2-department-color);color:white}.v2-ops-popover .v2-inline-form input:focus,.v2-ops-popover .v2-inline-form textarea:focus,.v2-ops-popover .v2-inline-form select:focus{border-color:var(--v2-department-color);box-shadow:0 0 0 3px rgba(0,107,92,0.18)}.v2-ops-popover .v2-return-tools{background:rgba(255,255,255,0.58);border:1px solid rgba(7,21,19,0.1);border-radius:8px;padding:8px}.v2-ops-popover .v2-check{align-items:center;background:rgba(255,255,255,0.62);border:1px solid rgba(7,21,19,0.1);border-radius:8px;display:flex;gap:8px;padding:9px 10px}.v2-ops-popover .v2-check input{min-height:18px;width:18px}.v2-calendar-card,.v2-block-chip{border-radius:7px;color:white;margin-bottom:6px;padding:8px}.v2-calendar-card{background:var(--v2-green)}.v2-calendar-card-done{background:#4f625e}.v2-calendar-card-hold{background:var(--v2-blue)}.v2-calendar-card strong,.v2-calendar-card span{display:block}.v2-calendar-card span{font-size:12px;opacity:0.9}.v2-block-chip{background:var(--v2-red);font-size:12px;font-weight:900}.v2-block-chip strong,.v2-block-chip span{display:block}.v2-card-topline{align-items:start;display:flex;gap:8px;justify-content:space-between}.v2-status-pill{border-radius:999px;flex:0 0 auto;font-size:11px !important;font-weight:900;line-height:1;opacity:1 !important;padding:5px 7px}.v2-status-pill-queue{background:var(--v2-yellow);color:var(--v2-ink)}.v2-status-pill-done{background:rgba(255,255,255,0.18);color:white}.v2-card-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.v2-inline-editor{width:100%}.v2-inline-editor summary,.v2-slot-action summary{background:rgba(255,255,255,0.2);border-radius:5px;color:inherit;cursor:pointer;display:inline-flex;font-size:12px;font-weight:900;padding:5px 7px}.v2-inline-form{display:grid;gap:8px;margin-top:8px}.v2-inline-field{display:grid;gap:5px;min-width:0}.v2-inline-field>label{color:var(--v2-muted);font-size:12px;font-weight:900}.v2-return-tools{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.v2-return-tools small{flex:1 1 180px}.v2-return-tools[hidden],[data-first-visit-id-field][hidden]{display:none !important}.v2-inline-grid{display:grid;gap:8px;grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-slot-action{margin-top:8px}.v2-slot-action summary{background:var(--v2-ink);color:white}.v2-slot-action-stack{background:white;border:2px solid var(--v2-line);border-radius:8px;box-shadow:var(--v2-shadow);color:var(--v2-ink);display:grid;gap:12px;margin-top:8px;min-width:280px;padding:10px;position:relative;z-index:3}.v2-slot-action-stack h3{font-size:14px;margin:0 0 6px}.v2-link-button{background:rgba(255,255,255,0.2);border:0;border-radius:5px;color:inherit;cursor:pointer;display:inline-flex;font-size:12px;font-weight:900;padding:5px 7px;text-decoration:none}.v2-link-button:visited{color:inherit}.v2-link-button-dark{background:var(--v2-ink);color:white}.v2-link-button-dark:visited{color:white}.v2-danger{color:#ffdbd6}.v2-danger-dark{background:var(--v2-red)}.v2-ops-lower-grid,.v2-attendance-board{display:grid;gap:18px;grid-template-columns:repeat(3, minmax(0, 1fr));margin-top:18px}.v2-attendance-board{grid-template-columns:minmax(0, 1fr);margin:24px 0 30px}.v2-section-heading-compact{align-items:start;margin-bottom:14px}.v2-attendance-progress{background:rgba(31,133,79,0.12);border:1px solid rgba(31,133,79,0.24);border-radius:999px;color:var(--v2-green-dark);flex:0 0 auto;font-size:14px;font-weight:950;line-height:1;padding:8px 10px}.v2-clock-grid{display:grid;gap:10px;grid-template-columns:repeat(4, minmax(0, 1fr))}.v2-clock-step-list{display:grid;gap:10px}.v2-clock-card{align-items:center;border:1px solid rgba(25,86,59,0.2);border-radius:8px;display:grid;gap:12px;grid-template-columns:34px minmax(0, 1fr) minmax(130px, auto);padding:12px}.v2-clock-card.is-current{background:rgba(223,244,232,0.86);border-color:rgba(31,133,79,0.42)}.v2-clock-card.is-complete{background:rgba(255,255,255,0.56)}.v2-clock-step-number{align-items:center;background:var(--v2-ink);border-radius:999px;color:white;display:inline-flex;font-size:14px;font-weight:950;height:28px;justify-content:center;width:28px}.v2-clock-card.is-complete .v2-clock-step-number{background:var(--v2-green)}.v2-clock-step-copy{display:grid;gap:3px}.v2-clock-step-copy strong{color:var(--v2-ink);font-size:16px;font-weight:950}.v2-clock-step-copy span,.v2-attendance-day-panel p{color:var(--v2-muted);font-size:14px;font-weight:750;line-height:1.45}.v2-clock-step-action{min-width:0}.v2-clock-time{color:var(--v2-green-dark);display:block;font-size:14px;font-weight:950;text-align:right}.v2-clock-tile{border:2px solid var(--v2-line);border-radius:8px;display:grid;gap:8px;padding:12px}.v2-clock-tile strong,.v2-clock-tile span{display:block}.v2-clock-tile strong{font-weight:900}.v2-clock-tile span{color:var(--v2-muted);font-size:13px;font-weight:800}.v2-attendance-day-panel{display:grid;gap:18px;margin-top:28px}.v2-ops-body .v2-attendance-day-panel{margin-top:28px;max-width:100%;width:100%}.v2-attendance-record-list{display:grid;gap:12px}.v2-attendance-record-card{align-items:start;background:#fbfdfc;border:1px solid rgba(25,86,59,0.18);border-radius:8px;display:grid;gap:14px;grid-template-areas:"person times action" "note note note";grid-template-columns:minmax(120px, max-content) minmax(0, 1fr) minmax(72px, auto);padding:14px}.v2-attendance-record-person,.v2-attendance-record-note{display:grid;gap:4px}.v2-attendance-record-person{grid-area:person}.v2-attendance-record-times{grid-area:times}.v2-attendance-record-note{grid-area:note}.v2-attendance-record-person strong{color:var(--v2-ink);font-size:16px;font-weight:950}.v2-attendance-record-person small,.v2-attendance-record-note span,.v2-attendance-note-muted{color:var(--v2-muted);font-size:12px;font-weight:850}.v2-attendance-record-times{display:flex;flex-wrap:wrap;gap:8px}.v2-attendance-time-chip{background:rgba(31,133,79,0.08);border:1px solid rgba(31,133,79,0.16);border-radius:8px;display:grid;gap:3px;min-width:118px;padding:8px 10px}.v2-attendance-time-chip span{color:var(--v2-muted);font-size:12px;font-weight:850}.v2-attendance-time-chip strong,.v2-attendance-record-note strong{color:var(--v2-ink);font-size:14px;font-weight:950}.v2-attendance-month-dashboard{display:grid;gap:18px;margin:24px 0 30px}.v2-attendance-month-dashboard>.v2-section-heading{padding:0 2px}.v2-attendance-month-nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.v2-attendance-month-filter{background:rgba(255,255,255,0.72);border:1px solid rgba(25,86,59,0.18);border-radius:8px;grid-template-columns:minmax(160px, 0.8fr) minmax(180px, 1fr) auto;padding:14px}.v2-attendance-person-switcher{gap:14px;margin-top:0}.v2-attendance-month-dashboard+.v2-attendance-person-switcher,.v2-attendance-person-switcher+.v2-attendance-report-panel,.v2-attendance-report-panel+.v2-attendance-report-panel{margin-top:28px}.v2-attendance-person-list{display:flex;flex-wrap:wrap;gap:10px}.v2-attendance-person-link{background:#f8fbfb;border:1px solid #dce7e4;border-radius:8px;color:var(--v2-ink);display:grid;gap:3px;min-width:132px;padding:10px 12px;text-decoration:none}.v2-attendance-person-link strong{font-size:14px;font-weight:900}.v2-attendance-person-link small{color:var(--v2-muted);font-size:12px;font-weight:800}.v2-attendance-person-link.is-active{background:rgba(223,50,31,0.08);border-color:rgba(223,50,31,0.34);color:var(--v2-red-dark)}.v2-attendance-metrics{display:grid;gap:12px;grid-template-columns:repeat(5, minmax(0, 1fr))}.v2-attendance-metric{display:grid;gap:6px;padding:16px}.v2-attendance-metric span{color:var(--v2-muted);font-size:13px;font-weight:850}.v2-attendance-metric strong{color:var(--v2-ink);font-size:30px;font-weight:950;line-height:1}.v2-attendance-summary-table{min-width:860px}.v2-attendance-ledger-table{min-width:940px}.v2-attendance-report-panel{display:grid;gap:18px}.v2-analytics-dashboard{display:grid;gap:20px;margin-top:22px}.v2-analytics-filter{grid-template-columns:repeat(2, minmax(0, 1fr)) auto}.v2-analytics-metrics{display:grid;gap:16px;grid-template-columns:repeat(3, minmax(0, 1fr))}.v2-analytics-metric{display:grid;gap:12px;min-height:150px;padding:18px}.v2-analytics-metric span,.v2-analytics-metric small{color:var(--v2-muted);font-size:13px;font-weight:850}.v2-analytics-metric>strong{color:var(--v2-ink);font-size:30px;font-weight:950;line-height:1}.v2-analytics-grid{display:grid;gap:24px;grid-template-columns:repeat(2, minmax(0, 1fr));margin-top:24px}.v2-analytics-panel{display:grid;gap:18px;margin-top:24px}.v2-analytics-grid .v2-analytics-panel{margin-top:0}.v2-analytics-bar-list{display:grid;gap:14px}.v2-analytics-breakdown-row{background:rgba(246,250,249,0.78);border:1px solid rgba(25,86,59,0.14);border-radius:8px;display:grid;gap:14px;grid-template-columns:minmax(120px, 0.7fr) minmax(0, 1.7fr);padding:14px}.v2-analytics-breakdown-label{align-self:center;display:grid;gap:4px}.v2-analytics-breakdown-label strong{color:var(--v2-ink);font-size:16px;font-weight:950}.v2-analytics-breakdown-label small{color:var(--v2-muted);font-size:12px;font-weight:800;line-height:1.35}.v2-analytics-breakdown-row-compact{grid-template-columns:minmax(72px, 0.4fr) minmax(0, 1.8fr)}.v2-analytics-segment-list{display:grid;gap:10px;grid-template-columns:repeat(3, minmax(0, 1fr))}.v2-analytics-segment-list span{background:#ffffff;border:1px solid rgba(25,86,59,0.14);border-radius:8px;display:grid;gap:4px;grid-template-columns:minmax(0, 1fr) auto;min-width:0;padding:10px}.v2-analytics-segment-list b{color:var(--v2-muted);font-size:12px;font-weight:900;grid-column:1 / -1}.v2-analytics-segment-list strong{color:var(--v2-ink);font-size:20px;font-weight:950;line-height:1}.v2-analytics-segment-list small{color:var(--v2-muted);font-size:12px;font-weight:800;line-height:1.25;text-align:right}.v2-analytics-segment-list .v2-analytics-bar-track{grid-column:1 / -1}.v2-analytics-bar-row{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(96px, 1fr) 54px minmax(120px, 1.5fr) 58px}.v2-analytics-bar-row strong{color:var(--v2-ink);display:block;font-size:15px;font-weight:950;line-height:1.25}.v2-analytics-bar-row small{color:var(--v2-muted);display:block;font-size:12px;font-weight:800;line-height:1.35}.v2-analytics-bar-row>span{color:var(--v2-ink);font-weight:900;text-align:right}.v2-analytics-bar-row em,.v2-analytics-inline-bar em{color:var(--v2-muted);font-style:normal;font-weight:900;text-align:right}.v2-analytics-bar-track{background:#e8eef6;border:1px solid #c5d0df;border-radius:999px;display:block;height:12px;overflow:hidden;width:100%}.v2-analytics-bar-track i,.v2-analytics-bar-track em{background:linear-gradient(90deg, var(--v2-green), var(--v2-yellow));display:block;height:100%;min-width:0}.v2-analytics-empty{color:var(--v2-muted);font-weight:850;margin:0}.v2-analytics-table{min-width:720px}.v2-analytics-table-stat strong,.v2-analytics-table-stat small{display:block}.v2-analytics-table-stat strong{color:var(--v2-ink);font-size:18px;font-weight:950}.v2-analytics-table-stat small{color:var(--v2-muted);font-size:12px;font-weight:850;margin-top:2px}.v2-analytics-inline-bar{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(120px, 1fr) 58px}.v2-attendance-table-shell{border:1px solid rgba(25,86,59,0.16);border-radius:8px;background:#ffffff;overflow-x:auto}.v2-attendance-report-table{border:0;min-width:100%}.v2-attendance-report-table th{background:#eef7f4;border-bottom:1px solid rgba(25,86,59,0.16);color:var(--v2-green-dark);font-size:12px;letter-spacing:0;text-transform:none;white-space:nowrap}.v2-attendance-report-table td{border-bottom:1px solid rgba(25,86,59,0.1);padding-bottom:10px;padding-top:10px;vertical-align:top}.v2-attendance-report-table tbody tr:nth-child(even) td{background:rgba(248,251,251,0.72)}.v2-attendance-report-table tbody tr:hover td{background:rgba(255,247,229,0.62)}.v2-attendance-count{white-space:nowrap}.v2-attendance-count strong,.v2-attendance-count span{display:inline-block}.v2-attendance-count strong{color:var(--v2-ink);font-size:18px;font-weight:950;min-width:20px}.v2-attendance-count span{color:var(--v2-muted);font-size:12px;font-weight:850;margin-left:3px}.v2-attendance-count-good strong{color:var(--v2-green-dark)}.v2-attendance-count-warn strong{color:#7a5600}.v2-attendance-count-danger strong{color:var(--v2-red-dark)}.v2-attendance-time-list,.v2-attendance-anomaly-list{display:flex;flex-wrap:wrap;gap:6px}.v2-attendance-time-list span{background:rgba(31,133,79,0.08);border:1px solid rgba(31,133,79,0.16);border-radius:8px;display:grid;gap:2px;min-width:92px;padding:6px 8px}.v2-attendance-time-list b{color:var(--v2-muted);font-size:11px;font-weight:850}.v2-attendance-time-list strong{color:var(--v2-ink);font-size:14px;font-weight:950}.v2-attendance-anomaly-chip{border-radius:999px;display:inline-flex;font-size:12px;font-weight:950;line-height:1;padding:6px 8px;white-space:nowrap}.v2-attendance-anomaly-missing{background:rgba(209,62,43,0.12);color:var(--v2-red-dark)}.v2-attendance-anomaly-correction{background:rgba(31,133,79,0.12);color:var(--v2-green-dark)}.v2-attendance-empty-cell{display:block;min-height:24px}.v2-attendance-muted{color:var(--v2-muted);font-size:13px;font-weight:850}.v2-attendance-status{border-radius:999px;display:inline-flex;font-size:12px;font-weight:950;line-height:1;padding:6px 8px;white-space:nowrap}.v2-attendance-status-complete{background:rgba(31,133,79,0.14);color:var(--v2-green-dark)}.v2-attendance-status-partial{background:rgba(255,213,92,0.24);color:#7a5600}.v2-attendance-status-missing{background:rgba(209,62,43,0.12);color:var(--v2-red-dark)}.v2-attendance-correction{display:grid;gap:8px}.v2-attendance-record-card .v2-attendance-correction{grid-area:action;justify-self:end}.v2-attendance-record-card .v2-attendance-correction[open]{border-top:1px solid rgba(25,86,59,0.14);grid-column:1 / -1;justify-self:stretch;padding-top:12px}.v2-attendance-correction summary{color:var(--v2-green-dark);cursor:pointer;font-weight:950}.v2-attendance-correction-grid{display:grid;gap:8px;grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-users-panel{max-width:980px}.v2-users-table{min-width:720px}.v2-users-table tr.is-inactive-user{background:#f2f5f4;color:var(--v2-muted)}.v2-user-cell{align-items:center;display:flex;gap:10px;min-width:0}.v2-user-cell strong,.v2-user-cell small{display:block}.v2-user-cell small{color:var(--v2-muted);font-size:12px;font-weight:800;margin-top:2px}.v2-account-state{color:var(--v2-muted);font-weight:900}.v2-account-state.is-active{color:var(--v2-green-dark)}.v2-account-state.is-inactive{color:var(--v2-red-dark)}.v2-user-editor-panel{margin:0;max-width:820px}.v2-password-editor-panel{display:grid;gap:18px;max-width:720px}.v2-password-form-header,.v2-password-form-section{display:grid;gap:12px}.v2-password-form-header{border-bottom:1px solid var(--v2-line);padding-bottom:16px}.v2-password-form-header h2,.v2-password-form-header p{margin:0}.v2-password-form-header h2{color:var(--v2-ink);font-size:24px;font-weight:950;line-height:1.18}.v2-password-rule-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.v2-password-rule-list li{background:rgba(223,244,232,0.78);border:1px solid rgba(31,133,79,0.26);border-radius:999px;color:var(--v2-green-dark);font-size:12px;font-weight:900;line-height:1;padding:7px 9px}.v2-password-form-section+.v2-password-form-section{border-top:1px solid var(--v2-line);padding-top:14px}.v2-password-section-heading{display:grid;gap:3px}.v2-password-section-heading strong{color:var(--v2-ink);font-size:16px;font-weight:950}.v2-password-section-heading span{color:var(--v2-muted);font-size:13px;font-weight:800;line-height:1.4}.v2-user-password-panel{border-top:1px solid var(--v2-line);display:grid;gap:12px;padding-top:4px}.v2-user-password-panel .v2-section-heading{margin-bottom:0}.v2-user-form-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.v2-inline-correction{display:grid;gap:6px}.v2-rule-list,.v2-list{display:grid;gap:10px}.v2-notice-admin-shell{display:grid;gap:16px;margin:0 auto var(--v2-space-5);max-width:960px;width:100%}.v2-notice-page-hero,.v2-notice-admin-list{margin-left:auto;margin-right:auto;max-width:960px;width:100%}.v2-notice-page-hero{align-items:end;border-bottom:1px solid rgba(25,86,59,0.2);grid-template-columns:minmax(0, 1fr) auto;margin-bottom:18px;padding:8px 0 18px}.v2-notice-page-hero .v2-ops-actions{padding-bottom:2px}.v2-notice-admin-list{gap:14px}.v2-notice-list-heading{align-items:end;display:flex;gap:12px;justify-content:space-between;margin:4px 0 2px}.v2-notice-list-heading h2{font-size:22px;font-weight:900;line-height:1.2;margin:0}.v2-notice-list-heading p{color:var(--v2-muted);font-size:13px;font-weight:800;margin:4px 0 0}.v2-notice-conflict-panel{background:#fff8f5;border-color:var(--v2-red);display:grid;gap:14px;padding:16px 18px}.v2-notice-conflict-panel .v2-section-heading{margin-bottom:0}.v2-notice-conflict-total{background:var(--v2-red);border-radius:6px;color:white;display:inline-flex;font-size:13px;font-weight:900;padding:6px 8px}.v2-notice-conflict-summary{align-items:center;display:flex;gap:10px 14px;justify-content:space-between;padding-top:2px}.v2-notice-conflict-summary span{color:var(--v2-muted);display:block;font-size:13px;font-weight:800;margin-top:0}.v2-notice-conflict-summary .v2-button{flex:0 0 auto}.v2-notice-conflict-list,.v2-conflict-patient-list{display:grid;gap:8px}.v2-notice-conflict-group{background:white;border:2px solid #ffb8ad;border-radius:8px;overflow:hidden}.v2-notice-conflict-group summary{align-items:center;cursor:pointer;display:grid;gap:8px;grid-template-columns:minmax(0, 1fr) auto;list-style:none;padding:9px 10px}.v2-notice-conflict-group summary::-webkit-details-marker{display:none}.v2-notice-conflict-group summary strong,.v2-notice-conflict-group summary span{display:block}.v2-notice-conflict-group summary span{color:var(--v2-muted);font-size:13px;font-weight:800;margin-top:2px}.v2-notice-conflict-group summary em{background:#ffe9e5;border-radius:999px;color:var(--v2-red-dark);font-size:12px;font-style:normal;font-weight:900;padding:5px 8px}.v2-conflict-patient-list{border-top:1px solid var(--v2-line);padding:10px}.v2-conflict-patient-row{align-items:center;background:#fffdfb;border:1px solid var(--v2-line);border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0, 1fr) auto;padding:10px}.v2-conflict-patient-row.is-clickable{cursor:pointer;transition:background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease}.v2-conflict-patient-row.is-clickable:hover,.v2-conflict-patient-row.is-clickable:focus-visible,.v2-conflict-patient-row.is-clickable.is-selected-calendar-item{background:rgba(220,252,231,0.72);border-color:rgba(47,133,90,0.42);box-shadow:0 0 0 3px rgba(47,133,90,0.13);outline:none}.v2-conflict-patient-row strong,.v2-conflict-patient-row span{display:block}.v2-conflict-patient-row span{color:var(--v2-muted);font-size:13px;font-weight:800;margin-top:3px}.v2-conflict-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.v2-conflict-phone-button{align-items:center;background:rgba(255,255,255,0.66);backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);border:1px solid rgba(255,255,255,0.82);box-shadow:inset 0 1px 0 rgba(255,255,255,0.68),0 12px 28px rgba(11,64,42,0.16);color:var(--v2-green-dark);min-height:32px;padding:6px 10px}.v2-conflict-phone-button:visited{color:var(--v2-green-dark)}.v2-conflict-phone-button:hover,.v2-conflict-phone-button:hover:visited{background:rgba(255,255,255,0.84);border-color:rgba(255,255,255,0.96);color:var(--v2-green)}.v2-notice-admin-card{background:#fbffff;border:2px solid var(--v2-line);border-radius:8px;overflow:hidden}.v2-notice-admin-card summary{cursor:pointer;display:grid;gap:6px;padding:16px 18px}.v2-notice-admin-card summary strong,.v2-notice-admin-card summary span{display:block}.v2-notice-admin-card summary strong{font-weight:900}.v2-notice-admin-card summary span{color:var(--v2-muted);font-size:13px;font-weight:800}.v2-notice-admin-card[open] summary{border-bottom:1px solid var(--v2-line)}.v2-notice-compose{border-color:var(--v2-green);position:relative}.v2-notice-compose>summary{background:linear-gradient(135deg, rgba(217,244,235,0.72), rgba(255,255,255,0.76));padding-right:60px}.v2-notice-help{position:absolute;right:16px;top:14px;z-index:2}.v2-notice-help-button{align-items:center;background:#ffffff;border:2px solid var(--v2-green);border-radius:999px;color:var(--v2-green-dark);cursor:help;display:inline-flex;font-size:14px;font-weight:900;height:30px;justify-content:center;min-height:0;padding:0;width:30px}.v2-notice-help-popover{background:#ffffff;border:1px solid var(--v2-line);border-radius:8px;box-shadow:var(--v2-shadow);display:grid;gap:5px;opacity:0;padding:10px;pointer-events:none;position:absolute;right:0;top:calc(100% + 8px);transform:translateY(-4px);transition:opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;visibility:hidden;max-width:calc(100vw - 36px);width:320px}.v2-notice-help:hover .v2-notice-help-popover,.v2-notice-help:focus-within .v2-notice-help-popover{opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}.v2-notice-help-popover strong,.v2-notice-help-popover span{display:block}.v2-notice-help-popover strong{font-weight:900}.v2-notice-help-popover span{color:var(--v2-muted);font-size:13px;font-weight:800;line-height:1.45}.v2-notice-editor{display:grid;gap:16px;margin:0;padding:18px}.v2-notice-edit-metadata{align-items:center;background:#f7fbf8;border:1px solid #d5e5df;border-radius:8px;color:var(--v2-muted);display:flex;flex-wrap:wrap;font-size:13px;font-weight:800;gap:8px 14px;line-height:1.4;padding:10px 12px}.v2-notice-form-section{background:#ffffff;border:1px solid var(--v2-line);border-radius:8px;display:grid;gap:14px;padding:18px}.v2-notice-section-heading{align-items:flex-start;display:flex;gap:10px;max-width:720px}.v2-notice-section-heading span{align-items:center;background:var(--v2-green);border-radius:999px;color:white;display:inline-flex;flex:0 0 28px;font-size:13px;font-weight:900;height:28px;justify-content:center;width:28px}.v2-notice-section-heading strong{display:block;font-weight:900}.v2-notice-section-heading small{color:var(--v2-muted);display:block;font-size:13px;font-weight:800;line-height:1.35;margin-top:2px}.v2-notice-editor .v2-inline-grid{gap:12px;grid-template-columns:repeat(3, minmax(0, 1fr))}.v2-notice-editor .v2-booking-block-grid{grid-template-columns:minmax(112px, 0.78fr) repeat(3, minmax(0, 1fr))}.v2-choice-grid{display:grid;gap:12px;grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-choice-card{align-items:flex-start;background:#fbffff;border:2px solid var(--v2-line);border-radius:8px;cursor:pointer;display:flex !important;flex-direction:row !important;gap:10px !important;min-height:96px;padding:14px}.v2-choice-card:has(input:checked){background:var(--v2-green-light);border-color:var(--v2-green);box-shadow:0 0 0 3px rgba(17,100,63,0.12)}.v2-choice-card input{flex:0 0 auto;margin-top:3px;min-height:auto;width:auto}.v2-choice-card span,.v2-choice-card strong,.v2-choice-card small{display:block}.v2-choice-card small{color:var(--v2-muted);font-weight:800;line-height:1.35}.v2-notice-block-fields{display:grid;gap:12px}.v2-booking-block-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.v2-booking-block-toolbar span{color:var(--v2-muted);font-size:13px;font-weight:800;line-height:1.4}.v2-booking-block-list{display:grid;gap:12px}.v2-booking-block-row{background:#fbffff;border:1px solid var(--v2-line);border-radius:8px;display:grid;gap:12px;padding:16px}.v2-booking-block-row-header{align-items:center;display:flex;gap:8px;justify-content:space-between}.v2-booking-block-row-header strong{font-weight:900}.v2-booking-block-remove{background:transparent;border:0;color:var(--v2-red-dark);cursor:pointer;font-size:13px;font-weight:900;min-height:32px;padding:4px 6px}.v2-booking-block-remove:disabled{color:var(--v2-muted);cursor:not-allowed;opacity:0.45}.v2-block-custom-times{display:grid;gap:8px;grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-notice-live-counter{background:#f7fbf8;border:1px solid #b8d8c2;border-radius:8px;display:grid;gap:4px;padding:12px 14px}.v2-notice-live-counter.has-conflicts{background:#fff8f5;border-color:#ffb8ad}.v2-notice-live-counter strong,.v2-notice-live-counter span{display:block}.v2-notice-live-counter strong{font-weight:900}.v2-notice-live-counter span{color:var(--v2-muted);font-size:13px;font-weight:800}.v2-notice-private-preview{color:var(--v2-muted);font-size:13px;font-weight:800}.v2-notice-admin-preview{border-bottom:1px solid var(--v2-line);padding:14px 18px}.v2-notice-admin-preview .v2-notice-body p{margin:0}.v2-notice-editor-grid{display:grid;gap:8px;grid-template-columns:minmax(0, 0.8fr) minmax(0, 1.2fr)}.v2-notice-editor-actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--v2-space-2);justify-content:flex-end}.v2-notice-admin-card .button_to{background:#fff8f6;border-top:1px solid #f1c9c2;display:flex;justify-content:flex-end;margin:0;padding:14px 18px 18px}.v2-notice-admin-card .button_to .v2-button-full{width:auto}.v2-home-notice,.v2-notice-card,.v2-notice-admin-card{position:relative}.v2-notice-card{overflow:hidden;padding-left:calc(var(--v2-panel-pad) + 8px)}.v2-notice-card::before,.v2-notice-admin-card::before{background:transparent;content:"";inset:0 auto 0 0;position:absolute;width:8px}.v2-notice-card.is-active-notice,.v2-notice-admin-card.is-active-notice{border-color:var(--v2-red)}.v2-notice-admin-card.is-active-notice summary,.v2-notice-admin-card.has-future-booking-effect summary{padding-left:18px}.v2-notice-card.is-active-notice::before,.v2-notice-admin-card.is-active-notice::before{background:var(--v2-red)}.v2-notice-card.has-future-booking-effect:not(.is-active-notice),.v2-notice-admin-card.has-future-booking-effect:not(.is-active-notice){border-color:#b76f00}.v2-notice-card.has-future-booking-effect:not(.is-active-notice)::before,.v2-notice-admin-card.has-future-booking-effect:not(.is-active-notice)::before{background:#f0a11a}.v2-home-notice.is-active-notice{border-left:6px solid var(--v2-red);padding-left:10px}.v2-home-notice.has-future-booking-effect:not(.is-active-notice){border-left:6px solid #f0a11a;padding-left:10px}.v2-notice-card-header,.v2-notice-summary-head{align-items:flex-start;display:flex;gap:var(--v2-space-2);justify-content:space-between}.v2-notice-card-header h2{margin-bottom:8px}.v2-notice-status-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.v2-notice-status{border:2px solid currentColor;border-radius:999px;display:inline-flex;font-size:12px;font-weight:900;line-height:1;padding:5px 8px;white-space:nowrap}.v2-notice-status-active{background:#fff0ee;color:var(--v2-red-dark)}.v2-notice-status-booking{background:#fff5d4;color:#8a5200}.v2-notice-status-private{background:#edf4f3;color:var(--v2-green-dark)}.v2-schedule-calendar,.v2-schedule-week-scroll{scrollbar-color:rgba(25,86,59,0.42) transparent;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.v2-schedule-week-scroll::-webkit-scrollbar{height:7px}.v2-schedule-week-scroll::-webkit-scrollbar-track{background:transparent}.v2-schedule-week-scroll::-webkit-scrollbar-thumb{background:rgba(25,86,59,0.34);border-radius:999px}.v2-schedule-calendar{background:white;border:2px solid var(--v2-ink);border-radius:8px;box-shadow:var(--v2-shadow);display:grid;gap:var(--v2-space-5);overflow:visible;padding:14px}.v2-schedule-period{display:grid;gap:var(--v2-space-3);min-width:0}.v2-schedule-period-heading{align-items:baseline;border-bottom:3px solid var(--v2-ink);display:flex;justify-content:space-between;padding-bottom:8px}.v2-schedule-period-heading h2{font-size:var(--v2-public-card-title-size);font-weight:900;line-height:1.25;margin:0}.v2-schedule-week-scroll{overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:6px}.v2-schedule-week-grid{display:grid;gap:var(--v2-space-2);grid-template-columns:repeat(7, minmax(118px, 1fr));min-width:930px}.v2-schedule-day-cell{background:#fbffff;border:2px solid var(--v2-line);border-radius:7px;display:grid;gap:8px;grid-template-rows:auto auto 1fr;min-height:142px;padding:10px}.v2-schedule-day-cell.is-closed{background:#f5f7f7}.v2-schedule-day-name{color:var(--v2-muted);font-size:13px;font-weight:900}.v2-schedule-time{color:var(--v2-ink);font-size:19px;font-weight:900;line-height:1.15}.v2-schedule-actions{display:grid;gap:6px;margin-top:2px}.v2-schedule-book-button{align-items:center;background:white;border:2px solid var(--v2-line);border-left:6px solid var(--v2-department-color);border-radius:6px;color:var(--v2-ink);display:inline-flex;font-size:13px;font-weight:900;justify-content:flex-start;line-height:1.15;padding:7px 8px;text-decoration:none}.v2-schedule-book-button:visited{color:var(--v2-ink)}.v2-schedule-book-button:hover{background:var(--v2-department-soft);border-color:var(--v2-department-color);border-left-color:var(--v2-department-color-dark);color:var(--v2-department-color-dark)}.v2-schedule-book-button:hover:visited{color:var(--v2-department-color-dark)}.v2-schedule-closed{align-content:center;background:repeating-linear-gradient(-45deg, rgba(88,112,108,0.08), rgba(88,112,108,0.08) 6px, transparent 6px, transparent 12px);color:var(--v2-muted);font-size:12px;font-weight:850;min-height:84px;text-align:center}.v2-rule-row{align-items:center;border-bottom:1px solid var(--v2-line);display:flex;gap:12px;justify-content:space-between;padding:10px 0}.v2-rule-row span{color:var(--v2-muted);display:block;font-size:13px;font-weight:750;margin-top:3px}.v2-muted{color:var(--v2-muted)}.v2-confirmation{margin:14px auto;max-width:680px}.v2-confirmation.has-review-panel{margin-bottom:16px}.v2-confirmation dl{display:grid;gap:8px 16px;grid-template-columns:90px 1fr;margin:24px 0}.v2-confirmation dt{color:var(--v2-muted);font-weight:900}.v2-confirmation dd{margin:0}.v2-review-panel{display:grid;gap:10px;margin:0 auto 50px;max-width:680px}.v2-review-panel strong{color:var(--v2-ink);font-size:18px;font-weight:900;line-height:1.35}.v2-review-panel p{color:var(--v2-ink-soft);font-size:15px;font-weight:650;line-height:1.65;margin:0;max-width:none}.v2-review-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.v2-body{--v2-ink: #08251b;--v2-ink-soft: #183b2f;--v2-green: #11643f;--v2-green-dark: #073f28;--v2-green-light: #dff4e8;--v2-paper: #eef8f1;--v2-surface: rgba(255, 255, 255, 0.72);--v2-line: rgba(25, 86, 59, 0.22);--v2-muted: #557366;--v2-shadow: 0 24px 70px rgba(10, 53, 34, 0.16);background:linear-gradient(90deg, rgba(238,248,241,0.98) 0%, rgba(238,248,241,0.92) 46%, rgba(238,248,241,0.66) 100%),url(/v2_botanical_lines.svg) center top/cover no-repeat,linear-gradient(180deg, rgba(240,251,245,0.9), rgba(238,248,241,0.76) 44%, rgba(238,248,241,0.96)),var(--v2-paper);min-height:100vh;position:relative}.v2-body::before{background-image:linear-gradient(rgba(17,100,63,0.08) 1px, transparent 1px),linear-gradient(90deg, rgba(17,100,63,0.08) 1px, transparent 1px);background-size:72px 72px;content:"";inset:0;-webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,0.4), transparent 62%);mask-image:linear-gradient(180deg, rgba(0,0,0,0.4), transparent 62%);pointer-events:none;position:fixed;z-index:-1}.v2-notice-banner,.v2-status-card,.v2-panel,.v2-feature-link,.v2-services-topic,.v2-confirmation,.v2-booking-rail,.v2-booking-calendar,.v2-booking-form-panel,.v2-calendar-panel,.v2-ops-command,.v2-attendance-clock,.v2-schedule-calendar,.v2-auth-panel,.v2-clock-card,.v2-list-item{background:rgba(255,255,255,0.72);border-color:rgba(25,86,59,0.24);box-shadow:var(--v2-shadow)}.v2-topbar{background:rgba(248,253,250,0.97);border:0;border-bottom:1px solid rgba(25,86,59,0.22);border-radius:0;box-shadow:none;display:grid;gap:13px;grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);justify-items:center;margin:0;padding:18px clamp(18px, 4vw, 56px) 6px;position:static}.v2-brand-logo-frame{background:transparent;border-color:transparent;box-shadow:none}.v2-brand{grid-column:2;justify-content:center}.v2-nav{border-top:1px solid rgba(25,86,59,0.16);gap:clamp(16px, 4.8vw, 42px);grid-column:1 / -1;justify-content:center;padding-top:9px;width:100%}.v2-nav a{background:transparent;border:0;border-bottom:3px solid transparent;border-radius:0;color:var(--v2-ink);min-width:5.5em;padding:5px 2px 4px}.v2-nav a:hover,.v2-nav a.is-active{background:transparent;border-bottom-color:var(--v2-green);color:var(--v2-green-dark)}.v2-nav a:hover:visited,.v2-nav a.is-active:visited{color:var(--v2-green-dark)}.v2-nav a.v2-side-switch{border:1px solid rgba(17,100,63,0.32);border-radius:6px;color:var(--v2-green-dark);margin-inline-start:clamp(4px, 2vw, 18px);min-width:0;padding-inline:10px}.v2-nav a.v2-side-switch:hover,.v2-nav a.v2-side-switch:hover:visited{background:rgba(223,244,232,0.92);border-color:var(--v2-green);color:var(--v2-green-dark)}.v2-topbar-side-switch{align-self:center;background:transparent;border:1px solid rgba(17,100,63,0.32);border-radius:6px;color:var(--v2-green-dark);font-size:14px;font-weight:900;grid-column:3;grid-row:1;justify-self:end;padding:7px 10px;text-decoration:none;white-space:nowrap}.v2-topbar-side-switch:visited{color:var(--v2-green-dark)}.v2-topbar-side-switch:hover,.v2-topbar-side-switch:hover:visited{background:rgba(223,244,232,0.92);border-color:var(--v2-green);color:var(--v2-green-dark)}.v2-address-strip{background:rgba(7,37,27,0.92);border-bottom:1px solid rgba(255,255,255,0.16)}.v2-notice-banner{background:linear-gradient(135deg, rgba(202,61,55,0.9), rgba(174,48,45,0.86)),rgba(202,61,55,0.82);border-color:rgba(255,255,255,0.46);box-shadow:0 22px 56px rgba(110,29,25,0.24),inset 0 1px 0 rgba(255,255,255,0.18)}.v2-hero,.v2-page-heading,.v2-booking-hero,.v2-ops-hero{padding-block:clamp(12px, 2vw, 28px)}.v2-hero h1,.v2-ops-hero h1,.v2-booking-hero h1,.v2-page-heading h1,.v2-confirmation h1{font-size:var(--v2-public-page-title-size);text-shadow:0 2px 24px rgba(255,255,255,0.62)}.v2-button,button.v2-button{background:linear-gradient(135deg, #0c5d3a, #1e7d4d);border-color:rgba(255,255,255,0.72);box-shadow:0 12px 30px rgba(12,93,58,0.22)}.v2-button-secondary{background:rgba(255,255,255,0.66);border-color:rgba(25,86,59,0.28);color:var(--v2-green-dark)}.v2-services-department .v2-services-cta{background:linear-gradient(135deg, var(--v2-department-color-dark), var(--v2-department-color));border-color:rgba(255,255,255,0.72);box-shadow:0 12px 30px rgba(39,78,54,0.2)}.v2-services-department .v2-services-cta:hover{background:linear-gradient(135deg, var(--v2-department-color-dark), var(--v2-department-color-dark));border-color:rgba(255,255,255,0.82)}.v2-feature-link:hover,.v2-button-secondary:hover,.v2-calendar-cell[data-select-kind="slot"]:hover,.v2-calendar-cell[data-select-kind="slot"][data-department-theme]:hover,.v2-calendar-cell.is-selected-calendar-item[data-select-kind="slot"][data-department-theme]{background:rgba(223,244,232,0.88);border-color:rgba(17,100,63,0.42);color:var(--v2-green-dark)}.v2-form input,.v2-form textarea,.v2-form select,.v2-filter-bar input,.v2-filter-bar select,.v2-search-form input,.v2-search-form select,.v2-inline-form input,.v2-inline-form textarea,.v2-inline-form select,.v2-inline-correction input,.v2-inline-correction textarea,.v2-date-card,.v2-slot,.v2-toggle-button,.v2-day-toggle,.v2-calendar-nav-link{background:rgba(255,255,255,0.66);border-color:rgba(25,86,59,0.24);box-shadow:inset 0 1px 0 rgba(255,255,255,0.54)}.v2-schedule-book-button{background:rgba(255,255,255,0.72);border-color:rgba(25,86,59,0.24);border-left-color:var(--v2-department-color);box-shadow:inset 0 1px 0 rgba(255,255,255,0.54);color:var(--v2-department-color-dark)}.v2-schedule-book-button:visited{color:var(--v2-department-color-dark)}.v2-schedule-book-button:hover,.v2-schedule-book-button:hover:visited{background:var(--v2-department-soft);border-color:var(--v2-department-color);border-left-color:var(--v2-department-color-dark);color:var(--v2-department-color-dark)}.v2-map-image,.v2-clinic-logo{box-shadow:0 22px 50px rgba(8,37,27,0.16)}.v2-calendar th,.v2-data-table th,.v2-time-cell{background:rgba(6,47,31,0.94);color:white}.v2-time-cell small{color:rgba(255,255,255,0.82)}.v2-day-combined-calendar th[data-department-theme],.v2-toggle-button.is-active[data-department-theme],.v2-booking-shell[data-current-department] .v2-date-card.is-active,.v2-booking-shell[data-current-department] .v2-slot:has(input:checked){background:linear-gradient(135deg, var(--v2-department-color-dark), var(--v2-department-color))}.v2-staff-topbar{background:rgba(6,29,22,0.9);border-bottom-color:rgba(78,180,116,0.72)}@media (max-width: 1180px){.v2-ops-lower-grid,.v2-attendance-metrics,.v2-analytics-metrics,.v2-clock-grid,.v2-ops-queue-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-booking-shell{grid-template-columns:minmax(0, 1fr)}.v2-booking-calendar{grid-column:auto}.v2-booking-rail,.v2-booking-form-panel{position:static}}@media (max-width: 800px){.v2-ops-body,.v2-booking-body{--v2-sticky-offset: 104px}.v2-topbar,.v2-staff-topbar,.v2-section-heading,.v2-rule-row{align-items:stretch;flex-direction:column}.v2-staff-nav{justify-content:flex-start;width:100%}.v2-nav{display:flex;flex-wrap:nowrap;gap:6px;justify-content:safe center;margin-inline:-16px;overflow-x:auto;padding:2px 16px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch;width:100%}.v2-nav::-webkit-scrollbar{display:none}.v2-nav a{background:transparent;border:0;border-bottom:3px solid transparent;border-radius:0;flex:0 0 auto;font-size:13px;padding:5px 2px 4px}.v2-nav a:hover,.v2-nav a.is-active{background:transparent;border-bottom-color:var(--v2-green);color:var(--v2-green-dark)}.v2-nav a:hover:visited,.v2-nav a.is-active:visited,.v2-nav a.v2-side-switch:hover:visited{color:var(--v2-green-dark)}.v2-nav a.v2-side-switch{border-bottom-color:var(--v2-green)}.v2-calendar-title{align-items:flex-start;flex-direction:column}.v2-booking-rail .v2-segment-list{grid-template-columns:1fr}.v2-booking-calendar{overflow:hidden}.v2-notice-banner,.v2-flash,.v2-hero,.v2-ops-hero,.v2-auth-grid,.v2-booking-hero,.v2-traffic-layout,.v2-grid-two,.v2-grid-three,.v2-grid-four,.v2-services-topic-list,.v2-filter-bar,.v2-filter-bar-single,.v2-form-row,.v2-choice-grid,.v2-booking-shell,.v2-session-band,.v2-notice-editor-grid,.v2-notice-conflict-group summary,.v2-conflict-patient-row,.v2-ops-command,.v2-calendar-view-tools,.v2-ops-queue-grid,.v2-queue-item,.v2-ops-lower-grid,.v2-attendance-board,.v2-attendance-record-card,.v2-attendance-correction-grid,.v2-attendance-metrics,.v2-analytics-grid,.v2-analytics-metrics,.v2-analytics-breakdown-row,.v2-analytics-segment-list,.v2-attendance-month-filter,.v2-clock-grid,.v2-search-form,.v2-maintenance-hours{grid-template-columns:1fr}.v2-analytics-bar-row{grid-template-columns:minmax(0, 1fr) auto}.v2-analytics-bar-row .v2-analytics-bar-track{grid-column:1 / -1}.v2-analytics-bar-row em{grid-column:1 / -1;text-align:left}.v2-clock-card{align-items:stretch;grid-template-columns:34px minmax(0, 1fr)}.v2-clock-step-action{grid-column:1 / -1}.v2-clock-time{text-align:left}.v2-attendance-record-card .v2-attendance-correction{justify-self:start}.v2-attendance-record-card{grid-template-areas:"person" "times" "note" "action"}.v2-attendance-month-nav{justify-content:flex-start}.v2-profile-grid{grid-template-columns:1fr}.v2-notice-conflict-summary{align-items:stretch;flex-direction:column}.v2-notice-conflict-summary .v2-button{width:100%}.v2-notice-page-hero{align-items:stretch;grid-template-columns:1fr}.v2-notice-page-hero .v2-ops-actions{justify-content:flex-start;padding-bottom:0}.v2-notice-editor .v2-inline-grid{grid-template-columns:1fr}.v2-traffic-facts div{grid-template-columns:1fr}.v2-day-toggle-strip,.v2-calendar-nav-strip{justify-content:flex-start}.v2-calendar-workspace.is-week-view .v2-department-toggle-group{display:flex}.v2-calendar-workspace.is-week-view .v2-department-calendars{grid-template-columns:1fr}.v2-calendar-workspace.is-day-view .v2-calendar{min-width:0;width:100%}.v2-calendar-workspace.is-week-view [data-calendar-department-panel]:not(.is-active-calendar-department){display:none}.v2-notice-banner{align-items:start;grid-template-columns:30px minmax(0, 1fr);margin-top:10px;padding:12px 14px;width:calc(100% - 32px)}.v2-notice-banner .v2-notice-link{display:none}.v2-flash-stack{top:12px;width:calc(100% - 32px)}.v2-flash{grid-template-columns:34px minmax(0, 1fr) auto;padding:12px 14px}.v2-notice-card-header,.v2-notice-summary-head{align-items:flex-start;flex-direction:column}.v2-ops-body .v2-notice-banner{grid-template-columns:24px minmax(0, 1fr)}.v2-ops-body .v2-notice-copy{display:block}.v2-ops-body .v2-notice-link{display:none}.v2-date-card{flex:0 0 112px}.v2-calendar,.v2-data-table{min-width:820px}.v2-ops-body .v2-calendar-workspace.is-day-view .v2-day-combined-calendar{max-width:100%;min-width:304px;width:336px}.v2-ops-body .v2-department-calendar-table{min-width:524px;width:524px}.v2-calendar-workspace.is-day-view .v2-department-calendars{gap:6px;grid-template-columns:repeat(2, minmax(0, 1fr))}}@media (max-width: 520px){.v2-topbar{gap:12px;padding:12px 16px 2px}.v2-staff-topbar{gap:12px;padding:12px 16px}.v2-brand{align-items:flex-start}.v2-brand strong{font-size:15px}.v2-brand small{font-size:11px}.v2-nav{gap:6px;justify-content:safe center}.v2-nav a{border-bottom:3px solid transparent;padding:5px 2px 4px}.v2-address-strip{justify-content:center;padding:10px 16px}.v2-page{padding:22px 16px 52px}.v2-public-footer{padding:28px 16px 32px}.v2-footer-cta{max-width:260px;width:100%}.v2-maintenance-page{align-items:start;padding:16px}.v2-maintenance-shell{padding:26px 18px 20px}.v2-maintenance-logo{width:252px}.v2-ops-body .v2-page{padding-top:var(--v2-space-3)}.v2-hero h1,.v2-ops-hero h1,.v2-booking-hero h1,.v2-page-heading h1,.v2-confirmation h1{font-size:var(--v2-public-page-title-size-mobile);line-height:1.08;max-width:100%;word-break:break-all}.v2-hero p,.v2-ops-hero p,.v2-booking-hero p,.v2-page-heading p,.v2-confirmation p{font-size:var(--v2-public-lead-size-mobile);line-height:1.55}.v2-maintenance-copy h1{font-size:34px;line-height:1.1}.v2-maintenance-copy p{font-size:17px;line-height:1.6}.v2-maintenance-phone{font-size:23px}.v2-status-card,.v2-panel,.v2-services-topic,.v2-list-item,.v2-confirmation,.v2-booking-rail,.v2-booking-calendar,.v2-booking-form-panel,.v2-calendar-panel,.v2-ops-command,.v2-attendance-clock{padding:16px}.v2-notice-card{padding-left:24px}.v2-session-band{padding:12px}.v2-slot-grid,.v2-slot-grid-calendar{grid-template-columns:repeat(2, minmax(0, 1fr))}.v2-inline-grid{grid-template-columns:1fr}.v2-block-custom-times{grid-template-columns:1fr}.v2-notice-admin-shell,.v2-notice-admin-list{gap:12px}.v2-notice-page-hero{margin-bottom:16px;padding-bottom:16px}.v2-notice-admin-card summary,.v2-notice-editor,.v2-notice-form-section,.v2-booking-block-row,.v2-notice-admin-preview,.v2-notice-admin-card .button_to{padding:14px}.v2-notice-help{right:12px;top:12px}.v2-notice-admin-card .button_to .v2-button-full{width:100%}.v2-booking-block-toolbar .v2-button{width:100%}}
