:root{--ink:#202124;--muted:#6b7280;--line:#e5e7eb;--soft:#f7f7f8;--accent:#7c3aed;--accent-hover:#6d28d9;--accent2:#f3e8ff;--ok:#eaf7ef;--warn:#fff6dc;--bad:#fff0f0;color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;background:#fff;font-family:Arial,Helvetica,sans-serif}body{color:var(--ink);background:#fff;margin:0;font:14px/1.45 Arial,Helvetica,sans-serif}button{color:inherit}.app-shell{width:100%;min-height:100vh;background:#fff!important;display:flex!important}.sidebar{z-index:10;border-right:1px solid var(--line)!important;background:#fbfbfc!important;flex-direction:column!important;width:225px!important;padding:22px 16px!important;display:flex!important;position:fixed!important;inset:0 auto 0 0!important}.brand{border:0!important;margin:0 0 24px!important;padding:0!important}.brand h1{color:var(--ink)!important;letter-spacing:0!important;margin:0!important;font-family:Arial,Helvetica,sans-serif!important;font-size:19px!important;font-weight:800!important;line-height:1.2!important}.brand p{color:var(--muted)!important;margin:4px 0 12px!important;font-size:12px!important;line-height:1.4!important}.brand>span{background:var(--soft)!important;color:var(--muted)!important;letter-spacing:.08em!important;border-radius:6px!important;padding:5px 8px!important;font-size:10px!important;font-weight:700!important;display:inline-block!important}.nav-group{margin:0 0 16px!important}.nav-heading{color:#979ca5!important;letter-spacing:.12em!important;text-transform:uppercase!important;padding:7px 12px 5px!important;font-size:9px!important;font-weight:800!important}.nav-item,.sidebar nav button{width:100%!important;color:var(--ink)!important;text-align:left!important;cursor:pointer!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:8px!important;margin:2px 0!important;padding:11px 12px!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;display:block!important}.nav-item:hover,.sidebar nav button:hover{background:#f7f7f8!important}.nav-item.active,.sidebar nav button.active{background:var(--accent2)!important;color:var(--ink)!important;font-weight:700!important}.sidebar-user strong{color:var(--ink)!important;font-size:12px!important;font-weight:700!important;display:block!important}.sidebar-user button{border:1px solid var(--line)!important;color:var(--muted)!important;cursor:pointer!important;background:#fff!important;border-radius:7px!important;margin-top:10px!important;padding:7px 9px!important;font-size:11px!important}.main-area{min-height:100vh;background:#fff!important;width:calc(100% - 225px)!important;margin-left:225px!important}.topbar{height:auto!important;min-height:auto!important;box-shadow:none!important;background:#fff!important;border:0!important;justify-content:space-between!important;align-items:center!important;padding:24px 28px 0!important;display:flex!important}.topbar h2{color:var(--ink)!important;letter-spacing:0!important;margin:0!important;font-family:Arial,Helvetica,sans-serif!important;font-size:23px!important;font-weight:700!important;line-height:1.2!important}.page-content{background:#fff!important;padding:20px 28px 50px!important}.page-eyebrow,.page-label,.schedule-section-eyebrow{color:var(--muted)!important;letter-spacing:.1em!important;text-transform:uppercase!important;font-size:10px!important;font-weight:700!important;display:block!important}.clients-heading-row h1,.client-profile-header h1,.booking-page h1,.schedule-page h1,.appointments-page h1,.page-placeholder h1{color:var(--ink)!important;letter-spacing:0!important;font-family:Arial,Helvetica,sans-serif!important}.schedule-page h1,.clients-heading-row h1,.client-profile-header h1{font-size:23px!important}.primary-button,.secondary-button,.btn{cursor:pointer!important;min-height:auto!important;box-shadow:none!important;border-radius:7px!important;padding:8px 10px!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important}.primary-button,.btn.primary{border:1px solid var(--accent)!important;background:var(--accent)!important;color:#fff!important}.primary-button:hover:not(:disabled),.btn.primary:hover:not(:disabled){background:var(--accent-hover)!important;border-color:var(--accent-hover)!important}.secondary-button,.btn{border:1px solid var(--line)!important;color:var(--ink)!important;background:#fff!important}.secondary-button:hover:not(:disabled),.btn:hover:not(:disabled){background:#fafafa!important}.primary-button:disabled,.secondary-button:disabled,.btn:disabled{opacity:.45!important;cursor:not-allowed!important}.btn.danger,.danger-button{color:#b42318!important;background:#fff!important;border-color:#f2c6c6!important}input,select,textarea{border:1px solid var(--line);color:var(--ink);box-shadow:none;background:#fff;border-radius:7px}input:focus,select:focus,textarea:focus{border-color:#b6a6c2;outline:none;box-shadow:0 0 0 2px #7c3aed12}.field{margin-bottom:10px}.field label,.detail-label{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:400;display:block}.field input,.field select,.field textarea{width:100%;padding:8px}.panel,.schedule-section,.page-placeholder,.clients-table-card,.profile-card,.booking-card,.appointment-card{border:1px solid var(--line)!important;box-shadow:none!important;background:#fff!important;border-radius:10px!important}.panel{margin-bottom:16px;overflow:hidden}.panelhead{background:var(--soft);border:0;justify-content:space-between;align-items:center;padding:13px 15px;font-weight:700;display:flex}.pill,.badge,.status-pill,.version-badge{background:var(--soft);color:var(--muted);border:0;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:400;display:inline-block}.notice{color:var(--ink)!important;box-shadow:none!important;background:#eef6ff!important;border:0!important;border-radius:8px!important;margin-bottom:14px!important;padding:12px 14px!important}.notice.success,.notice.ok,.ok{background:var(--ok)!important}.notice.warning,.notice.warn,.warn{background:var(--warn)!important}.notice.error,.notice.bad,.bad{background:var(--bad)!important;color:var(--ink)!important}table{font-family:Arial,Helvetica,sans-serif}.table,.clients-table,.appointments-table{width:100%;border-collapse:collapse!important}.table th,.table td,.clients-table th,.clients-table td,.appointments-table th,.appointments-table td{border-top:1px solid var(--line)!important;text-align:left!important;vertical-align:top!important;border-bottom:0!important;border-left:0!important;border-right:0!important;padding:10px 12px!important}.table th,.clients-table th,.appointments-table th{color:var(--muted)!important;background:#fff!important;font-size:12px!important;font-weight:700!important}.table tbody tr:hover,.clients-table tbody tr:hover,.appointments-table tbody tr:hover{background:#fafafa!important}.grid2{grid-template-columns:1fr 1fr;gap:14px;display:grid}.grid3{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.client-search-box{background:0 0!important;border:0!important;border-radius:0!important;min-height:auto!important;padding:0!important}.client-search-box>span{display:none!important}.client-search-box input,.search{border:1px solid var(--line)!important;background:#fff!important;border-radius:8px!important;width:100%!important;max-width:650px!important;padding:9px 11px!important}.empty-state,.schedule-empty-state{color:var(--ink)!important;text-align:left!important;background:#eef6ff!important;border:0!important;border-radius:8px!important;padding:12px 14px!important}.schedule-page{width:100%!important;max-width:none!important;color:var(--ink)!important;margin:0!important}.schedule-page-header h1{margin:0!important;font-size:23px!important;font-weight:700!important}.schedule-page-header p{color:var(--muted)!important;margin:5px 0 0!important;font-size:14px!important}.schedule-date-control{width:240px!important}.schedule-date-control label{color:var(--muted)!important;margin-bottom:4px!important;font-size:12px!important;display:block!important}.schedule-date-control input{border:1px solid var(--line)!important;border-radius:7px!important;width:100%!important;padding:8px!important}.schedule-summary-grid{gap:10px!important;margin:0 0 16px!important;display:flex!important}.schedule-summary-card{border:1px solid var(--line)!important;min-width:150px!important;box-shadow:none!important;background:#fff!important;border-radius:9px!important;padding:10px 12px!important}.schedule-summary-card span{color:var(--muted)!important;font-size:11px!important;display:block!important}.schedule-summary-card strong{color:var(--ink)!important;margin-top:3px!important;font-size:18px!important;display:block!important}.schedule-section{border:1px solid var(--line)!important;background:#fff!important;border-radius:10px!important;margin-bottom:16px!important;overflow:hidden!important}.schedule-section-heading h2{color:var(--ink)!important;margin:0!important;font-size:14px!important;font-weight:700!important}.scheduleVan{border:1px solid var(--line);background:#fff;border-radius:10px;margin:14px 0;overflow-x:auto}.scheduleHead{border-bottom:1px solid var(--line);background:#f4f5f5;grid-template-columns:100px 1fr 90px 220px 130px;align-items:center;gap:10px;padding:11px 12px;display:grid}.scheduleHead input{border:1px solid var(--line);border-radius:6px;width:100%;padding:7px}.scheduleRow{border-top:1px solid #eef0ef;grid-template-columns:38px 86px 110px 68px 105px 105px 120px 110px 1.2fr 1fr 1fr 1fr 1.15fr 72px 64px 100px;align-items:start;gap:6px;min-width:1810px;padding:8px 10px;font-size:11px;display:grid}.scheduleRow.hdr{color:var(--muted);background:#fafafa;font-weight:700}.scheduleRow.dragging{opacity:.35}.scheduleRow input,.scheduleRow textarea,.scheduleRow select{width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #cfd7d3;border-radius:5px;padding:5px 6px}.scheduleRow textarea{resize:vertical;min-height:48px}.scheduleRow input[readonly]{color:var(--muted);background:#f4f5f5;border-color:#e3e6e5}.scheduleRow .master{background:#f4f5f5;border-radius:5px;min-height:29px;padding:6px}.dragHandle{cursor:grab;text-align:center;font-size:18px}.dropzone{min-height:44px;overflow-x:auto}.scheduleEmpty{color:var(--muted);padding:12px;font-size:12px}.routeTools{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.routeSeq{background:var(--accent2);border-radius:50%;justify-content:center;align-items:center;min-width:26px;height:26px;font-weight:700;display:inline-flex}.routingNotice{background:var(--accent2);border-radius:8px;margin:10px 0;padding:12px 14px}.routeDone{background:var(--ok)!important}.vanSummary,.daySummary{border-top:2px solid var(--line);background:#fafbfb;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:22px;padding:11px 14px;display:flex}.daySummary{border:2px solid var(--line);background:#fff;border-radius:10px;margin:18px 0 8px}.summaryItem{text-align:right;min-width:150px}.summaryItem .small{display:block}.summaryItem b{font-size:16px}.sheetWrap{background:#fff;border:1px solid #c8ccd0;border-radius:8px;margin-top:14px;overflow:auto}.sheetBar{background:#f1f3f4;border-bottom:1px solid #c8ccd0;justify-content:space-between;gap:12px;padding:9px 12px;font-size:12px;display:flex}.gsheet{border-collapse:collapse;width:100%;min-width:860px;font-size:12px}.gsheet th,.gsheet td{text-align:left;white-space:nowrap;border:1px solid #dadce0;padding:7px 8px}.gsheet th,.gsheet .rownum{background:#f8f9fa}.gsheet th{font-weight:600}.gsheet .rownum{width:34px;color:var(--muted);text-align:center}.gsheet .selected{background:#e6f4ea}.modalBack,.modal-backdrop,.modal-overlay{z-index:9998!important;background:#00000073!important;justify-content:center!important;align-items:flex-start!important;padding:35px 15px!important;display:flex!important;position:fixed!important;inset:0!important;overflow:auto!important}.modalCard,.modal-card,.modal-content{background:#fff!important;border:0!important;border-radius:12px!important;width:min(980px,96vw)!important;overflow:hidden!important;box-shadow:0 20px 60px #00000040!important}.modalBody,.modal-body{padding:16px!important}.modalFoot,.modal-footer{border-top:1px solid var(--line)!important;justify-content:flex-end!important;gap:8px!important;padding:12px 16px!important;display:flex!important}.hiddenModal{display:none!important}.small,.muted-text{color:var(--muted)!important;font-size:12px!important}.actions{flex-wrap:wrap;gap:8px;display:flex}.auth-card{border:1px solid var(--line);width:min(420px,94vw);box-shadow:none;background:#fff;border-radius:10px;padding:24px}.auth-card h1{color:var(--ink);margin:0;font-size:23px}.auth-card input{border:1px solid var(--line);border-radius:7px;width:100%;padding:9px}.auth-card button{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:7px;padding:8px 10px}@media (width<=1100px){.scheduleHead{grid-template-columns:80px 1fr 80px 180px}.scheduleHead>:last-child{grid-column:1/-1}}@media (width<=900px){.sidebar{display:none!important}.main-area{width:100%!important;margin-left:0!important}.grid2,.grid3{grid-template-columns:1fr}.topbar,.page-content{padding-left:18px!important;padding-right:18px!important}.schedule-page-header{flex-direction:column!important}.schedule-date-control{width:100%!important}}*{box-sizing:border-box}:root{color:#302936;font-synthesis:none;text-rendering:optimizelegibility;background:#f7f5f8;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html,body,#root{width:100%;min-width:100%;min-height:100vh;margin:0}body{background:#f7f5f8}button,input,select,textarea{font:inherit}.auth-screen{background:#f6f4f7;justify-content:center;align-items:center;min-height:100vh;padding:30px;display:flex}.auth-card{background:#fff;border:1px solid #e8e3ea;border-radius:18px;width:440px;padding:44px;box-shadow:0 12px 35px #2c233014}.auth-card h1{letter-spacing:-1px;color:#17131a;margin:0;font-size:34px}.auth-card h2{color:#766d7c;margin:5px 0 0;font-size:17px;font-weight:500}.auth-card .environment{color:#897d90;letter-spacing:.1em;text-transform:uppercase;margin:12px 0 30px;font-size:12px;font-weight:800}.auth-card form{flex-direction:column;gap:18px;display:flex}.auth-card label{color:#665d6c;flex-direction:column;gap:7px;font-size:13px;font-weight:700;display:flex}.auth-card input{background:#fff;border:1px solid #ddd7e0;border-radius:8px;outline:none;width:100%;height:44px;padding:0 12px}.auth-card input:focus{border-color:#76657f;box-shadow:0 0 0 3px #6d5c761a}.auth-card button{color:#fff;cursor:pointer;background:#6d5c76;border:0;border-radius:8px;padding:12px;font-weight:700}.error-message{color:#9d4545;background:#fff3f3;border-radius:7px;padding:10px 12px;font-size:13px}.app-shell{background:#f7f5f8;width:100%;min-height:100vh;display:flex}.sidebar{z-index:10;background:#fff;border-right:1px solid #e7e2e9;flex-direction:column;width:250px;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid #eee9ef;padding:28px 24px 23px}.brand h1{color:#1d1820;letter-spacing:-.7px;margin:0;font-size:23px;line-height:1.1}.brand p{color:#837987;margin:6px 0 9px;font-size:12px}.brand>span{color:#75637e;letter-spacing:.1em;background:#f0ecf2;border-radius:5px;padding:4px 7px;font-size:9px;font-weight:800;display:inline-flex}.sidebar nav{flex:1;padding:18px 12px;overflow-y:auto}.nav-group{margin-bottom:18px}.nav-heading{color:#a098a4;letter-spacing:.12em;padding:0 11px 6px;font-size:9px;font-weight:800}.nav-item{color:#615867;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;width:100%;margin:1px 0;padding:8px 11px;font-size:12px;font-weight:550;display:block}.nav-item:hover{color:#3e3543;background:#f7f4f8}.nav-item.active{color:#604f69;background:#eee9f0;font-weight:750}.sidebar-user{border-top:1px solid #eee9ef;padding:16px 20px 20px}.sidebar-user strong{color:#403746;font-size:12px;display:block}.sidebar-user span{color:#938a97;margin-top:2px;font-size:11px;display:block}.sidebar-user button{color:#716876;cursor:pointer;background:#fff;border:1px solid #ded8e1;border-radius:6px;margin-top:11px;padding:6px 9px;font-size:10px}.main-area{width:calc(100% - 250px);min-height:100vh;margin-left:250px}.topbar{background:#fff;border-bottom:1px solid #e8e3ea;justify-content:space-between;align-items:center;height:78px;padding:0 34px;display:flex}.topbar h2{color:#2c252f;letter-spacing:-.3px;margin:0;font-size:20px}.topbar p{color:#948b98;margin:4px 0 0;font-size:11px}.user-status{color:#716876;align-items:center;font-size:11px;display:flex}.status-dot{background:#77927c;border-radius:50%;width:7px;height:7px;margin-right:7px}.page-content{padding:30px 34px 50px}.page-eyebrow,.page-label{color:#8a7d91;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.detail-label{color:#968b99;letter-spacing:.09em;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:800;display:block}.muted-text{color:#9a909d;font-size:13px}.primary-button,.secondary-button{cursor:pointer;border-radius:8px;min-height:40px;padding:10px 18px;font-weight:650}.primary-button{color:#fff;background:#716079;border:0}.primary-button:hover:not(:disabled){background:#625269}.primary-button:disabled{opacity:.45;cursor:not-allowed}.secondary-button{color:#5f5366;background:#fff;border:1px solid #ded8e1}.secondary-button:hover{background:#f6f3f7}.empty-state{color:#968b99;text-align:center;background:#faf8fb;border:1px dashed #dcd4df;border-radius:8px;padding:28px}.page-placeholder{background:#fff;border:1px solid #e7e2e9;border-radius:12px;padding:30px;box-shadow:0 2px 8px #281e2c06}.page-placeholder .page-label{margin-bottom:6px}.page-placeholder h1{color:#28212c;letter-spacing:-.5px;margin:0;font-size:27px}.page-placeholder p{color:#887f8c;margin:8px 0 0;font-size:13px}.clients-page,.booking-page{width:100%;max-width:1400px;margin:0 auto}.clients-heading-row,.client-profile-toolbar,.client-profile-header,.card-heading-row{justify-content:space-between;align-items:center;gap:24px;display:flex}.clients-heading-row{margin-bottom:24px}.clients-heading-row h1,.client-profile-header h1{color:#211d26;letter-spacing:-.6px;margin:4px 0 0;font-size:32px;line-height:1.15}.client-search-row{align-items:center;gap:18px;margin-bottom:20px;display:flex}.client-search-box{background:#fff;border:1px solid #ddd7e0;border-radius:9px;flex:1;align-items:center;max-width:650px;min-height:46px;padding:0 14px;display:flex}.client-search-box>span{color:#8c818f;margin-right:10px;font-size:20px}.client-search-box input{color:#302a34;background:0 0;border:0;outline:0;width:100%}.client-search-box input::placeholder{color:#aaa1ad}.client-count{color:#827786;font-size:14px}.clients-table-card{background:#fff;border:1px solid #e3dde5;border-radius:10px;overflow:hidden}.clients-table{border-collapse:collapse;width:100%}.clients-table thead{background:#faf8fb}.clients-table th{color:#817486;letter-spacing:.09em;text-align:left;text-transform:uppercase;white-space:nowrap;border-bottom:1px solid #e8e2ea;padding:14px 18px;font-size:11px;font-weight:800}.clients-table td{color:#554d59;vertical-align:middle;border-bottom:1px solid #eee9ef;padding:16px 18px;font-size:13px}.clients-table tbody tr:last-child td{border-bottom:0}.client-row{cursor:pointer;transition:background .15s}.client-row:hover{background:#f8f5f9}.clients-table td:first-child strong{color:#403747;margin-bottom:3px;display:block}.clients-table td:first-child span{color:#99909c;font-size:12px;display:block}.status-badge{letter-spacing:.04em;border-radius:999px;align-items:center;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex}.active-status{color:#56725e;background:#edf5ef}.inactive-status{color:#7e7078;background:#f1edef}.clients-loading,.no-results{text-align:center;color:#8d838f;padding:30px}.client-profile-toolbar{margin-bottom:22px}.client-profile-header{background:#fff;border:1px solid #e3dde5;border-radius:10px;margin-bottom:22px;padding:24px 28px}.client-profile-header p{color:#817784;margin:7px 0 0;font-size:17px}.client-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.profile-card{background:#fff;border:1px solid #e3dde5;border-radius:10px;min-width:0;padding:22px 24px}.profile-card-wide{grid-column:1/-1}.profile-card h3{color:#403747;margin:0 0 20px;font-size:17px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;display:grid}.detail-grid>div{min-width:0}.detail-grid strong{color:#4c4351;overflow-wrap:anywhere;font-size:14px;font-weight:600;display:block}.important-information{color:#544b58;margin:0;font-size:14px;line-height:1.6}.card-heading-row{margin-bottom:18px}.card-heading-row h3{margin:2px 0 0}.pet-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.pet-card{background:#faf9fb;border:1px solid #e6e0e8;border-radius:10px;min-width:0;height:100%;padding:20px}.pet-card-header{border-bottom:1px solid #ebe6ed;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;padding-bottom:16px;display:flex}.pet-card-header>div{min-width:0}.pet-card-header .page-eyebrow{margin-bottom:4px;font-size:9px}.pet-card-header h3{color:#302936;margin:0;font-size:20px;line-height:1.2}.pet-card-header p{color:#746b79;margin:5px 0 0;font-size:14px}.pet-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;display:grid}.pet-detail-grid>div{min-width:0}.pet-detail-grid strong{color:#403747;overflow-wrap:anywhere;font-size:14px;font-weight:650;display:block}.pet-note{color:#968b99;margin-top:4px;font-size:10px;display:block}.booking-page{color:#302936}.booking-toolbar{align-items:center;gap:22px;margin-bottom:22px;display:flex}.booking-toolbar-title h1{color:#211d26;letter-spacing:-.6px;margin:3px 0 0;font-size:30px;line-height:1.15}.booking-empty-state{background:#fff;border:1px solid #e3dde5;border-radius:12px;max-width:650px;padding:34px}.booking-empty-state h1{color:#211d26;margin:5px 0 8px;font-size:28px}.booking-empty-state p{color:#817784;margin:0 0 22px;font-size:14px}.booking-client-card{background:#fff;border:1px solid #e3dde5;border-radius:10px;justify-content:space-between;align-items:center;gap:30px;margin-bottom:20px;padding:20px 24px;display:flex}.booking-client-card h2{color:#302936;letter-spacing:-.35px;margin:4px 0 3px;font-size:22px}.booking-client-card p{color:#817784;margin:0;font-size:14px}.booking-client-summary{grid-template-columns:repeat(2,minmax(130px,1fr));gap:18px;display:grid}.booking-client-summary>div{border-left:1px solid #ebe6ed;padding-left:18px}.booking-client-summary strong{color:#403747;font-size:14px;display:block}.booking-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}.booking-main-column{flex-direction:column;gap:18px;display:flex}.booking-card,.booking-summary-card{background:#fff;border:1px solid #e3dde5;border-radius:10px}.booking-card{padding:22px 24px}.booking-card>div:first-child:not(.card-heading-row){margin-bottom:20px}.booking-card h3,.booking-summary-card h3{color:#403747;margin:3px 0 0;font-size:18px}.booking-pet-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.booking-pet-card{background:#faf9fb;border:1px solid #e3dde5;border-radius:9px;min-width:0;padding:16px;transition:border-color .15s,background .15s,box-shadow .15s}.booking-pet-card.selected{background:#f7f3f8;border-color:#a796b0;box-shadow:0 0 0 2px #7160790f}.booking-pet-select{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.pet-checkbox{cursor:pointer;align-items:flex-start;gap:10px;min-width:0;display:flex}.pet-checkbox input{accent-color:#716079;flex:none;width:17px;height:17px;margin:2px 0 0}.pet-checkbox>span{min-width:0}.pet-checkbox strong{color:#403747;font-size:15px;display:block}.pet-checkbox small{color:#817784;margin-top:3px;font-size:12px;line-height:1.35;display:block}.pet-current-price{color:#675b6c;flex:none;font-size:13px;font-weight:700}.booking-pet-options{border-top:1px solid #e7e1e9;grid-template-columns:minmax(0,1fr) 145px;gap:12px;margin-top:15px;padding-top:15px;display:grid}.booking-pet-options label,.booking-form-grid label{min-width:0;display:block}.booking-pet-options select,.booking-pet-options input,.booking-form-grid input,.booking-form-grid textarea{color:#403747;background:#fff;border:1px solid #dcd5df;border-radius:7px;outline:none;width:100%}.booking-pet-options select,.booking-pet-options input,.booking-form-grid input{height:41px;padding:0 11px}.booking-form-grid textarea{resize:vertical;min-height:86px;padding:10px 11px;line-height:1.45}.booking-pet-options select:focus,.booking-pet-options input:focus,.booking-form-grid input:focus,.booking-form-grid textarea:focus{border-color:#8f7c99;box-shadow:0 0 0 3px #71607914}.price-input-wrap{background:#fff;border:1px solid #dcd5df;border-radius:7px;align-items:center;height:41px;display:flex;overflow:hidden}.price-input-wrap:focus-within{border-color:#8f7c99;box-shadow:0 0 0 3px #71607914}.price-input-wrap>span{color:#817784;padding-left:11px;font-size:13px}.price-input-wrap input{border:0;height:39px;box-shadow:none!important}.booking-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.booking-field-wide{grid-column:1/-1}.booking-summary-card{padding:22px;position:sticky;top:98px}.booking-summary-card>.page-eyebrow{margin-bottom:4px}.booking-summary-card>h3{border-bottom:1px solid #ebe6ed;margin-bottom:4px;padding-bottom:18px}.booking-summary-row{color:#817784;border-bottom:1px solid #f0ecf1;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;font-size:12px;display:flex}.booking-summary-row strong{color:#403747;text-align:right;font-size:12px}.booking-summary-pets{padding:8px 0}.booking-summary-pets>div{grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:9px 0;display:grid}.booking-summary-pets span{color:#403747;font-size:13px;font-weight:700}.booking-summary-pets small{color:#958a99;grid-column:1;font-size:11px}.booking-summary-pets strong{color:#5c5062;grid-area:1/2/span 2;align-self:center;font-size:12px}.booking-total{color:#403747;border-top:1px solid #ddd6e0;justify-content:space-between;align-items:center;gap:15px;margin-top:5px;padding:16px 0;font-size:13px;font-weight:700;display:flex}.booking-total strong{color:#5f4e68;font-size:18px}.booking-save-button{width:100%;margin-top:5px}.booking-save-note{color:#9a909d;text-align:center;margin:10px 0 0;font-size:10px;line-height:1.45}@media (width<=1100px){.sidebar{width:220px}.main-area{width:calc(100% - 220px);margin-left:220px}.page-content{padding:25px}.topbar{padding:0 25px}.booking-layout{grid-template-columns:minmax(0,1fr) 280px}.booking-pet-list{grid-template-columns:1fr}}@media (width<=900px){.client-profile-grid,.booking-layout{grid-template-columns:1fr}.profile-card-wide{grid-column:auto}.detail-grid,.pet-detail-grid,.booking-form-grid,.booking-pet-list,.pet-card-grid{grid-template-columns:1fr}.booking-field-wide{grid-column:auto}.booking-summary-card{position:static}.booking-client-card{flex-direction:column;align-items:flex-start}.booking-client-summary{width:100%}.client-search-row{flex-direction:column;align-items:stretch}.client-search-box{max-width:none}}.booking-complete-card{text-align:center;background:#fff;border:1px solid #e3dde5;border-radius:14px;width:100%;max-width:720px;margin:35px auto 0;padding:42px 48px;box-shadow:0 8px 28px #3029360d}.booking-complete-icon{color:#56725e;background:#edf5ef;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 18px;font-size:26px;font-weight:700;display:flex}.booking-complete-card>.page-eyebrow{margin-bottom:8px}.booking-complete-card h1{color:#211d26;letter-spacing:-.7px;margin:0;font-size:34px;line-height:1.15}.booking-complete-client{color:#403747;margin:14px 0 3px;font-size:19px;font-weight:700}.booking-complete-date{color:#817784;margin-bottom:28px;font-size:14px}.booking-complete-details{text-align:left;background:#faf9fb;border:1px solid #e8e2ea;border-radius:10px;margin-top:8px;overflow:hidden}.booking-complete-pet{border-bottom:1px solid #ebe6ed;justify-content:space-between;align-items:center;gap:24px;padding:17px 20px;display:flex}.booking-complete-pet:last-child{border-bottom:0}.booking-complete-pet-info{flex-direction:column;min-width:0;display:flex}.booking-complete-pet-info strong{color:#403747;font-size:15px}.booking-complete-pet-info span{color:#817784;margin-top:3px;font-size:13px}.booking-complete-pet-info small{color:#968b99;margin-top:6px;font-size:11px}.booking-complete-price{color:#5f4e68;flex:none;font-size:15px}.booking-complete-total{color:#403747;border-top:1px solid #ddd6e0;justify-content:space-between;align-items:center;gap:20px;margin-top:14px;padding:19px 20px;font-size:14px;font-weight:700;display:flex}.booking-complete-total strong{color:#5f4e68;font-size:21px}.booking-complete-reference{color:#8f8592;margin-top:8px;font-size:11px}.booking-complete-actions{justify-content:center;gap:12px;margin-top:28px;display:flex}.booking-complete-actions .primary-button,.booking-complete-actions .secondary-button{min-width:185px}@media (width<=700px){.booking-complete-card{margin-top:15px;padding:30px 22px}.booking-complete-card h1{font-size:28px}.booking-complete-actions{flex-direction:column}.booking-complete-actions .primary-button,.booking-complete-actions .secondary-button{width:100%}}.schedule-page{width:100%;max-width:1500px;margin:0 auto}.schedule-page-header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:24px;display:flex}.schedule-page-header h1{color:#302936;margin:5px 0;font-size:32px}.schedule-page-header p{color:#766f7b;margin:0}.schedule-date-control{min-width:220px}.schedule-date-control label{color:#766f7b;text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.schedule-date-control input{color:#302936;width:100%;font:inherit;background:#fff;border:1px solid #dcd5de;border-radius:8px;padding:11px 13px}.schedule-date-banner{background:#fff;border:1px solid #e3dde5;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding:18px 20px;display:flex}.schedule-date-banner div{flex-direction:column;gap:3px;display:flex}.schedule-date-banner span{color:#817984;text-transform:uppercase;letter-spacing:.05em;font-size:12px}.schedule-date-banner strong{color:#302936;font-size:17px}.schedule-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:26px;display:grid}.schedule-summary-card{background:#fff;border:1px solid #e3dde5;border-radius:10px;padding:18px 20px}.schedule-summary-card span{color:#817984;text-transform:uppercase;letter-spacing:.05em;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.schedule-summary-card strong{color:#302936;font-size:23px}.schedule-section{background:#fff;border:1px solid #e3dde5;border-radius:12px;margin-bottom:28px;overflow:hidden}.schedule-section.cancellations{border-style:dashed}.schedule-section-heading{background:#f8f5f8;border-bottom:1px solid #e7e1e8;justify-content:space-between;align-items:center;gap:20px;padding:17px 20px;display:flex}.schedule-section-heading h2{color:#302936;margin:2px 0 0;font-size:20px}.schedule-section-eyebrow{color:#918893;letter-spacing:.09em;font-size:10px;font-weight:800}.schedule-count{color:#514858;background:#fff;border:1px solid #ddd5df;border-radius:18px;justify-content:center;align-items:center;min-width:34px;height:34px;padding:0 10px;font-weight:800;display:flex}.schedule-van-totals{color:#776f7a;align-items:center;gap:16px;font-size:13px;display:flex}.schedule-van-totals strong{color:#302936;font-size:15px}.schedule-card-list{flex-direction:column;display:flex}.schedule-client-card{border-bottom:1px solid #eee9ef;grid-template-columns:minmax(0,1fr) 150px;gap:20px;padding:20px;display:grid}.schedule-client-card:last-child{border-bottom:0}.schedule-card-main{min-width:0}.schedule-client-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;display:flex}.schedule-client-heading>div:first-child{flex-direction:column;gap:3px;display:flex}.schedule-client-heading strong{color:#302936;font-size:17px}.schedule-client-heading span{color:#817984;font-size:13px}.schedule-price{color:#302936;flex-shrink:0;font-size:17px;font-weight:800}.schedule-client-details{grid-template-columns:150px minmax(180px,1.4fr) minmax(180px,1fr) 90px;gap:16px;display:grid}.schedule-client-details>div{flex-direction:column;gap:4px;min-width:0;display:flex}.schedule-detail-label{color:#918893;text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:800}.schedule-client-details>div>span:last-child{color:#4d4651;overflow-wrap:anywhere;font-size:13px}.schedule-notes{color:#5f5663;background:#faf8fa;border-radius:7px;margin-top:15px;padding:12px 14px;font-size:13px;line-height:1.5}.schedule-notes>div+div{margin-top:4px}.schedule-card-status{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.schedule-status,.schedule-generator,.schedule-timing{letter-spacing:.05em;border-radius:6px;justify-content:center;align-items:center;padding:6px 9px;font-size:10px;font-weight:800;display:inline-flex}.schedule-status.unallocated{color:#8b5a00;background:#fff3dc}.schedule-status.allocated{color:#35704a;background:#e9f5ed}.schedule-generator,.schedule-timing{color:#645b68;background:#f2eef3}.schedule-empty-state{text-align:center;color:#817984;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:150px;padding:30px;display:flex}.schedule-empty-state.compact{min-height:100px}.schedule-empty-state.main-empty{background:#fff;border:1px solid #e3dde5;border-radius:12px;margin-top:20px}.schedule-empty-state strong{color:#4b434f}.schedule-empty-state span{font-size:13px}.schedule-error{margin-bottom:18px}@media (width<=1100px){.schedule-summary-grid,.schedule-client-details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=750px){.schedule-page-header,.schedule-date-banner,.schedule-section-heading{flex-direction:column;align-items:stretch}.schedule-summary-grid,.schedule-client-card{grid-template-columns:1fr}.schedule-card-status{flex-flow:wrap;align-items:flex-start}.schedule-client-details{grid-template-columns:1fr}.schedule-van-totals{flex-wrap:wrap}}.schedule-allocation-panel{background:#f8f5f8;border:1px solid #e7e1e8;border-radius:9px;justify-content:space-between;align-items:flex-end;gap:18px;margin-top:18px;padding:15px;display:flex}.schedule-allocation-fields{flex:1;grid-template-columns:minmax(190px,1fr) minmax(220px,1fr);gap:14px;display:grid}.schedule-allocation-fields label{flex-direction:column;gap:6px;display:flex}.schedule-allocation-fields label>span{color:#918893;text-transform:uppercase;letter-spacing:.07em;font-size:10px;font-weight:800}.schedule-allocation-fields select{color:#302936;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #dcd5de;border-radius:7px;padding:9px 11px}.schedule-allocation-fields select:focus{border-color:#8f8194;outline:none}.schedule-save-allocation{flex-shrink:0;min-width:135px;min-height:42px}.schedule-unallocate-button{color:#746b78;cursor:pointer;background:0 0;border:1px solid #d8d0da;border-radius:6px;margin-top:5px;padding:6px 9px;font-size:11px;font-weight:700}.schedule-unallocate-button:hover{background:#f5f1f6}.schedule-unallocate-button:disabled{opacity:.5;cursor:default}.schedule-group-van{color:#776f7a;margin-top:4px;font-size:12px}@media (width<=900px){.schedule-allocation-panel{flex-direction:column;align-items:stretch}.schedule-allocation-fields{grid-template-columns:1fr}.schedule-save-allocation{width:100%}}.soapy-modal-backdrop{z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1f1b237a;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.soapy-modal{text-align:center;background:#fff;border:1px solid #ded7e2;border-radius:18px;width:min(440px,100%);padding:38px 38px 32px;box-shadow:0 24px 70px #1f1b2338}.soapy-modal-icon{color:#62806a;background:#edf5ee;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;font-size:32px;font-weight:700;display:flex}.soapy-modal h2{margin:8px 0 12px;font-size:30px}.soapy-modal-client{margin:0 0 22px;font-size:19px;font-weight:700}.soapy-modal-detail{color:#6f6874;margin:8px 0}.soapy-modal-detail strong{color:#332d38}.soapy-modal-button{width:100%;margin-top:28px}
