@font-face{font-family:Sora;src:url(../fonts/sora.woff2) format("woff2-variations"),url(../fonts/sora.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:"Source Sans 3";src:url(../fonts/source-sans-3.woff2) format("woff2-variations"),url(../fonts/source-sans-3.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Azeret Mono;src:url(../fonts/azeret-mono.woff2) format("woff2-variations"),url(../fonts/azeret-mono.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{color-scheme:light;--surface: #ffffff;--bg: #f5efe4;--bg-secondary: #faf6ee;--text: #2b2117;--text-muted: #8a7a63;--text-subtle: #55483a;--border: rgba(0, 0, 0, .055);--border-light: rgba(0, 0, 0, .1);--accent: #f97316;--accent-light: #fb923c;--accent-2: #fbbf24;--accent-subtle: rgba(249, 115, 22, .12);--status-confirmed: #5f9a5e;--status-confirmed-bg: rgba(123, 184, 122, .18);--status-cancelled: #b04a41;--status-cancelled-bg: rgba(200, 98, 90, .18);--status-no-show: #b3811f;--status-no-show-bg: rgba(233, 179, 74, .2);--status-pending: #b3811f;--status-pending-bg: rgba(233, 179, 74, .2);--status-info: #3b6fa8;--card: var(--surface);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 1px 2px rgba(0, 0, 0, .05), 0 4px 14px rgba(0, 0, 0, .045);--shadow-lg: 0 20px 50px -12px rgba(0, 0, 0, .12), 0 4px 14px rgba(0, 0, 0, .05);--radius: 14px;--radius-sm: 9px;--radius-lg: 16px;--radius-full: 999px;--duration-fast: .15s;--duration-base: .2s;--duration-slow: .4s;--easing-out: cubic-bezier(.2, .9, .3, 1);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--font-sans: "Source Sans 3", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-display: "Sora", system-ui, sans-serif;--font-mono: "Azeret Mono", ui-monospace, Menlo, monospace}[data-theme=dark]{color-scheme:dark;--surface: #1a1513;--bg: #0c0907;--bg-secondary: #110d0a;--text: #f6efe0;--text-muted: #8d8270;--text-subtle: #a89e8f;--border: rgba(255, 255, 255, .08);--border-light: rgba(255, 255, 255, .14);--accent: #f97316;--accent-light: #fb923c;--accent-subtle: rgba(249, 115, 22, .14);--status-confirmed: #7bb87a;--status-confirmed-bg: rgba(123, 184, 122, .15);--status-cancelled: #c8625a;--status-cancelled-bg: rgba(200, 98, 90, .15);--status-no-show: #e9b34a;--status-no-show-bg: rgba(233, 179, 74, .15);--status-pending: #e9b34a;--status-pending-bg: rgba(233, 179, 74, .15);--status-info: #60a5fa;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 1px 2px rgba(0, 0, 0, .3);--shadow-lg: 0 30px 70px -15px rgba(0, 0, 0, .55)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulse-badge{0%,to{transform:scale(1);box-shadow:0 0 0 2px var(--card),0 0 color-mix(in srgb,var(--status-confirmed) 45%,transparent)}50%{transform:scale(1.08);box-shadow:0 0 0 2px var(--card),0 0 0 6px color-mix(in srgb,var(--status-confirmed) 0%,transparent)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:14px;font-weight:400;letter-spacing:-.005em;font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em}h1{font-size:1.9rem;font-weight:800}h2{font-size:1.4rem}h3{font-size:1.15rem}[data-radix-tabs-content]{outline:none}input,select,textarea,button{font-family:var(--font-sans);font-size:inherit;font-weight:400;letter-spacing:-.005em}button{font-weight:500}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.card-padded{padding:20px}.badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-full);font-size:.72rem;font-weight:600}.badge-confirmed{background:var(--status-confirmed-bg);color:var(--status-confirmed)}.badge-cancelled{background:var(--status-cancelled-bg);color:var(--status-cancelled)}.badge-no-show{background:var(--status-no-show-bg);color:var(--status-no-show)}.text-muted{color:var(--text-muted)}.text-subtle{color:var(--text-subtle)}.error{padding:10px 14px;background:var(--status-cancelled-bg);color:var(--status-cancelled);border-radius:var(--radius);font-size:.82rem}.fade-in{animation:fadeIn .18s ease}.slide-up{animation:slideUp .24s var(--easing-out)}.pulse{animation:pulse 2s infinite}.spin{animation:spin 1s linear infinite}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:38px;padding:0 16px;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600;white-space:nowrap;border:1px solid transparent;cursor:pointer;transition:transform .14s var(--easing-out),box-shadow .14s var(--easing-out),background .14s,filter .12s,border-color .14s}.btn:active:not(:disabled){transform:translateY(1px) scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-sm{height:32px;padding:0 11px;font-size:.78rem;gap:5px;border-radius:var(--radius-sm)}.btn-lg{height:46px;padding:0 22px;font-size:.95rem;border-radius:var(--radius)}.btn-primary,.btn-default{background:var(--accent);color:#fff;box-shadow:0 1px #ffffff29 inset,0 2px 10px color-mix(in srgb,var(--accent) 35%,transparent)}.btn-primary:hover:not(:disabled),.btn-default:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 1px #ffffff29 inset,0 6px 18px color-mix(in srgb,var(--accent) 45%,transparent)}.btn-secondary,.btn-outline{background:var(--surface);color:var(--text);border-color:var(--border)}.btn-secondary:hover:not(:disabled),.btn-outline:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--accent-light);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-muted)}.btn-ghost:hover:not(:disabled){background:var(--bg-secondary);color:var(--text)}.btn-danger{background:var(--status-cancelled-bg);color:var(--status-cancelled)}.btn-danger:hover:not(:disabled){background:var(--status-cancelled);color:#fff;transform:translateY(-1px);box-shadow:0 6px 18px color-mix(in srgb,var(--status-cancelled) 35%,transparent)}.btn-success{background:var(--status-confirmed-bg);color:var(--status-confirmed)}.btn-success:hover:not(:disabled){background:var(--status-confirmed);color:#fff;transform:translateY(-1px)}.field-input{transition:border-color .14s,box-shadow .14s}.field-input:focus,.field-input[data-state=open]{outline:none;border-color:var(--accent)!important;box-shadow:0 0 0 4px var(--accent-subtle)}.page-header{margin-bottom:20px}.page-header .eyebrow{font-family:var(--font-mono);font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:6px}.page-header h1{margin:0 0 6px;font-family:var(--font-display);font-size:38px;font-weight:700;letter-spacing:-.01em;line-height:1.05;color:var(--text)}.page-header .subtitle{margin:0;font-size:13.5px;color:var(--text-muted)}.hero-banner{position:relative;overflow:hidden;isolation:isolate;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:20px;padding:28px 32px;margin-bottom:14px}.hero-glow{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 88% 15%,var(--accent-subtle) 0%,transparent 45%)}.hero-banner .eyebrow{position:relative;z-index:1;font-family:var(--font-mono);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);margin-bottom:8px}.hero-banner .subtitle{position:relative;z-index:1;margin-top:10px;font-size:.95rem;color:var(--text-muted)}@media(max-width:640px){.hero-banner{padding:22px 20px}}.timeline-block{transition:transform .15s ease,filter .15s ease}[data-state=open] [data-chevron]{transform:rotate(180deg)}[data-radix-popper-content-wrapper]{z-index:99999!important}.nav-tab-btn:not(.active):hover{background:var(--bg-secondary)!important;color:var(--text)!important}.resa-tr{cursor:pointer;outline:1px solid transparent;outline-offset:-1px;transition:background var(--duration-fast) ease,outline-color var(--duration-fast) ease}.resa-tr:hover{background:var(--bg-secondary);outline-color:var(--accent-light)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;transition:opacity .25s ease;z-index:1000}.drawer-overlay.open{opacity:1}.drawer-panel{position:fixed;top:50%;left:50%;width:400px;max-width:92vw;max-height:88vh;background:var(--surface);border-radius:26px;box-shadow:0 20px 60px #00000080;z-index:1001;display:flex;flex-direction:column;overflow:hidden;transform:translate(-50%,-50%) scale(.94);opacity:0;transition:transform .28s cubic-bezier(.22,.9,.35,1),opacity .22s ease}.drawer-panel.open{transform:translate(-50%,-50%) scale(1);opacity:1}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:9990;opacity:0;transition:opacity .25s ease}.confirm-overlay.open{opacity:1}.confirm-panel{position:fixed;top:50%;left:50%;z-index:9991;background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-lg);padding:28px;width:420px;max-width:90vw;transform:translate(-50%,-50%) scale(.94);opacity:0;transition:transform .28s cubic-bezier(.22,.9,.35,1),opacity .22s ease}.confirm-panel.open{transform:translate(-50%,-50%) scale(1);opacity:1}.tuto-panel{position:fixed;top:50%;left:50%;z-index:2001;width:380px;max-width:92vw;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-lg);overflow:hidden;transform:translate(-50%,-50%) scale(.94);opacity:0;transition:transform .28s cubic-bezier(.22,.9,.35,1),opacity .22s ease}.tuto-panel.open{transform:translate(-50%,-50%) scale(1);opacity:1}.drawer-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;flex-shrink:0;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast) ease,color var(--duration-fast) ease}.drawer-close:hover{background:var(--border);color:var(--text)}@media(max-width:640px){.drawer-panel{width:92vw}}.admin-nav-topbar{display:flex;position:sticky;top:0;z-index:100;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.admin-nav-bottom{display:none}.nav-label{display:inline}@media(max-width:640px){.admin-nav-topbar{display:none!important}.admin-nav-bottom{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--surface);border-top:1px solid var(--border);padding:0;height:56px;align-items:stretch;safe-area-inset-bottom:env(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom,0px)}.nav-bottom-btn{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;font-size:.62rem;font-weight:500;gap:2px;color:var(--text-muted);transition:color .15s;-webkit-tap-highlight-color:transparent}.nav-bottom-btn.active{color:var(--accent)}.nav-bottom-btn.active:before{content:"";position:absolute;top:2px;left:50%;width:16px;height:3px;border-radius:999px;background:var(--accent);transform:translate(-8px)}body{padding-bottom:calc(56px + env(safe-area-inset-bottom,0px))}.admin-main{padding:12px!important}.closure-confirm-bar{bottom:calc(68px + env(safe-area-inset-bottom,0px))!important}.grid-2col-mobile{grid-template-columns:1fr!important}.table-mobile td,.table-mobile th{padding:8px 10px!important;font-size:.82rem!important}.col-hide-mobile,.timeline-wrap{display:none!important}.service-row{grid-template-columns:1fr 1fr!important;row-gap:6px!important}.service-row .svc-label{grid-column:1 / -1}.service-row .svc-delete{grid-column:2;justify-self:end}.filter-period{width:100%!important;flex-shrink:1!important}.filter-status{width:100%!important}.filter-card{flex-direction:column!important}.card-padded{padding:14px!important}.toast-viewport{bottom:calc(64px + env(safe-area-inset-bottom,0px))!important;top:auto!important;right:8px!important;left:8px!important;max-width:none!important}.login-card{padding:28px 20px!important}.nav-label,.pagesize-bar{display:none!important}}
