:root{--brand-red:#861331;--brand-dark:#671025;--brand-soft:#f7e9ed;--line:#d9e0da;--muted:#66756c;--ink:#153d2a}*{box-sizing:border-box}.admin-app{min-height:100vh;display:grid;grid-template-columns:230px minmax(0,1fr);background:#fff;color:var(--ink)}.admin-sidebar{background:var(--brand-dark);color:#fff;padding:1.2rem;display:flex;flex-direction:column;min-height:100vh}.admin-sidebar .brand{display:block;height:128px;padding:12px;background:#fff url('/assets/marfi-kinga-logo.png') center/90% auto no-repeat;border-radius:0;font-size:0;text-decoration:none}.admin-sidebar .brand span{display:none}.admin-sidebar nav{display:grid;gap:.35rem;margin:2.3rem 0}.admin-sidebar nav a,.sidebar-logout{color:#fff;text-decoration:none;border:0;background:transparent;text-align:left;padding:.75rem .65rem;border-radius:8px;cursor:pointer;font:inherit}.admin-sidebar nav a.active,.admin-sidebar nav a:hover{background:var(--brand-red)}.sidebar-logout{margin-top:auto}.admin-main{width:min(1500px,100%);padding:2.5rem;margin:auto}.admin-main header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.8rem}.admin-main h1,.admin-main h2,.admin-main h3{font-family:Georgia,serif;margin:0 0 .4rem}.admin-main p{color:var(--muted)}.admin-section{border-top:1px solid var(--line);padding:1.8rem 0}.section-heading,.month-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.week-controls,.month-controls{display:flex;gap:.4rem;align-items:center}.week-controls button,.month-controls button{white-space:nowrap}.calendar-layout{display:block}.month-calendar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.month-panel{min-width:0}.month-panel h3{font:1.25rem Georgia,serif;margin:.2rem 0 .7rem}.month-single{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.month-single>small{text-align:center;color:var(--muted);font-size:.75rem}.month-day{min-width:0;min-height:62px;border:1px solid var(--line);border-radius:8px;padding:6px;background:#fff;color:var(--ink);cursor:pointer;text-align:left}.month-day:hover{border-color:var(--brand-red)}.month-day small{display:block;font-size:.72rem;color:var(--muted)}.month-day.selected-week{box-shadow:inset 0 0 0 3px #737675}.month-day.weekend{background:#f1f2f2}.month-day.holiday{background:var(--brand-soft);border-color:#e4a2b1}.month-day.has-booking{background:#e5f3e8}.month-day.has-rule{border-width:2px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:start}.day-editor{min-width:0;overflow:hidden;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff}.day-editor.day-off{background:#f1f2f2;border-color:#cfd4d1}.day-editor small{display:block;min-height:1.2rem;color:var(--muted);font-size:.72rem}.intervals{display:grid;gap:8px;margin-top:8px}.interval{display:grid;grid-template-columns:1fr!important;gap:6px;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff}.interval .modern-input{min-width:0;height:36px;padding:.4rem .5rem;font-size:16px}.interval .remove-interval{justify-self:end;width:auto;height:32px;padding:.25rem .7rem}.day-editor>.add-interval{width:100%;margin-top:8px;padding:.55rem;font-size:.82rem}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.stats article{border:1px solid var(--line);border-radius:10px;padding:1rem}.stats strong{display:block;font:2rem Georgia,serif}.booking-workspace{display:grid;grid-template-columns:minmax(0,1fr) 330px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.booking-row{display:grid;grid-template-columns:160px 1fr 180px;gap:.7rem;padding:1rem;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;cursor:pointer;width:100%}.booking-detail{padding:1.3rem;background:#f8fbf8}.detail-actions{display:grid;gap:.6rem}.service-head,.service-row{display:grid;grid-template-columns:minmax(260px,2fr) 150px 110px 150px 100px;gap:.7rem;align-items:center}.service-head{padding:.7rem 0;color:var(--muted);font-size:.85rem;border-bottom:1px solid var(--line)}.service-row{padding:1rem 0;border-bottom:1px solid var(--line)}.service-row textarea{min-height:72px;margin-top:.45rem}.location-settings,.settings-form,.password-form{display:grid;gap:.8rem;max-width:560px}.location-settings{grid-template-columns:1fr 140px}.location-settings label{display:grid;gap:.3rem}.location-settings input[type=color]{height:42px;padding:2px}.week-picker{max-width:180px}.form-message{min-height:1.4em}.admin-login-body{min-height:100vh;display:grid;place-items:center;background:var(--brand-dark)}.login-card{width:min(440px,92vw);background:#fff;padding:3rem;border-radius:16px}.login-card .brand{display:block;height:110px;background:url('/assets/marfi-kinga-logo.png') center/contain no-repeat;font-size:0}.login-card .brand span{display:none}.login-card form{display:grid;gap:.8rem;margin-top:1.5rem}@media(max-width:1100px){.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-layout{display:block}.stats{grid-template-columns:repeat(2,1fr)}.service-head{display:none}.service-row{grid-template-columns:1fr 1fr}.service-row>div{grid-column:1/-1}}@media(max-width:700px){.admin-app{display:block}.admin-sidebar{min-height:auto}.admin-sidebar nav{grid-template-columns:repeat(2,1fr);margin:1rem 0}.admin-main{padding:1rem}.admin-main header,.section-heading,.month-toolbar{display:block}.month-controls,.week-controls{margin-top:1rem}.month-calendar{grid-template-columns:1fr}.week-grid{grid-template-columns:1fr}.booking-workspace{grid-template-columns:1fr}.booking-row{grid-template-columns:1fr}.service-row{grid-template-columns:1fr}.interval .modern-input{font-size:16px}}
.month-day.selected-week{position:relative;box-shadow:none!important}.month-day.selected-week-start:before{content:"";position:absolute;left:-19px;top:4px;bottom:4px;width:8px;border-radius:5px;background:#737675}.month-day.selected-week-start:after{content:"";position:absolute;left:-25px;top:50%;border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:8px solid #737675;transform:translateY(-50%)}
.locations-editor{display:grid;gap:10px;margin:1rem 0 1.2rem}.location-editor-row{display:grid;grid-template-columns:minmax(160px,1.5fr) 90px 170px 170px auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}.location-editor-row label{display:grid;gap:5px;font-size:.8rem;color:var(--muted)}.location-editor-row input{width:100%}.location-editor-row input[type=color]{height:38px;padding:2px}.location-editor-row .remove-location{height:38px;white-space:nowrap}@media(max-width:800px){.location-editor-row{grid-template-columns:1fr 1fr}.location-editor-row label:first-child{grid-column:1/-1}.location-editor-row .remove-location{grid-column:1/-1}}
.settings-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:1.2rem 0 0}.settings-tab{border:0;background:transparent;color:var(--muted);padding:.7rem 1rem;border-bottom:3px solid transparent;cursor:pointer;font:inherit}.settings-tab.active{color:var(--brand-red);border-bottom-color:var(--brand-red);font-weight:600}.settings-panel{padding-top:1.5rem}.location-editor-row{gap:8px;padding:8px}.location-editor-row label{gap:3px}.location-editor-row input[type=color],.location-editor-row .remove-location{height:34px}
.operation-modal{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:1rem;background:rgba(21,61,42,.28)}.operation-dialog{position:relative;width:min(440px,100%);padding:1.6rem;border-radius:14px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.2)}.operation-dialog h3{margin:0 2rem .5rem 0}.operation-dialog p{margin:0 0 1.2rem;color:var(--muted);line-height:1.5}.operation-close{position:absolute;right:1rem;top:.8rem;border:0;background:transparent;font-size:1.5rem;color:var(--muted);cursor:pointer}.operation-dialog.error{border-top:4px solid var(--brand-red)}.operation-dialog.success{border-top:4px solid #3c8a55}
.section-heading,.month-toolbar{justify-content:flex-start}.section-heading .week-controls,.month-toolbar .month-controls{order:-1}
.service-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#fff}.service-table{width:100%;border-collapse:collapse;min-width:620px}.service-table th,.service-table td{padding:.65rem .8rem;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.service-table thead th{background:#f7faf7;color:var(--muted);font-size:.78rem;font-weight:600}.service-table thead small,.service-table tbody small{display:block;color:var(--muted);font-size:.72rem;font-weight:400;margin-top:2px}.service-table tbody tr{cursor:pointer}.service-table tbody tr:hover,.service-table tbody tr:focus-within{background:#f4f8f4}.service-table tbody tr:last-child th,.service-table tbody tr:last-child td{border-bottom:0}.service-table tbody th{font-weight:600;color:var(--ink);min-width:220px}.service-table td b{font-size:.82rem;font-weight:600}.service-unavailable{color:#aab4ad}.service-editor-panel{scroll-margin-top:1rem}
.service-cards{display:grid;gap:.65rem}.service-card{display:grid;gap:.65rem;padding:.8rem;border:1px solid var(--line);border-radius:10px;background:#fff}.service-card-main{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.5fr);gap:.65rem}.service-card-main label,.service-location-row>label{display:grid;gap:.25rem;color:var(--muted);font-size:.75rem}.service-card-main textarea{min-height:58px}.service-location-list{display:grid;gap:4px}.service-location-row{display:grid;grid-template-columns:minmax(190px,1.4fr) 150px 150px;gap:.55rem;align-items:center;padding:.4rem .55rem;border:1px solid var(--line);border-radius:7px;background:#fafcfb}.switch-label{display:flex!important;align-items:center;gap:.45rem;color:var(--ink)!important;font-size:.82rem!important}.switch-label input{position:absolute;opacity:0}.switch{width:30px;height:18px;border-radius:20px;background:#cdd5d0;position:relative;transition:.15s}.switch:after{content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:#fff;transition:.15s}.switch-label input:checked+.switch{background:var(--brand-red)}.switch-label input:checked+.switch:after{left:15px}.service-location-row .modern-input{height:30px;padding:.25rem .45rem;font-size:16px}.service-card-actions{display:flex;justify-content:flex-end;align-items:center;gap:.6rem}.service-message{font-size:.75rem;color:var(--muted)}.icon-save{border:1px solid #cfddd1;border-radius:6px;padding:.28rem .7rem;background:#edf4ee;color:var(--ink);font-size:.78rem;cursor:pointer}.icon-save:hover{background:#dcebdd}.icon-save:disabled{opacity:.5;cursor:wait}@media(max-width:700px){.service-card-main,.service-location-row{grid-template-columns:1fr}.service-location-row{gap:.45rem}.service-card-actions{justify-content:space-between}}
.month-controls{display:grid;grid-template-columns:38px 150px 38px;width:234px}.month-controls b{text-align:center;white-space:nowrap}.week-controls{display:grid;grid-template-columns:38px 86px 38px;width:170px}.month-controls button,.week-controls button{width:100%;min-width:0}
.month-single{grid-template-rows:24px repeat(6,62px)}
