*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{color:#20332e;background:#f4f7f6;min-width:320px;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}.staging-banner{z-index:10000;color:#2f2400;letter-spacing:.08em;text-align:center;background:#f4c95d;border-bottom:2px solid #7a4b00;width:100%;padding:8px 16px;font-size:.875rem;font-weight:800;position:sticky;top:0}.auth-page.auth-marketing-page{color:#123e56;background:#f4f9fc;padding:0;display:block}.auth-shell{width:100%;overflow:hidden}.auth-hero{color:#fff;background:radial-gradient(circle at 82% 8%,#7ee4ee47,#0000 30%),linear-gradient(135deg,#082f49 0%,#0077b6 58%,#00b4d8 135%);grid-template-columns:minmax(0,1fr) minmax(340px,470px);align-items:center;gap:clamp(32px,7vw,110px);min-height:680px;padding:clamp(70px,7vw,100px) max(5vw,32px);display:grid}.auth-story{position:relative}.auth-brand{align-items:center;gap:10px;font-size:1.25rem;display:flex;position:absolute;bottom:calc(100% + 40px)}.auth-brand img{object-fit:contain;background:#fff;border:2px solid #ffffff8c;border-radius:13px;width:52px;height:52px}.auth-kicker{color:#7ee4ee;letter-spacing:.13em;text-transform:uppercase;margin:0 0 12px;font-size:.78rem;font-weight:900}.auth-story h1{letter-spacing:-.055em;max-width:780px;margin:0;font-size:clamp(3.1rem,6.6vw,6.7rem);line-height:.94}.auth-story h1 em{color:#7ee4ee;font-family:Georgia,serif;font-weight:400}.auth-lead{color:#e2f7fc;max-width:720px;margin:28px 0;font-size:clamp(1rem,1.45vw,1.25rem);line-height:1.65}.auth-audience{flex-wrap:wrap;gap:9px;display:flex}.auth-audience span{background:#ffffff14;border:1px solid #ffffff40;border-radius:999px;padding:9px 13px;font-size:.86rem;font-weight:800}.auth-proof{background:#ffffff29;border:1px solid #ffffff2e;border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;max-width:720px;margin-top:38px;display:grid;overflow:hidden}.auth-proof div{background:#04324bb8;gap:3px;padding:15px;display:grid}.auth-proof strong{font-size:1rem}.auth-proof span{color:#c9edf7;font-size:.76rem}.auth-marketing-page .auth-card{z-index:1;border:1px solid #ffffffa6;border-radius:22px;width:auto;margin:0;padding:clamp(24px,3vw,38px);box-shadow:0 28px 70px #02273d4d}.auth-card-heading>span{color:#0786c1;letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:900}.auth-card-heading h2{margin:8px 0;font-size:clamp(1.65rem,2.3vw,2.15rem)}.auth-card-heading p{color:#637c8a;margin:0;line-height:1.5}.auth-marketing-page .auth-card form{gap:14px;margin-top:24px}.auth-marketing-page .auth-card label{color:#234e65;gap:6px;font-size:.84rem;font-weight:800;display:grid}.auth-marketing-page .auth-card input{box-sizing:border-box;background:#fbfdff;width:100%;min-height:47px}.auth-name-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.auth-marketing-page .auth-card .auth-submit{background:linear-gradient(135deg,#00b4d8,#0077b6);min-height:50px;margin-top:4px;box-shadow:0 8px 18px #0077b633}.auth-fine-print{color:#718593;text-align:center;font-size:.75rem}.auth-fine-print a{color:#0077b6;font-weight:800}.auth-marketing-page .auth-message{color:#235b64;background:#edf8fa;border-radius:9px;padding:10px}.auth-marketing-page .auth-help-note{background:#f2f8fb;border-radius:9px;gap:5px;margin-top:10px;padding:12px;font-size:.78rem;display:grid}.auth-marketing-page .auth-help-actions{gap:4px}.auth-marketing-page .auth-card .text-button{padding:9px;font-size:.78rem}.auth-marketing-page .auth-card .auth-switch{border-top:1px solid #dfeaf0;border-radius:0}.auth-features,.auth-pricing{padding:clamp(64px,8vw,110px) max(5vw,32px)}.auth-section-heading{text-align:center;max-width:720px;margin:0 auto 38px}.auth-section-heading .auth-kicker{color:#0786c1}.auth-section-heading h2{color:#123e56;letter-spacing:-.035em;margin:0;font-size:clamp(2rem,4vw,3.6rem)}.auth-section-heading>p:last-child{color:#637c8a;font-size:1.05rem;line-height:1.6}.auth-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:1240px;margin:auto;display:grid}.auth-feature-grid article{background:#fff;border:1px solid #d7e6ed;border-radius:18px;min-height:220px;padding:24px;box-shadow:0 10px 28px #123e5612}.auth-feature-grid article>span{color:#00a6c7;font-size:.75rem;font-weight:900}.auth-feature-grid h3{margin:36px 0 10px;font-size:1.2rem}.auth-feature-grid p{color:#637c8a;margin:0;line-height:1.55}.auth-pricing{background:#eaf7fb}.auth-price-grid{grid-template-columns:repeat(2,minmax(0,430px));justify-content:center;gap:20px;display:grid}.auth-price-grid article{background:#fff;border:1px solid #c9e1eb;border-radius:20px;gap:22px;padding:30px;display:grid;box-shadow:0 14px 34px #123e5617}.auth-price-grid article.featured{border:2px solid #00a9c9;transform:translateY(-8px)}.auth-price-grid article div{gap:5px;display:grid}.auth-price-grid article div>span{font-size:1.25rem;font-weight:900}.auth-price-grid article div>b{color:#fff;text-transform:uppercase;background:#00a9c9;border-radius:999px;justify-self:start;margin:-43px 0 15px;padding:7px 10px;font-size:.7rem}.auth-price-grid article p{margin:5px 0}.auth-price-grid article p strong{font-size:2.5rem}.auth-price-grid small{color:#637c8a}.auth-price-grid ul{color:#365e73;gap:10px;margin:0;padding-left:22px;display:grid}.auth-price-grid button{color:#fff;font:inherit;cursor:pointer;background:#173f55;border:0;border-radius:9px;padding:13px;font-weight:900}.auth-price-grid .featured button{background:linear-gradient(135deg,#00b4d8,#0077b6)}.auth-pricing-note{color:#637c8a;text-align:center;margin:25px 0 0;font-size:.8rem}.auth-footer{color:#c9edf7;background:#082f49;justify-content:space-between;gap:20px;padding:28px max(5vw,32px);display:flex}.auth-footer-tagline{margin-left:auto}.auth-footer nav{flex-wrap:wrap;gap:16px;display:flex}.auth-footer a{color:#fff;font-weight:800}.auth-footer strong{color:#fff;align-items:center;gap:9px;display:flex}.auth-footer img{object-fit:contain;background:#fff;border-radius:8px;width:34px;height:34px}@media (width<=950px){.auth-hero{grid-template-columns:1fr;min-height:auto;padding-top:110px}.auth-marketing-page .auth-card{box-sizing:border-box;width:min(100%,500px);margin:45px auto 10px}.auth-feature-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.auth-hero{padding:100px 20px 48px}.auth-story h1{font-size:3.25rem}.auth-proof,.auth-feature-grid,.auth-price-grid,.auth-name-fields{grid-template-columns:1fr}.auth-marketing-page .auth-card{margin-top:36px}.auth-features,.auth-pricing{padding:58px 20px}.auth-price-grid article.featured{transform:none}.auth-footer{flex-direction:column;align-items:flex-start;padding:25px 20px}.auth-footer-tagline{margin-left:0}}.client-header-actions,.client-migration-actions,.client-import-confirm{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.client-migration-panel{margin-bottom:24px}.client-migration-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.client-migration-heading h3,.client-column-mapping h4{margin:4px 0 6px}.client-migration-heading p:last-child,.client-preview-note,.client-import-confirm p{color:#61746f;margin:0}.client-csv-picker{cursor:pointer;display:inline-block}.client-csv-picker input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.client-import-summary{flex-wrap:wrap;gap:10px;margin:24px 0 16px;display:flex}.client-import-summary>*{color:#385b53;background:#edf4f2;border-radius:999px;padding:7px 10px;font-size:.82rem}.client-column-mapping{background:#f8faf9;border:1px solid #d5e0dc;border-radius:12px;margin:18px 0;padding:18px}.client-column-mapping>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.client-column-mapping label{color:#455b55;gap:6px;font-size:.82rem;font-weight:700;display:grid}.client-column-mapping select{color:#20332e;min-width:0;font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:8px;padding:9px 10px}.client-import-table-wrap{border:1px solid #d5e0dc;border-radius:12px;overflow-x:auto}.client-import-table{border-collapse:collapse;width:100%;min-width:720px}.client-import-table th,.client-import-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e2e8e6;padding:11px 13px}.client-import-table th{color:#526963;text-transform:uppercase;letter-spacing:.04em;background:#f3f7f5;font-size:.76rem}.client-import-table tr:last-child td{border-bottom:0}.client-import-table tr.valid td:last-child{color:#17634f;font-weight:800}.client-import-table tr.invalid{background:#fff7f5}.client-import-table tr.invalid td:last-child{color:brown;font-weight:700}.client-preview-note{margin-top:10px;font-size:.85rem}.client-import-confirm{justify-content:space-between;margin-top:18px}@media (width<=800px){.client-migration-heading{flex-direction:column}.client-column-mapping>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.client-header-actions,.client-migration-actions,.client-import-confirm{flex-direction:column;align-items:stretch;width:100%}.client-header-actions button,.client-migration-actions>*,.client-import-confirm button{box-sizing:border-box;text-align:center;width:100%}.client-column-mapping>div{grid-template-columns:1fr}}.pet-import-panel{margin-bottom:24px}.pet-import-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.pet-import-heading h3{margin:4px 0 6px}.pet-import-heading p:last-child{color:#61746f;margin:0}.pet-import-picker{cursor:pointer;position:relative}.pet-import-picker input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.pet-import-summary{flex-wrap:wrap;gap:9px;margin:22px 0 15px;display:flex}.pet-import-summary>*{color:#385b53;background:#edf4f2;border-radius:999px;padding:7px 10px;font-size:.82rem}.pet-import-mapping{background:#f8faf9;border:1px solid #d5e0dc;border-radius:10px;margin:15px 0;padding:14px}.pet-import-mapping summary{cursor:pointer;font-weight:800}.pet-import-mapping>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:13px;display:grid}.pet-import-mapping label{color:#455b55;gap:5px;font-size:.8rem;font-weight:700;display:grid}.pet-import-mapping select{background:#fff;border:1px solid #b8c8c4;border-radius:7px;min-width:0;padding:8px}.pet-import-panel .client-success{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}@media (width<=800px){.pet-import-heading{flex-direction:column}.pet-import-mapping>div{grid-template-columns:repeat(2,1fr)}}@media (width<=520px){.pet-import-picker{box-sizing:border-box;text-align:center;width:100%}.pet-import-mapping>div{grid-template-columns:1fr}}.pet-import-panel{flex-direction:column;display:flex}.pet-import-panel .pet-import-heading{order:0}.pet-import-panel .pet-import-summary{order:1}.pet-import-panel .client-import-confirm{z-index:20;background:#f2fbfd;border:1px solid #62cce2;border-radius:12px;order:2;padding:14px 16px;position:sticky;bottom:14px;box-shadow:0 8px 26px #1f3d3533}.pet-import-panel .pet-import-mapping{order:3}.pet-import-panel .client-import-table-wrap{order:4}.pet-import-panel .client-import-confirm .primary-button{flex:none}@media (width<=520px){.pet-import-panel .client-import-confirm{bottom:8px}.pet-import-panel .client-import-confirm .primary-button{width:100%}}.profile-photo-control{align-items:center;gap:18px;display:flex}.profile-photo-frame{color:#21463d;background:#dcebe6;border:3px solid #fff;border-radius:50%;flex:none;place-items:center;width:104px;height:104px;font-size:1.65rem;font-weight:900;display:grid;overflow:hidden;box-shadow:0 0 0 1px #bfd0cb}.profile-photo-frame img{object-fit:cover;width:100%;height:100%}.profile-photo-control.compact{display:block}.profile-photo-control.compact .profile-photo-frame{border-width:2px;width:44px;height:44px;font-size:.9rem}.profile-photo-actions{flex:1;gap:10px;display:grid}.profile-photo-actions>div:first-child,.profile-photo-actions>div:nth-child(2){flex-wrap:wrap;align-items:center;gap:10px;display:flex}.profile-photo-actions>div:first-child{flex-direction:column;align-items:flex-start;gap:3px}.profile-photo-actions small{color:#657873}.profile-photo-actions input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.profile-photo-remove{color:brown;font:inherit;cursor:pointer;background:0 0;border:0;padding:9px 12px;font-weight:800}.profile-photo-error{color:brown;margin:0;font-weight:700}@media (width<=520px){.profile-photo-control:not(.compact){flex-direction:column;align-items:flex-start}}.client-form-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.client-form-title h3{margin:4px 0 0}.client-form-title>span{color:#55706a;background:#edf4f2;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:800}.profile-photo-section{background:#f7faf9;border:1px solid #d6e0dd;border-radius:12px;margin:0 0 22px;padding:18px}.client-row{position:relative}.client-edit-button{color:#24574d;min-width:72px;font:inherit;cursor:pointer;background:#fff;border:1px solid #9eb2ad;border-radius:8px;align-self:center;padding:9px 14px;font-weight:800}.client-edit-button:hover{border-color:var(--brand-accent,#32685c);background:#f0f6f4}.client-success{color:#17634f;background:#dcebe7;border-radius:9px;padding:12px 14px;font-weight:700}.client-form .form-actions{justify-content:flex-end;gap:10px;display:flex}.client-deposit-settings{background:#f7faf9;border:1px solid #d6e0dd;border-radius:12px;padding:18px}.client-deposit-toggle{cursor:pointer;align-items:flex-start;flex-direction:row!important;gap:12px!important;display:flex!important}.client-deposit-toggle input{margin-top:2px;width:20px!important;min-height:20px!important}.client-deposit-toggle span{gap:4px;display:grid}.client-deposit-toggle small{color:#657873;font-weight:400}.client-deposit-fields{border-top:1px solid #d6e0dd;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px;padding-top:18px;display:grid}.client-deposit-fields textarea{box-sizing:border-box;resize:vertical;width:100%}.client-deposit-badge{background:#fff1c9;border-radius:999px;width:fit-content;margin-top:5px;padding:4px 8px;font-size:.76rem;font-weight:800;color:#7b5700!important}.household-pets-section{background:#f2fbfd;border:1px solid #b9dfe8;border-radius:14px;padding:20px}.household-pets-heading,.household-pet-card-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.household-pets-heading h4{margin:4px 0;font-size:1.12rem}.household-pets-heading span{color:#607875}.household-pet-list{gap:14px;margin-top:18px;display:grid}.household-pet-card{border:1px solid #d5e3e0;border-top:4px solid var(--brand-primary,#00b4d8);background:#fff;border-radius:12px;padding:18px}.household-pet-card-heading button{color:#9b2f20;font:inherit;cursor:pointer;background:0 0;border:0;font-size:.86rem;font-weight:800}.household-pet-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}@media (width<=720px){.client-edit-button{width:100%}.client-form .form-actions{grid-template-columns:1fr;display:grid}.client-form .form-actions button{width:100%}.household-pets-heading{flex-direction:column;align-items:stretch}.household-pet-fields,.client-deposit-fields{grid-template-columns:1fr}}.client-sms-consent{background:#f1fbfd;border-radius:12px;align-items:flex-start;gap:12px;padding:14px;flex-direction:row!important;display:flex!important}.client-sms-consent input{width:auto;margin-top:4px}.client-sms-consent span{gap:3px;display:grid}.record-search-bar{background:#fff;border:1px solid #d5e0dc;border-radius:13px;align-items:flex-end;gap:12px;margin-bottom:12px;padding:16px;display:flex;box-shadow:0 4px 14px #1f3d350d}.record-search-bar label{color:#284b46;flex:0 50%;gap:6px;width:50%;min-width:0;font-weight:800;display:grid}.record-search-bar input{box-sizing:border-box;color:#173a35;width:100%;font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:9px;padding:12px 14px}.record-search-bar input:focus{border-color:#00b4d8;outline:3px solid #00b4d826}.record-search-bar>strong{color:#65766f;white-space:nowrap;margin-left:auto;padding-bottom:11px}.record-search-bar>button{flex:none;width:auto;margin-bottom:1px}@media (width<=650px){.record-search-bar{flex-direction:column;align-items:stretch}.record-search-bar label{width:100%;max-width:none}.record-search-bar>strong{margin:0;padding:0}.record-search-bar>button{width:100%;margin:0}}.pet-form-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.pet-form-title h3{margin:4px 0 0}.pet-form-title>span{color:#55706a;background:#edf4f2;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:800}.pet-edit-button{color:#24574d;width:100%;font:inherit;cursor:pointer;background:#fff;border:1px solid #9eb2ad;border-radius:8px;margin-top:14px;padding:10px 14px;font-weight:800}.pet-edit-button:hover{border-color:var(--brand-accent,#32685c);background:#f0f6f4}.pet-success{color:#17634f;background:#dcebe7;border-radius:9px;padding:12px 14px;font-weight:700}.pet-card{position:relative}.pet-vaccine-badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;max-width:calc(100% - 100px);padding:6px 10px;font-size:.75rem;font-weight:800;line-height:1;position:absolute;top:18px;right:18px}.pet-vaccine-badge.current{color:#17633f;background:#e2f5ea;border-color:#86c9a8}.pet-vaccine-badge.warning{color:#795400;background:#fff4cf;border-color:#e7bd55}.pet-vaccine-badge.expired,.pet-vaccine-badge.missing{color:#9b2d22;background:#fde8e6;border-color:#e4a09a}.pet-vaccine-badge.none{color:#596b66;background:#f1f5f4;border-color:#ccd7d4}@media (width<=520px){.pet-vaccine-badge{font-size:.7rem;top:14px;right:14px}}.pet-report-card-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.pet-report-card-actions .pet-edit-button{margin-top:14px;font-size:.82rem}.pet-report-viewer{margin-bottom:24px}.pet-report-viewer-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.pet-report-viewer-heading h3{margin:4px 0 0}.pet-report-history-list{gap:14px;display:grid}.pet-report-history-card{background:#fafdfc;border:1px solid #dce4e1;border-radius:12px;padding:18px;position:relative}.pet-report-history-card h4{margin:5px 0 14px}.pet-report-history-status{text-transform:capitalize;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:800;position:absolute;top:14px;right:14px}.pet-report-history-status.completed{color:#17633f;background:#e2f5ea}.pet-report-history-status.draft{color:#795400;background:#fff4cf}.pet-report-field{border-top:1px solid #e1e7e5;grid-template-columns:minmax(110px,.3fr) 1fr;gap:14px;padding:9px 0;display:grid}.pet-report-field strong{text-transform:capitalize}.pet-report-field p{color:#20332e;white-space:pre-wrap}@media (width<=520px){.pet-report-card-actions,.pet-report-field{grid-template-columns:1fr}.pet-report-viewer-heading{flex-direction:column;align-items:stretch}}.mobile-menu-button{display:none}.calendar-scroll{padding-bottom:8px;overflow-x:auto}.appointment-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin-top:20px;display:grid}.appointment-form label{color:#284b46;flex-direction:column;gap:8px;min-width:0;font-weight:700;display:flex}.appointment-form input,.appointment-form select,.appointment-form textarea{box-sizing:border-box;color:#173a35;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:9px;font-weight:400}.appointment-form input,.appointment-form select{min-height:50px;padding:10px 13px}.appointment-form textarea{resize:vertical;min-height:112px;padding:13px}.appointment-form input:focus,.appointment-form select:focus,.appointment-form textarea:focus{border-color:#32685c;outline:3px solid #32685c24}.appointment-form select:disabled{color:#82908d;cursor:not-allowed;background:#eef2f1}.appointment-form .full-width{grid-column:1/-1}.appointment-form .form-actions{justify-content:flex-end;padding-top:2px;display:flex}.appointment-form .form-actions .primary-button{min-width:190px}@media (width<=720px){html,body,#root{width:100%;max-width:100%;overflow-x:hidden}.dashboard{min-width:0;padding-top:58px;display:block}.mobile-menu-button{z-index:210;color:#fff;width:100%;min-height:58px;font:inherit;text-align:left;background:#183f37;border:0;align-items:center;gap:12px;padding:12px 18px;font-size:1.1rem;font-weight:800;display:flex;position:fixed;inset:0 0 auto}.mobile-menu-button span{font-size:1.35rem}.sidebar{z-index:200;transition:transform .18s;inset:58px auto 0 0;overflow-y:auto;transform:translate(-105%);width:min(82vw,300px)!important;min-height:0!important;position:fixed!important}.sidebar.mobile-open{transform:translate(0)}.dashboard-main{min-width:0;width:100%!important;padding:22px 16px!important}.dashboard-header,.panel-heading{flex-direction:column;align-items:stretch!important;gap:14px!important}.dashboard-header .primary-button,.form-actions .primary-button{width:100%}.dashboard-header h2{font-size:clamp(1.9rem,9vw,2.5rem)}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.summary-card{min-width:0;padding:18px!important}.dashboard-panel{min-width:0;overflow:hidden;padding:18px!important}.appointment-form{gap:16px;grid-template-columns:1fr!important}.appointment-form .full-width{grid-column:1!important}.appointment-form .form-actions .primary-button{width:100%}.calendar-scroll{width:100%;padding-bottom:0;overflow-x:hidden}.calendar-grid{width:100%}.appointment-card,.client-card,.clients-list>*,.client-list>*{min-width:0;grid-template-columns:1fr!important;gap:10px!important;display:grid!important}.client-card *,.clients-list>* *,.client-list>* *{overflow-wrap:anywhere;min-width:0}.client-card a{overflow-wrap:anywhere}input,select,textarea,button{max-width:100%}}@media (width<=420px){.summary-grid{grid-template-columns:1fr!important}.staff-card-actions{grid-template-columns:1fr}}.notification-composer{background:#f5f9f8;border:1px solid #cbd9d5;border-radius:12px;gap:18px;margin-top:24px;padding:20px;display:grid}.notification-composer h3{margin:4px 0 0}.notification-composer>label{color:#284b46;gap:8px;font-weight:700;display:grid}.notification-composer select,.notification-composer textarea{box-sizing:border-box;color:#173a35;width:100%;font:inherit;background:#fff;border:1px solid #adc1bc;border-radius:8px;padding:11px 13px;font-weight:400}.notification-composer select{min-height:48px}.notification-composer textarea{resize:vertical}.notification-consent{background:#fff3c4;border-radius:8px;align-items:start;padding:12px;color:#594710!important;grid-template-columns:auto 1fr!important;font-weight:600!important}.notification-consent input{width:19px;height:19px;margin:1px 0 0}.notification-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}@media (width<=720px){.notification-composer{padding:16px}.notification-actions{grid-template-columns:1fr;display:grid}.notification-actions button{width:100%}}.confirmation-status{color:#76530c;background:#fff8e8;border-radius:10px;margin:16px 0;padding:10px 12px;font-weight:700}.confirmation-status.confirmed{color:#176447;background:#e9f8f2}.calendar-client-search{position:relative}.calendar-client-results{z-index:40;background:#fff;border:1px solid #b8c8c4;border-radius:0 0 10px 10px;max-height:260px;position:absolute;top:calc(100% - 2px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 26px #1f3d352e}.calendar-client-results button{color:#173a35;width:100%;font:inherit;text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #e3e9e7;padding:11px 13px;display:block}.calendar-client-results button:last-child{border-bottom:0}.calendar-client-results button:hover,.calendar-client-results button:focus{background:#e9f8fb;outline:0}.calendar-client-results p{color:#65766f;margin:0;padding:13px;font-weight:500}.calendar-client-hint{color:brown;font-size:.78rem;font-weight:600}.calendar-client-search:focus-within>input{border-color:#00b4d8;outline:3px solid #00b4d826}@media (width<=650px){.calendar-client-results{max-height:220px}}.calendar-overlap-stack{grid-template-columns:repeat(var(--overlap-count,1),minmax(0,1fr));gap:3px;width:100%;height:100%;display:grid}.calendar-overlap-stack.count-2{--overlap-count:2}.calendar-overlap-stack.count-3{--overlap-count:3}.calendar-overlap-stack.count-4{--overlap-count:4}.calendar-overlap-stack>span{box-sizing:border-box;min-width:0;overflow:hidden}.calendar-overlap-stack>span strong,.calendar-overlap-stack>span:not(:first-child){word-break:break-word}.calendar-overlap-stack.count-3>span,.calendar-overlap-stack.count-4>span{padding-inline:4px!important;font-size:10px!important}@media (width<=720px){.calendar-overlap-stack{grid-template-columns:1fr}.calendar-overlap-stack>span{min-height:44px}.calendar-overlap-stack.count-3>span,.calendar-overlap-stack.count-4>span{font-size:11px!important}}.calendar-date-controls{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:8px;display:flex}.calendar-month-picker{color:#405a54;gap:4px;min-width:170px;font-size:.75rem;font-weight:800;display:grid}.calendar-month-picker input{color:#173d36;min-height:44px;font:inherit;cursor:pointer;background:#fff;border:1px solid #9fb2ad;border-radius:9px;padding:8px 10px;font-size:.95rem}@media (width<=720px){.calendar-date-controls{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.calendar-month-picker{grid-column:1/-1;min-width:0}.calendar-date-controls .secondary-button{width:100%}}.history-page-header{align-items:flex-start}.history-subtitle{color:#657873;margin:.45rem 0 0;font-size:1rem}.history-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.history-summary-card{background:#fff;border:1px solid #d6e0dd;border-radius:18px;flex-direction:column;justify-content:space-between;min-height:112px;padding:1.35rem;display:flex;box-shadow:0 10px 24px #183f370f}.history-summary-card span{color:#60736f}.history-summary-card strong{color:#173d36;font-size:2rem}.history-panel{padding:1.5rem}.history-toolbar{grid-template-columns:minmax(260px,1fr) 180px 180px auto;align-items:end;gap:1rem;display:grid}.history-toolbar label{color:#173d36;flex-direction:column;gap:.45rem;min-width:0;font-weight:700;display:flex}.history-toolbar input{box-sizing:border-box;color:#173d36;width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #aebfbb;border-radius:10px;padding:.7rem .85rem}.history-toolbar input:focus{border-color:#32685c;outline:3px solid #32685c26}.history-clear-button{color:#245348;min-height:48px;font:inherit;cursor:pointer;background:#fff;border:1px solid #9aada8;border-radius:10px;padding:.7rem 1rem;font-weight:700}.history-filter-tabs{gap:.55rem;margin:1.4rem 0;padding-bottom:.2rem;display:flex;overflow-x:auto}.history-filter-tabs button{color:#245348;font:inherit;cursor:pointer;background:#fff;border:1px solid #b8c7c3;border-radius:999px;flex:none;padding:.65rem 1rem;font-weight:700}.history-filter-tabs button.active{color:#fff;background:#32685c;border-color:#32685c}.history-loading,.history-result-count{color:#657873}.history-result-count{margin:0 0 .75rem;font-weight:700}.history-results{gap:.85rem;display:grid}.history-record{background:#fff;border:1px solid #d5e0dd;border-radius:14px;grid-template-columns:82px minmax(0,1fr);display:grid;overflow:hidden}.history-record-date{color:#173d36;text-align:center;background:#edf4f2;flex-direction:column;justify-content:center;align-items:center;padding:1.15rem .65rem;display:flex}.history-record-date strong{font-size:1.05rem}.history-record-date span{color:#657873;margin-top:.2rem;font-size:.85rem}.history-record-main{min-width:0;padding:1.1rem 1.25rem}.history-record-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.history-record-heading h3{color:#173d36;margin:0;font-size:1.08rem}.history-record-heading p{color:#60736f;margin:.3rem 0 0}.history-status{color:#365c53;background:#e9efed;border-radius:999px;flex:none;padding:.4rem .7rem;font-size:.78rem;font-weight:800}.history-status-requested{color:#7b5700;background:#fff1c9}.history-status-confirmed{color:#235f52;background:#dcefea}.history-status-checked_in,.history-status-in_progress,.history-status-ready_for_pickup{color:#245c77;background:#dcecf5}.history-status-completed{color:#57615e;background:#e2e5e4}.history-status-cancelled,.history-status-no_show,.history-status-void{color:#8a2929;background:#f7dddd}.history-record-details{border-top:1px solid #e0e8e6;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem;padding-top:1rem;display:grid}.history-record-details div{flex-direction:column;gap:.25rem;min-width:0;display:flex}.history-record-details span{color:#71817d;letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:800}.history-record-details strong{color:#173d36;text-overflow:ellipsis;overflow:hidden}.history-notes{border-top:1px solid #e0e8e6;margin-top:1rem;padding-top:.85rem}.history-notes summary{color:#245f53;cursor:pointer;font-weight:800}.history-notes div{margin-top:.8rem}.history-notes p{color:#51645f;white-space:pre-wrap;margin:.25rem 0 0}.history-empty-state{min-height:210px}@media (width<=1100px){.history-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-toolbar{grid-template-columns:minmax(220px,1fr) 1fr 1fr}.history-clear-button{grid-column:1/-1}}@media (width<=700px){.history-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.history-summary-card{min-height:96px;padding:1rem}.history-summary-card strong{font-size:1.65rem}.history-panel{padding:1rem}.history-toolbar{grid-template-columns:1fr 1fr}.history-search,.history-clear-button{grid-column:1/-1}.history-record{grid-template-columns:1fr}.history-record-date{flex-direction:row;justify-content:flex-start;gap:.35rem;padding:.7rem 1rem}.history-record-date span{margin:0}.history-record-heading{flex-direction:column}.history-record-details{grid-template-columns:1fr;gap:.75rem}}@media (width<=440px){.history-summary-grid,.history-toolbar{grid-template-columns:1fr}.history-search,.history-clear-button{grid-column:auto}}.history-record-actions{border-top:1px solid #e0e8e6;justify-content:flex-end;margin-top:1rem;padding-top:1rem;display:flex}.history-approve-button{color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#32685c;border:1px solid #32685c;border-radius:10px;padding:.7rem 1rem;font-weight:800}.history-approve-button:hover:not(:disabled){background:#245348}.history-approve-button:disabled{cursor:wait;opacity:.65}.history-record{cursor:pointer;transition:border-color .16s,box-shadow .16s}.history-record:hover,.history-record-selected{border-color:#7fa399;box-shadow:0 8px 22px #183f371a}.history-record-actions{flex-wrap:wrap;justify-content:flex-end;gap:.65rem;display:flex}.history-secondary-button,.history-danger-button{min-height:44px;font:inherit;cursor:pointer;background:#fff;border-radius:10px;padding:.7rem 1rem;font-weight:800}.history-secondary-button{color:#245348;border:1px solid #9aada8}.history-danger-button{color:#a52f28;border:1px solid #c9554c}.history-secondary-button:disabled,.history-danger-button:disabled{cursor:wait;opacity:.65}.rebook-button{color:#075985;cursor:pointer;background:#e8f7fb;border:0;border-radius:9px;padding:.7rem 1rem;font-weight:800}.rebook-backdrop{z-index:1000;background:#091e269e;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.rebook-modal{background:#fff;border-radius:18px;width:min(620px,100%);max-height:92vh;padding:1.4rem;overflow:auto;box-shadow:0 24px 70px #0000004d}.rebook-modal>header{justify-content:space-between;gap:1rem;display:flex}.rebook-modal>header h3{margin:.25rem 0}.rebook-modal>header p{color:#60717a;margin:.25rem 0}.rebook-modal>header>button{cursor:pointer;background:0 0;border:0;align-self:start;font-size:2rem}.rebook-modal form{gap:1rem;margin-top:1.25rem;display:grid}.rebook-modal label{gap:.4rem;font-weight:700;display:grid}.rebook-mode{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.rebook-mode button{background:#fff;border:1px solid #bfd2d8;border-radius:10px;padding:.8rem;font-weight:800}.rebook-mode button.active{background:var(--brand-primary);color:var(--brand-on-primary);border-color:var(--brand-primary)}.rebook-date-time{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.rebook-day{background:#f3f8fa;border-radius:12px;flex-wrap:wrap;gap:.5rem;padding:1rem;display:flex}.rebook-day strong{width:100%}.rebook-day span{background:#fff;border-radius:7px;padding:.35rem .55rem}.rebook-preview{background:#fff8eb;border-left:4px solid #f4a261;margin:0;padding:.8rem}.rebook-actions{justify-content:flex-end;gap:.75rem;display:flex}@media (width<=600px){.rebook-date-time{grid-template-columns:1fr}.rebook-actions{grid-template-columns:1fr 1fr;display:grid}}.invoice-page-header{align-items:flex-start}.invoice-subtitle{color:#657873;margin:.45rem 0 0}.invoice-success{color:#195c4d;background:#e4f4ef;border:1px solid #a9d4c8;border-radius:10px;padding:.85rem 1rem;font-weight:700}.invoice-create-panel{grid-template-columns:minmax(220px,.7fr) minmax(320px,1.3fr);align-items:end;gap:2rem;margin-bottom:1.4rem;display:grid}.invoice-create-heading{grid-column:1/-1;justify-content:space-between;align-items:end;gap:1rem;display:flex}.invoice-create-tabs,.standalone-customer-mode{gap:.5rem;display:flex}.invoice-create-tabs button,.standalone-customer-mode button{color:#245348;font:inherit;cursor:pointer;background:#fff;border:1px solid #adbfba;border-radius:999px;padding:.65rem .9rem;font-weight:800}.invoice-create-tabs button.active,.standalone-customer-mode button.active{color:#fff;background:#0077b6;border-color:#0077b6}.standalone-invoice-form{grid-column:1/-1;gap:1.25rem;display:grid}.standalone-customer-fields,.standalone-adjustments{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.standalone-invoice-form label{color:#173d36;gap:.4rem;font-weight:700;display:grid}.standalone-invoice-form input,.standalone-invoice-form select,.standalone-invoice-form textarea{box-sizing:border-box;color:#173d36;width:100%;font:inherit;background:#fff;border:1px solid #adbfba;border-radius:10px;padding:.7rem .8rem}.standalone-lines{border-top:1px solid #d6e0dd;gap:.75rem;padding-top:1rem;display:grid}.standalone-section-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.standalone-section-heading h4{margin:0}.standalone-line{background:#f8fbfa;border:1px solid #d6e0dd;border-radius:12px;grid-template-columns:.8fr 1.4fr .4fr .55fr auto auto;align-items:end;gap:.75rem;padding:1rem;display:grid}.standalone-line>strong{white-space:nowrap;padding-bottom:.75rem}.standalone-line>button{color:#a63c30;font:inherit;cursor:pointer;background:0 0;border:0;margin-bottom:.35rem;font-weight:800}.standalone-notes{grid-column:1/-1}.standalone-total{justify-content:flex-end;gap:1.5rem;font-size:1.25rem;display:flex}.standalone-actions{justify-content:flex-end;gap:.75rem;display:flex}.invoice-create-panel h3,.invoice-create-panel p{margin:.25rem 0}.invoice-create-panel p{color:#657873}.invoice-create-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1rem;display:grid}.invoice-create-form label,.invoice-payment-form label,.invoice-toolbar label{color:#173d36;flex-direction:column;gap:.4rem;min-width:0;font-weight:700;display:flex}.invoice-create-form select,.invoice-payment-form input,.invoice-payment-form select,.invoice-toolbar input{box-sizing:border-box;color:#173d36;width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #adbfba;border-radius:10px;padding:.7rem .8rem}.invoice-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.4rem;display:grid}.invoice-summary-grid article,.invoice-summary-grid>button{background:#fff;border:1px solid #d6e0dd;border-radius:17px;flex-direction:column;justify-content:space-between;min-height:105px;padding:1.25rem;display:flex;box-shadow:0 10px 24px #183f370f}.invoice-summary-grid span{color:#657873}.invoice-summary-grid strong{color:#173d36;font-size:1.75rem}.invoice-list-panel{padding:1.4rem}.invoice-toolbar{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.25rem;display:flex}.invoice-toolbar label{width:min(380px,100%)}.invoice-filter-tabs{gap:.45rem;display:flex;overflow-x:auto}.invoice-filter-tabs button,.invoice-secondary-button{color:#245348;min-height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #adbfba;border-radius:999px;flex:none;padding:.6rem .9rem;font-weight:700}.invoice-filter-tabs button.active{color:#fff;background:#32685c;border-color:#32685c}.invoice-list{gap:.8rem;display:grid}.invoice-card{background:#fff;border:1px solid #d5dfdc;border-radius:14px;overflow:hidden}.invoice-card-summary{width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;border:0;grid-template-columns:minmax(0,1fr) auto 150px;align-items:center;gap:1rem;padding:1.1rem 1.2rem;display:grid}.invoice-card-summary:hover{background:#f8fbfa}.invoice-number{color:#55706a;letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:800}.invoice-card-summary h3{color:#173d36;margin:.2rem 0 0}.invoice-card-summary p{color:#657873;margin:.25rem 0 0}.invoice-status{color:#3e5d56;background:#e8eeec;border-radius:999px;padding:.4rem .7rem;font-size:.78rem;font-weight:800}.invoice-status-draft{color:#685b40;background:#eee9df}.invoice-status-open,.invoice-status-partially_paid{color:#785500;background:#fff1c9}.invoice-status-paid{color:#1e6253;background:#dff1eb}.invoice-status-overdue{color:#8a2929;background:#f7dddd}.invoice-status-void,.invoice-status-refunded{color:#59635f;background:#e5e8e7}.invoice-card-amount{color:#657873;flex-direction:column;align-items:flex-end;display:flex}.invoice-card-amount strong{color:#173d36;font-size:1.25rem}.invoice-card-amount small{color:#8a5d00;margin-top:.15rem;font-weight:700}.invoice-card-details{background:#fbfcfc;border-top:1px solid #dfe7e5;grid-template-columns:minmax(0,1.5fr) minmax(250px,.7fr);gap:1.5rem;padding:1.2rem;display:grid}.invoice-card-details h4{color:#173d36;margin:0 0 .75rem}.invoice-line-items>div,.invoice-payment-history>div,.invoice-totals>div{border-bottom:1px solid #e1e8e6;justify-content:space-between;gap:1rem;padding:.55rem 0;display:flex}.invoice-totals,.invoice-totals dt,.invoice-totals dd{margin:0}.invoice-total-row,.invoice-balance-row{color:#173d36;font-weight:800}.invoice-payment-history,.invoice-actions,.invoice-payment-form{grid-column:1/-1}.invoice-actions{justify-content:flex-end;display:flex}.invoice-payment-form{background:#fff;border:1px solid #cad8d4;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:.25rem;padding:1.1rem;display:grid}.invoice-payment-form h4,.invoice-payment-note,.invoice-payment-actions{grid-column:1/-1}.invoice-payment-actions{justify-content:flex-end;gap:.75rem;display:flex}.invoice-empty-state{min-height:210px}.receipt-modal{z-index:1000;background:#0f2621b8;padding:2rem;position:fixed;inset:0;overflow-y:auto}.receipt-sheet{box-sizing:border-box;color:#1b302b;background:#fff;border-radius:16px;width:min(820px,100%);margin:0 auto;padding:2.5rem;box-shadow:0 24px 70px #0000003d}.receipt-screen-actions{justify-content:flex-end;gap:.75rem;margin-bottom:2rem;display:flex}.receipt-screen-actions button:disabled{opacity:.55;cursor:not-allowed}.receipt-email-message{color:#195c4d;background:#e4f4ef;border:1px solid #a9d4c8;border-radius:9px;margin:-1rem 0 1.5rem;padding:.75rem .9rem;font-weight:700}.receipt-header{border-bottom:2px solid #234f45;justify-content:space-between;align-items:flex-start;gap:2rem;padding-bottom:1.5rem;display:flex}.receipt-business{align-items:flex-start;gap:1rem;display:flex}.receipt-business img{object-fit:contain;border-radius:12px;width:72px;height:72px}.receipt-business h1{color:#173d36;margin:0 0 .4rem;font-size:1.55rem}.receipt-business p,.receipt-title p,.receipt-title span,.receipt-customer p{color:#60736f;margin:.15rem 0}.receipt-title{text-align:right;flex:none}.receipt-title p{letter-spacing:.1em;font-size:.8rem;font-weight:800}.receipt-title h2{color:#173d36;margin:.25rem 0;font-size:1.25rem}.receipt-customer{background:#f0f6f4;border-radius:10px;grid-template-columns:1fr 1fr;gap:2rem;margin:1.5rem 0;padding:1rem 1.2rem;display:grid}.receipt-customer div{flex-direction:column;gap:.2rem;display:flex}.receipt-customer span{color:#657873;letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:800}.receipt-items>div,.receipt-payment-details>div,.receipt-summary>div{border-bottom:1px solid #dfe7e4;justify-content:space-between;gap:1rem;padding:.7rem 0;display:flex}.receipt-table-heading{color:#60736f;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;font-weight:800}.receipt-summary{width:min(360px,100%);margin:1.5rem 0 1.5rem auto}.receipt-summary .receipt-paid-total{color:#173d36;border-top:2px solid #234f45;padding-top:.9rem;font-size:1.1rem}.receipt-payment-details{margin-top:1.5rem}.receipt-payment-details h3{color:#173d36;margin:0}.receipt-payment-details span{text-transform:capitalize}.receipt-footer{color:#173d36;text-align:center;border-top:2px solid #234f45;margin-top:2rem;padding-top:1.5rem}.receipt-footer p{color:#60736f;margin:.3rem 0 0}@media (width<=900px){.invoice-create-panel{grid-template-columns:1fr}.invoice-toolbar{flex-direction:column;align-items:stretch}.invoice-toolbar label{width:100%}.invoice-card-details{grid-template-columns:1fr}.invoice-payment-form,.standalone-line{grid-template-columns:1fr 1fr}}@media (width<=650px){.invoice-create-heading,.standalone-actions{flex-direction:column;align-items:stretch}.invoice-create-tabs,.standalone-customer-mode{grid-template-columns:1fr;display:grid}.standalone-customer-fields,.standalone-adjustments,.standalone-line,.invoice-summary-grid,.invoice-create-form{grid-template-columns:1fr}.invoice-card-summary{grid-template-columns:1fr auto}.invoice-card-amount{grid-column:1/-1;align-items:flex-start}.invoice-payment-form{grid-template-columns:1fr}.invoice-payment-form h4,.invoice-payment-note,.invoice-payment-actions{grid-column:auto}.invoice-payment-actions{flex-direction:column-reverse}.receipt-modal{padding:0}.receipt-sheet{border-radius:0;min-height:100%;padding:1.25rem}.receipt-header{flex-direction:column}.receipt-title{text-align:left}.receipt-customer{grid-template-columns:1fr;gap:1rem}.receipt-screen-actions{z-index:1;background:#fff;flex-wrap:wrap;padding:.75rem 0;position:sticky;top:0}}@media print{body *{visibility:hidden!important}.receipt-modal,.receipt-modal *{visibility:visible!important}.receipt-modal{background:#fff;padding:0;position:absolute;inset:0;overflow:visible}.receipt-sheet{width:100%;max-width:none;min-height:0;box-shadow:none;border-radius:0;margin:0;padding:.35in}.receipt-screen-actions,.receipt-email-message{display:none!important}@page{margin:.4in}}.invoice-payment-entry{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;display:grid}.invoice-refund-button{color:#a63c30;font:inherit;cursor:pointer;background:#fff;border:1px solid #c75b4d;border-radius:999px;padding:.55rem 1rem;font-weight:700}.invoice-refund-button:hover{background:#fff1ef}.invoice-refund-history>div{border-bottom:1px solid #dfe7e5;justify-content:space-between;gap:1rem;padding:.75rem 0;display:flex}.invoice-refund-history strong{color:#a63c30}.invoice-refund-form{background:#fff8f7;border:1px solid #efd0cb;border-radius:14px;grid-template-columns:minmax(160px,.4fr) minmax(260px,1fr);align-items:end;gap:1rem;margin-top:1.25rem;padding:1.25rem;display:grid}.invoice-refund-form>div:first-child{grid-column:1/-1}.invoice-refund-form h4,.invoice-refund-form p{margin:0}.invoice-refund-form p{color:#657873;margin-top:.35rem}.invoice-refund-form label{gap:.4rem;font-weight:700;display:grid}.invoice-refund-form input{width:100%;min-height:44px;font:inherit;border:1px solid #b8c8c4;border-radius:9px;padding:.7rem .8rem}.invoice-refund-actions{grid-column:1/-1;justify-content:flex-end;gap:.75rem;display:flex}.invoice-danger-button{color:#fff;font:inherit;cursor:pointer;background:#a63c30;border:1px solid #a63c30;border-radius:9px;padding:.7rem 1rem;font-weight:700}@media (width<=650px){.invoice-payment-entry,.invoice-refund-form{grid-template-columns:1fr}.invoice-refund-actions{flex-direction:column-reverse;grid-column:auto}}.staff-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.staff-form label{color:#284b46;gap:8px;font-weight:700;display:grid}.staff-form input,.staff-form select{color:#153632;width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:9px;padding:10px 12px}.staff-checkbox{align-content:end;align-items:center;grid-template-columns:auto 1fr!important}.staff-checkbox input{width:20px;min-height:20px}.staff-form-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.staff-grid{grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:20px;display:grid}.staff-card{background:#fff;border:1px solid #d4dfdc;border-radius:14px;padding:22px}.staff-card.inactive{opacity:.68}.staff-card-top{grid-template-columns:auto 1fr auto;align-items:center;gap:14px;display:grid}.staff-card h3,.staff-card p{margin:0}.staff-card-top p{color:#607b76;margin-top:4px}.staff-avatar{color:#18483f;text-transform:uppercase;background:#dcebe7;border-radius:50%;place-items:center;width:52px;height:52px;font-weight:800;display:grid}.staff-status{color:#17634f;background:#dcebe7;border-radius:999px;padding:6px 10px;font-size:.8rem;font-weight:800}.staff-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0;display:grid}.staff-details dt{color:#708680;letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:800}.staff-details dd{overflow-wrap:anywhere;color:#173a35;text-transform:capitalize;margin:5px 0 0}.staff-login-status{color:#607b76;font-size:.9rem;margin-bottom:16px!important}.staff-card-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.staff-card-actions>:only-child,.staff-card .secondary-button{width:100%}.staff-success{color:#17634f;background:#dcebe7;border-radius:9px;margin:0 0 20px;padding:12px 14px;font-weight:700}@media (width<=720px){.staff-form-grid,.staff-details,.staff-grid{grid-template-columns:1fr}}.module-message{color:#075f73;background:#e4f5f9;border-radius:8px;padding:10px 12px;font-weight:700}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.module-card{background:#fafcfb;border:1px solid #dce4e1;border-radius:12px;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:18px;display:grid}.module-card.enabled{background:#f2fbfd;border-color:#62cce2;box-shadow:inset 0 3px #00b4d8}.module-card.locked{background:#f7f8f8;border-color:#ccd7d4}.module-icon{font-size:1.6rem}.module-card h4{margin:2px 0 6px}.module-card p{color:#65766f;margin:0;font-size:.9rem}.module-title-line{justify-content:space-between;align-items:center;gap:10px;display:flex}.module-access-badge{white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:900}.module-access-badge.owned{color:#087341;background:#dff5e9}.module-access-badge.locked{color:#8a4d00;background:#fff0dc}.module-toggle{border-top:1px solid #dce4e1;grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;padding-top:12px;font-weight:800!important;display:flex!important}.module-toggle input{height:20px;width:20px!important}.module-locked-action{border-top:1px solid #dce4e1;grid-column:1/-1;justify-content:space-between;align-items:center;gap:14px;padding-top:13px;display:flex}.module-locked-action>div{gap:3px;display:grid}.module-locked-action span{color:#65766f;font-size:.8rem}.module-locked-action button{color:#076b98;cursor:pointer;background:#fff;border:1px solid #0786c1;border-radius:9px;padding:9px 12px;font-weight:850}.module-locked-action button:disabled{opacity:.6;cursor:not-allowed}@media (width<=700px){.module-grid{grid-template-columns:1fr}.module-locked-action{flex-direction:column;align-items:stretch}.module-title-line{flex-direction:column;align-items:flex-start}}.square-connected,.square-connect-action{border:1px solid #d7e0dd;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;padding:16px;display:flex}.square-connected>div,.square-connect-action>div{gap:5px;display:grid}.square-connected span{color:#087341;font-weight:900}.square-connected small,.square-connect-action span{color:#65766f}.square-connect-action{background:#fafcfb}@media (width<=650px){.square-connected,.square-connect-action{flex-direction:column;align-items:stretch}}:root{--brand-primary:#00b4d8;--brand-accent:#0077b6;--brand-on-primary:#173a35;--brand-on-accent:#fff}.sidebar,.mobile-menu-button{background:var(--brand-primary)!important;color:var(--brand-on-primary)!important}.nav-button.active,.primary-button{background:var(--brand-accent)!important;color:var(--brand-on-accent)!important}.settings-layout,.settings-section{gap:24px;display:grid}.settings-section h3{margin:4px 0 0}.settings-help{color:#607b76;margin:8px 0 0}.settings-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;display:grid}.settings-form-grid label,.color-grid label{color:#284b46;gap:8px;font-weight:700;display:grid}.settings-form-grid input,.settings-form-grid select,.settings-form-grid textarea,.hours-row input{box-sizing:border-box;color:#173a35;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:9px;padding:11px 13px;font-weight:400}.settings-form-grid input,.settings-form-grid select{min-height:48px}.settings-form-grid textarea{resize:vertical}.settings-form-grid small{color:#6a807b;font-weight:400}.settings-full{grid-column:1/-1}.settings-success{color:#17634f;background:#dcebe7;border-radius:9px;padding:12px 14px;font-weight:700}.logo-control{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.logo-preview{width:84px;height:84px;color:var(--brand-primary);background:#edf4f2;border:1px solid #cad7d3;border-radius:16px;place-items:center;font-size:1.4rem;font-weight:900;display:grid;overflow:hidden}.logo-preview img{object-fit:contain;width:100%;height:100%}.logo-upload{cursor:pointer;border:1px solid #9eb2ad;border-radius:8px;padding:11px 16px;font-weight:800}.logo-upload input{opacity:0;width:1px;height:1px;position:absolute}.logo-control small{color:#607b76;width:100%}.theme-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.theme-option{color:#173a35;text-align:left;cursor:pointer;background:#f5f8f7;border:2px solid #0000;border-radius:11px;gap:10px;padding:14px;display:grid}.theme-option.selected{border-color:var(--brand-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-accent) 14%, transparent);background:#fff}.theme-swatches{border-radius:7px;grid-template-columns:2fr 1fr;height:28px;display:grid;overflow:hidden}.theme-swatches i{display:block}.color-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.color-control{border:1px solid #b8c8c4;border-radius:9px;align-items:center;gap:12px;min-height:48px;padding:7px 10px;display:flex}.color-control input{background:0 0;border:0;width:42px;height:32px;padding:0}.color-control code{color:#46625c}.business-logo{object-fit:contain;background:#fff;border-radius:12px;width:64px;height:64px;margin-bottom:12px}.hours-list{gap:10px;display:grid}.hours-row{background:#fbfcfc;border:1px solid #d2ddda;border-radius:12px;grid-template-columns:minmax(140px,.7fr) minmax(320px,1.3fr);align-items:center;gap:20px;min-height:76px;padding:12px 16px;display:grid}.hours-row.closed{color:#71827e;background:#f4f6f5}.day-toggle{color:#173a35;align-items:center;gap:12px;font-weight:800;display:flex}.day-toggle input{width:20px;min-width:20px;height:20px;accent-color:var(--brand-accent);padding:0}.hours-time-range{grid-template-columns:1fr auto 1fr;align-items:end;gap:12px;display:grid}.hours-time-range label{color:#607b76;gap:5px;font-size:.8rem;font-weight:700;display:grid}.hours-time-range>span{color:#607b76;padding-bottom:13px}.settings-switches{gap:12px;display:grid}.settings-switches>label{cursor:pointer;border:1px solid #d2ddda;border-radius:12px;align-items:flex-start;gap:13px;padding:16px;display:flex}.settings-switches input{width:20px;height:20px;accent-color:var(--brand-accent);margin-top:2px}.settings-switches span{gap:4px;display:grid}.settings-switches small{color:#607b76}.notification-preferences{gap:20px;display:grid}.notification-device-status{margin:0}.notification-device-actions,.notification-save-actions{flex-wrap:wrap;gap:12px;display:flex}.notification-preferences>.form-actions{justify-content:flex-start;margin:0}.notification-preferences>.settings-switches,.notification-preferences>.settings-form-grid{margin:0}.notification-preferences .settings-switches>label{align-items:center;min-height:84px}.notification-preferences .settings-switches input{flex:0 0 20px;margin-top:0}.notification-preferences .settings-form-grid{padding-top:2px}@media (width<=720px){.settings-form-grid,.color-grid{grid-template-columns:1fr}.settings-full{grid-column:1}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hours-row{grid-template-columns:1fr;gap:10px}.hours-time-range{grid-template-columns:1fr auto 1fr}.notification-preferences{gap:16px}.notification-preferences .settings-switches>label{min-height:0;padding:14px}.notification-device-actions>button,.notification-save-actions>button,.notification-preferences>.form-actions>button{width:100%}}@media (width<=460px){.theme-grid{grid-template-columns:1fr}.hours-time-range{grid-template-columns:1fr;align-items:stretch}.hours-time-range>span{display:none}}.client-reminder-settings{border:1px solid var(--border-color,#d9e4e8);background:#f8fcfd;border-radius:16px;gap:18px;margin-top:24px;padding:22px;display:grid}.client-reminder-settings h4{margin:4px 0}.client-reminder-toggle{align-items:flex-start;gap:12px;display:flex}.client-reminder-toggle input{margin-top:4px}.client-reminder-toggle span{gap:3px;display:grid}.client-reminder-toggle.compact{align-self:end;padding-bottom:10px}.billing-page{max-width:980px}.billing-page header h2{margin:4px 0 8px;font-size:2rem}.billing-page header>p:last-child{color:#5d726c;margin-bottom:28px}.billing-summary-card,.billing-detail-card,.trial-plan-actions{background:#fff;border:1px solid #d5e0dc;border-radius:16px;box-shadow:0 10px 24px #20332e0f}.billing-summary-card{justify-content:space-between;align-items:center;gap:24px;padding:28px;display:flex}.billing-summary-card h3{margin:12px 0 4px;font-size:1.65rem}.billing-summary-card p{color:#5d726c;margin:0}.billing-state{color:#205d4d;text-transform:uppercase;letter-spacing:.04em;background:#e4f1ed;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:800;display:inline-block}.billing-state.trial{color:#6f5000;background:#fff0bd}.billing-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0;display:grid}.billing-detail-card{gap:8px;padding:22px;display:grid}.billing-detail-card span{color:#5d726c}.billing-detail-card strong{font-size:1.25rem}.trial-plan-actions{padding:28px}.trial-plan-actions h3{margin:0 0 6px}.trial-plan-actions>p{color:#5d726c;margin:0 0 20px}.trial-plan-actions>div{flex-wrap:wrap;gap:12px;display:flex}.trial-plan-actions button,.billing-refresh{color:#fff;font:inherit;cursor:pointer;background:#2f6b5e;border:1px solid #2f6b5e;border-radius:9px;padding:12px 16px;font-weight:700}.billing-refresh{color:#2f6b5e;background:0 0;margin-top:8px}.billing-error{color:#a32222;font-weight:700}@media (width<=700px){.billing-summary-card{flex-direction:column;align-items:flex-start}.billing-details-grid{grid-template-columns:1fr}}.vaccination-toolbar,.vaccination-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.vaccination-layout{grid-template-columns:minmax(280px,.8fr) minmax(420px,1.4fr);gap:22px;display:grid}.vaccination-list{gap:12px;display:grid}.vaccination-item{background:#fff;border:1px solid #d6e2df;border-radius:12px;padding:16px}.vaccination-item h4{margin:0 0 5px}.vaccination-item p{color:#5b706a;margin:4px 0}.vaccination-status{text-transform:uppercase;border-radius:999px;padding:5px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.vaccination-status.current{color:#17613f;background:#dff4e8}.vaccination-status.warning{color:#745500;background:#fff0bd}.vaccination-status.expired,.vaccination-status.missing{color:#8b2820;background:#ffe0dc}.vaccination-form{grid-template-columns:1fr 1fr;gap:14px;display:grid}.vaccination-form .full-width{grid-column:1/-1}.vaccination-form label{gap:6px;font-weight:700;display:grid}.vaccination-form input,.vaccination-form select,.vaccination-form textarea{width:100%}.requirement-row{border-bottom:1px solid #e2e9e7;justify-content:space-between;align-items:flex-start;gap:12px;padding:13px 0;display:flex}.requirement-row:last-child{border-bottom:0}.proof-link{color:var(--brand-accent,#0077b6);font-weight:800}@media (width<=900px){.vaccination-layout,.vaccination-form{grid-template-columns:1fr}.vaccination-form .full-width{grid-column:auto}}.vet-medication-actions{flex-wrap:wrap;gap:.5rem;display:flex}.vet-medication-form{background:#f7fbfc;border:1px solid #cfe0e7;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0;padding:1rem;display:grid}.vet-medication-form label{gap:.35rem;display:grid}.vet-medication-form .full{grid-column:1/-1}.vet-medication-list{gap:.6rem;margin-top:1rem;display:grid}.vet-medication-list article{background:#f6fbf9;border:1px solid #d5e7e2;border-left:5px solid #2e8b72;border-radius:10px;justify-content:space-between;gap:1rem;padding:.8rem;display:flex}.vet-medication-list h4,.vet-medication-list p{margin:.2rem 0}.vet-medication-list span{color:#23705d;text-transform:uppercase;font-size:.72rem;font-weight:900}.vet-medication-list small{white-space:pre-wrap;display:block}.vet-medication-list article>div:last-child{align-items:start;gap:.4rem;display:flex}.vet-medication-list button{cursor:pointer;background:#fff;border:1px solid #b7c9c4;border-radius:7px;padding:.45rem .6rem}.vet-medications>details{margin-top:.9rem}.vet-medications>details summary{cursor:pointer;font-weight:800}@media (width<=700px){.vet-medication-form{grid-template-columns:1fr}.vet-medication-form .full{grid-column:auto}.vet-medication-list article{display:grid}}@media print{body:has(.vet-chart) .vet-medication-actions{display:none!important}body:has(.vet-chart) .vet-medication-form{display:none!important}body:has(.vet-chart) .vet-medication-list article>div:last-child{display:none!important}}.vet-treatment-plan{background:#f7fcfd;border:1px solid #b9dfe5;border-radius:14px;margin-top:18px;padding:18px}.vet-treatment-plan .panel-heading p{color:#65766f;margin:3px 0}.vet-plan-status{color:#506571;text-transform:uppercase;background:#e6eef2;border-radius:999px;align-self:start;padding:6px 10px;font-size:.72rem;font-weight:900}.vet-plan-status.approved,.vet-plan-status.invoiced{color:#17633f;background:#e2f5ea}.vet-plan-status.partially_approved{color:#795400;background:#fff4d8}.vet-plan-status.declined{color:#9e2e20;background:#fdeae7}.vet-plan-add{background:#fff;border:1px solid #d9e5e2;border-radius:11px;grid-template-columns:140px minmax(220px,1fr) 100px 120px auto;align-items:end;gap:10px;margin-top:16px;padding:14px;display:grid}.vet-plan-add label{color:#284b46;gap:5px;font-weight:700;display:grid}.vet-plan-add input,.vet-plan-add select{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:1px solid #afc1bd;border-radius:8px;padding:10px}.vet-plan-empty{color:#65766f;text-align:center;border:1px dashed #9dbdb7;border-radius:10px;gap:4px;margin-top:14px;padding:18px;display:grid}.vet-plan-items{gap:8px;margin-top:14px;display:grid}.vet-plan-items article{background:#fff;border:1px solid #d9e5e2;border-left:5px solid #9badaa;border-radius:10px;grid-template-columns:minmax(200px,1fr) auto auto;align-items:center;gap:14px;padding:13px;display:grid}.vet-plan-items article.accepted{background:#f5fcf8;border-left-color:#36a269}.vet-plan-items article.declined{background:#fff9f8;border-left-color:#d56b5d}.vet-plan-items article>div:first-child{gap:3px;display:grid}.vet-plan-items article>div:first-child span{color:#65766f;text-transform:uppercase;font-size:.7rem;font-weight:900}.vet-plan-items article small{color:#65766f}.vet-plan-decisions{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.vet-plan-decisions button{color:#315f55;font:inherit;cursor:pointer;background:#fff;border:1px solid #afc1bd;border-radius:8px;padding:7px 9px;font-size:.78rem;font-weight:800}.vet-plan-decisions .accept.selected{color:#fff;background:#36a269;border-color:#36a269}.vet-plan-decisions .decline.selected{color:#fff;background:#b44a3c;border-color:#b44a3c}.vet-plan-decisions .remove{color:#9e2e20}.vet-treatment-plan footer{border-top:1px solid #d9e5e2;justify-content:space-between;align-items:end;gap:16px;margin-top:16px;padding-top:14px;display:flex}.vet-treatment-plan footer>div{flex-wrap:wrap;gap:10px;display:flex}.vet-treatment-plan footer span{color:#65766f;gap:2px;display:grid}.vet-treatment-plan footer b{color:#173f55}@media (width<=1050px){.vet-plan-add{grid-template-columns:1fr 1fr}.vet-plan-add .description{grid-column:1/-1}.vet-plan-add button{align-self:end}.vet-plan-items article{grid-template-columns:1fr auto}.vet-plan-decisions{grid-column:1/-1;justify-content:flex-start}}@media (width<=650px){.vet-plan-add{grid-template-columns:1fr}.vet-plan-add .description{grid-column:auto}.vet-plan-items article{grid-template-columns:1fr}.vet-treatment-plan footer{flex-direction:column;align-items:stretch}.vet-treatment-plan footer>div:last-child{display:grid}.vet-plan-decisions{justify-content:stretch}.vet-plan-decisions button{flex:1}}.vet-header{align-items:center}.vet-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.vet-summary button{color:inherit;cursor:pointer;font:inherit;text-align:left;background:linear-gradient(145deg,#fff,#f8fbff);border:1px solid #dce7f0;border-radius:16px;padding:1rem 1.1rem;transition:transform .15s,border-color .15s,box-shadow .15s;box-shadow:0 8px 24px #1f40580f}.vet-summary button:not(:disabled):hover{border-color:#62bfd1;transform:translateY(-2px);box-shadow:0 12px 28px #1f40581f}.vet-summary button[aria-pressed=true]{background:#effbfd;border-color:#00b4d8;box-shadow:0 0 0 3px #00b4d81f}.vet-summary button:disabled{cursor:default;opacity:.62}.vet-summary span,.vet-summary small{color:#687987;display:block}.vet-summary strong{color:#173f55;margin:.2rem 0;font-size:1.8rem;display:block}.vet-summary-results{margin-bottom:1rem}.vet-summary-results>div:last-child{gap:.5rem;display:grid}.vet-summary-results>div:last-child>button{color:inherit;cursor:pointer;font:inherit;text-align:left;background:#fff;border:1px solid #dce6eb;border-radius:10px;justify-content:space-between;align-items:center;padding:.75rem .85rem;display:flex}.vet-summary-results>div:last-child>button:hover{background:#f2fbfc;border-color:#69bfd0}.vet-summary-results button span{gap:.2rem;display:grid}.vet-summary-results button small{color:#687987}.vet-summary-results button>b{color:#176f7e;text-transform:capitalize}.vet-today{margin-bottom:1rem}.vet-today-list{gap:.65rem;display:grid}.vet-today-list article{border-top:1px solid #e6edf2;grid-template-columns:90px 1fr auto auto;align-items:center;gap:1rem;padding:.75rem 0;display:grid}.vet-today-list time{color:#173f55;font-weight:800}.vet-today-list article div span{color:#71818d;font-size:.85rem;display:block}.vet-visit-status,.vet-record-status{color:#345a6d;letter-spacing:.04em;text-transform:uppercase;background:#edf4f8;border-radius:999px;padding:.32rem .6rem;font-size:.72rem;font-weight:800}.vet-workspace{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:1rem;display:grid}.vet-patient-list{padding:1rem;position:sticky;top:1rem}.vet-patient-list>input{width:100%;margin:.8rem 0}.vet-patient-list>div:last-child{gap:.35rem;max-height:70vh;display:grid;overflow:auto}.vet-patient-list button{color:inherit;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;grid-template-columns:38px 1fr auto;align-items:center;gap:.65rem;width:100%;padding:.65rem;display:grid}.vet-patient-list button:hover,.vet-patient-list button.selected{background:#eef8f7;border-color:#b9dfd9}.vet-patient-list button small{color:#75838d;display:block}.vet-patient-list button>b{color:#fff;background:#b33a3a;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.vet-patient-avatar{color:#175c59;background:#d9eeeb;border-radius:50%;justify-content:center;align-items:center;height:38px;font-weight:900;display:flex}.vet-chart{gap:1rem;min-width:0;display:grid}.vet-chart-header{grid-template-columns:auto 1fr auto auto;align-items:center;gap:1rem;display:grid}.vet-chart-header .profile-photo-control.compact .profile-photo-frame{width:78px;height:78px}.vet-chart-header h2{margin:.1rem 0}.vet-chart-header>div:nth-child(3) span{color:#71818d;font-size:.85rem;display:block}.vet-alert-strip{gap:.5rem;display:grid}.vet-alert-strip article{border-left:5px solid #d5942b;border-radius:10px;justify-content:space-between;align-items:center;padding:.7rem 1rem;display:flex}.vet-alert-strip article.critical{background:#fff0f0;border-color:#b93636}.vet-alert-strip article.important{background:#fff9e8}.vet-alert-strip article.information{background:#eef7ff;border-color:#3280b2}.vet-alert-strip span{text-transform:uppercase;font-size:.72rem;display:block}.vet-section summary{cursor:pointer;justify-content:space-between;align-items:center;display:flex}.vet-profile-form,.vet-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1rem;display:grid}.vet-profile-form label,.vet-form-grid label,.vet-mini-form label,.vet-amendment-form label{gap:.35rem;display:grid}.vet-profile-form button{align-self:end}.vet-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.vet-mini-form{gap:.55rem;margin:.8rem 0;display:grid}.vet-mini-form>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.vet-problem-list{gap:.45rem;display:grid}.vet-problem-list article{border-top:1px solid #e5ecef;justify-content:space-between;align-items:center;padding-top:.6rem;display:flex}.vet-problem-list span{color:#71818d;font-size:.8rem;display:block}.vet-encounter-form fieldset{border:1px solid #dce6eb;border-radius:12px;margin:1rem 0;padding:1rem}.vet-encounter-form legend{color:#36596b;padding:0 .4rem;font-weight:800}.vet-form-grid .full{grid-column:1/-1}.vet-vitals{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.vet-vitals label{gap:.3rem;display:grid}.vet-soap-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.vet-soap-grid label{gap:.35rem;display:grid}.vet-soap-grid label>span{align-items:center;gap:.45rem;font-weight:700;display:flex}.vet-soap-grid label>span b{color:#175c59;background:#d9eeeb;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.vet-history{gap:.9rem;display:grid}.vet-encounter-card{border:1px solid #dce6eb;border-left:5px solid #d8a23b;border-radius:12px;padding:1rem}.vet-encounter-card.finalized,.vet-encounter-card.amended{border-left-color:#30816f}.vet-encounter-card.entered_in_error{background:snow;border-left-color:#b43c3c}.vet-encounter-card>header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.vet-encounter-card h3{text-transform:capitalize;margin:.4rem 0 .2rem}.vet-encounter-card header p{color:#71818d;margin:0}.vet-record-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.vet-record-status.finalized,.vet-record-status.amended{color:#206957;background:#dff3ed}.vet-record-status.entered_in_error{color:#9b2525;background:#fde5e5}.correction-button{color:#8c2929;border-color:#c77777}.vet-entered-in-error{color:#7e2424;background:#fdecec;border:1px solid #efbaba;border-radius:10px;margin:.8rem 0;padding:.8rem}.vet-entered-in-error p{margin:.3rem 0}.vet-correction-form{background:#fff8f2;border:1px solid #e5c3a9;border-radius:12px;gap:.75rem;margin-top:1rem;padding:1rem;display:grid}.vet-correction-form h4,.vet-correction-form p{margin:.2rem 0}.vet-correction-form label{gap:.35rem;display:grid}.vet-correction-form>div:last-child{justify-content:flex-end;gap:.5rem;display:flex}.vet-encounter-patient{background:#eaf7f7;border-left:4px solid #00b4d8;margin:.65rem 0 0;padding:.55rem .7rem}.vet-error-history{color:#6f3a3a;border-color:#e4c7c7}.vet-error-history summary{cursor:pointer;font-weight:800}.vet-error-history>p{color:#765f5f}.vet-error-history article{border-top:1px solid #ead6d6;gap:.25rem;padding:.65rem 0;display:grid}.vet-vital-readout{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.vet-vital-readout span{color:#61717b;background:#f2f6f8;border-radius:8px;padding:.45rem .6rem}.vet-vital-readout b{color:#193f53}.vet-soap-readout{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.vet-soap-readout section{white-space:pre-wrap;background:#fafcfd;border:1px solid #e6edf0;border-radius:10px;padding:.75rem}.vet-soap-readout section>b{color:#197369;margin-bottom:.3rem;display:block}.vet-diagnoses{flex-wrap:wrap;gap:.4rem;margin:.8rem 0;display:flex}.vet-diagnoses span{color:#245f87;background:#e9f3ff;border-radius:999px;padding:.35rem .65rem}.vet-care-delivered{border-top:1px solid #dfe8ec;margin-top:.9rem;padding-top:.8rem}.vet-care-delivered>strong{color:#254e60;margin-bottom:.55rem;display:block}.vet-care-delivered>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.vet-care-delivered article{background:#f2faf7;border:1px solid #d4e9e2;border-radius:9px;padding:.65rem .75rem}.vet-care-delivered.vaccines article{background:#f2f8ff;border-color:#d6e5f3}.vet-care-delivered article>div{justify-content:space-between;align-items:start;gap:.5rem;display:flex}.vet-care-delivered article span{color:#687987;text-transform:capitalize;font-size:.75rem}.vet-care-delivered article p{color:#465f6c;margin:.25rem 0 0}.vet-care-delivered article small{color:#687987;margin-top:.25rem;display:block}.vet-clinical-entry-form{background:#f7fbfc;border:1px solid #cfe0e7;border-radius:12px;margin-top:1rem;padding:1rem}.vet-clinical-entry-form .panel-heading h4{margin:.15rem 0 0}.vet-clinical-entry-form .panel-heading>button{color:#526d7a;cursor:pointer;background:0 0;border:0;font-size:1.5rem}.vet-instructions,.vet-amendment{background:#f7fafb;border-radius:10px;margin-top:.8rem;padding:.8rem}.vet-amendment{border-left:4px solid #4d8b7e;gap:.25rem;display:grid}.vet-amendment span{color:#6b7b85;font-size:.82rem}.vet-amendment-form{background:#f6fbfa;border:1px solid #cae4df;border-radius:10px;gap:.7rem;margin-top:.8rem;padding:.8rem;display:grid}.vet-amendment-form>div{justify-content:end;gap:.5rem;display:flex}@media (width<=1000px){.vet-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.vet-workspace{grid-template-columns:1fr}.vet-patient-list{position:static}.vet-patient-list>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr));max-height:280px}}@media (width<=700px){.vet-summary,.vet-two-column,.vet-profile-form,.vet-form-grid,.vet-soap-grid,.vet-soap-readout{grid-template-columns:1fr}.vet-form-grid .full{grid-column:auto}.vet-vitals{grid-template-columns:repeat(2,minmax(0,1fr))}.vet-today-list article{grid-template-columns:70px 1fr}.vet-today-list article>span,.vet-today-list article>button{justify-self:start}.vet-chart-header{grid-template-columns:auto 1fr}.vet-chart-header>div:nth-child(3),.vet-chart-header .vet-print{grid-column:1/-1}.vet-print{justify-self:start}.vet-encounter-card>header{display:grid}.vet-record-actions{justify-content:flex-start}.vet-care-delivered>div{grid-template-columns:1fr}}@media print{body:has(.vet-chart) *{visibility:hidden!important}:is(body:has(.vet-chart) .vet-chart,body:has(.vet-chart) .vet-chart *){visibility:visible!important}body:has(.vet-chart) .vet-chart{color:#111;width:100%;display:block;position:absolute;inset:0}body:has(.vet-chart) .vet-patient-list{display:none!important}body:has(.vet-chart) .vet-summary{display:none!important}body:has(.vet-chart) .vet-summary-results{display:none!important}body:has(.vet-chart) .vet-today{display:none!important}body:has(.vet-chart) .vet-header{display:none!important}body:has(.vet-chart) .vet-print{display:none!important}body:has(.vet-chart) .vet-record-actions{display:none!important}body:has(.vet-chart) .vet-mini-form{display:none!important}body:has(.vet-chart) .vet-profile-form button{display:none!important}body:has(.vet-chart) .vet-amendment-form{display:none!important}body:has(.vet-chart) .vet-clinical-entry-form{display:none!important}body:has(.vet-chart) .vet-correction-form{display:none!important}body:has(.vet-chart) .vet-error-history{display:none!important}body:has(.vet-chart) .vet-chart>*{break-inside:avoid;box-shadow:none;margin-bottom:12px}body:has(.vet-chart) .vet-encounter-card{break-inside:avoid}body:has(.vet-chart) details:not([open])>:not(summary){display:grid!important}body:has(.vet-chart) .vet-profile-form{display:grid!important}:is(body:has(.vet-chart) input,body:has(.vet-chart) select,body:has(.vet-chart) textarea){color:#111;background:0 0;border:0;padding:2px 0}body:has(.vet-chart) .vet-chart-header{grid-template-columns:auto 1fr auto}body:has(.vet-chart) .vet-chart-header .profile-photo-frame{width:90px;height:90px}body:has(.vet-chart) .vet-chart-header .profile-photo-frame img{object-fit:cover;width:100%;height:100%;display:block}@page{margin:.45in}}.vet-med-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.vet-med-overview article{background:#fff;border:1px solid #dce7f0;border-top:4px solid #00b4d8;border-radius:14px;padding:1rem}.vet-med-overview span{color:#687987;display:block}.vet-med-overview strong{color:#173f55;margin-top:.2rem;font-size:1.8rem;display:block}.vet-med-dashboard{margin-bottom:1rem}.vet-med-dashboard .panel-heading>div:last-child{gap:.5rem;display:flex}.vet-med-register{gap:.5rem;display:grid}.vet-med-register>button{width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #dce6eb;border-radius:10px;grid-template-columns:1fr auto;gap:1rem;padding:.8rem;display:grid}.vet-med-register>button:hover{background:#f5fcfd;border-color:#71c7d8}.vet-med-register>button>div{gap:.2rem;display:grid}.vet-med-register>button>div:last-child{text-align:right}.vet-med-register small{color:#687987}.vet-med-status{color:#206957;text-transform:uppercase;background:#dff3ed;border-radius:999px;width:max-content;padding:.2rem .45rem;font-size:.68rem;font-weight:900}.vet-med-status.completed{color:#506571;background:#e8eef2}.vet-med-status.discontinued{color:#922f2f;background:#fde8e8}@media (width<=700px){.vet-med-overview{grid-template-columns:1fr}.vet-med-dashboard .panel-heading>div:last-child{display:grid}.vet-med-register>button{grid-template-columns:1fr}.vet-med-register>button>div:last-child{text-align:left}}.revenue-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:28px 0;display:grid}.revenue-summary-card{background:#fff;border:1px solid #dce4e1;border-radius:14px;gap:8px;min-width:0;padding:20px;display:grid;box-shadow:0 5px 16px #1f3d350f}.revenue-summary-card span,.revenue-summary-card small{color:#65766f}.revenue-summary-card strong{overflow-wrap:anywhere;font-size:clamp(1.45rem,2.4vw,2rem)}.revenue-summary-card.projected{border-top:4px solid #00b4d8}.revenue-summary-card.earned{border-top:4px solid #38a169}.revenue-panel{margin-bottom:28px}.revenue-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.revenue-legend{color:#526560;gap:14px;font-size:.82rem;font-weight:800;display:flex}.revenue-legend span:before{content:"";border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.revenue-legend .projected:before{background:#00b4d8}.revenue-legend .earned:before{background:#38a169}.revenue-chart{gap:12px;margin-top:24px;display:grid}.revenue-day{grid-template-columns:62px minmax(0,1fr);align-items:center;gap:14px;display:grid}.revenue-day time{color:#65766f;font-size:.82rem;font-weight:800}.revenue-bars{gap:5px;min-width:0;display:grid}.revenue-bars>div{background:#f2f6f5;border-radius:5px;min-height:22px;position:relative;overflow:hidden}.revenue-bar{border-radius:5px;min-width:2px;position:absolute;inset:0 auto 0 0}.revenue-bar.projected{background:#8bdced}.revenue-bar.earned{background:#8bd1a7}.revenue-bar.earned.negative{background:#ef9a92}.revenue-bars b{z-index:1;color:#173a35;text-align:right;padding:3px 7px;font-size:.78rem;display:block;position:relative}@media (width<=900px){.revenue-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.revenue-summary-grid{grid-template-columns:1fr;gap:12px}.revenue-heading{flex-direction:column;align-items:stretch}.revenue-day{grid-template-columns:52px minmax(0,1fr);gap:8px}}.report-form-panel{margin-bottom:24px}.report-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.report-form label,.report-toolbar label{color:#284b46;text-transform:capitalize;gap:7px;font-weight:700;display:grid}.report-form .full{grid-column:1/-1}.report-form input,.report-form select,.report-form textarea,.report-toolbar select{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:8px;padding:11px}.report-form textarea{resize:vertical;min-height:88px}.report-toolbar{align-items:end;gap:18px;margin:0 0 22px;display:flex}.report-toolbar select{min-width:180px}.consent-check{text-transform:none!important;grid-template-columns:auto 1fr!important;align-items:center!important;display:flex!important}.report-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.report-grid>.empty-state{grid-column:1/-1}.report-card{background:#fff;border:1px solid #dce4e1;border-radius:14px;padding:22px;position:relative;box-shadow:0 5px 16px #1f3d350f}.report-card h3{margin:6px 0}.report-card>p{color:#65766f}.report-summary{border-top:1px solid #e1e7e5;padding-top:14px;color:#20332e!important}.report-status{text-transform:capitalize;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:800;position:absolute;top:18px;right:18px}.report-status.draft{color:#795400;background:#fff4cf}.report-status.completed{color:#17633f;background:#e2f5ea}.report-actions{gap:10px;margin:18px 0 10px;display:flex}.report-actions button{flex:1}.report-card small{color:#65766f}@media (width<=950px){.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.report-form,.report-grid{grid-template-columns:1fr}.report-form .full{grid-column:1}.report-toolbar{flex-direction:column;align-items:stretch}.report-toolbar label,.report-toolbar select{width:100%}}.sitting-form-panel{margin-bottom:24px}.sitting-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.sitting-form label,.visit-card label{color:#284b46;text-transform:capitalize;gap:7px;font-weight:700;display:grid}.sitting-form input,.sitting-form select,.sitting-form textarea,.visit-card select,.visit-card textarea{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:8px;padding:10px}.sitting-form textarea{min-height:76px}.sitting-form .full{grid-column:1/-1}.sitting-pet-checks{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.sitting-pet-checks label{align-items:center;gap:7px;display:flex}.visit-time-row{gap:8px;margin:8px 0;display:flex}.sitting-grid{gap:16px;display:grid}.sitting-booking{background:#fff;border:1px solid #dce4e1;border-radius:14px;overflow:hidden;box-shadow:0 5px 16px #1f3d350f}.sitting-booking-heading{color:#173a35;width:100%;font:inherit;text-align:left;cursor:pointer;background:#fff;border:0;justify-content:space-between;align-items:center;gap:20px;padding:22px;display:flex}.sitting-booking-heading h3{margin:8px 0 5px}.sitting-booking-heading p{color:#65766f;margin:0}.sitting-status{color:#315f55;text-transform:capitalize;background:#e8f1ef;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:800;display:inline-block}.sitting-status.completed{color:#17633f;background:#e2f5ea}.sitting-status.in_progress{color:#075f73;background:#e4f5f9}.sitting-details{grid-template-columns:minmax(220px,.7fr) 1.3fr;gap:16px;padding:0 22px 22px;display:grid}.sensitive-access,.care-plan,.visit-card{background:#fafcfb;border:1px solid #dce4e1;border-radius:10px;padding:16px}.sensitive-access{background:#fffaf0;border-color:#e7bd55}.sensitive-access p,.care-plan p{margin:7px 0}.visit-list{grid-column:1/-1;gap:12px;display:grid}.visit-card{grid-template-columns:.8fr 1fr 1fr;gap:16px;display:grid}.visit-card h4{margin:8px 0}.visit-checklist{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.visit-checklist label{align-items:center;gap:6px;display:flex}.visit-card textarea{min-height:100px}.visit-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;display:flex}.visit-actions input{max-width:260px}@media (width<=850px){.sitting-details,.visit-card{grid-template-columns:1fr}.visit-list,.visit-actions{grid-column:1}}@media (width<=650px){.sitting-form{grid-template-columns:1fr}.sitting-form .full{grid-column:1}.sitting-booking-heading{flex-direction:column;align-items:flex-start}.visit-time-row{flex-direction:column;align-items:stretch}}.add-visit-button{justify-self:start}.add-visit-form{background:#f4faf8;border:1px dashed #8eb7ae;border-radius:10px;grid-template-columns:1fr 1fr auto auto;align-items:end;gap:10px;padding:14px;display:grid}.add-visit-form label{gap:6px;font-weight:700;display:grid}.add-visit-form input,.add-visit-form select{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:8px;padding:10px}.visit-timestamp{color:#65766f;margin:5px 0;font-size:.82rem}.visit-log-fields{gap:10px;display:grid}.visit-log-fields label{gap:6px;display:grid}.visit-log-fields textarea{min-height:76px}@media (width<=850px){.add-visit-form{grid-template-columns:1fr 1fr}}@media (width<=520px){.add-visit-form{grid-template-columns:1fr}.add-visit-form button{width:100%}}.sitting-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 24px;display:grid}.sitting-overview article{background:linear-gradient(145deg,#fff,#f5fbfc);border:1px solid #d9e5e2;border-top:4px solid #00b4d8;border-radius:14px;gap:5px;min-height:112px;padding:18px;display:grid;box-shadow:0 7px 20px #1f3d3512}.sitting-overview article:nth-child(2n){border-top-color:#36a269}.sitting-overview span,.sitting-overview small{color:#65766f}.sitting-overview strong{color:#173a35;font-size:2rem;line-height:1}.sitting-booking-controls{background:#fff;border:1px solid #d9e5e2;border-radius:14px;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:22px;padding:18px;display:flex}.sitting-booking-controls>label{color:#284b46;flex:1;gap:7px;max-width:520px;font-weight:800;display:grid}.sitting-booking-controls input{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:9px;padding:12px 14px}.sitting-booking-controls input:focus{border-color:#00b4d8;outline:3px solid #00b4d826}.sitting-filter-tabs{flex-wrap:wrap;gap:7px;display:flex}.sitting-filter-tabs button{color:#315f55;font:inherit;text-transform:capitalize;cursor:pointer;background:#fff;border:1px solid #b8c8c4;border-radius:999px;padding:9px 12px;font-weight:800}.sitting-filter-tabs button.active{color:#fff;background:#0077b6;border-color:#0077b6}.sitting-results-heading{justify-content:space-between;align-items:end;gap:16px;margin:0 2px 13px;display:flex}.sitting-results-heading h3,.sitting-results-heading p{margin:0}.sitting-results-heading strong{color:#65766f}.sitting-booking{padding:20px}.sitting-booking-topline{justify-content:space-between;align-items:center;gap:12px;display:flex}.sitting-booking-topline>span:last-child{color:#65766f;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800}.sitting-booking-summary{grid-template-columns:auto minmax(180px,1fr) minmax(150px,240px);align-items:center;gap:16px;padding:18px 0;display:grid}.sitting-pet-avatar{color:#075f73;background:#eaf7f4;border:3px solid #d8efea;border-radius:50%;place-items:center;width:58px;height:58px;font-size:1.4rem;font-weight:900;display:grid}.sitting-booking-summary h3{margin:0 0 4px;font-size:1.35rem}.sitting-booking-summary p{color:#65766f;margin:2px 0}.sitting-date-range{font-weight:700}.sitting-progress{gap:7px;display:grid}.sitting-progress small{color:#65766f}.sitting-progress-track{background:#e4ecea;border-radius:999px;height:9px;overflow:hidden}.sitting-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#00b4d8,#36a269);height:100%;transition:width .2s;display:block}.sitting-card-actions{border-top:1px solid #e1e7e5;flex-wrap:wrap;gap:9px;padding-top:15px;display:flex}.sitting-details{border-top:1px solid #e1e7e5;margin-top:18px;padding:20px 0 0}.sitting-empty{text-align:center}.sitting-empty-icon{font-size:2.2rem}.sitting-empty h3{margin:7px 0}.sitting-empty p{color:#65766f}@media (width<=950px){.sitting-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.sitting-booking-controls{flex-direction:column;align-items:stretch}.sitting-booking-controls>label{max-width:none}.sitting-booking-summary{grid-template-columns:auto 1fr}.sitting-progress{grid-column:1/-1}}@media (width<=600px){.sitting-overview{grid-template-columns:1fr 1fr;gap:10px}.sitting-overview article,.sitting-overview>button{min-height:96px;padding:14px}.sitting-overview strong{font-size:1.6rem}.sitting-filter-tabs{grid-template-columns:repeat(2,1fr);display:grid}.sitting-filter-tabs button:last-child{grid-column:1/-1}.sitting-results-heading{flex-direction:column;align-items:flex-start;gap:5px}.sitting-booking{padding:16px}.sitting-booking-summary{grid-template-columns:auto 1fr;gap:12px}.sitting-pet-avatar{width:48px;height:48px}.sitting-card-actions button{width:100%}}.sitting-overview>button{background:linear-gradient(145deg,#fff,#f5fbfc);border:1px solid #d9e5e2;border-top:4px solid #00b4d8;border-radius:14px;gap:5px;min-height:112px;padding:18px;display:grid;box-shadow:0 7px 20px #1f3d3512}.sitting-overview>button:nth-child(2n){border-top-color:#36a269}.sitting-calendar-panel{margin-bottom:24px}.sitting-calendar-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.sitting-calendar-heading h3{margin:4px 0 0}.sitting-calendar-controls{gap:8px;display:flex}.sitting-calendar-grid{border-top:1px solid #d7e0dd;border-left:1px solid #d7e0dd;display:grid;overflow-x:auto}.sitting-calendar-day{background:#fff;border-bottom:1px solid #d7e0dd;border-right:1px solid #d7e0dd;min-height:180px;padding:9px}.sitting-calendar-day.today{background:#f1fafc}.sitting-calendar-day>header{color:#526560;justify-content:space-between;gap:6px;margin-bottom:9px;font-size:.8rem;display:flex}.sitting-booking-band,.sitting-visit-event{border-radius:7px;gap:2px;margin:5px 0;padding:7px;font-size:.78rem;display:grid}.sitting-booking-band{color:#684d00;background:#fff2c7;border-left:4px solid #e7b52e}.sitting-visit-event{color:#075f73;background:#dff5fa;border-left:4px solid #00b4d8}.sitting-visit-event.completed{color:#17633f;background:#e2f5ea;border-left-color:#38a169}.sitting-visit-event.in_progress{color:#493c89;background:#e8e5fa;border-left-color:#7365a0}.sitting-booking-band small,.sitting-visit-event small{text-transform:capitalize;opacity:.8}.sitting-calendar-empty{color:#93a29e;padding:14px 2px;font-size:.78rem;display:block}@media (width<=720px){.sitting-calendar-heading{flex-direction:column;align-items:stretch}.sitting-calendar-controls{grid-template-columns:repeat(3,1fr);display:grid}.sitting-calendar-grid{grid-template-columns:repeat(7,minmax(150px,1fr))!important}}.sitting-report-list{gap:16px;display:grid}.sitting-report-card{background:#fff;border:1px solid #dce4e1;border-radius:14px;padding:22px;box-shadow:0 5px 16px #1f3d350f}.sitting-report-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.sitting-report-heading h3{margin:8px 0 5px}.sitting-report-heading p{color:#65766f;margin:0}.sitting-report-times{grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0;display:grid}.sitting-report-times span{background:#f2f7f6;border-radius:9px;gap:4px;padding:12px;display:grid}.sitting-report-checklist{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.sitting-report-checklist span{color:#687773;text-transform:capitalize;background:#f3f4f4;border-radius:999px;padding:6px 9px}.sitting-report-checklist span.done{color:#17633f;background:#e2f5ea}.sitting-report-card>section{border-top:1px solid #e1e7e5;margin-top:14px;padding-top:14px}.sitting-report-card>section p:last-child{white-space:pre-wrap}.sitting-report-card .internal-log{background:#fffaf0;border:1px solid #ead8a3;border-radius:9px;padding:12px}.sitting-report-card>button{margin-top:14px}@media (width<=600px){.sitting-report-heading{flex-direction:column;align-items:stretch}.sitting-report-times{grid-template-columns:1fr}}.sitting-report-tools{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:14px;display:flex}.sitting-report-search{color:#173f36;gap:7px;width:min(100%,620px);font-weight:700;display:grid}.sitting-report-search input{color:#173f36;width:100%;font:inherit;background:#fff;border:1px solid #b9cbc5;border-radius:10px;padding:13px 15px}.sitting-report-search input:focus{border-color:#00b4d8;outline:3px solid #00b4d829}.sitting-report-count{color:#65766f;white-space:nowrap;padding-bottom:13px}.sitting-report-list .empty-state .secondary-button{margin-top:12px}@media (width<=650px){.sitting-report-tools{flex-direction:column;align-items:stretch;gap:8px}.sitting-report-count{padding-bottom:0}}.boarding-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px;display:grid}.boarding-summary article{background:#fff;border:1px solid #d9e5e2;border-top:4px solid #00b4d8;border-radius:14px;gap:5px;padding:18px;display:grid;box-shadow:0 7px 20px #1f3d3512}.boarding-summary article:nth-child(2n){border-top-color:#36a269}.boarding-summary span,.boarding-summary small{color:#65766f}.boarding-summary strong{font-size:1.8rem}.boarding-space-setup{background:#f2fbfd;border:1px solid #cce5e8;border-radius:13px;grid-template-columns:1fr minmax(150px,260px) 90px auto;align-items:end;gap:10px;margin-bottom:22px;padding:16px;display:grid}.boarding-space-setup p{margin:0}.boarding-space-setup input,.boarding-form input,.boarding-form select,.boarding-form textarea,.boarding-controls input,.boarding-log-panel select,.boarding-log-panel textarea{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:8px;padding:11px}.boarding-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.boarding-form label{color:#284b46;text-transform:capitalize;gap:6px;font-weight:700;display:grid}.boarding-form textarea{min-height:74px}.boarding-form .full{grid-column:1/-1}.boarding-pets{gap:12px;margin-top:9px;display:flex}.boarding-pets label{align-items:center;gap:6px;display:flex}.boarding-controls{background:#fff;border:1px solid #d9e5e2;border-radius:13px;justify-content:space-between;align-items:flex-end;gap:16px;margin:22px 0 10px;padding:17px;display:flex}.boarding-controls>label{flex:1;gap:6px;max-width:520px;font-weight:700;display:grid}.boarding-controls>div{flex-wrap:wrap;gap:6px;display:flex}.boarding-controls button{color:#315f55;font:inherit;text-transform:capitalize;background:#fff;border:1px solid #b8c8c4;border-radius:999px;padding:8px 11px;font-weight:800}.boarding-controls button.active{color:#fff;background:#0077b6;border-color:#0077b6}.boarding-result-count h3{margin:14px 2px}.boarding-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.boarding-card{background:#fff;border:1px solid #dce4e1;border-radius:14px;padding:20px;box-shadow:0 6px 18px #1f3d3512}.boarding-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.boarding-card-head h3{margin:8px 0 4px}.boarding-card-head p{color:#65766f;text-transform:capitalize;margin:0}.boarding-status{color:#315f55;text-transform:capitalize;background:#e8f1ef;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:900;display:inline-block}.boarding-status.checked_in{color:#075f73;background:#e4f5f9}.boarding-status.completed{color:#17633f;background:#e2f5ea}.boarding-status.cancelled{color:#9e2e20;background:#fdeae7}.boarding-stay-dates{grid-template-columns:1fr 1fr;gap:9px;margin:18px 0;display:grid}.boarding-stay-dates span{background:#f4f8f7;border-radius:9px;gap:4px;padding:11px;display:grid}.boarding-stay-dates small{color:#65766f}.boarding-card-actions{border-top:1px solid #e1e7e5;flex-wrap:wrap;gap:8px;padding-top:14px;display:flex}.boarding-details{border-top:1px solid #e1e7e5;grid-template-columns:1fr 1fr;gap:13px;margin-top:16px;padding-top:16px;display:grid}.boarding-care,.boarding-log-panel{background:#fafcfb;border:1px solid #dce4e1;border-radius:10px;padding:15px}.boarding-care h4,.boarding-log-panel h4{margin-top:0}.boarding-care p{white-space:pre-wrap}.boarding-log-panel{gap:9px;display:grid}.boarding-log-panel textarea{min-height:88px}.boarding-checks{flex-wrap:wrap;gap:8px;display:flex}.boarding-checks label{text-transform:capitalize;align-items:center;gap:5px;display:flex}.boarding-log-list{gap:8px;display:grid}.boarding-log-list article{background:#fff;border-left:3px solid #00b4d8;border-radius:6px;padding:10px}.boarding-log-list p{margin:5px 0}.boarding-log-list small{color:#17633f;text-transform:capitalize}@media (width<=1000px){.boarding-summary{grid-template-columns:repeat(2,1fr)}.boarding-grid{grid-template-columns:1fr}.boarding-space-setup{grid-template-columns:1fr 1fr}.boarding-space-setup>div{grid-column:1/-1}.boarding-details{grid-template-columns:1fr}}@media (width<=650px){.boarding-summary{grid-template-columns:1fr 1fr;gap:9px}.boarding-summary article{padding:13px}.boarding-space-setup,.boarding-form{grid-template-columns:1fr}.boarding-space-setup>div,.boarding-form .full{grid-column:1}.boarding-controls{flex-direction:column;align-items:stretch}.boarding-controls>label{max-width:none}.boarding-controls>div{grid-template-columns:1fr 1fr;display:grid}.boarding-controls button:last-child{grid-column:1/-1}.boarding-card-head{flex-direction:column}.boarding-stay-dates{grid-template-columns:1fr}.boarding-card-actions button{width:100%}}.boarding-space-section{margin-bottom:24px}.boarding-space-heading{justify-content:space-between;align-items:end;gap:15px;margin-bottom:12px;display:flex}.boarding-space-heading h3,.boarding-space-heading p{margin:0}.boarding-space-heading>strong{color:#65766f}.boarding-space-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.boarding-space-card{background:#fff;border:1px solid #d9e5e2;border-radius:13px;padding:17px;box-shadow:0 5px 15px #1f3d350f}.boarding-space-card.inactive{opacity:.68;background:#f3f5f4}.boarding-space-card-head{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.boarding-space-icon{color:#0077b6;background:#e4f5f9;border-radius:10px;place-items:center;width:40px;height:40px;font-size:1.35rem;font-weight:900;display:grid}.boarding-space-card h4{margin:0}.boarding-space-card-head div span{color:#65766f;text-transform:capitalize;font-size:.82rem}.boarding-availability{white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:900}.boarding-availability.available{color:#17633f;background:#e2f5ea}.boarding-availability.full{color:#9e2e20;background:#fdeae7}.boarding-space-meter{background:#e4ecea;border-radius:999px;height:9px;margin:17px 0 12px;overflow:hidden}.boarding-space-meter span{border-radius:inherit;background:linear-gradient(90deg,#00b4d8,#0077b6);height:100%;display:block}.boarding-space-stats{grid-template-columns:1fr 1fr;gap:10px;display:grid}.boarding-space-stats span{background:#f4f8f7;border-radius:8px;gap:2px;padding:9px;display:grid}.boarding-space-stats strong{font-size:1.15rem}.boarding-space-stats small,.boarding-space-guests small{color:#65766f}.boarding-space-guests{background:#fff8e8;border-radius:8px;gap:3px;margin-top:10px;padding:9px;display:grid}.boarding-space-toggle{width:100%;margin-top:12px}.boarding-space-empty{text-align:center}.boarding-space-empty h4{margin:0 0 5px}.boarding-space-empty p{color:#65766f;margin:0}@media (width<=1050px){.boarding-space-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.boarding-space-heading{flex-direction:column;align-items:flex-start}.boarding-space-grid{grid-template-columns:1fr}}.boarding-undo-checkout{color:#7c5711!important;background:#fff8e8!important;border-color:#e5a82c!important}.boarding-undo-checkout:hover{background:#fff1c9!important}.boarding-price-summary{color:#315f55;background:#f2fbfd;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;margin:14px 0;padding:11px 13px;display:flex}.boarding-price-summary span{font-weight:700}.boarding-price-summary strong{color:#075f73;text-align:right}@media (width<=550px){.boarding-price-summary{flex-direction:column;align-items:flex-start}.boarding-price-summary strong{text-align:left}}.boarding-calendar-toolbar{background:#fff;border:1px solid #d9e5e2;border-radius:13px;justify-content:space-between;align-items:end;gap:12px;margin-bottom:18px;padding:15px;display:flex}.boarding-calendar-nav{gap:7px;display:flex}.boarding-calendar-toolbar label{color:#284b46;gap:5px;min-width:180px;font-weight:800;display:grid}.boarding-calendar-toolbar select{font:inherit;background:#fff;border:1px solid #b8c8c4;border-radius:8px;padding:10px}.boarding-calendar-title{justify-content:space-between;align-items:end;gap:15px;margin-bottom:16px;display:flex}.boarding-calendar-title h3,.boarding-calendar-title p{margin:0}.boarding-calendar-title>strong{color:#65766f}.boarding-calendar-grid{border-top:1px solid #d5e0dc;border-left:1px solid #d5e0dc;grid-template-columns:repeat(7,minmax(150px,1fr));display:grid;overflow-x:auto}.boarding-calendar-day{background:#fff;border-bottom:1px solid #d5e0dc;border-right:1px solid #d5e0dc;min-height:390px}.boarding-calendar-day.today{background:#f1fbfd}.boarding-calendar-day>header{background:#f4f8f7;justify-content:space-between;gap:8px;padding:11px;display:flex}.boarding-calendar-day.today>header{background:#dff5fa}.boarding-calendar-day>header span{color:#65766f}.boarding-day-counts{color:#65766f;border-bottom:1px solid #e1e7e5;justify-content:space-between;gap:4px;padding:7px 9px;font-size:.72rem;font-weight:800;display:flex}.boarding-day-stays{gap:7px;padding:8px;display:grid}.boarding-day-stays>p{color:#91a09c;font-size:.82rem}.boarding-calendar-stay{background:#eaf8fb;border-left:4px solid #00b4d8;border-radius:7px;gap:4px;padding:9px;display:grid}.boarding-calendar-stay.daycare{background:#fff8e8;border-left-color:#e5a82c}.boarding-calendar-stay.checked_in{box-shadow:inset 0 0 0 2px #36a269}.boarding-calendar-stay>div{justify-content:space-between;gap:5px;display:flex}.boarding-calendar-stay>div span{text-transform:uppercase;font-size:.68rem;font-weight:900}.boarding-calendar-stay small{color:#526963}.boarding-calendar-stay b{color:#17633f;font-size:.72rem}@media (width<=850px){.boarding-calendar-toolbar{flex-direction:column;align-items:stretch}.boarding-calendar-nav{grid-template-columns:repeat(3,1fr);display:grid}.boarding-calendar-toolbar label{min-width:0}.boarding-calendar-grid{grid-template-columns:repeat(7,minmax(210px,1fr))}}.boarding-day-add{color:#0077b6;width:calc(100% - 16px);font:inherit;cursor:pointer;background:#f2fbfd;border:1px dashed #62cce2;border-radius:7px;margin:8px;padding:7px;font-size:.76rem;font-weight:900}.boarding-day-add:hover{background:#dff5fa;border-style:solid}.boarding-service-form{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.boarding-service-form label{gap:6px;font-weight:700;display:grid}.boarding-service-form input,.boarding-service-form select,.boarding-service-form textarea{font:inherit;border:1px solid #b8c8c4;border-radius:8px;padding:11px}.boarding-service-form .full{grid-column:1/-1}.boarding-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.boarding-service-card{background:#fff;border:1px solid #d9e5e2;border-top:4px solid #00b4d8;border-radius:13px;padding:19px}.boarding-service-card.inactive{opacity:.65}.boarding-service-card>span{text-transform:capitalize;color:#65766f;font-size:.76rem;font-weight:900}.boarding-service-card h3{margin:7px 0}.boarding-service-card>strong{font-size:1.5rem}.boarding-service-card>strong small{color:#65766f;font-size:.8rem}.boarding-service-card p{color:#65766f}@media (width<=800px){.boarding-service-grid{grid-template-columns:1fr 1fr}}@media (width<=550px){.boarding-service-form,.boarding-service-grid{grid-template-columns:1fr}.boarding-service-form .full{grid-column:1}}.staff-earnings{gap:24px;display:grid}.earnings-toolbar,.tip-allocation-panel{background:#fff;border:1px solid #d6e1df;border-radius:18px;padding:20px;box-shadow:0 10px 24px #1437300f}.earnings-range{flex-wrap:wrap;gap:8px;display:flex}.earnings-range button{color:#173f36;background:#fff;border:1px solid #aac0bc;border-radius:999px;padding:10px 16px;font-weight:800}.earnings-range button.active{color:#fff;background:#0786c1;border-color:#0786c1}.earnings-dates{gap:14px;margin-top:16px;display:flex}.earnings-dates label{gap:6px;font-weight:700;display:grid}.earnings-dates input,.tip-allocation-inputs input{border:1px solid #aac0bc;border-radius:10px;padding:10px}.earnings-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.earnings-summary article{background:#fff;border:1px solid #d6e1df;border-top:4px solid #00b4d8;border-radius:16px;gap:8px;padding:20px;display:grid}.earnings-summary span{color:#667b77}.earnings-summary strong{font-size:1.8rem}.earnings-card-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.earnings-staff-card{text-align:left;color:#102f29;cursor:pointer;background:#fff;border:1px solid #d6e1df;border-radius:18px;padding:22px;box-shadow:0 10px 24px #14373012}.earnings-staff-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px #1437301f}.earnings-staff-card h3{margin:6px 0;font-size:1.35rem}.earnings-staff-card p,.earnings-staff-card small{color:#667b77}.earnings-staff-card>div>span{text-transform:uppercase;letter-spacing:.08em;color:#0786c1;font-size:.75rem;font-weight:800}.earnings-staff-card dl{border-top:1px solid #e1e8e6;grid-template-columns:1fr 1fr;gap:12px;padding-top:16px;display:grid}.earnings-staff-card dl div{gap:3px;display:grid}.earnings-staff-card dt{color:#667b77}.earnings-staff-card dd{margin:0;font-size:1.2rem;font-weight:800}.tip-allocation-panel{gap:18px;display:grid}.tip-allocation-panel>article{border-top:1px solid #d6e1df;grid-template-columns:minmax(160px,.7fr) 2fr auto;align-items:end;gap:18px;padding-top:18px;display:grid}.tip-allocation-panel article>div:first-child{gap:5px;display:grid}.tip-allocation-panel span{color:#667b77}.tip-allocation-inputs{flex-wrap:wrap;gap:12px;display:flex}.tip-allocation-inputs label{gap:5px;font-weight:700;display:grid}.earnings-modal-backdrop{z-index:500;background:#091f1b8c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.earnings-ledger{background:#fff;border-radius:20px;width:min(850px,100%);max-height:85vh;padding:24px;overflow:auto}.earnings-ledger header{justify-content:space-between;align-items:start;gap:16px;display:flex}.earnings-ledger header button{background:#fff;border:1px solid #aac0bc;border-radius:10px;padding:9px 14px;font-weight:800}.earnings-ledger-list{margin-top:16px;display:grid}.earnings-ledger-list article{border-top:1px solid #d6e1df;justify-content:space-between;gap:20px;padding:16px 0;display:flex}.earnings-ledger-list article>div{gap:5px;display:grid}.earnings-ledger-list article>div:last-child{text-align:right}.earnings-ledger-list span{color:#667b77}@media (width<=850px){.earnings-summary{grid-template-columns:1fr 1fr}.tip-allocation-panel>article{grid-template-columns:1fr}.earnings-dates,.earnings-ledger-list article{flex-direction:column}.earnings-ledger-list article>div:last-child{text-align:left}}@media (width<=520px){.earnings-summary,.earnings-card-grid{grid-template-columns:1fr}}.mobile-grooming-date{gap:.35rem;font-weight:700;display:grid}.mobile-grooming-date input{min-width:170px}.mobile-settings{gap:1.25rem;margin-bottom:1.5rem;display:grid}.mobile-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.mobile-settings-grid label,.mobile-log-form label{gap:.4rem;font-weight:700;display:grid}.mobile-settings-grid .mobile-toggle{background:#eef9fc;border-radius:12px;grid-column:1/-1;align-items:center;gap:.65rem;padding:1rem;display:flex}.mobile-toggle input{width:1.25rem;height:1.25rem}.mobile-route-panel{margin-bottom:1.5rem}.mobile-route-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.mobile-route-heading p{margin:.25rem 0}.mobile-route-heading .primary-button,.mobile-stop .secondary-button{text-align:center;text-decoration:none}.mobile-stop-list,.mobile-log-list{gap:.75rem;display:grid}.mobile-stop{border:1px solid #d8e4e8;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem;display:grid}.mobile-stop>div{gap:.3rem;display:grid}.mobile-stop a:not(.secondary-button){color:#0077b6}.mobile-stop em{color:#a33;font-style:normal}.stop-number{background:var(--brand-primary);width:2rem;height:2rem;color:var(--brand-on-primary);border-radius:50%;place-items:center;font-weight:800;display:grid}.mobile-finance-grid{grid-template-columns:1fr 1.35fr;gap:1.25rem;margin-bottom:1.5rem;display:grid}.mobile-totals{gap:.8rem;display:grid}.mobile-totals div{border-bottom:1px solid #e4ecef;justify-content:space-between;padding-bottom:.7rem;display:flex}.mobile-totals dd{font-size:1.25rem;font-weight:800}.mobile-log-form{gap:1rem;display:grid}.mobile-pair{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.mobile-log-list article{border-bottom:1px solid #e4ecef;justify-content:space-between;gap:1rem;padding:.85rem 0;display:flex}.mobile-log-list article>div{gap:.25rem;display:grid}.mobile-log-list span{color:#60717a}.mobile-empty{text-align:center;padding:3rem 1rem}.mobile-history-panel{margin-bottom:1.5rem}@media (width<=720px){.mobile-settings-grid,.mobile-finance-grid,.mobile-pair{grid-template-columns:1fr}.mobile-route-heading{flex-direction:column;align-items:stretch}.mobile-stop{grid-template-columns:auto 1fr}.mobile-stop .secondary-button{grid-column:1/-1}.mobile-grooming-date input{width:100%}}.route-week-panel{margin-bottom:1.5rem;overflow:hidden}.route-week-toolbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.route-week-toolbar>div:last-child{gap:.5rem;display:flex}.route-client-search{gap:.4rem;margin-bottom:1rem;font-weight:700;display:grid}.route-week-grid{grid-template-columns:repeat(7,minmax(125px,1fr));gap:.65rem;padding-bottom:.5rem;display:grid;overflow-x:auto}.route-day.outside-month{opacity:.5;background:#f1f4f5}.route-day{cursor:pointer;background:#f8fbfc;border:1px solid #d8e4e8;border-radius:14px;min-height:150px;overflow:hidden}.route-day.selected{border:2px solid var(--brand-primary);background:#eef9fc}.route-day>header{border-bottom:1px solid #d8e4e8;grid-template-columns:1fr auto;align-items:center;padding:.75rem;display:grid}.route-day>header strong{font-size:1.35rem}.route-day>header small{color:#60717a;grid-column:1/-1}.route-day>div{gap:.5rem;padding:.55rem;display:grid}.route-appointment{border-left:4px solid var(--brand-primary);cursor:grab;background:#fff;border-radius:9px;gap:.18rem;padding:.6rem;display:grid;box-shadow:0 2px 8px #14374114}.route-appointment span{font-weight:700}.route-appointment small{color:#60717a}.route-appointment.dimmed{opacity:.2}.route-drag-help{color:#60717a;margin:.8rem 0 0;font-size:.9rem}.route-mobile-help,.mobile-drag-tray{display:none}@media (width<=720px){.route-week-toolbar{flex-direction:column;align-items:stretch}.route-week-toolbar>div:last-child{grid-template-columns:repeat(3,1fr);display:grid}.route-client-search{display:none}.route-week-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem;overflow:visible}.route-day{border-radius:9px;min-width:0;min-height:62px}.route-day>header{text-align:center;border-bottom:0;flex-direction:column;justify-content:center;gap:.1rem;min-height:62px;padding:.25rem .1rem;display:flex}.route-day>header span{text-transform:uppercase;font-size:.64rem}.route-day>header strong{font-size:1rem}.route-day>header small{font-size:.58rem;line-height:1}.route-day>div{display:none}.route-day.selected{border-width:2px}.route-day.touch-target{background:#fff3df;border:2px solid #f4a261;transform:scale(1.04)}.route-drag-help{display:none}.route-mobile-help{color:#60717a;margin:.8rem 0 0;font-size:.85rem;display:block}.mobile-drag-tray{background:#f3f8fa;border-radius:12px;gap:.55rem;margin-top:1rem;padding:.85rem;display:grid}.mobile-drag-tray>span{color:#60717a;font-size:.82rem}.mobile-drag-tray>button{width:100%;color:inherit;text-align:left;touch-action:none;background:#fff;border:1px solid #cbdde3;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:.65rem;padding:.7rem;display:grid}.mobile-drag-tray>button>b{color:var(--brand-primary);font-size:1.25rem}.mobile-drag-tray>button>span{gap:.15rem;display:grid}.mobile-drag-tray>button small{color:#60717a}.mobile-drag-tray>button.dragging{opacity:.7;border-color:#f4a261;box-shadow:0 8px 24px #14374133}}.module-nav-group{gap:3px;margin:5px 0;display:grid}.module-nav-heading{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#ffffff29;border:0;border-radius:8px;justify-content:space-between;align-items:center;padding:11px 14px;font-weight:800;display:flex}.module-nav-heading:hover{background:#ffffff40}.module-nav-heading span:last-child{font-size:.8rem;transition:transform .16s}.module-nav-heading[aria-expanded=true] span:last-child{transform:rotate(180deg)}.module-nav-items{border-left:2px solid #ffffff61;gap:2px;margin-left:14px;padding:3px 0 5px 13px;display:grid}.module-nav-items .nav-button{padding:9px 12px;font-size:.91rem}.core-nav-divider{background:#ffffff4d;height:1px;margin:8px 10px}.subscription-page{color:#20332e;background:#f3f6f5;min-height:100vh;padding:32px 20px}.subscription-panel{text-align:center;width:min(920px,100%);margin:auto}.subscription-kicker{color:#245448;background:#dfece8;border-radius:999px;padding:7px 12px;font-weight:800;display:inline-block}.subscription-panel h1{margin:18px 0 8px;font-size:clamp(2rem,5vw,3.2rem)}.plan-grid{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:32px;display:grid}.plan-card{background:#fff;border:1px solid #cedbd7;border-radius:18px;padding:28px;position:relative;box-shadow:0 12px 30px #193c3314}.plan-card.featured{border:2px solid #315f55}.plan-badge{background:#f4c95d;border-radius:999px;padding:5px 9px;font-size:.78rem;font-weight:800;position:absolute;top:18px;right:18px}.plan-price strong{font-size:2.4rem}.plan-card li{margin:11px 0}.plan-card button,.billing-link{color:#fff;width:100%;font:inherit;cursor:pointer;background:#315f55;border:0;border-radius:9px;padding:13px;font-weight:800}.billing-link{max-width:400px;margin-top:22px}.refresh-link,.signout-link{color:#315f55;cursor:pointer;background:0 0;border:0;margin:16px auto 0;text-decoration:underline;display:block}.subscription-error{color:#9e2d2d;font-weight:700}@media (width<=700px){.plan-grid{grid-template-columns:1fr}.plan-badge{display:inline-block;position:static}}#root{min-height:100vh}.auth-page{background:#f3f5f4;place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fff;border-radius:16px;width:min(100%,420px);padding:32px;box-shadow:0 12px 32px #0000001a}.auth-card h1{color:#263b36;margin-bottom:8px}.auth-card h2{margin-bottom:8px}.auth-card form{gap:12px;margin-top:24px;display:grid}.auth-card input{font:inherit;border:1px solid #aab7b3;border-radius:8px;padding:12px}.auth-card button{color:#fff;font:inherit;cursor:pointer;background:#00b4d8;border:0;border-radius:8px;padding:12px;font-weight:700}.auth-card button:hover:not(:disabled){background:#0077b6}.auth-card button:disabled{cursor:wait;opacity:.65}.auth-card .text-button{color:#0077b6;background:0 0;width:100%;margin-top:16px}.auth-card .text-button:hover:not(:disabled){background:#e8f8fc}.auth-help-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.auth-help-actions .text-button{margin-top:0}.auth-help-note{color:#174b58;background:#e8f8fc;border:1px solid #9fdfee;border-radius:10px;gap:6px;margin-top:14px;padding:14px;display:grid}@media (width<=520px){.auth-help-actions{grid-template-columns:1fr}}.auth-message{margin-top:16px}.loading-message{padding:40px}.dashboard{color:#20332e;background:#f4f7f6;grid-template-columns:250px 1fr;min-height:100vh;display:grid}.sidebar{color:#173a35;background:#00b4d8;flex-direction:column;padding:28px 20px;display:flex}.sidebar h1{margin:0;font-size:1.6rem}.business-label{color:#173a35;margin:8px 0 12px;font-size:.9rem}.subscription-status-badge{color:#173c33;font:inherit;cursor:pointer;background:#e4f1ed;border:1px solid #8eb2a9;border-radius:999px;margin:0 0 24px;padding:7px 10px;font-size:.78rem;font-weight:700}.subscription-status-badge.trial{background:#f4c95d;border-color:#f4c95d}.sidebar nav{gap:8px;display:grid}.nav-button,.sign-out-button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:12px 14px}.nav-button:hover,.nav-button.active{color:#fff;background:#0077b6}.sign-out-button{border:1px solid #00638f;margin-top:auto}.dashboard-main{padding:40px}.dashboard-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.dashboard-header h2{margin:4px 0 0;font-size:2rem}.eyebrow{color:#65766f;letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:700}.primary-button{color:#fff;cursor:pointer;background:#315f55;border:0;border-radius:8px;padding:12px 18px;font-weight:700}.primary-button:hover{background:#264b43}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:28px;display:grid}.summary-card,.dashboard-panel{background:#fff;border:1px solid #dce4e1;border-radius:14px;box-shadow:0 5px 16px #1f3d350f}.summary-card{gap:12px;padding:22px;display:grid}.summary-card span{color:#65766f}.summary-card strong{font-size:2rem}.dashboard-panel{padding:24px}.panel-heading h3{margin:4px 0 0}.empty-state{text-align:center;border:1px dashed #aab8b4;border-radius:12px;margin-top:24px;padding:54px 20px}.empty-state h3{margin:0 0 8px}.empty-state p{color:#65766f;margin:0}.error-message{color:#a12626}@media (width<=900px){.dashboard{grid-template-columns:1fr}.sidebar{min-height:auto}.sidebar nav{grid-template-columns:repeat(2,1fr)}.sign-out-button{margin-top:20px}.dashboard-main{padding:24px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.dashboard-header{flex-direction:column;align-items:flex-start}.summary-grid{grid-template-columns:1fr}}.client-form-panel{margin-bottom:24px}.client-form-panel h3{margin-top:0}.client-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.client-form label{color:#455b55;gap:7px;font-weight:600;display:grid}.client-form input{color:#20332e;background:#fff;border:1px solid #b8c5c1;border-radius:8px;width:100%;padding:11px 12px}.client-form input:focus{border-color:#315f55;outline:3px solid #315f5524}.full-width{grid-column:1/-1}.form-actions{justify-content:flex-end;display:flex}.client-list{display:grid}.client-row{border-bottom:1px solid #e1e7e5;grid-template-columns:48px 2fr 1fr 1fr auto;align-items:center;gap:18px;padding:18px 8px;display:grid}.record-list-filter{background:#fff;border:1px solid #d5e0dc;border-radius:10px;gap:4px;width:fit-content;margin:0 0 16px;padding:4px;display:flex}.record-list-filter button{color:#526963;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 13px;font-weight:700}.record-list-filter button.active{background:var(--brand-accent,#0077b6);color:var(--brand-on-accent,white)}.record-actions{align-items:center;gap:8px;display:flex}.archive-button{color:#9b3128;font:inherit;cursor:pointer;background:#fff;border:1px solid #d7a6a0;border-radius:8px;padding:9px 12px;font-weight:800}.archive-button:hover{background:#fff3f1}.archive-reason{background:#f0f2f1;border-radius:999px;width:fit-content;padding:4px 8px;font-size:.76rem;font-weight:800;color:#5f6e6a!important;margin-top:5px!important}.pet-record-actions{flex-direction:column;align-items:stretch;margin-top:14px}.pet-record-actions .pet-edit-button{margin-top:0}.client-row:last-child{border-bottom:0}.client-avatar{color:#21463d;background:#dcebe6;border-radius:50%;place-items:center;width:44px;height:44px;font-weight:800;display:grid}.client-name{gap:4px;display:grid}.client-name span,.client-row p{color:#65766f;margin:0}.client-detail-label{color:#879690;text-transform:uppercase;margin-bottom:4px;font-size:.75rem;font-weight:700;display:block}@media (width<=700px){.client-form{grid-template-columns:1fr}.full-width{grid-column:auto}.client-row{grid-template-columns:48px 1fr}.client-row>div:nth-child(n+3){grid-column:2}.record-actions{flex-direction:column;align-items:stretch;grid-column:1/-1!important}.record-list-filter{box-sizing:border-box;width:100%}.record-list-filter button{flex:1}}.client-form select{color:#20332e;background:#fff;border:1px solid #b8c5c1;border-radius:8px;width:100%;padding:11px 12px}.pet-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.pet-card{background:#fff;border:1px solid #dce4e1;border-radius:14px;padding:24px;box-shadow:0 5px 16px #1f3d350f}.pet-avatar{color:#21463d;background:#dcebe6;border-radius:50%;place-items:center;width:54px;height:54px;margin-bottom:18px;font-size:1.3rem;font-weight:800;display:grid}.pet-card h3{margin:0 0 6px;font-size:1.3rem}.pet-card p{color:#65766f;margin:0}.pet-details{border-top:1px solid #e1e7e5;gap:14px;margin:22px 0 0;padding-top:18px;display:grid}.pet-details div{justify-content:space-between;gap:16px;display:flex}.pet-details dt{color:#7b8b86}.pet-details dd{text-align:right;margin:0;font-weight:600}@media (width<=1050px){.pet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.pet-grid{grid-template-columns:1fr}}.client-form textarea{color:#20332e;resize:vertical;background:#fff;border:1px solid #b8c5c1;border-radius:8px;width:100%;padding:11px 12px}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.service-card{background:#fff;border:1px solid #dce4e1;border-radius:14px;padding:22px;box-shadow:0 5px 16px #1f3d350f}.service-card.inactive{opacity:.68}.service-card-header,.service-meta{justify-content:space-between;align-items:center;gap:14px;display:flex}.service-category{color:#526a63;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.status-badge{border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:700}.status-badge.active{color:#215b4c;background:#dcebe6}.status-badge.inactive{color:#666;background:#e8e8e8}.service-card h3{margin:20px 0 8px}.service-description{color:#65766f;min-height:48px}.service-meta{border-top:1px solid #e1e7e5;margin:22px 0;padding-top:18px}.service-meta strong{font-size:1.25rem}.service-meta span{color:#65766f}.secondary-button{color:#315f55;cursor:pointer;background:#fff;border:1px solid #9baca7;border-radius:8px;width:100%;padding:10px 14px;font-weight:700}@media (width<=1050px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.service-grid{grid-template-columns:1fr}}.appointment-list{display:grid}.appointment-row{border-bottom:1px solid #e1e7e5;grid-template-columns:120px 2fr 1fr auto;align-items:center;gap:22px;padding:20px 8px;display:grid}.appointment-row:last-child{border-bottom:0}.appointment-time{gap:4px;display:grid}.appointment-time strong{font-size:1.15rem}.appointment-time span,.appointment-summary p,.appointment-row p{color:#65766f;margin:0}.appointment-summary h3{margin:0 0 5px}.appointment-status{color:#215b4c;background:#dcebe6;border-radius:999px;padding:7px 11px;font-size:.78rem;font-weight:800}@media (width<=800px){.appointment-row{grid-template-columns:1fr;gap:10px}.appointment-status{width:fit-content}}.calendar-panel{background:#fff;border:1px solid #dce4e1;border-radius:14px;margin-bottom:28px;padding:22px;box-shadow:0 5px 16px #1f3d350f}.upcoming-panel{margin-top:28px}.calendar-panel .fc{--fc-border-color:#dce4e1;--fc-button-bg-color:#315f55;--fc-button-border-color:#315f55;--fc-button-hover-bg-color:#264b43;--fc-button-hover-border-color:#264b43;--fc-button-active-bg-color:#203c35;--fc-button-active-border-color:#203c35;--fc-today-bg-color:#315f5512;--fc-now-indicator-color:#bd4f4f;--fc-page-bg-color:white;--fc-neutral-bg-color:#f4f7f6}.calendar-panel .fc-toolbar-title{color:#20332e;font-size:1.25rem}.calendar-panel .fc-col-header-cell-cushion,.calendar-panel .fc-timegrid-axis-cushion,.calendar-panel .fc-timegrid-slot-label-cushion{color:#526a63}.calendar-panel .fc-timegrid-slot{cursor:pointer}.calendar-panel .fc-timegrid-slot:hover{background:#315f550f}.calendar-panel .fc-event{cursor:pointer;border-radius:5px;padding:3px 5px;font-weight:700}@media (width<=750px){.calendar-panel{padding:12px;overflow-x:auto}.calendar-panel .fc{min-width:700px}.calendar-panel .fc-toolbar{flex-direction:column;align-items:flex-start;gap:10px}}:root{--ui-space-1:.5rem;--ui-space-2:.75rem;--ui-space-3:1rem;--ui-space-4:1.5rem;--ui-space-5:2rem;--ui-control-height:44px;--ui-radius:9px;--ui-focus:color-mix(in srgb, var(--brand-accent,#0077b6) 22%, transparent)}.primary-button,.secondary-button,.archive-button,.client-edit-button,.pet-edit-button,.history-clear-button,.history-approve-button,.history-danger-button,.history-secondary-button,.invoice-secondary-button,.invoice-danger-button,.invoice-refund-button,.billing-refresh{min-height:var(--ui-control-height);justify-content:center;align-items:center;gap:var(--ui-space-1);text-align:center;cursor:pointer;padding:.65rem 1rem;line-height:1.2;display:inline-flex}button{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--ui-focus);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.62}:is(.form-actions,.record-actions,.staff-form-actions,.staff-card-actions,.client-header-actions,.boarding-card-actions,.sitting-card-actions,.visit-actions,.report-actions,.vaccination-actions,.notification-actions,.invoice-actions,.invoice-payment-actions,.invoice-refund-actions,.standalone-actions,.receipt-screen-actions,.profile-photo-actions,.client-migration-actions,.trial-plan-actions){gap:var(--ui-space-2)}:is(.form-actions,.record-actions,.client-header-actions,.boarding-card-actions,.sitting-card-actions,.visit-actions,.report-actions,.vaccination-actions,.notification-actions,.invoice-actions,.invoice-payment-actions,.invoice-refund-actions,.standalone-actions,.receipt-screen-actions,.client-migration-actions){flex-wrap:wrap}.dashboard-header,:is(.client-form-panel,.sitting-form-panel,.report-form-panel,.invoice-create-panel,.invoice-list-panel,.revenue-panel,.subscription-panel,.boarding-calendar-panel,.pet-import-panel,.client-migration-panel){margin-bottom:var(--ui-space-4)}:is(.summary-grid,.history-summary-grid,.invoice-summary-grid,.revenue-summary-grid,.boarding-summary,.sitting-overview){gap:var(--ui-space-3);margin-bottom:var(--ui-space-4)}:is(.pet-grid,.staff-grid,.service-grid,.report-grid,.boarding-grid,.boarding-space-grid,.sitting-grid,.module-grid,.plan-grid){gap:var(--ui-space-3)}.dashboard-panel{min-width:0}:is(.panel-heading,.invoice-create-heading,.standalone-section-heading,.boarding-space-heading,.sitting-results-heading,.revenue-heading,.pet-import-heading,.client-migration-heading,.receipt-table-heading){gap:var(--ui-space-3);margin-bottom:var(--ui-space-3)}:is(.dashboard-panel,.pet-card,.staff-card,.report-card,.boarding-card,.sitting-booking)>:first-child{margin-top:0}:is(.dashboard-panel,.pet-card,.staff-card,.report-card,.boarding-card,.sitting-booking)>:last-child{margin-bottom:0}:is(.history-toolbar,.invoice-toolbar,.report-toolbar,.earnings-toolbar,.boarding-calendar-toolbar,.boarding-controls,.sitting-booking-controls){gap:var(--ui-space-3)}:is(.record-list-filter,.history-filter-tabs,.invoice-filter-tabs,.sitting-filter-tabs,.earnings-range){gap:var(--ui-space-1)}:is(.client-form,.appointment-form,.staff-form-grid,.settings-form-grid,.boarding-form,.sitting-form,.report-form,.vaccination-form,.standalone-invoice-form,.invoice-payment-form,.invoice-refund-form){row-gap:var(--ui-space-3);column-gap:var(--ui-space-4)}:is(.client-form,.appointment-form,.staff-form,.settings-form-grid,.boarding-form,.sitting-form,.report-form,.vaccination-form,.standalone-invoice-form,.invoice-payment-form,.invoice-refund-form) :is(input:not([type=checkbox]):not([type=radio]),select){min-height:46px}textarea{line-height:1.45}@media (width<=720px){.dashboard-main{padding:1.25rem 1rem 2rem!important}.dashboard-header{margin-bottom:1.25rem}.dashboard-panel,.history-panel,.invoice-create-panel,.invoice-list-panel{padding:1rem!important}:is(.form-actions,.record-actions,.staff-form-actions,.staff-card-actions,.client-header-actions,.boarding-card-actions,.sitting-card-actions,.visit-actions,.report-actions,.vaccination-actions,.notification-actions,.invoice-actions,.invoice-payment-actions,.invoice-refund-actions,.standalone-actions,.receipt-screen-actions,.profile-photo-actions,.client-migration-actions)>button,:is(.form-actions,.client-header-actions,.receipt-screen-actions)>.primary-button,:is(.form-actions,.client-header-actions,.receipt-screen-actions)>.secondary-button{width:100%}:is(.invoice-create-heading,.standalone-section-heading,.boarding-space-heading,.sitting-results-heading,.revenue-heading,.pet-import-heading,.client-migration-heading,.receipt-table-heading){flex-direction:column;align-items:stretch}:is(.history-filter-tabs,.invoice-filter-tabs,.record-list-filter){width:100%}:is(.history-filter-tabs,.invoice-filter-tabs,.record-list-filter) button{min-height:42px}}@media (width<=480px){:is(.summary-grid,.history-summary-grid,.invoice-summary-grid,.revenue-summary-grid){grid-template-columns:1fr!important}:is(.boarding-summary,.sitting-overview){grid-template-columns:repeat(2,minmax(0,1fr))!important}.auth-page{padding:1rem}.auth-card{padding:1.5rem}}.clickable-summary-card{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s}.clickable-summary-card:hover:not(:disabled){border-color:#69b8aa;transform:translateY(-2px);box-shadow:0 12px 28px #1f3d351f}.clickable-summary-card:focus-visible{outline-offset:3px;outline:3px solid #00b4d847}.clickable-summary-card:disabled{cursor:not-allowed;opacity:.62}.clickable-summary-card small{color:#2e6d61;font-weight:800}.boarding-summary>button,.vet-med-overview>button,.earnings-summary>button{background:#fff;border:1px solid #d9e5e2;border-top:4px solid #00b4d8;border-radius:14px;gap:5px;padding:1rem;display:grid}.boarding-summary>button:nth-child(2n){border-top-color:#36a269}.crash-page{color:#07324b;background:linear-gradient(145deg,#eef8fb,#f7fbfa);place-items:center;min-height:100vh;padding:24px;display:grid}.crash-card{text-align:center;background:#fff;border:1px solid #cfe1e7;border-radius:18px;width:min(560px,100%);padding:40px;box-shadow:0 18px 50px #07324b1f}.crash-card img{border-radius:14px;width:64px;height:64px}.crash-card h1{margin:8px 0 12px;font-size:clamp(1.8rem,5vw,2.6rem)}.crash-card p{line-height:1.6}.crash-card button,.crash-card a{box-sizing:border-box;width:100%;font:inherit;border-radius:9px;margin-top:14px;padding:13px 18px;font-weight:700;display:block}.crash-card button{color:#fff;cursor:pointer;background:#087fb8;border:0}.crash-card a{color:#0873a7}
