@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";:root{--ink:#1d2d24;--forest:#284334;--cedar:#714528;--gold:#c99a52;--cream:#f6f1e8;--paper:#fffdf8;--sand:#eee5d7;--line:#ddd3c3;--muted:#6e7169;--danger:#b3432f;--danger-bg:#f7e6e1;color:var(--ink);background:var(--cream);font-family:Manrope,Arial,sans-serif}*{box-sizing:border-box}body{background:var(--cream);min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}h1,h2{margin:0;font-weight:700}dl{margin:0}dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:12px;font-size:12px}dt:first-child{margin-top:0}dd{margin:4px 0 0;font-size:15px}.page-loading,.muted{color:var(--muted)}.muted-small{color:var(--muted);margin-top:2px;font-size:12px}.page-title{align-items:center;gap:12px;margin-bottom:24px;font-size:28px;display:flex}.page-subtitle{color:var(--muted);margin:-12px 0 20px;font-size:13px}.detail-actions{flex-wrap:wrap;gap:10px;display:flex}.back-link{color:var(--muted);margin-bottom:16px;font-size:13px;text-decoration:none;display:inline-block}.back-link:hover{color:var(--ink)}.form-error{color:var(--danger);background:var(--danger-bg);border-radius:10px;padding:10px 14px;font-size:13px}.button{border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:700;transition:opacity .15s;display:inline-flex}.button:disabled{opacity:.5;cursor:not-allowed}.button--primary{background:var(--ink);color:var(--paper)}.button--primary:hover:not(:disabled){opacity:.9}.button--ghost{border-color:var(--line);color:var(--ink);background:0 0}.button--ghost:hover:not(:disabled){background:var(--sand)}.button--danger{background:var(--danger);color:var(--paper)}.button--danger:hover:not(:disabled){opacity:.9}.button--small{padding:6px 12px;font-size:12px}.button:not(.button--primary):not(.button--ghost):not(.button--danger){background:var(--sand);color:var(--ink)}.login-screen{place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;flex-direction:column;gap:16px;width:min(360px,100%);padding:32px;display:flex}.login-brand{text-align:center;letter-spacing:.14em;margin-bottom:8px;font-weight:800}.login-brand span{letter-spacing:0;color:var(--muted);margin-top:4px;font-size:13px;font-weight:500;display:block}.field{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;font-weight:700;display:flex}.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;padding:10px 12px;font-size:14px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--gold);outline-offset:1px}.field--grow{flex:1}.app-shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--ink);color:var(--paper);flex-direction:column;gap:28px;padding:24px 16px;display:flex}.sidebar-brand{letter-spacing:.14em;font-size:14px;font-weight:800}.sidebar-brand span{letter-spacing:0;color:#a9b6ac;margin-top:4px;font-size:11px;font-weight:500;display:block}.sidebar-nav{flex-direction:column;gap:4px;display:flex}.sidebar-link{color:#d7ddd6;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:600;text-decoration:none;display:block}.sidebar-link:hover{background:#ffffff14}.sidebar-link--active{background:var(--gold);color:var(--ink)}.main-column{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--line);background:var(--paper);justify-content:flex-end;align-items:center;gap:16px;padding:16px 32px;display:flex}.topbar-email{color:var(--muted);font-size:13px}.content{flex:1;padding:32px}.stat-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.stat-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:6px;padding:24px;display:flex}.stat-value{font-size:32px;font-weight:800}.stat-label{color:var(--muted);font-size:13px}.filter-bar{gap:10px;margin-bottom:20px;display:flex}.filter-bar select{border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:9px 12px;font-size:13px}.inline-form{background:var(--paper);border:1px solid var(--line);border-radius:14px;flex-wrap:wrap;align-items:flex-end;gap:14px;margin-bottom:20px;padding:18px;display:flex}.table-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.table-scroll .data-table{min-width:640px}.data-table{border-collapse:collapse;background:var(--paper);border:1px solid var(--line);border-radius:14px;width:100%;overflow:hidden}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);padding:12px 16px;font-size:13px}.data-table th{background:var(--sand);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.data-table tr:last-child td{border-bottom:none}.table-link{color:var(--ink);font-weight:700;text-decoration:none}.table-link:hover{text-decoration:underline}.settings-table td:first-child{width:45%}.settings-input{border:1px solid var(--line);border-radius:6px;width:100%;padding:8px 10px;font-size:13px}.status-badge{border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}.status-badge--pending{color:#7a5a12;background:#f5e6c8}.status-badge--confirmed{color:var(--forest);background:#d9ecdd}.status-badge--cancelled{background:var(--danger-bg);color:var(--danger)}.status-badge--completed{color:#2c3e70;background:#dfe6f5}.status-badge--no_show{background:var(--sand);color:var(--muted)}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-bottom:24px;display:grid}.detail-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px}.detail-card h2{margin-bottom:12px;font-size:15px}.cancel-panel{background:var(--paper);border:1px solid var(--danger);border-radius:14px;flex-direction:column;gap:14px;max-width:480px;margin-top:16px;padding:20px;display:flex}.refund-summary{background:var(--sand);border-radius:10px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.refund-summary div{justify-content:space-between;font-size:13px;display:flex}.cancel-panel-actions{justify-content:flex-end;gap:10px;display:flex}.admin-calendar{background:var(--paper);border:1px solid var(--line);border-radius:14px;width:100%;max-width:320px;padding:16px}.admin-calendar-head{text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;font-weight:800;display:flex}.admin-calendar-nav{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;padding:0;font-size:14px;display:flex}.admin-calendar-nav:hover{background:var(--sand)}.admin-calendar-weekdays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px;display:grid}.admin-calendar-weekdays span{text-align:center;color:var(--muted);text-transform:uppercase;font-size:10px}.admin-calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.admin-day{aspect-ratio:1;color:var(--ink);background:0 0;border:0;border-radius:8px;padding:0;font-size:12px;font-weight:600}.admin-day--disabled{color:var(--line);cursor:default}.admin-day--default:hover{background:var(--sand)}.admin-day--range-start,.admin-day--range-end{background:var(--gold);color:var(--ink);font-weight:800}.admin-day--in-range{background:#efe0c3}.block-time-fields{gap:14px;margin-top:12px;display:flex}.block-selection-hint{color:var(--muted);margin:10px 0 0;font-size:13px}.inline-form--block{flex-wrap:wrap;align-items:flex-start}.inline-form--block>div{flex-direction:column;gap:14px;min-width:0;display:flex}.inline-form--block>div:first-child{width:100%;max-width:320px}.inline-form--block>div:last-child{flex:1;min-width:220px}@media (width<=640px){.inline-form--block{flex-direction:column;display:flex}.inline-form--block>div:first-child{max-width:100%}.block-time-fields{flex-wrap:wrap}}@media (width<=800px){.app-shell{grid-template-columns:1fr}.sidebar{flex-direction:row;align-items:center;gap:12px;padding:14px 16px}.sidebar-brand{flex:none}.sidebar-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:row;flex:1;min-width:0;overflow-x:auto}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-link{white-space:nowrap;flex:none}.content{padding:20px}.stat-grid{grid-template-columns:1fr}}
