@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.8e0177b5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.b97b3418.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.853070df.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
:root{--bg:#f6f3ff;--surface:#fff;--border:#e5e7eb;--text:#0f172a;--muted:#6b7280;--accent:#ff6f61;--accent-strong:#0f172a;--success:#16a34a;--danger:#dc2626;--shadow:0 10px 40px #0f172a14;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{color:var(--text);font-family:var(--font-geist-sans),"Segoe UI",system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 20% 20%,#fff4ec 0,#f6f3ff 35%,#eef2ff 100%);min-height:100vh;margin:0}a{color:inherit;text-decoration:none}button{font-family:inherit}.shell{flex-direction:column;gap:20px;width:100%;max-width:none;margin:0;padding:24px;display:flex}.auth-shell{max-width:640px}.form-stack{flex-direction:column;gap:12px;display:flex}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:20px}.auth-card{border-radius:20px;flex-direction:column;gap:20px;padding:28px;display:flex}.auth-hero{flex-direction:column;gap:8px;display:flex}.auth-title{letter-spacing:-.02em;font-size:28px;font-weight:700}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-form .field{gap:8px}.password-field{align-items:center;display:flex;position:relative}.password-field input{padding-right:108px}.password-toggle{border:1px solid var(--border);color:var(--accent-strong);cursor:pointer;box-shadow:none;background:#fff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.password-toggle:hover,.password-field .password-toggle:hover{box-shadow:none;background:#0f172a0a;transform:translateY(-50%)}.password-toggle:focus-visible{outline-offset:2px;outline:2px solid #ff6f6180}.auth-card button[type=submit]{align-self:flex-start;margin-top:6px}.top-bar,.form-card,.calendar-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 14px 32px #0f172a14}.top-bar{background:linear-gradient(180deg,#0f172a09,transparent),var(--surface);padding:14px 16px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.topbar-left,.topbar-center,.topbar-right{align-items:center;gap:10px;min-width:0;display:flex}.topbar-left{flex-wrap:wrap;flex:420px;justify-content:flex-start}.topbar-center{flex:none;justify-content:center}.topbar-right{flex-wrap:wrap;flex:420px;justify-content:flex-end}.topbar-segmented{border:1px solid var(--border);background:#f8fafc;border-radius:999px;align-items:center;gap:2px;padding:2px;display:inline-flex}.topbar-segmented button{min-height:40px;color:var(--text);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-weight:700;display:inline-flex}.topbar-view-toggle button{color:var(--muted)}.topbar-segmented button:hover{background:#0f172a0a}.topbar-segmented button.active{color:var(--text);background:#fff;border-color:#0f172a14;box-shadow:0 10px 22px #0f172a1a}.topbar-date-field{background:linear-gradient(135deg,#ff6f6124,#ff977c14);border:1px solid #ff6f6138;border-radius:999px;flex-direction:row;align-items:center;gap:8px;min-width:0;padding:6px 10px;display:inline-flex;box-shadow:0 10px 22px #0f172a14}.topbar-date-label{color:#0f172a99;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:700}.topbar-date-input{font-variant-numeric:tabular-nums;width:152px;min-height:30px;color:var(--text);background:#ffffffe6;border:1px solid #0f172a1a;border-radius:999px;padding:4px 34px 4px 10px;font-size:14px;font-weight:700}.topbar-date-field:focus-within{background:linear-gradient(135deg,#ff6f6133,#ff977c1f);border-color:#ff6f6199;box-shadow:0 0 0 3px #ff6f6133,0 10px 22px #0f172a14}.topbar-date-input:focus{box-shadow:none;outline:none}.topbar-date-input::-webkit-calendar-picker-indicator{opacity:.7;cursor:pointer}.topbar-btn{white-space:nowrap;border-radius:12px;align-items:center;gap:8px;min-height:40px;padding:8px 12px;display:inline-flex}.topbar-icon{flex:none;width:16px;height:16px}.topbar button:focus-visible{outline-offset:2px;outline:2px solid #ff6f6180}.date-controls{gap:8px;display:flex}.user-info{align-items:center;gap:10px;display:flex}.layout{grid-template-columns:1fr;align-items:start;gap:16px;width:100%;min-width:0;display:grid}.calendar-scroll-shell{width:100%;min-width:0;max-width:100%;overflow-x:auto}.calendar-scroll-inner{flex-direction:column;gap:20px;width:100%;min-width:0;display:flex}.user-chip{border-radius:12px;min-width:0}.user-chip.active{border-color:#ff6f6166;box-shadow:0 0 0 3px #ff6f611f}.topbar-user-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:180px;overflow:hidden}.topbar-compact-label{display:inline}.account-menu-wrapper{display:inline-flex;position:relative}.account-menu{background:var(--surface);border:1px solid var(--border);z-index:50;border-radius:14px;flex-direction:column;gap:12px;width:min(260px,100vw - 32px);padding:12px;display:flex;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 40px #0f172a1f}.account-menu-header{flex-direction:column;gap:6px;display:flex}.account-menu-brand{border:1px solid var(--border);box-shadow:none;background:#f8fafc;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;display:inline-flex}.account-menu-logo{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;font-weight:800;display:inline-flex}.account-menu-brand-title{font-size:13px;font-weight:700}.account-menu-name{font-weight:800}.account-menu-role{color:var(--muted);font-size:13px}.stats-shell{max-width:1220px;margin:0 auto;padding-top:0;overflow:hidden auto}.stats-shell-card{flex-direction:column;gap:18px;display:flex}.stats-header-shell{z-index:7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--border);background:#fffffffa;border-radius:12px;padding:14px;position:sticky;top:0;box-shadow:0 8px 26px #0f172a14}.stats-header-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.stats-title-wrap h3{margin:0}.stats-title-wrap p{margin:8px 0 0}.stats-top-actions{align-items:center;gap:8px;display:inline-flex}.stats-top-actions .secondary{border-radius:9px;padding:7px 10px;font-size:13px;font-weight:700;line-height:1}.stats-tabs-row{justify-content:space-between;align-items:center;gap:10px;margin-top:10px;display:flex}.stats-tabs{flex:auto;gap:6px;min-width:0;padding-bottom:4px;display:flex;overflow-x:auto}.stats-tab-link{border:1px solid var(--border);color:var(--text);white-space:nowrap;background:#f8fafc;border-radius:9px;padding:7px 10px;font-size:13px;font-weight:700}.stats-tab-link.active{background:#ff6f6124;border-color:#ff6f6170}.stats-tabs-quality{flex:none;justify-content:flex-end;align-items:center;gap:8px;display:flex}.stats-tab-toggle{border:1px solid var(--border);min-height:34px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:#f8fafc;border-radius:9px;justify-content:center;align-items:center;padding:6px 10px;font-size:13px;font-weight:700;transition:border-color .15s,background-color .15s,color .15s,box-shadow .15s;display:inline-flex;position:relative}.stats-tab-toggle:hover{background:#fff;border-color:#64748b73}.stats-tab-toggle.active{color:#8f2f26;background:#ff6f611a;border-color:#ff6f6173;box-shadow:inset 0 0 0 1px #ff6f611a}.stats-tab-toggle:focus-within{outline-offset:2px;outline:2px solid #ff6f6159}.stats-tab-toggle input[type=checkbox]{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.stats-filter-bar{gap:10px;margin-top:10px;display:grid}.stats-filter-fields{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:10px;display:grid}.stats-filter-fields .field{min-width:0;margin:0}.stats-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:10px;display:grid}.stats-kpi-card{border:1px solid var(--border);background:linear-gradient(#fff,#fafaff);border-radius:12px;flex-direction:column;gap:4px;height:100%;min-height:104px;padding:12px 14px;display:flex}.stats-kpi-label{color:var(--muted);font-size:13px;line-height:1.2}.stats-kpi-value{letter-spacing:-.02em;font-size:22px;font-weight:800;line-height:1.15}.stats-kpi-hint{color:var(--muted);font-size:12px}.stats-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.stats-chart-grid.single{grid-template-columns:1fr}.stats-chart-card{border:1px solid var(--border);background:#fff;border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.stats-chart-head h4{margin:0}.stats-chart-head-meta{color:var(--muted);flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.stats-legend-badge{border:1px solid var(--border);border-radius:999px;align-items:center;padding:2px 8px;font-weight:600;display:inline-flex}.stats-legend-badge.cancelled{color:#b4233a;background:#f43f5e1a}.stats-legend-badge.no-show{color:#9a6400;background:#f59e0b1f}.stats-vbar-layout{grid-template-columns:58px minmax(0,1fr);gap:10px;display:grid}.stats-vbar-y-axis{color:var(--muted);text-align:right;grid-template-rows:repeat(4,1fr);align-items:center;padding:4px 0 20px;font-size:11px;display:grid}.stats-vbar-scroll{padding-bottom:4px;overflow-x:auto}.stats-vbar-plot{min-width:480px;position:relative}.stats-vbar-grid{pointer-events:none;position:absolute;inset:0 0 20px}.stats-vbar-grid-line{border-top:1px dashed #0f172a1f;position:absolute;left:0;right:0}.stats-vbar-series{align-items:flex-end;gap:6px;min-height:220px;padding-top:4px;display:flex}.stats-vbar-item{min-width:24px;box-shadow:none;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;padding:0;display:flex}.stats-vbar-track{background:#f1f5f9;border-radius:8px;width:12px;height:180px;position:relative;overflow:hidden}.stats-vbar-fill{border-radius:8px 8px 0 0;min-height:0;position:absolute;bottom:0;left:0;right:0}.stats-vbar-fill-revenue{background:linear-gradient(#ff977c,#ff6f61)}.stats-vbar-fill-cancelled{background:#f43f5ed1}.stats-vbar-fill-no-show{background:#f59e0bd1}.stats-vbar-double{gap:3px;display:flex}.stats-vbar-label{color:#475569;font-size:10px;line-height:1}.stats-vbar-label.ghost{opacity:0}.stats-bar-item{border:1px solid var(--border);min-height:138px;box-shadow:none;background:#f8fafc;border-radius:10px;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;padding:8px 4px;display:flex}.stats-bar-fill{border-radius:8px;width:22px;display:inline-block}.stats-bar-fill-revenue{background:linear-gradient(#ff977c,#ff6f61)}.stats-bar-label{color:var(--muted);writing-mode:vertical-rl;white-space:nowrap;font-size:10px;transform:rotate(180deg)}.stats-stacked-bar{border:1px solid #0f172a14;border-radius:8px;flex-direction:column;justify-content:flex-end;width:22px;display:flex;overflow:hidden}.stats-stacked-bar-cancelled{background:#f43f5ec7;width:100%}.stats-stacked-bar-no-show{background:#f59e0bb8;width:100%}.stats-heatmap-grid{grid-template-columns:repeat(24,minmax(10px,1fr));gap:3px;display:grid}.stats-heatmap-layout{flex-direction:column;gap:3px;display:flex}.stats-heatmap-time-row{grid-template-columns:20px minmax(0,1fr);align-items:center;gap:6px;margin-bottom:2px;display:grid}.stats-heatmap-time-spacer{width:20px}.stats-heatmap-time-grid{grid-template-columns:repeat(24,minmax(10px,1fr));gap:3px;display:grid}.stats-heatmap-time-label{color:var(--muted);opacity:.7;text-align:center;font-size:9px;line-height:1}.stats-heatmap-row{grid-template-columns:20px minmax(0,1fr);align-items:center;gap:6px;display:grid}.stats-heatmap-day-label{color:var(--muted);text-align:right;opacity:.8;font-size:10px}.stats-heatmap-cell{aspect-ratio:1;border-radius:3px}.stats-heatmap-legend{color:var(--muted);justify-content:space-between;font-size:12px;display:flex}.stats-service-list{flex-direction:column;gap:8px;display:flex}.stats-service-row{border:1px solid var(--border);box-shadow:none;text-align:left;background:#f8fafc;border-radius:10px;grid-template-columns:minmax(120px,1fr) minmax(140px,2fr) auto;align-items:center;gap:8px;padding:7px 10px;display:grid}.stats-service-label{font-size:13px;font-weight:700}.stats-service-bar-wrap{background:#e5e7eb;border-radius:999px;width:100%;height:10px}.stats-service-bar{background:linear-gradient(90deg,#ff977c,#ff6f61);border-radius:999px;height:100%;display:block}.stats-service-value{color:var(--muted);font-size:12px}.stats-drawer-backdrop{z-index:9700;background:#0f172a6b;justify-content:flex-end;display:flex;position:fixed;inset:0}.stats-drawer{background:var(--surface);border-left:1px solid var(--border);flex-direction:column;gap:10px;width:min(420px,100%);height:100%;padding:14px;display:flex}.stats-drawer-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.stats-drawer-header h4{margin:0}.stats-drawer-list{flex-direction:column;gap:8px;display:flex;overflow-y:auto}.stats-drawer-row{border:1px solid var(--border);border-radius:10px;justify-content:space-between;gap:10px;padding:10px;display:flex}.stats-info-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.stats-info-card{border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.stats-info-card h4{margin:0}.stats-table-card{border:1px solid var(--border);border-radius:12px;overflow:auto}.stats-table{border-collapse:collapse;width:100%;min-width:760px}.stats-table th,.stats-table td{border-bottom:1px solid var(--border);text-align:left;padding:8px 10px;font-size:13px}.stats-table th{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);background:#f8fafc;font-size:12px}.stats-export-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.floating-toast{z-index:9600;flex-direction:column;gap:10px;max-width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.toast{border:1px solid var(--border);background:#fff;border-radius:14px;padding:12px 14px;font-size:14px;line-height:1.35;box-shadow:0 18px 40px #0f172a1f}.toast-error{color:#991b1b;background:#fef2f2fa;border-color:#dc26264d}.toast-success{color:#065f46;background:#ecfdf5fa;border-color:#16a34a47}.inspector-backdrop{z-index:9500;background:#0f172a73;justify-content:flex-end;align-items:stretch;padding:16px;display:flex;position:fixed;inset:0}.inspector-backdrop.sheet{justify-content:center;align-items:flex-end;padding:14px}.inspector-panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;width:min(760px,94vw);height:100%;display:flex;overflow:hidden;box-shadow:0 22px 55px #0f172a2e}.inspector-panel.sheet{border-bottom-right-radius:0;border-bottom-left-radius:0;width:min(720px,100%);height:min(78vh,740px)}.inspector-header{border-bottom:1px solid var(--border);background:linear-gradient(#0f172a08,#0000);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.inspector-title{font-weight:700}.inspector-body{padding:16px;overflow:hidden auto}.inspector-body .form-card{box-shadow:none}.inspector-section.form-card{gap:0;padding:0;overflow:hidden}.inspector-summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:14px 16px;font-weight:700;list-style:none;display:flex}.inspector-summary::-webkit-details-marker{display:none}.inspector-summary:after,.admin-summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform-origin:50%;width:10px;height:10px;transition:transform .14s;display:inline-block;transform:rotate(45deg)}.inspector-section[open]>.inspector-summary:after,.admin-section[open]>.admin-summary:after{transform:rotate(225deg)}.inspector-section>:not(summary){padding:0 16px 16px}.inspector-section>form{padding-top:0}.form-card{font-family:var(--font-geist-sans),"Segoe UI",system-ui,-apple-system,sans-serif;flex-direction:column;gap:14px;padding:16px;display:flex}.form-card *{font-family:inherit}.form-card h3{margin:0 0 8px}.form-error{color:var(--danger);font-size:13px}.field-hint{color:var(--muted);font-size:12px}.dropdown{border:1px solid var(--border);background:#fff;border-radius:10px;max-height:220px;margin-top:6px;position:relative;overflow:hidden auto;box-shadow:0 12px 30px #0f172a1f}.dropdown-item{text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:2px;width:100%;padding:10px 12px;display:flex}.dropdown-item:hover{background:#f8fafc}.dropdown-title{font-weight:700}.dropdown-sub{color:var(--muted);font-size:12px}.calendar-card{flex-direction:column;gap:12px;width:100%;min-width:0;padding:16px;display:flex;overflow:visible hidden}.calendar-card-week{gap:0}.calendar-card-week>.section-header{margin-bottom:10px}.calendar-scroll-shell.is-week{overflow-x:hidden}.calendar-scroll-shell.is-week .calendar-scroll-inner,.calendar-scroll-shell.is-week .layout,.calendar-wrapper.is-week,.calendar-wrapper.is-week .calendar-card-week,.calendar-wrapper.is-week .week-view,.calendar-wrapper.is-week .week-scroll,.calendar-wrapper.is-week .week-table{width:100%;min-width:0}.calendar-scroll{width:100%;min-width:0;overflow-x:auto}.calendar-scroll.day-view-scroll{isolation:isolate;flex-direction:column;min-height:0;display:flex;overflow:auto}.calendar-wrapper.fullscreen{z-index:9000;background:#0f172a99;padding:16px;position:fixed;inset:0;overflow:auto}.calendar-wrapper.fullscreen .calendar-card{width:100%;max-width:none}.fullscreen-bar{color:#fff;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.section-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.calendar-date{font-variant-numeric:tabular-nums;white-space:nowrap;background:linear-gradient(135deg,#ff6f6129,#ff977c1a);border:1px solid #ff6f6138;border-radius:999px;align-items:center;padding:6px 12px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 10px 22px #0f172a1a}.calendar-date.is-holiday{color:#7f1d1d;background:linear-gradient(135deg,#fee2e2f2,#fecdd3bf);border-color:#ef44444d}.calendar-date-row{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.calendar-header{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.calendar-search-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.filter-toggle{cursor:pointer;color:var(--text);background:#fff;border:1px solid #0f172a1f;border-radius:12px;align-items:center;gap:8px;padding:8px 12px;font-weight:700;display:inline-flex;box-shadow:0 6px 16px #0f172a14}.filter-toggle.active{border-color:#3b82f652;box-shadow:0 10px 24px #3b82f62e}.filter-count{color:#1d4ed8;background:#3b82f624;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}.search-panel{flex-direction:column;gap:12px;display:flex}.search-panel-card{flex-direction:column;gap:8px;display:flex}.search-panel-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.calendar-search-field{border:1px solid var(--border);background:#fff;border-radius:10px;flex:320px;align-items:center;gap:8px;min-width:240px;max-width:480px;padding:6px 8px;display:inline-flex;box-shadow:0 2px 6px #0f172a0a}.calendar-search-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #ff6f6126}.calendar-search-icon{opacity:.65;width:18px;height:18px}.calendar-search-input{border:1px solid var(--border);color:var(--text);background:#fafbff;border-radius:8px;flex:1;min-width:0;padding:9px 12px;font-size:14px}.calendar-search-input:focus{border-color:var(--border);box-shadow:none;outline:none}.calendar-search-clear{color:var(--text);cursor:pointer;background:#0f172a14;border:none;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:18px;line-height:1;display:inline-flex}.calendar-search-clear:hover{background:#0f172a26}.calendar-search-status{color:var(--muted);white-space:nowrap;flex:none;font-size:13px}.calendar-search-form{width:100%;margin:0}.calendar-search-results{background:var(--surface);border:1px solid var(--border);border-radius:16px;min-height:240px;margin-bottom:20px;padding:16px;box-shadow:0 10px 30px #0f172a14}.calendar-search-results-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.calendar-search-results-title{margin-bottom:2px;font-weight:700}.calendar-search-results-count{color:var(--muted);font-size:13px}.calendar-search-results-summary{color:var(--muted);white-space:pre-line;margin-top:2px;font-size:12px}.calendar-search-results-close{border-radius:12px;padding:6px 12px}.calendar-search-results-list{flex-direction:column;gap:10px;max-height:none;margin-top:12px;display:flex;overflow:visible}.calendar-search-results-loading,.calendar-search-results-error{color:var(--muted);padding:10px 12px;font-size:13px}.calendar-search-results-error{color:var(--danger)}.calendar-search-result{text-align:left;background:linear-gradient(#f8fafc,#eef2ff);border:1px solid #0f172a0f;border-radius:14px;flex-direction:column;align-items:flex-start;width:100%;padding:12px 14px;display:flex}.calendar-search-result:hover{border-color:#0f172a33}.calendar-search-result-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;width:100%;font-size:13px;display:flex}.calendar-search-result-row .badge{padding:4px 8px;font-size:11px}.calendar-search-result-date{color:var(--text);font-weight:600}.calendar-search-result-employee{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.calendar-search-result-status{text-transform:uppercase;letter-spacing:.08em;font-size:11px}.calendar-search-result-body{flex-direction:column;align-items:flex-start;gap:4px;margin-top:6px;display:flex}.calendar-search-result-title{color:var(--text);font-weight:700}.calendar-search-result-sub{color:var(--muted);font-size:13px}.calendar-search-result-notes{color:#0f172ab3;font-size:12px}.calendar-search-results-empty{color:var(--muted);font-style:italic}.badge-kind{color:var(--text);background:#0f172a14}.badge-kind-appointment{color:#0f5132;background:#10b9812e}.badge-kind-assistant{color:#1d4ed8;background:#3b82f62e}.badge-kind-block{color:#be185d;background:#f472b62e}.search-filter-panel{background:0 0;border:none;border-radius:0;margin:8px 0;padding:0}.search-filter-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.search-filter-title{font-weight:700}.search-filter-sub{color:var(--muted);font-size:12px}.search-filter-actions{gap:8px;display:flex}.search-filter-grid{flex-direction:column;gap:12px;margin-top:12px;display:flex}.search-filter-group{flex-direction:column;gap:8px;display:flex}.search-filter-label{font-size:13px;font-weight:700}.filter-list{flex-direction:column;gap:8px;padding:8px 0 10px;display:flex}.filter-row{text-align:left;background:#f8fafc;border:1px solid #0f172a14;border-radius:12px;flex-direction:row;justify-content:flex-start;align-items:center;gap:12px;padding:10px 12px;font-weight:600;display:flex}.filter-row span{text-align:left;flex:auto}.filter-row input[type=checkbox]{accent-color:#1d4ed8;flex:none;width:18px;height:18px;margin-left:auto}.filter-section{background:#f8fafc;border:1px solid #0f172a14;border-radius:12px;padding:0 10px;transition:border-color .12s,box-shadow .12s}.filter-section summary{cursor:pointer;justify-content:space-between;align-items:center;gap:8px;margin:0 -10px;padding:12px 6px;font-weight:700;list-style:none;display:flex}.filter-section summary::-webkit-details-marker{display:none}.filter-section summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);flex:none;width:10px;height:10px;transition:transform .16s;transform:rotate(45deg)}.filter-section[open]{border-color:#3b82f63d;box-shadow:0 4px 12px #0f172a0d}.filter-section[open] summary:after{transform:rotate(225deg)}.search-filter-options{flex-wrap:wrap;gap:8px;display:flex}.search-filter-options.options-compact{gap:6px}.filter-chip{cursor:pointer;background:#fff;border:1px solid #0f172a24;border-radius:12px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;display:inline-flex}.filter-chip.active{border-color:#3b82f666;box-shadow:0 6px 18px #3b82f61f}.filter-chip input{accent-color:#1d4ed8}.calendar-employee-select{appearance:none;width:220px;max-width:100%;color:var(--text);white-space:nowrap;text-overflow:ellipsis;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 8l5 5 5-5' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px;border:1px solid #0f172a1f;border-radius:999px;flex:none;min-height:32px;padding:6px 34px 6px 12px;font-size:14px;font-weight:600;line-height:1.2;overflow:hidden;box-shadow:0 10px 22px #0f172a14}.calendar-employee-select:hover{border-color:#0f172a33}.calendar-employee-select:focus{border-color:#0f172a59;outline:none;box-shadow:0 0 0 3px #0f172a1f,0 10px 22px #0f172a14}.calendar-card-agenda .calendar-employee-select:focus,.calendar-card-agenda .calendar-employee-select:focus-visible,.calendar-card-agenda .calendar-employee-select:active{box-shadow:none;outline:none}.agenda-free-toggle{background-image:none;flex:none;align-items:center;gap:8px;width:fit-content;min-width:0;padding:6px 12px;display:inline-flex}.agenda-free-toggle:hover{border-color:#0f172a33;transform:none;box-shadow:0 10px 22px #0f172a14}.agenda-free-toggle:focus-visible{box-shadow:none;border-color:#0f172a59;outline:none}.agenda-free-toggle:focus{box-shadow:none;outline:none}.agenda-free-toggle:active{box-shadow:none}.calendar-badges{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{flex-direction:column;gap:8px;font-size:14px;display:flex}label{color:var(--text);flex-direction:column;gap:6px;font-size:14px;font-weight:600;display:flex}.field-wide{grid-column:span 2}input,select,textarea{border:1px solid var(--border);width:100%;color:var(--text);background:#fafbff;border-radius:10px;outline:none;padding:10px 12px;font-size:14px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ff6f6126}button{cursor:pointer;border:none;border-radius:10px;padding:10px 14px;font-weight:600;transition:transform .14s,box-shadow .14s,border-color .14s}button:disabled{opacity:.7;cursor:not-allowed}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 22px #0f172a1f}.primary{background:linear-gradient(135deg,var(--accent),#ff977c);color:#fff}.success{background:linear-gradient(135deg,var(--success),#4ade80);color:#fff}.secondary{color:var(--text);border:1px solid var(--border);background:#f3f4f6}.link-button{color:var(--accent-strong);background:0 0;padding:0}.danger{color:var(--danger)}.small{font-size:12px}.bold{font-weight:600}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0;font-size:12px}.muted{color:var(--muted)}.alert{border-radius:12px;padding:10px 12px;font-size:14px}.alert.error{color:#991b1b;background:#dc262614;border:1px solid #dc262633}.alert.success{color:#166534;background:#16a34a14;border:1px solid #16a34a33}.inline-toast{border:1px solid #0000;border-radius:12px;margin-top:16px;padding:14px 16px;font-weight:600;box-shadow:0 0 18px #0000001f}.inline-toast.success{color:#065f46;background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#a7f3d0;box-shadow:0 6px 24px #10b98140}.inline-toast.danger{color:#991b1b;background:linear-gradient(135deg,#fee2e2,#fecdd3);border-color:#fecaca;box-shadow:0 6px 24px #ef444440}.form-actions{justify-content:flex-end;gap:10px;display:flex}.form-actions-wide{grid-column:span 2;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;display:grid}.btn-full{justify-content:center;width:100%}.calendar-grid{gap:8px;width:100%;min-width:0;display:grid}.time-column{z-index:18;background:var(--surface);grid-auto-rows:minmax(24px,1fr);padding-top:0;display:grid;position:sticky;left:0}.time-spacer{border-top:none}.time-cell{color:var(--muted);text-align:right;border-top:1px dashed #e5e7eb;align-items:center;padding-right:8px;font-size:12px;display:flex}.employee-column{border-left:1px solid var(--border);box-sizing:border-box;flex-direction:column;min-width:0;padding:0 6px;display:flex;position:relative}.employee-column.day-view-employee-column{overflow:visible}.employee-header{z-index:20;border-bottom:1px solid var(--border);background:linear-gradient(#fff,#ffffffd9);min-height:56px;padding:10px;position:sticky;top:0}.time-header{z-index:19;background:inherit;position:sticky;top:0}.employee-grid{box-sizing:border-box;grid-template-columns:1fr;grid-auto-rows:minmax(24px,1fr);justify-items:stretch;gap:0;display:grid;position:relative}.slot-cell{z-index:1;cursor:pointer;border-top:1px solid #e5e7eb80;padding:0 1px;position:relative}.slot-cell.off-hours{cursor:not-allowed;background:#94a3b824}.calendar-scroll.is-dragging .slot-cell{z-index:4}.slot-drag-highlight{pointer-events:none;z-index:6;background:#ff6f6114;border:2px dashed #ff6f6199;border-radius:8px;position:absolute;left:0;right:0}.slot-cell.drag-over{outline-offset:-2px;background:#ff6f611f;outline:2px dashed #ff6f6180}.slot-cell.drag-over.off-hours{background:#dc262614;outline-color:#dc262673}.calendar-scroll.is-holiday .employee-header{background:linear-gradient(#fee2e2d9,#ffffffd9);border-bottom-color:#ef444433}.calendar-scroll.is-holiday .employee-column{border-left-color:#ef444433}.calendar-scroll.is-holiday .slot-cell.off-hours{background:linear-gradient(135deg,#fee2e26b,#fef2f238);border-top-color:#ef444424}.appointment-card{z-index:3;color:#f8fafc;cursor:pointer;box-sizing:border-box;background:linear-gradient(135deg,#0f172a,#1f2937);border-radius:12px;flex-direction:column;place-self:stretch stretch;gap:6px;width:100%;max-width:100%;margin:0;padding:10px 10px 14px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 24px #0f172a40}.appointment-card-grouped{box-shadow:0 12px 24px #0f172a40,inset 4px 0 0 var(--appt-accent,#94a3b88c)}.appointment-card-draggable{cursor:grab}.appointment-card-dragging{opacity:.7;cursor:grabbing}.appointment-resize-handle{cursor:ns-resize;height:8px;position:absolute;bottom:4px;left:10px;right:10px}.appointment-resize-handle:after{content:"";background:#f8fafcb3;border-radius:999px;height:2px;position:absolute;top:3px;left:0;right:0}.appointment-card-compact .appointment-resize-handle{bottom:3px;left:8px;right:8px}.appointment-card-split{border:1px solid #ffffff1f}.appointment-card-grouped.appointment-card-split{border-color:#ffffff1f}.appointment-card-compact{gap:3px;padding:6px 8px 8px}.appointment-card-compact .appointment-header{align-items:flex-start;gap:4px}.appointment-card-compact .appointment-time{font-size:12px}.appointment-time-range{white-space:nowrap}.appointment-card-tiny .appointment-time{white-space:nowrap;align-items:center;gap:6px;min-width:0;display:flex}.appointment-card-tiny .appointment-time-range,.appointment-card-tiny .appointment-segment{flex:none}.appointment-customer-inline{text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-weight:600;display:inline-block;overflow:hidden}.appointment-customer-inline:before{content:" | ";color:#f8fafc8c}.appointment-customer-inline-name{color:#f8fafc}.appointment-customer-inline-sep{color:#f8fafcc7}.appointment-customer-inline-service{color:#f8fafcc7;font-weight:500}.appointment-card:not(.assist-card) .badge{padding:1px 6px;font-size:10px}.appointment-card-compact .appointment-line{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.appointment-card-compact .assist-list{display:none}.appointment-segment{background:#ffffff2e;border-radius:999px;align-items:center;gap:4px;margin-left:6px;padding:2px 6px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.appointment-card-grouped .appointment-segment{background:var(--appt-accent-soft,#ffffff2e);box-shadow:inset 0 0 0 1px var(--appt-accent,#ffffff59)}.block-card{z-index:2;color:var(--text);cursor:pointer;background:linear-gradient(135deg,#e2e8f0e6,#f1f5f9d9);border:1px solid #94a3b88c;border-radius:12px;flex-direction:column;place-self:stretch stretch;gap:6px;width:100%;margin:0;padding:10px 10px 12px;display:flex;position:relative;box-shadow:0 12px 24px #0f172a1f}.block-card-draggable{cursor:grab}.block-card-dragging{opacity:.7;cursor:grabbing}.block-resize-handle{cursor:ns-resize;height:8px;position:absolute;bottom:4px;left:10px;right:10px}.block-resize-handle:after{content:"";background:#0f172a59;border-radius:999px;height:2px;position:absolute;top:3px;left:0;right:0}.block-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.block-title{font-size:13px;font-weight:800}.block-time{font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.block-notes{color:#0f172ad1;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.block-break{background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-color:#7dd3fc;box-shadow:0 12px 24px #0e749024}.block-vacation{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-color:#c4b5fd;box-shadow:0 12px 24px #5b21b624}.block-sick{background:linear-gradient(135deg,#fee2e2,#fecdd3);border-color:#fecaca;box-shadow:0 12px 24px #b91c1c24}.block-other{background:linear-gradient(135deg,#e5e7eb,#f3f4f6);border-color:#d1d5db;box-shadow:0 12px 24px #0f172a1a}.block-list{flex-direction:column;gap:10px;margin-top:12px;display:flex}.block-list-item{text-align:left;background:#ffffffe0;border:1px solid #e2e8f0f2;border-radius:14px;flex-direction:column;gap:4px;width:100%;padding:10px 12px;display:flex;box-shadow:0 10px 22px #0f172a0f}.block-list-item:hover{border-color:#ff6f6159}.block-list-time{font-variant-numeric:tabular-nums;font-size:12px;font-weight:800}.block-list-title{color:#0f172ac7;white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.agenda-view{flex-direction:column;gap:12px;display:flex}.agenda-controls{gap:10px;display:flex}.agenda-controls select{max-width:380px}.agenda-list{flex-direction:column;gap:10px;display:flex}.agenda-item{text-align:left;background:#ffffffeb;border:1px solid #e2e8f0f2;border-radius:16px;grid-template-columns:96px 1fr auto;align-items:center;gap:12px;width:100%;padding:12px 14px;display:grid;box-shadow:0 12px 24px #0f172a14}.agenda-item-group{border-color:var(--appt-accent-soft,#94a3b859);box-shadow:0 12px 24px #0f172a14,inset 3px 0 0 var(--appt-accent,#94a3b88c);background:linear-gradient(135deg,var(--appt-accent-soft,#94a3b81f),#fffffff5)}.agenda-item:hover{border-color:#ff6f6166}.agenda-time{font-variant-numeric:tabular-nums;color:#0f172aeb;font-size:13px;font-weight:800}.agenda-main{flex-direction:column;gap:4px;min-width:0;display:flex}.agenda-title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:800;overflow:hidden}.agenda-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.agenda-right{justify-content:flex-end;align-items:center;display:flex}.agenda-item-assist{border-style:dashed}.agenda-item-gap{background:#ff6f6114;border-style:dashed}.agenda-item-block{border-style:solid}.modal-backdrop{z-index:9999;background:#0f172a8c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;flex-direction:column;gap:12px;width:min(420px,90vw);padding:20px;display:flex;box-shadow:0 20px 40px #0003}.modal h3{margin:0;font-size:18px}.modal p{color:var(--muted);margin:0}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.stats-unlock-secret-input{-webkit-text-security:disc}.danger-btn{background:linear-gradient(135deg,var(--danger),#f87171);color:#fff}.appointment-actions{justify-content:flex-end;margin-top:0;display:flex}.assistant-card,.assist-card{background:linear-gradient(135deg,#111827,#1f2937);border:1px dashed #fff3;overflow:hidden}.assist-card .appointment-header{justify-content:space-between;gap:6px}.assist-card .assist-time{font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:6px;min-width:0;font-size:12px;font-weight:700;line-height:1.1;display:flex}.assist-card .assist-time-range{flex:none}.assist-card .assist-customer-inline{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:600;overflow:hidden}.assist-card .assist-customer-inline:before{content:" | ";color:#f8fafc8c}.assist-card .assist-customer-inline-name{color:#f8fafc}.assist-card .assist-customer-inline-sep{color:#f8fafcc7}.assist-card .assist-customer-inline-detail{color:#f8fafcc7;font-weight:500}.assist-card .assist-title{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.assist-card .assist-subtitle,.assist-note-inline{color:#f8fafcb8;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.assist-card-compact{gap:2px;padding:6px 8px}.assist-card-compact .assist-time,.assist-card-compact .assist-subtitle,.assist-card-compact .assist-note-inline{font-size:11px}.assist-card-compact .badge{padding:1px 5px;font-size:9px}.assist-card-tiny{justify-content:center;gap:0;padding:4px 6px}.assist-card-tiny .assist-title{display:none}.badge.status-assist{color:#fff;background:#4b5563}.assist-section{background:#f8fafc;border:1px dashed #e5e7eb;border-radius:14px;flex-direction:column;gap:10px;margin-top:10px;padding:14px;display:flex}.assist-list{flex-direction:column;gap:8px;display:flex}.assist-row{grid-template-columns:minmax(120px,1.2fr) minmax(104px,.85fr) minmax(76px,.6fr) minmax(120px,1.3fr) minmax(92px,.7fr);align-items:center;gap:8px;min-width:0;display:grid}.assist-row select,.assist-row input{min-width:0}.assist-row input[type=number]{padding-right:1px}.assist-note{width:100%}.service-catalog{border:1px dashed var(--border);background:#f8fafc;border-radius:14px;flex-direction:column;gap:10px;padding:12px;display:flex}.service-catalog-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.service-quick{flex-wrap:wrap;gap:8px;display:flex}.service-pill{border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.service-pill.active{background:var(--success);border-color:var(--success);color:#fff}.admin-panel{gap:8px;width:100%;min-width:0;max-width:100%;padding:10px}.admin-panel .form-stack{gap:8px;min-width:0}.admin-panel .form-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}.admin-panel label{gap:4px;font-size:13px}.admin-panel input,.admin-panel select,.admin-panel textarea{border-radius:9px;padding:8px 10px;font-size:13px}.admin-panel button{border-radius:9px;padding:8px 12px}.admin-panel .btn-full{min-height:34px}.admin-panel .form-actions,.admin-panel .form-actions-wide{grid-column:1/-1}.admin-block{border:1px solid var(--border);background:#fff;border-radius:12px;padding:0 10px 10px;overflow:hidden}.admin-summary{cursor:pointer;padding:10px 0 8px;list-style:none}.admin-summary::-webkit-details-marker{display:none}.admin-summary h3{margin:0;font-size:1rem;font-weight:700}.admin-section-body{min-width:0;margin-top:6px}.admin-list{flex-direction:column;gap:8px;min-width:0;display:flex}.admin-row{border:1px solid var(--border);background:#f8fafc;border-radius:10px;grid-template-columns:18px 130px 232px 182px;grid-template-areas:"drag name selects actions";align-items:center;gap:8px;min-width:0;padding:8px 10px;display:grid;overflow:hidden}.admin-row.is-drop-target{background:#ff6f6114;border-color:#ff6f6180}.admin-row.is-dragging{opacity:.7}.admin-row.is-inactive{opacity:.65}.admin-drag{grid-area:drag;justify-content:center;align-items:center;display:flex}.admin-drag-handle{text-align:center;letter-spacing:2px;width:24px;color:var(--muted);cursor:grab;-webkit-user-select:none;user-select:none;font-weight:700}.admin-drag-handle:active{cursor:grabbing}.admin-row-name{grid-area:name;min-width:0;max-width:130px}.admin-row-name .bold{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.admin-row-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;display:flex}.admin-row-selects{grid-area:selects;grid-template-columns:102px 124px;justify-content:start;justify-self:center;align-items:center;gap:6px;width:232px;min-width:0;display:grid}.admin-row-select{flex-direction:column;gap:0;min-width:0;display:flex}.admin-row-select-label{display:none}.admin-row-select select{border-radius:8px;width:100%;min-width:0;max-width:none;padding:5px 28px 5px 10px;font-size:12px}.admin-row-actions{grid-area:actions;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:start;place-self:center end;align-items:center;gap:6px;width:182px;min-width:182px;display:grid}.admin-row-actions button{white-space:nowrap;width:100%;min-width:0;min-height:30px;box-shadow:none;border-radius:8px;justify-content:center;align-items:center;padding:5px 10px;font-size:12px;display:inline-flex}.admin-row-actions button:hover:not(:disabled){box-shadow:none;transform:none}.admin-panel .badge.info{padding:1px 7px;font-size:10px}@media (max-width:1240px){.admin-row{grid-template-columns:18px 120px 216px 176px}.admin-row-name{max-width:120px}.admin-row-selects{grid-template-columns:96px 114px;width:216px}.admin-row-actions{width:176px;min-width:176px}}@media (max-width:980px){.admin-row{grid-template-columns:24px minmax(0,1fr);grid-template-areas:"drag name""drag selects""drag actions"}.admin-row-selects{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-row-actions{justify-content:flex-start;width:auto;min-width:0}.admin-row-actions button{width:100%;min-width:90px}.service-row{grid-template-columns:1fr 1fr}.service-row-header{display:none}.service-row .service-cell[data-label]:before{display:block}.service-active-cell{grid-column:1/-1}.service-active{justify-content:flex-start}}.badge-active{color:#166534;background:linear-gradient(135deg,#dcfce7,#bbf7d0);border:1px solid #a7f3d0}.badge-inactive{color:#475569;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:1px solid #cbd5e1}.service-list{isolation:isolate;border-top:1px dashed #0f172a1f;flex-direction:column;gap:8px;min-width:0;margin-top:10px;padding-top:10px;display:flex;position:relative}.service-row,.service-row-header{grid-template-columns:minmax(160px,2fr) repeat(3,minmax(80px,1fr)) minmax(110px,.9fr);align-items:center;gap:6px;min-width:0;display:grid}.service-row{border:1px solid var(--border);z-index:1;background:#f8fafc;border-radius:10px;min-width:0;padding:8px 10px;position:relative}.service-row.is-dragging{opacity:.6}.service-row.is-drop-target{background:#ff6f6114;border-color:#ff6f6180}.service-row-header{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;z-index:4;background:#f1f5f9;border-radius:10px;padding:0 10px;font-size:10px;font-weight:700;position:sticky;top:0}.service-list>.service-row:not(.service-row-header):first-of-type{margin-top:2px}.service-row-header .service-cell{text-align:center;align-items:center}.service-cell{flex-direction:column;gap:4px;min-width:0;display:flex}.service-name-field{align-items:center;gap:6px;display:flex}.service-name-field input{flex:1;min-width:0}.service-drag-handle{text-align:center;letter-spacing:1.5px;width:20px;color:var(--muted);cursor:grab;-webkit-user-select:none;user-select:none;font-weight:700}.service-drag-handle:active{cursor:grabbing}.service-cell[data-label]:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700;display:none}.service-active-cell{justify-content:center;align-items:center;display:flex}.service-active{cursor:pointer;z-index:1;background:0 0;border:none;justify-content:center;align-items:center;width:auto;min-height:auto;padding:0;display:flex;position:relative}.service-active input{flex:none;width:16px;height:16px;margin:0;padding:0}.audit-list{flex-direction:column;gap:8px;display:flex}.audit-row{border:1px solid var(--border);background:#f8fafc;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.audit-main{min-width:0}.audit-user{color:var(--muted);white-space:nowrap;font-size:12px}.working-hours-toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.working-hours-layout{container-type:inline-size}.working-hours-toolbarGrid{grid-template-columns:auto minmax(0,1fr);align-items:end;gap:12px;display:grid}.working-hours-dateLabel{min-width:0}.working-hours-dateOverlay{position:relative}.working-hours-dateOverlayInput{color:#0000;caret-color:#0000}.working-hours-dateOverlayText{color:var(--text);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;align-items:center;padding:0 12px;font-size:14px;font-weight:400;line-height:1.2;display:flex;position:absolute;inset:0;overflow:hidden}.working-hours-mode{border:1px solid var(--border);background:#f8fafc;border-radius:999px;align-items:center;gap:4px;padding:4px;display:inline-flex}.working-hours-mode-btn{color:var(--text);background:0 0;border:1px solid #0000;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.working-hours-mode-btn:hover{background:#0f172a0a}.working-hours-mode-btn.active{background:#fff;border-color:#0f172a14;box-shadow:0 8px 16px #0f172a14}.working-hours-date{flex:160px;min-width:160px}.working-hours-week-label{color:var(--muted);font-size:12px;font-weight:700}.working-hours-quick{border:1px dashed var(--border);background:#f8fafc;border-radius:14px;flex-direction:column;gap:10px;padding:12px;display:flex}.working-hours-rows{gap:12px;min-width:0;display:grid}.working-hours-quick-times{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.working-hours-timesGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.working-hours-copy{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.working-hours-weekSubsection{gap:10px;display:grid}.working-hours-copyGrid{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;min-width:0;display:grid}.working-hours-copyActions{white-space:nowrap;flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.working-hours-copy-date{width:100%;min-width:0}.working-hours-nowrapBtn{white-space:nowrap;flex-shrink:0}.working-hours-day-pills{flex-wrap:wrap;gap:6px;display:flex}.working-hours-day-pill{color:var(--text);background:#fff;border:1px solid #0f172a1f;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.working-hours-day-pill:hover{border-color:#ff6f6159}.working-hours-day-pill.active{background:linear-gradient(135deg,#ff6f6129,#ff977c1a);border-color:#ff6f6166;box-shadow:0 8px 16px #0f172a14}.working-hours-day-focus{color:var(--text);background:#fff;border:1px solid #0f172a1f;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.working-hours-actions{flex-wrap:wrap;gap:8px;display:flex}.working-hours-actionsRow{align-items:center;gap:12px}.working-hours-action-btn{border:1px solid #0000;transition:transform .12s,box-shadow .12s;position:relative}.working-hours-action-btn.active{border-color:#0f172a73;transform:translateY(-1px);box-shadow:0 14px 28px #0f172a33,0 0 0 4px #0f172a47}.working-hours-action-btn.active.success{border-color:#16a34ad9;box-shadow:0 14px 28px #16a34a42,0 0 0 4px #16a34a80}.working-hours-action-btn.active.secondary{background:#fff;border-color:#0f172a47;box-shadow:0 14px 28px #0f172a29,0 0 0 4px #0f172a3d}.working-hours-action-free{color:var(--accent-strong);background:linear-gradient(135deg,#ff6f6129,#ff977c1a);border:1px solid #ff6f6138;border-radius:999px;font-weight:700;box-shadow:0 10px 22px #0f172a1a}.working-hours-action-btn.active.working-hours-action-free{border-color:#ff6f61d9;box-shadow:0 14px 28px #ff6f613d,0 0 0 4px #ff6f618c}.working-hours-action-set{border:1px solid #16a34a47;border-radius:999px;box-shadow:0 10px 22px #0f172a1a}.working-hours-copy-btn{background:#f8fafc;border:1px dashed #0f172a33;border-radius:999px;font-size:12px;font-weight:700}.working-hours-details{border-top:1px solid var(--border);margin-top:8px;padding-top:10px}.working-hours-yearBlock{gap:10px;min-width:0;display:grid;position:relative}.working-hours-yearRowTop{flex-wrap:nowrap;align-items:center;gap:12px;min-width:0;display:flex}.working-hours-yearInputRow{grid-column:1/span 2;align-items:flex-end;gap:10px;min-width:0;display:flex}.working-hours-yearRowBottom{align-items:center;gap:12px;min-width:0;display:flex}.working-hours-yearInput{min-width:0;max-width:160px}.working-hours-srInput{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.working-hours-yearToggleBlock{white-space:nowrap;align-items:center;gap:10px;display:flex}.working-hours-togglePill{background:#f8fafc;border:1px solid #0f172a2e;border-radius:999px;align-items:center;gap:2px;height:30px;padding:2px;display:inline-flex}.working-hours-toggleOption{color:var(--text);background:0 0;border:none;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.working-hours-toggleOptionActive{background:#fff;box-shadow:0 6px 12px #0f172a1f}.working-hours-toggleOptionActiveSuccess{background:linear-gradient(135deg,var(--success),#4ade80);color:#fff;box-shadow:0 6px 12px #16a34a3d}.working-hours-yearToggleLabel{white-space:nowrap}.working-hours-yearToggleBtn{white-space:nowrap;flex-shrink:0;min-width:52px}.working-hours-yearToggleBtnInactive{color:var(--text);background:#f8fafc;border:1px solid #0f172a2e;box-shadow:0 8px 16px #0f172a14}.working-hours-yearToggleBtnInactive:hover:not(:disabled){border-color:#0f172a4d;box-shadow:0 10px 20px #0f172a1f}.working-hours-yearApplyBtn{white-space:nowrap;flex-shrink:0}.working-hours-summary{align-items:center;gap:8px;font-weight:700;list-style:none;display:inline-flex}.working-hours-summary::-webkit-details-marker{display:none}.working-hours-summary-pill{background:linear-gradient(135deg,var(--success),#4ade80);color:#fff;cursor:pointer;border:1px solid #16a34a59;border-radius:999px;align-items:center;padding:8px 16px;font-size:13px;font-weight:700;transition:border-color .14s,box-shadow .14s,transform .14s;display:inline-flex;box-shadow:0 8px 16px #16a34a2e}.working-hours-summary-pill:hover{border-color:#16a34a99;transform:translateY(-1px);box-shadow:0 10px 20px #16a34a47}.working-hours-summary-pill:focus-visible{outline-offset:2px;outline:2px solid #16a34a73}.working-hours-grid{flex-direction:column;gap:10px;display:flex}.working-hours-row{grid-template-columns:minmax(80px,120px) 1fr 1fr 1fr;align-items:center;gap:10px;display:grid}.working-hours-day{color:#0f172ad1;font-size:12px;font-weight:800}.working-hours-toggle{color:#0f172ac7;align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.working-hours-toggle input{width:auto;margin:0}@container (max-width:520px){.working-hours-copyGrid{grid-template-columns:minmax(0,1fr)}.working-hours-copyActions{justify-content:flex-end}}.assist-duration-wrapper{position:relative}.assist-duration-input{width:100%;color:var(--text);background:#fff;padding-right:36px}.assist-duration-wrapper:after{content:"Min";color:var(--muted);pointer-events:none;font-size:12px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.week-controls{flex-wrap:wrap;gap:12px;display:flex}.week-scroll{--week-employee-sticky-top:0px;width:100%;min-width:0;padding-bottom:6px;overflow:auto visible}.week-table{align-items:start;gap:10px;width:max-content;min-width:100%;display:grid}.week-table-corner{z-index:6;background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:4px;padding:10px 12px;display:flex;position:sticky;top:0;left:0;box-shadow:0 14px 32px #0f172a14}.week-table-corner-empty{visibility:hidden;box-shadow:none;pointer-events:none;background:0 0;border:none;align-self:stretch;padding:0}.week-table-corner-title{font-size:12px;font-weight:800}.week-table-corner-sub{color:var(--muted);font-size:12px}.week-table-day-header{z-index:5;border:1px solid var(--border);background:linear-gradient(#fff,#ffffffd9);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:6px 10px;min-width:0;padding:10px 12px;display:flex;position:sticky;top:0;box-shadow:0 14px 32px #0f172a14}.week-table-day-header.is-holiday{background:linear-gradient(#fee2e2f2,#ffffffd9);border-color:#ef444433}.week-table-day-title{white-space:nowrap;text-overflow:ellipsis;flex:100%;min-width:0;font-size:13px;font-weight:800;overflow:hidden}.week-day-badges{flex-wrap:wrap;flex:100%;justify-content:center;gap:6px;min-width:0;max-width:100%;display:flex;overflow:hidden}.week-day-badges .badge{white-space:normal;max-width:100%;line-height:1.2}.week-table-employee-header{z-index:auto;border:1px solid var(--border);white-space:nowrap;text-overflow:ellipsis;background:#ffffffeb;border-radius:14px;min-width:0;padding:10px 12px;font-size:13px;font-weight:800;position:static;top:auto;overflow:hidden;box-shadow:0 10px 22px #0f172a0f}.week-table-cell{border:1px solid var(--border);background:#ffffffe6;border-radius:14px;min-width:0;min-height:66px;padding:10px;box-shadow:0 10px 22px #0f172a0f}.week-view .week-table-employee-header.is-week-sticky-active{top:var(--week-employee-sticky-top);z-index:4;position:sticky;left:0}.week-table-cell.is-holiday{background:#fee2e238;border-color:#ef44442e}.week-cell-items{flex-direction:column;gap:8px;display:flex}.week-cell-item{text-align:left;background:#ffffffeb;border:1px solid #e2e8f0f2;border-radius:12px;grid-template-columns:82px 1fr auto;align-items:stretch;gap:10px;width:100%;padding:8px 10px;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 22px #0f172a0f}.week-cell-item-group{border-color:var(--appt-accent-soft,#94a3b859);box-shadow:0 10px 22px #0f172a0f,inset 3px 0 0 var(--appt-accent,#94a3b88c);background:linear-gradient(135deg,var(--appt-accent-soft,#94a3b81f),#fffffff0)}.week-cell-item:hover{border-color:#ff6f6159}.week-cell-item-draggable{cursor:grab}.week-cell-item-dragging{opacity:.7;cursor:grabbing}.week-cell-item-gap{background:#ff6f610f;border-style:dashed}.week-cell-item-drop{background:#ff6f6114;border-color:#ff6f6199}.week-cell-item-gap.week-cell-item-drop{background:#ff6f6124}.week-view .week-cell-item-free{background:linear-gradient(135deg,#ff6f611a,#ff6f6138);border-color:#dd1b09eb;box-shadow:0 10px 22px #0f172a0f,inset 0 0 0 1px #ff6f6138}.week-view .week-cell-item-free:hover{background:#ff6f6142;border-color:#dd1b09}.week-view .week-cell-item-free.week-cell-item-drop{background:#ff6f6152;border-color:#dd1b09}.week-cell-item-assist{border-style:dashed}.week-cell-item.block-break,.agenda-item.block-break{background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-color:#7dd3fc;box-shadow:0 12px 24px #0e749024}.week-cell-item.block-vacation,.agenda-item.block-vacation{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-color:#c4b5fd;box-shadow:0 12px 24px #5b21b624}.week-cell-item.block-sick,.agenda-item.block-sick{background:linear-gradient(135deg,#fee2e2,#fecdd3);border-color:#fecaca;box-shadow:0 12px 24px #b91c1c24}.week-cell-item.block-other,.agenda-item.block-other{background:linear-gradient(135deg,#e5e7eb,#f3f4f6);border-color:#d1d5db;box-shadow:0 12px 24px #0f172a1a}.week-cell-time{font-variant-numeric:tabular-nums;color:#0f172aeb;font-size:12px;font-weight:800}.week-cell-main{flex-direction:column;gap:2px;min-width:0;padding-right:60px;display:flex}.week-cell-title{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:800;overflow:hidden}.week-cell-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.week-view .week-cell-main{padding-right:0}.week-view .week-cell-right{align-self:flex-start;position:static;top:auto;right:auto}.week-cell-right{z-index:2;justify-content:flex-end;align-items:center;display:flex;position:absolute;top:8px;right:10px}.week-view .week-cell-right .badge{display:none!important}.week-cell-empty{width:100%;min-height:52px;color:var(--muted);background:#f8fafccc;border:1px dashed #e2e8f0f2;border-radius:12px;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.week-cell-empty:hover{color:#0f172ad1;border-color:#ff6f6159}.week-cell-empty-drop{background:#ff6f6114;border-color:#ff6f6199}.week-cell-empty-off{cursor:not-allowed;background:#94a3b824;border-style:solid}.week-cell-empty-off.week-cell-empty-drop{background:#ff6f6114;border-color:#ff6f6199}.week-cell-empty-holiday{color:#7f1d1d;cursor:not-allowed;background:#fee2e261;border:1px dashed #ef44444d}.appointment-header{justify-content:space-between;align-items:center;gap:6px;display:flex}.appointment-time{font-size:12px;font-weight:600}.appointment-body{flex-direction:column;gap:4px;display:flex}.appointment-right{align-items:center;gap:8px;display:flex}.appointment-customer{font-weight:600}.appointment-line{white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.2;overflow:hidden}.appointment-service-sep{color:#f8fafcc7}.appointment-service{color:#f8fafcc7;font-weight:500}.appointment-notes{color:#f8fafcb3;font-weight:500}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.badge.info{text-transform:none;letter-spacing:normal;font-weight:600}.badge-holiday{color:#1e3a8a;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:1px solid #93c5fd;box-shadow:0 6px 18px #3b82f62e}.badge-vacation{color:#5b21b6;background:linear-gradient(135deg,#ede9fe,#ddd6fe);border:1px solid #c4b5fd;box-shadow:0 6px 18px #8b5cf629}.status-booked{color:#065f46;background:linear-gradient(135deg,#dcfce7,#bbf7d0);border:1px solid #a7f3d0;box-shadow:0 6px 18px #10b98138}.status-running{color:#854d0e;background:linear-gradient(135deg,#fef9c3,#fde047);border:1px solid #facc15;box-shadow:0 6px 18px #eab30840}.status-cancelled{color:#991b1b;background:linear-gradient(135deg,#fee2e2,#fecdd3);border:1px solid #fecaca;box-shadow:0 6px 18px #ef444433}.status-no-show{color:#92400e;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fcd34d;box-shadow:0 6px 18px #f59e0b2e}.status-done{color:#7f1d1d;background:linear-gradient(135deg,#fecaca,#f87171);border:1px solid #fca5a5;box-shadow:0 6px 18px #dc262647}.time-column{grid-template-rows:auto 1fr;width:80px;display:grid}.time-column{flex-direction:column;width:80px;display:flex}.time-header{border-bottom:1px solid var(--border);min-height:56px;padding:10px}.time-cells{grid-auto-rows:28px;display:grid}.employee-header{min-height:56px}.employee-grid{grid-auto-rows:28px}@media (max-width:1080px){.layout{grid-template-columns:1fr}.calendar-grid{grid-template-columns:70px repeat(auto-fit,minmax(200px,1fr))}}@media (max-width:720px){.shell{padding:20px 14px 48px}.topbar-center{order:3;justify-content:flex-start;width:100%}.topbar-right{justify-content:flex-start}.topbar-date-input{width:min(200px,100%)}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:span 1}.working-hours-row{grid-template-columns:40px 1fr 1fr;grid-auto-rows:auto}.working-hours-toggle{grid-column:2/-1}.working-hours-toolbar{align-items:stretch}.working-hours-quick-times{grid-template-columns:1fr}.working-hours-actions{flex-direction:column}.working-hours-copy{align-items:stretch}.assist-row{grid-template-columns:1fr 1fr}.assist-note{grid-column:1/-1}.admin-row{grid-template-columns:24px minmax(0,1fr);grid-template-areas:"drag name""drag selects""drag actions";align-items:start}.admin-row-selects,.admin-row-actions{grid-template-columns:1fr}.service-row{grid-template-columns:1fr 1fr}.service-row-header{display:none}.service-row .service-cell[data-label]:before{display:block}.service-active-cell{grid-column:1/-1}.service-active{justify-content:flex-start}.floating-toast{max-width:none;bottom:14px;left:14px;right:14px}}@media (max-width:560px){.topbar-compact-label{display:none}.topbar-btn{padding:8px 10px}}@media (min-width:1024px){html,body{height:100%}body{overflow:hidden}.shell{height:100vh;min-height:100vh}.calendar-scroll-shell{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:hidden}.calendar-scroll-inner{flex:1;width:100%;min-width:0;min-height:0}.layout{flex:1;grid-template-rows:minmax(0,1fr);align-items:stretch;width:100%;min-width:0;min-height:0}.calendar-wrapper{flex-direction:column;min-height:0;display:flex}.calendar-card{flex:1;min-height:0;overflow:hidden}.calendar-scroll{flex:1;min-height:0;overflow-y:auto}.week-view{flex:1;min-height:0}.week-scroll{--week-employee-sticky-top:0px;width:100%;min-width:0;height:100%;overflow:auto}.week-table{width:max-content;min-width:100%}.agenda-view{flex:1;min-height:0}.agenda-list{flex:1;min-height:0;overflow-y:auto}}.user-card{border:1px solid var(--border);background:#f8fafc;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;display:grid}.user-card-info .user-name{font-weight:700}.user-card-info .user-role{color:var(--muted);font-size:13px}.ghost{border:1px solid var(--border);background:0 0}.customer-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;margin-top:12px;margin-bottom:12px;display:grid}.customer-toolbar input{min-width:0}.customer-actions{flex-wrap:wrap;gap:8px;display:flex}.customer-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-bottom:12px;display:grid}.customer-row{text-align:left;border:1px solid var(--border);cursor:pointer;background:#f8fafc;border-radius:12px;padding:10px 12px;transition:border-color .15s,box-shadow .15s}.customer-row.is-active{border-color:#ff6f6180;box-shadow:0 4px 18px #0000000f}.customer-row-title{margin-bottom:4px;font-weight:700}.customer-row-sub{color:#4b5563;font-size:13px}.customer-edit-card{border:1px solid var(--border);background:#fff;border-radius:12px;padding:14px}.customer-edit-card h4{margin:0 0 10px}.customer-quality-card{background:0 0;border:none;flex-direction:column;gap:8px;margin-bottom:12px;padding:0;display:flex}.customer-quality-toggle{border:1px solid var(--border);text-align:left;cursor:pointer;width:100%;min-height:42px;box-shadow:none;background:#fafbff;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex;transform:none}.customer-quality-toggle h4{margin:0;font-size:14px;font-weight:600}.customer-quality-toggle:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform-origin:50%;width:10px;height:10px;transition:transform .14s;display:inline-block;transform:rotate(45deg)}.customer-quality-toggle.is-open:after{transform:rotate(225deg)}.customer-quality-toggle:hover:not(:disabled){box-shadow:none;transform:none}.customer-quality-toggle:focus-visible{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #ff6f6126}.customer-quality-body{border:1px solid var(--border);background:#f8fafc;border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.customer-quality-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.customer-quality-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.customer-quality-header h4{margin:0}.customer-quality-list{gap:6px;max-height:220px;display:grid;overflow-y:auto}.customer-quality-row{text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:10px;padding:8px 10px}.customer-quality-title{margin-bottom:3px;font-weight:700}.customer-quality-issues{color:#4b5563;font-size:12px}.customer-delete-inline{justify-content:flex-end;align-self:end;align-items:center;display:flex}.customer-checkbox{justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-panel .customer-toolbar{gap:8px;margin-top:8px;margin-bottom:8px}.admin-panel .customer-actions{gap:6px}.admin-panel .customer-list{gap:6px;margin-bottom:8px}.admin-panel .customer-row{border-radius:10px;padding:8px 10px}.admin-panel .customer-row-title{margin-bottom:2px}.admin-panel .customer-row-sub{font-size:12px}.admin-panel .customer-edit-card{border-radius:10px;padding:10px}.admin-panel .customer-quality-card{margin-bottom:8px}.admin-panel .customer-back-to-results{margin-bottom:10px}.admin-panel .checkbox-row{padding:4px 0}.checkbox-row{justify-content:space-between;align-items:center;gap:12px;padding:6px 0;display:flex}.checkbox-row .checkbox-label{justify-content:space-between;align-items:center;gap:8px;width:100%;font-weight:600;display:flex}.checkbox-row .checkbox-label span{text-align:left;flex:1}.checkbox-row .checkbox-label input[type=checkbox]{flex:none;margin:0}.customer-consent-label{margin-bottom:6px;font-weight:600}.customer-dialog-form{gap:10px;padding:12px}.customer-dialog-form .field-hint{margin-top:2px;font-size:11px}.customer-consent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.customer-consent-options{flex-wrap:wrap;gap:8px;display:flex}.customer-consent-toggle{border:1px solid var(--border);cursor:pointer;color:#111827;background:#fff;border-radius:10px;min-width:64px;padding:6px 12px;font-weight:600;transition:border-color .14s,background-color .14s}.customer-consent-toggle.is-active{border-color:var(--accent);background:#ff6f6126}.customer-consent-toggle:focus-visible{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #ff6f6129}@media (max-width:900px){.stats-kpi-grid,.stats-chart-grid,.stats-filter-fields{grid-template-columns:1fr}.stats-filter-fields .field{min-width:0}.stats-tabs-row{flex-direction:column;align-items:stretch;gap:6px}.stats-tabs-quality{flex-wrap:wrap;justify-content:flex-start}.stats-header-shell{position:static}.stats-vbar-layout{grid-template-columns:46px minmax(0,1fr);gap:8px}.stats-vbar-plot{min-width:360px}.stats-vbar-track{width:10px;height:160px}.customer-toolbar{grid-template-columns:1fr;align-items:stretch}.customer-actions{justify-content:flex-start}}
