.booking-admin{color:#f7f4ed;background:#0b0d0c;min-height:100vh;padding:clamp(1rem,3vw,2.5rem);font:500 1rem/1.5 Karla,Arial,sans-serif}.booking-admin *{box-sizing:border-box}.booking-admin button,.booking-admin input,.booking-admin select{font:inherit}.booking-admin button{cursor:pointer}.booking-admin button:disabled{opacity:.48;cursor:not-allowed}.booking-admin a{color:#f5c873}.booking-admin :focus-visible{outline-offset:3px;outline:3px solid #f5c873}.admin-header,.admin-tabs,.admin-view,.admin-refresh,.admin-settings,.admin-alert{max-width:86rem;margin-left:auto;margin-right:auto}.admin-header{justify-content:space-between;align-items:start;gap:1rem;padding:.6rem 0 1.8rem;display:flex}.admin-header p{color:#e3a852;letter-spacing:.17em;margin:0;font-size:.8rem;font-weight:800}.admin-header h1{letter-spacing:-.04em;margin:.2rem 0 0;font:400 clamp(2.25rem,5vw,4rem)/1.06 Archivo Black,Arial,sans-serif}.admin-header a{border:1px solid #454843;border-radius:100px;padding:.55rem .9rem;text-decoration:none}.admin-header-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-header-actions button{color:#f7f4ed;background:#232823;border:1px solid #454843;border-radius:100px;padding:.55rem .9rem}.admin-login-page{place-items:center;padding:1.5rem;display:grid}.admin-login-card{background:#1b211c;border:1px solid #4b514a;border-radius:1rem;width:min(100%,28rem);padding:clamp(1.5rem,4vw,2.5rem);box-shadow:0 22px 70px #0005}.admin-login-card h1{margin:.8rem 0 .3rem;font:400 clamp(2rem,6vw,2.8rem)/1.1 Archivo Black,Arial,sans-serif}.admin-login-card p{color:#c4c9c1}.admin-login-card form{gap:.65rem;margin:1.5rem 0;display:grid}.admin-login-card form button{color:#252014;background:#e9b862;border:0;border-radius:.6rem;min-height:3rem;margin-top:.4rem;font-weight:800}.admin-login-card input[inputmode=numeric]{text-align:center;letter-spacing:.65em;font-variant-numeric:tabular-nums;font-size:1.8rem}.admin-login-card>a{margin-top:.3rem;display:inline-block}.admin-tabs{scrollbar-width:thin;border-bottom:1px solid #393d3a;gap:clamp(.2rem,2vw,1rem);display:flex;overflow-x:auto}.admin-tabs button{color:#a9ada9;background:0 0;border:0;border-bottom:3px solid #0000;flex:none;min-height:3.2rem;padding:.65rem .75rem;font-weight:800}.admin-tabs button.active{color:#fff;border-bottom-color:#f3bd63}.tab-count{color:#fff;background:#a9452e;border-radius:100px;justify-content:center;min-width:1.7rem;margin-left:.3rem;padding:.05rem .4rem;display:inline-flex}.admin-alert{border-radius:.75rem;margin-top:1rem;padding:.85rem 1rem;font-weight:700}.admin-alert.error{color:#ffe4d8;background:#512820}.admin-alert.success{color:#e0f5e5;background:#1e4334}.admin-refresh{color:#aaaeaa;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;padding:.85rem 0;font-size:.88rem;display:flex}.admin-refresh button,.calendar-controls>button,.day-jump>button,.archive-filters>button{color:#f7f4ed;background:#222522;border:1px solid #4a4e4a;border-radius:.7rem;min-height:2.65rem;padding:.5rem .8rem;font-weight:800}.admin-view{padding-bottom:4rem}.view-heading{justify-content:space-between;align-items:end;gap:1rem;margin:1.1rem 0 1.5rem;display:flex}.eyebrow{color:#f3bd63;letter-spacing:.16em;font-size:.78rem;font-weight:800}.view-heading h2{letter-spacing:-.04em;margin:.2rem 0;font:400 clamp(2rem,4vw,3.2rem)/1.1 Archivo Black,Arial,sans-serif}.view-heading p{color:#c5c6c1;margin:.5rem 0 0}.heading-number{color:#e7b766;font:400 clamp(2.7rem,7vw,5.5rem)/.95 Archivo Black,Arial,sans-serif}.admin-hint{color:#b8bbb5;margin:1rem 0 1.25rem}.admin-bookings{gap:.8rem;display:grid}.admin-empty{text-align:center;background:#1d211e;border:1px solid #343a35;border-radius:.8rem;padding:2rem}.admin-booking{background:#1b1f1c;border:1px solid #3b403b;border-radius:.9rem;min-width:0;padding:1rem 1.15rem}.admin-booking.focused{border-color:#edba61;box-shadow:inset 0 0 0 1px #edba61}.booking-card-top{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:.7rem;display:flex}.booking-card-top>div{flex-wrap:wrap;align-items:baseline;gap:.7rem;display:flex}.booking-card-top strong{overflow-wrap:anywhere;font-size:1.1rem}.booking-card-time{color:#f0c678;font:400 1.35rem Archivo Black,Arial,sans-serif}.booking-party{color:#c1c5bd}.admin-status{color:#e5eae3;white-space:nowrap;background:#3b413c;border-radius:100px;padding:.27rem .7rem;font-size:.84rem;font-weight:800;display:inline-block}.admin-status.pending{color:#ffde9b;background:#5c3e1c}.admin-status.confirmed{color:#c8f4d9;background:#244a35}.admin-status.declined,.admin-status.cancelled,.admin-status.no_show{color:#ffcbc1;background:#502d29}.booking-card-date{margin:.45rem 0 0}.booking-card-date button{color:#edc983;text-align:left;background:0 0;border:0;padding:0;font-weight:800}.booking-card-details{color:#bac1b9;overflow-wrap:anywhere;flex-wrap:wrap;gap:.45rem 1.1rem;margin:.8rem 0;font-size:.92rem;display:flex}.admin-note{color:#f4e6c9;white-space:pre-wrap;overflow-wrap:anywhere;background:#343026;border-radius:.6rem;padding:.8rem}.admin-card-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-card-actions button,.admin-inline button,.admin-closure-row button,.admin-save,.admin-pages button{color:#f7f4ed;background:#262d27;border:1px solid #5c665d;border-radius:.65rem;min-height:2.65rem;padding:.5rem .9rem;font-weight:800}.admin-card-actions button.primary,.admin-save{color:#252014;background:#e9b862;border-color:#e9b862}.admin-card-actions a{margin-left:auto}.admin-pages{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin:1.3rem auto;display:flex}.admin-denied{color:#fff;background:#0b0d0c;min-height:100vh;padding:3rem}.booking-admin input,.booking-admin select{color:#f7f4ed;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#1d231f;border:1px solid #586058;border-radius:.6rem;width:100%;min-width:0;min-height:2.75rem;padding:.45rem .65rem}.booking-admin input::placeholder{color:#aaaead}.booking-admin label{font-weight:800}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0 1.15rem;display:flex}.period-navigation{align-items:center;gap:.9rem;min-width:0;display:flex}.period-navigation h2{letter-spacing:-.035em;margin:0;font:400 clamp(1.45rem,4vw,2.35rem)/1.15 Archivo Black,Arial,sans-serif}.period-navigation button{color:#fff;background:#242a25;border:1px solid #454b45;border-radius:100%;flex:none;width:2.75rem;height:2.75rem;font-size:1.8rem;line-height:1}.calendar-controls{flex-wrap:wrap;gap:.6rem;display:flex}.mode-switch{background:#252a26;border:1px solid #424842;border-radius:.8rem;padding:.2rem;display:flex}.mode-switch button{color:#c1c6bf;background:0 0;border:0;border-radius:.6rem;padding:.45rem .75rem;font-weight:800}.mode-switch button.active{color:#1b211b;background:#f3f0e8}.month-calendar{border:1px solid #3c423d;border-radius:.85rem;overflow:hidden}.month-weekdays,.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.month-weekdays span{text-align:center;color:#aeb5ad;background:#1a1e1a;padding:.7rem 0;font-weight:800}.month-day{text-align:left;color:#f7f4ed;background:#121613;border-top:1px solid #353a35;border-bottom:0;border-left:0;border-right:1px solid #353a35;flex-direction:column;align-items:start;gap:.55rem;min-width:0;min-height:clamp(5.2rem,10vw,9rem);padding:.75rem;display:flex}.month-day:hover,.year-month:hover{background:#262b26}.month-day.outside{color:#747d75;background:#101310}.month-day.today .day-number{color:#171b17;background:#e1ad59;border-radius:50%}.day-number{place-items:center;min-width:2rem;height:2rem;font-size:1.08rem;font-weight:800;display:inline-grid}.day-count{overflow-wrap:anywhere;background:#26392c;border-left:3px solid #d6ac64;border-radius:.35rem;max-width:100%;padding:.27rem .4rem;font-size:.83rem;line-height:1.3;display:block}.day-count.inactive{background:#343835;border-color:#777f78}.day-count small{color:#c2d1c2;font-size:.75rem;display:block}.year-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.6rem,2vw,1.25rem);display:grid}.year-month{color:#fff;text-align:left;background:#181d19;border:1px solid #3d443e;border-radius:.85rem;min-width:0;padding:clamp(.75rem,2vw,1.2rem);display:block}.year-month.current{border-color:#d9a95d}.year-month-title{justify-content:space-between;align-items:baseline;gap:.4rem;margin-bottom:.8rem;display:flex}.year-month-title strong{font-size:1.4rem}.year-month-title small{color:#e5bd76;text-align:right;font-size:.8rem}.mini-calendar{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3rem .1rem;font-size:.85rem;display:grid}.mini-calendar span.outside{opacity:.2}.mini-calendar span.today{color:#171b17;background:#e4b05f;border-radius:100%;font-weight:800}.day-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.day-overview>div{background:#1b211d;border:1px solid #3c443e;border-radius:.8rem;padding:1rem;display:grid}.day-overview strong{color:#f0c477;font:400 2rem/1.1 Archivo Black,Arial,sans-serif}.day-overview span{color:#c6cac3;margin-top:.35rem}.day-jump{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:.75rem;margin:1.25rem 0;display:flex}.day-jump label{gap:.3rem;display:grid}.selected-booking{background:#29261e;border:1px solid #a77a39;border-radius:.85rem;margin:1.25rem 0;padding:1rem}.selected-title{color:#f5c877;justify-content:space-between;align-items:center;margin-bottom:.7rem;display:flex}.selected-title button{color:#f5c877;background:0 0;border:0;text-decoration:underline}.day-agenda{border-top:1px solid #454b46;margin-top:1.2rem}.agenda-hour{border-bottom:1px solid #343a35;grid-template-columns:5.3rem minmax(0,1fr);min-height:5rem;display:grid}.agenda-hour time{color:#a7aea7;padding:.8rem .7rem;font-weight:800}.agenda-events{border-left:1px solid #343a35;gap:.55rem;min-width:0;padding:.5rem 0 .5rem .8rem;display:grid}.agenda-empty{color:#69736a;padding:.8rem .25rem}.agenda-events .admin-booking{border-left:4px solid #e1b466}.admin-closures,.admin-settings{background:#191e1a;border:1px solid #3b433c;border-radius:.85rem;margin-top:2rem;padding:clamp(1rem,2vw,2rem)}.admin-closures h3,.admin-settings h2{margin-top:0}.admin-closures p{color:#c3c8c1}.admin-inline{flex-wrap:wrap;align-items:end;gap:.7rem;display:flex}.admin-inline label{gap:.3rem;display:grid}.admin-closure-row{border-top:1px solid #3a403a;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;display:flex}.archive-filters{grid-template-columns:minmax(14rem,2fr) minmax(9rem,1fr) minmax(10rem,1fr) auto;align-items:end;gap:.75rem;margin-bottom:1.2rem;display:grid}.archive-filters label,.admin-setting-grid label{gap:.35rem;display:grid}.admin-warning{color:#ffe2ae;background:#493720;border-radius:.65rem;padding:.85rem 1rem}.admin-toggle{align-items:center;gap:.6rem;padding:1rem 0;display:flex}.admin-toggle input,.admin-weekday input[type=checkbox]{width:1.2rem;height:1.2rem;min-height:auto}.admin-setting-grid{grid-template-columns:repeat(4,1fr);gap:.8rem;display:grid}.admin-weekly{gap:.4rem;margin-bottom:1.25rem;display:grid}.admin-weekday{border-bottom:1px solid #394039;grid-template-columns:9rem 14rem 1fr 1fr;align-items:center;gap:.8rem;padding:.55rem 0;display:grid}.admin-weekday label{align-items:center;gap:.45rem;display:flex}.admin-weekday label:has(input[type=time]){grid-template-columns:3rem 1fr;display:grid}@media (max-width:850px){.archive-filters{grid-template-columns:1fr 1fr}.year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-setting-grid{grid-template-columns:repeat(2,1fr)}.admin-weekday{grid-template-columns:1fr 1fr}}@media (max-width:600px){.admin-header h1{font-size:2.1rem}.admin-header a{font-size:.88rem}.admin-tabs button{padding:.65rem .6rem}.calendar-toolbar{align-items:start}.period-navigation{justify-content:space-between;width:100%}.period-navigation h2{text-align:center;font-size:1.45rem}.calendar-controls{justify-content:space-between;width:100%}.month-day{gap:.15rem;min-height:5.15rem;padding:.35rem}.day-number{min-width:1.8rem;height:1.8rem}.day-count{padding:.2rem .3rem;font-size:.75rem}.day-count>span,.day-count small{display:none}.day-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.agenda-hour{grid-template-columns:3.4rem minmax(0,1fr)}.agenda-hour time{padding:.7rem .2rem;font-size:.85rem}.agenda-events{padding-left:.4rem}.booking-card-top{display:grid}.admin-card-actions a{margin-left:0}.year-grid{gap:.5rem}.year-month{padding:.7rem}.year-month-title{display:grid}.year-month-title strong{font-size:1.15rem}.mini-calendar{gap:.17rem 0;font-size:.75rem}}@media (max-width:430px){.archive-filters,.admin-setting-grid{grid-template-columns:1fr}.admin-weekday{grid-template-columns:1fr 1fr}.month-weekdays span{font-size:.78rem}.month-day{min-height:4.5rem}.view-heading h2{font-size:1.75rem}}.admin-pwa-banner{color:#fff8e9;background:#29241f;border:1px solid #765e46;border-radius:1rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:1rem 0;padding:1.1rem 1.3rem;display:flex}.admin-pwa-banner strong{font-size:1.1rem}.admin-pwa-banner p{max-width:47rem;margin:.35rem 0 0;line-height:1.45}.admin-pwa-banner .admin-pwa-hint{color:#ead0b3;font-size:.875rem}.admin-pwa-controls{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.admin-pwa-controls button{color:#2a211b;min-height:2.8rem;font:inherit;cursor:pointer;background:#e9bd7b;border:1px solid #e9bd7b;border-radius:.6rem;padding:.55rem .9rem;font-weight:800}.admin-pwa-controls button:disabled{opacity:.6;cursor:not-allowed}.admin-pwa-controls span{font-size:.9rem}.recent-cancellations{border-top:1px solid #6c6257;margin-top:2rem;padding-top:1.2rem}.recent-cancellations h3{margin:0;font-size:1.35rem}.recent-cancellations>p{margin:.35rem 0 1rem}.jm-shell{--ink:#192a28;--muted:#677573;--line:#e1e8e5;--teal:#0e5e55;--pale:#e7f4f0;min-height:100vh;color:var(--ink);background:#f7f9f8;font:500 1rem/1.45 Karla,Arial,sans-serif;display:flex}.jm-shell *{box-sizing:border-box}.jm-shell button,.jm-shell input,.jm-shell select,.jm-shell textarea{font:inherit}.jm-shell button{cursor:pointer}.jm-shell button:disabled{opacity:.55;cursor:not-allowed}.jm-shell :focus-visible{outline-offset:2px;outline:3px solid #d49843}.jm-shell input,.jm-shell select,.jm-shell textarea{color:#1a2d2a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border:1px solid #c8d3cf;border-radius:.42rem;max-width:100%;min-height:2.7rem;padding:.48rem .65rem}.jm-shell textarea{resize:vertical;width:100%;min-height:5rem}.jm-shell label{color:#30423f;gap:.3rem;font-weight:700;display:grid}.jm-shell h1,.jm-shell h2,.jm-shell h3,.jm-shell p{margin-top:0}.jm-shell h1{letter-spacing:-.035em;font-size:2rem}.jm-shell h2{letter-spacing:-.025em;font-size:1.3rem}.jm-shell h3{font-size:1rem}.jm-shell a{color:var(--teal)}.jm-rail{color:#b8cbcb;z-index:5;background:#101f26;flex-direction:column;flex:0 0 80px;align-items:stretch;gap:.25rem;height:100vh;padding:.65rem .35rem;display:flex;position:sticky;top:0;overflow-y:auto}.jm-mark{color:#fff;place-items:center;height:3.5rem;font:800 1.7rem Arial;display:grid}.jm-mark span{color:#eab35a;align-self:start;margin-top:.55rem;margin-left:-1.3rem;font-size:.7rem}.jm-rail button,.jm-website{color:inherit;background:0 0;border:0;border-radius:.5rem;justify-items:center;gap:.12rem;min-height:3.8rem;padding:.65rem .2rem;font-size:.76rem;line-height:1.1;text-decoration:none;display:grid}.jm-rail button:hover,.jm-website:hover,.jm-rail button.current{color:#fff;background:#213c42}.jm-rail button.current:after{content:"";background:#6fbdad;width:1.4rem;height:2px}.jm-nav-icon{font-family:Arial,sans-serif;font-size:1.45rem;line-height:1.1}.jm-website{align-content:center;margin-top:auto;font-size:1.15rem}.jm-website span{font-size:.76rem}.jm-main{flex:1;min-width:0}.jm-top{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:1rem;min-height:4.2rem;padding:.6rem clamp(1rem,2vw,2rem);display:flex}.jm-brand{align-items:baseline;gap:.85rem;display:flex}.jm-brand strong{letter-spacing:-.03em;font-size:1.15rem}.jm-brand span,.jm-muted{color:var(--muted);font-size:.86rem}.jm-top-actions,.jm-tools{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.jm-top button,.jm-tools button,.jm-month-nav button,.jm-list-head button,.jm-table-prompt button,.jm-settings-side button,.jm-detail button,.jm-modal button,.jm-flash button{color:var(--teal);background:#fff;border:1px solid #c7d5d1;border-radius:.42rem;padding:.56rem .83rem;font-weight:700}.jm-top .jm-live{color:#217866;font-size:.84rem;font-weight:700}.jm-primary,.jm-tools .jm-primary,.jm-modal .jm-primary,.jm-settings-grid .jm-primary,.jm-customer-edit .jm-primary{background:var(--teal);color:#fff;border-color:var(--teal)}.jm-flash{background:#e5f4ee;border-left:4px solid #329b7c;justify-content:space-between;gap:.5rem;margin:1rem clamp(1rem,2vw,2rem);padding:.7rem .9rem;display:flex}.jm-flash.error{background:#fff0e9;border-color:#c94f36}.jm-service-toolbar{background:#fff;justify-content:space-between;align-items:center;gap:1rem;padding:1rem clamp(1rem,2vw,2rem);display:flex}.jm-day-switch{align-items:center;gap:.4rem;display:flex}.jm-day-switch>button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:.4rem;width:2.4rem;height:2.8rem;font-size:1.5rem}.jm-day-switch label{text-transform:uppercase;letter-spacing:.06em;flex-direction:column;align-items:center;gap:0;min-width:11rem;font-size:.78rem;display:flex}.jm-day-switch input{text-align:center;border:0;width:10rem;min-height:1.6rem;padding:0;font-size:1rem;font-weight:800}.jm-service-kpis{border-bottom:1px solid var(--line);background:#f1f6f4;flex-wrap:wrap;align-items:center;gap:1.5rem;padding:.65rem clamp(1rem,2vw,2rem);font-size:.93rem;display:flex}.jm-service-kpis b{color:var(--teal);font-size:1.2rem}.jm-notes{gap:.6rem;padding:.7rem clamp(1rem,2vw,2rem);display:flex;overflow:auto}.jm-notes article{background:#e6f1ed;border:1px solid #abd0c3;border-radius:.4rem;min-width:11rem;padding:.55rem .8rem}.jm-notes article.important{background:#fff0d9;border-color:#e2be7a}.jm-notes p{margin:0;font-size:.88rem}.jm-service-grid{grid-template-columns:minmax(300px,360px) minmax(0,1fr);min-height:calc(100vh - 12rem);display:grid}.jm-list{border-right:1px solid var(--line);background:#fff;min-width:0}.jm-list-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem;display:flex}.jm-list-head h2{margin:0}.jm-list-head small{background:var(--pale);color:var(--teal);border-radius:20px;padding:.1rem .45rem;font-size:.8rem}.jm-filter{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:.4rem;padding:.8rem;display:grid}.jm-filter input{grid-column:span 2;width:100%}.jm-filter select{min-width:0}.jm-booking-list{align-content:start;gap:.5rem;max-height:calc(100vh - 16.5rem);padding:.55rem;display:grid;overflow:auto}.jm-booking{text-align:left;background:#fff;border:1px solid #d8e2df;border-radius:.48rem;gap:.5rem;width:100%;padding:.8rem;display:grid;box-shadow:0 2px 5px #15392f0a}.jm-booking:hover,.jm-booking.selected{border-color:var(--teal);background:#f5fbf8}.jm-booking-top,.jm-booking-name,.jm-booking-bottom{align-items:center;gap:.5rem;display:flex}.jm-booking-top{color:var(--muted);font-size:.83rem}.jm-booking-top b{color:#9c2432;background:#fae5e9;border-radius:1rem;padding:.18rem .45rem;font-size:1rem}.jm-booking-top span:last-child{margin-left:auto}.jm-booking-name{justify-content:space-between;font-size:1.06rem;font-weight:800}.jm-booking-bottom{color:var(--muted);overflow-wrap:anywhere;font-size:.82rem}.jm-status{color:#7d631c;white-space:nowrap;background:#ecebe1;border-radius:.35rem;padding:.25rem .43rem;font-size:.78rem;font-style:normal;font-weight:800}.jm-status.seated,.jm-status.completed{color:#1d735d;background:#dff3ed}.jm-status.cancelled,.jm-status.no_show,.jm-status.declined{color:#a83b31;background:#ffe6e3}.jm-status.pending{color:#8e6418;background:#fff1d4}.jm-empty{color:var(--muted);text-align:center;background:#fafcfb;border:1px dashed #cdd9d5;border-radius:.5rem;padding:2rem}.jm-timeline{min-width:0;overflow-x:auto}.jm-timeline-head{justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 1.4rem;display:flex}.jm-timeline-head h2{margin:0}.jm-timeline-head span{color:var(--muted);font-size:.9rem}.jm-time-axis{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(16,minmax(4rem,1fr));width:calc(100% - 9.4rem);min-width:64rem;margin-left:8.2rem;display:grid}.jm-time-axis span{color:var(--muted);border-left:1px solid var(--line);padding:.6rem;font-size:.79rem}.jm-time-body{min-width:73.4rem;padding:0 1.2rem}.jm-table-row{border-bottom:1px solid var(--line);grid-template-columns:7rem minmax(64rem,1fr);align-items:stretch;min-height:4.2rem;display:grid}.jm-table-row strong{padding:.7rem .3rem;font-size:.88rem}.jm-table-row small{color:var(--muted);font-weight:400;display:block}.jm-table-track{background:repeating-linear-gradient(90deg,#0000 0 calc(6.25% - 1px),#e7edeb calc(6.25% - 1px) 6.25%);position:relative}.jm-table-track button{text-overflow:ellipsis;white-space:nowrap;color:#164f42;text-align:left;background:#cce9df;border:1px solid #76b7a5;border-radius:.35rem;min-height:2.3rem;padding:.35rem;font-size:.8rem;position:absolute;top:.8rem;overflow:hidden}.jm-table-prompt{color:var(--muted);justify-items:center;gap:.8rem;padding:3rem;display:grid}.jm-table-prompt b{color:var(--ink)}.jm-unassigned{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:.5rem;padding:1rem;display:flex}.jm-unassigned button{color:#1a5f4b;background:#e5f2ec;border:1px solid #9fcbbb;border-radius:.35rem;padding:.4rem .5rem}.jm-page{max-width:90rem;margin:auto;padding:clamp(1rem,3vw,2.2rem)}.jm-page-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.4rem;display:flex}.jm-page-head h1{margin:0}.jm-page-head p{color:var(--muted);margin:.2rem 0 0}.jm-page-head input{width:10rem}.jm-month-nav{align-items:center;gap:.5rem;display:flex}.jm-month-nav strong{text-align:center;min-width:10rem}.jm-calendar{border:1px solid var(--line);background:#fff;border-radius:.6rem;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.jm-calendar>strong{color:var(--muted);border-bottom:1px solid var(--line);text-align:center;padding:.7rem;font-size:.85rem}.jm-calendar>button{border:0;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:left;background:#fff;flex-direction:column;gap:.4rem;min-height:7.4rem;padding:.6rem;display:flex}.jm-calendar>button:hover{background:#edf8f3}.jm-calendar>button.outside{color:#adb9b5;background:#f4f6f5}.jm-calendar>button.today span{background:var(--teal);color:#fff;border-radius:50%;padding:.12rem .42rem}.jm-calendar small{color:#195944;background:#d9f0e5;border-radius:.3rem;padding:.25rem;font-size:.77rem;font-weight:700}.jm-activity-layout{grid-template-columns:minmax(0,2fr) minmax(17rem,1fr);gap:1.5rem;display:grid}.jm-activity-layout>div,.jm-activity-layout>aside,.jm-report-grid article,.jm-settings-grid article{border:1px solid var(--line);background:#fff;border-radius:.6rem;padding:1.25rem}.jm-event{text-align:left;border:0;border-top:1px solid var(--line);width:100%;color:var(--ink);background:#fff;align-items:center;gap:.75rem;padding:.8rem .2rem;display:flex}.jm-event:hover{background:#f4faf7}.jm-event-dot{background:#3f9d80;border-radius:50%;flex:none;width:.65rem;height:.65rem}.jm-event span:nth-child(2){flex:1}.jm-event small{color:var(--muted);font-size:.82rem;display:block}.jm-event time{color:var(--muted);font-size:.78rem}.jm-activity-layout .admin-pwa-banner{color:#1b4b40;background:#e8f4ef;border:1px solid #acd5c6;border-radius:.5rem;margin:0;padding:1rem;display:block}.jm-activity-layout .admin-pwa-hint{color:#40665a}.jm-activity-layout .admin-pwa-controls{margin-top:.8rem}.jm-activity-layout .admin-pwa-controls button{background:var(--teal);border-color:var(--teal);color:#fff}.jm-activity-layout aside>p{color:var(--muted);margin:1rem 0 0;font-size:.87rem}.jm-search{max-width:30rem;margin-bottom:1rem}.jm-customer-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:.8rem;display:grid}.jm-customer-grid button{text-align:left;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:.55rem;gap:.3rem;padding:1rem;display:grid}.jm-customer-grid button:hover{border-color:var(--teal)}.jm-customer-grid span,.jm-customer-grid small{color:var(--muted)}.jm-metric-grid{grid-template-columns:repeat(3,1fr);gap:.85rem;display:grid}.jm-metric-grid>div{border:1px solid var(--line);background:#fff;border-radius:.5rem;padding:1.2rem;display:grid}.jm-metric-grid span{color:var(--muted)}.jm-metric-grid b{color:var(--teal);font-size:2.3rem}.jm-report-grid{grid-template-columns:1.4fr 1fr;gap:1rem;margin-top:1rem;display:grid}.jm-report-line{border-top:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.65rem 0;display:flex}.jm-report-line span{color:var(--muted)}.jm-bars{border-bottom:1px solid var(--line);align-items:end;gap:.25rem;height:15rem;display:flex;overflow:auto}.jm-bars>div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:1rem;height:100%;display:flex}.jm-bars>div span{background:#4ba78c;border-radius:.2rem .2rem 0 0;width:100%}.jm-bars small{color:var(--muted);font-size:.67rem}.jm-search-results{gap:.5rem;max-width:55rem;display:grid}.jm-search-results>button{text-align:left;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:.4rem;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.jm-search-results>button:hover{border-color:var(--teal)}.jm-search-results>button span{color:var(--muted);flex:1}.jm-message-layout{grid-template-columns:minmax(15rem,20rem) minmax(0,1fr);gap:1rem;min-height:35rem;display:grid}.jm-thread-list,.jm-conversation{border:1px solid var(--line);background:#fff;border-radius:.6rem;min-width:0}.jm-thread-list{padding:1rem}.jm-thread-list>button{text-align:left;border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:.4rem;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.4rem 0;padding:.8rem;display:flex}.jm-thread-list>button.current{border-color:var(--teal);background:#f0f8f4}.jm-thread-list small{color:var(--muted);flex-basis:100%}.jm-thread-list em{color:#a13527;background:#ffe8e1;border-radius:1rem;padding:.1rem .4rem;font-size:.77rem;font-style:normal}.jm-conversation{flex-direction:column;display:flex}.jm-conversation header{border-bottom:1px solid var(--line);padding:1rem 1.2rem}.jm-conversation header h2{margin:0}.jm-conversation header span{color:var(--muted);font-size:.85rem}.jm-conversation-body{flex:1;align-content:start;gap:.8rem;max-height:28rem;padding:1rem;display:grid;overflow:auto}.jm-conversation-body article{overflow-wrap:anywhere;background:#eef4f1;border-radius:.6rem;max-width:84%;padding:.7rem .9rem}.jm-conversation-body article.staff{background:#dff0e9;justify-self:end}.jm-conversation-body article p{white-space:pre-wrap;margin:.25rem 0}.jm-conversation-body article time{color:var(--muted);font-size:.76rem}.jm-conversation form{border-top:1px solid var(--line);gap:.5rem;padding:1rem;display:grid}.jm-conversation form button{border:1px solid var(--teal);border-radius:.4rem;justify-self:end;padding:.55rem .8rem}.jm-conversation .jm-empty{margin:auto}.jm-review-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));gap:1rem;display:grid}.jm-review-list article{border:1px solid var(--line);background:#fff;border-radius:.6rem;padding:1.2rem}.jm-review-list article header{justify-content:space-between;align-items:start;gap:.8rem;display:flex}.jm-review-list article header small{color:var(--muted);display:block}.jm-review-list article header b{color:var(--teal);font-size:1.5rem}.jm-review-list article>p,.jm-review-reply p{white-space:pre-wrap;overflow-wrap:anywhere;margin:.8rem 0}.jm-review-list form{border-top:1px solid var(--line);gap:.5rem;padding-top:.8rem;display:grid}.jm-review-list form button{border:1px solid var(--teal);border-radius:.4rem;justify-self:start;padding:.5rem .8rem}.jm-review-reply{background:#eaf5ef;border-radius:.4rem;padding:.7rem}.jm-rating-summary{color:var(--muted);margin:1rem 0}.jm-login-modes{gap:.4rem;margin:1rem 0;display:flex}.jm-login-modes button{color:#f4f6f1;cursor:pointer;background:#253027;border:1px solid #596359;border-radius:.5rem;flex:1;padding:.6rem}.jm-login-modes button.active{background:#4c3b22;border-color:#edbc6c}.jm-user-row{border-top:1px solid #e1e8e5;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.6rem 0;display:flex}.jm-user-row div{flex:1;min-width:9rem}.jm-user-row small{color:#677573;display:block}.jm-staff-form{grid-template-columns:1fr 1fr;gap:.7rem;display:grid}.jm-staff-form button{grid-column:span 2;justify-self:start}.jm-staff-reset{grid-template-columns:minmax(0,1fr) auto auto}.jm-settings-grid{grid-template-columns:minmax(0,1.45fr) minmax(20rem,1fr);align-items:start;gap:1rem;display:grid}.jm-settings-grid article p{color:var(--muted)}.jm-settings-side{gap:1rem;display:grid}.jm-settings-grid article>label{margin:1rem 0}.jm-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.jm-fields input,.jm-fields select{width:100%}.jm-check{align-items:center;gap:.5rem!important;display:flex!important}.jm-check input{width:1.2rem;height:1.2rem;min-height:0}.jm-weekday{border-top:1px solid var(--line);grid-template-columns:6.5rem 5.5rem 1fr 1fr;align-items:center;gap:.5rem;padding:.4rem 0;display:grid}.jm-weekday label{align-items:center;gap:.35rem;font-size:.85rem;display:flex}.jm-weekday input[type=checkbox]{width:1rem;height:1rem;min-height:0}.jm-settings-grid article>.jm-primary{margin-top:1rem}.jm-inline-form{grid-template-columns:minmax(0,1.3fr) 5rem auto;gap:.4rem;margin:.8rem 0;display:grid}.jm-settings-side article:nth-child(2) .jm-inline-form{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto}.jm-setting-line{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.7rem;padding:.55rem 0;display:flex}.jm-setting-line span{flex:1}.jm-setting-line button{padding:.28rem .5rem}.jm-overlay{z-index:20;background:#0d221db0;justify-content:flex-end;display:flex;position:fixed;inset:0}.jm-detail{background:#fff;width:min(100%,29rem);height:100dvh;padding:0 1.3rem 1.3rem;overflow:auto;box-shadow:-12px 0 42px #0f2c2940}.jm-detail header,.jm-modal header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 0;display:flex}.jm-detail header h2,.jm-modal h2{margin:.25rem 0;font-size:1.5rem}.jm-detail header small{color:var(--muted)}.jm-detail header>button,.jm-modal header button{color:var(--muted);background:0 0;border:0;padding:.1rem .4rem;font-size:1.8rem}.jm-detail-stats{border-bottom:1px solid var(--line);gap:.4rem;padding:1.4rem 0;display:grid}.jm-detail-stats b{font-size:1.3rem}.jm-detail-stats .jm-status{justify-self:start}.jm-detail-section{border-bottom:1px solid var(--line);gap:.45rem;padding:1.3rem 0;display:grid}.jm-detail-section h3{margin-bottom:.1rem}.jm-detail-section p{overflow-wrap:anywhere;margin:0}.jm-detail-section>a{overflow-wrap:anywhere}.jm-detail-section>button{justify-self:start}.jm-detail-actions{flex-wrap:wrap;gap:.45rem;padding:1.2rem 0;display:flex}.jm-detail-actions h3{flex-basis:100%}.jm-detail-actions button.danger{color:#a83535;border-color:#ebbbb5}.jm-detail footer{gap:.5rem;padding-top:1rem;display:flex}.jm-detail footer button:first-child{background:var(--teal);color:#fff}.jm-history-row{text-align:left;justify-content:space-between;align-items:center;gap:.5rem;width:100%;display:flex}.jm-customer-edit{border:1px solid var(--line);border-radius:.4rem;gap:.75rem;padding:1rem;display:grid}.jm-customer-edit .jm-primary{justify-self:start}.jm-modal{background:#fff;border-radius:.65rem;align-self:center;width:min(100%,49rem);max-height:100dvh;margin:auto;overflow:auto;box-shadow:0 20px 60px #071b1870}.jm-modal.jm-small{width:min(100%,29rem)}.jm-modal header,.jm-modal footer{padding:1rem 1.4rem}.jm-modal-body{gap:1rem;max-height:calc(100dvh - 9rem);padding:1.4rem;display:grid;overflow:auto}.jm-modal-body h3{border-top:1px solid var(--line);margin:.5rem 0 0;padding-top:1rem}.jm-modal-body>label{gap:.3rem;display:grid}.jm-modal footer{border-top:1px solid var(--line);justify-content:flex-end;gap:.6rem;display:flex}.jm-form-hint{color:var(--muted);font-size:.86rem}@media (max-width:980px){.jm-service-grid{grid-template-columns:minmax(250px,40%) minmax(0,1fr)}.jm-settings-grid,.jm-activity-layout,.jm-report-grid{grid-template-columns:1fr}.jm-timeline-head{display:block}}@media (max-width:700px){.jm-shell{display:block}.jm-rail{flex-direction:row;align-items:stretch;width:100%;height:auto;padding:.25rem .4rem;position:sticky;top:0;overflow:auto hidden}.jm-mark{display:none}.jm-rail button,.jm-website{flex:0 0 5rem;min-width:5rem;min-height:3.25rem;padding:.35rem .2rem;font-size:.75rem}.jm-rail .jm-nav-icon{font-size:1.2rem}.jm-website{margin-top:0}.jm-website span{font-size:.75rem}.jm-brand span,.jm-live{display:none}.jm-service-toolbar{flex-wrap:wrap;align-items:stretch}.jm-tools{width:100%}.jm-service-grid{display:block}.jm-list{border-right:0}.jm-booking-list{max-height:none}.jm-timeline{border-top:1px solid var(--line)}.jm-calendar>button{min-height:5rem;padding:.3rem}.jm-calendar small{font-size:.65rem}.jm-metric-grid{grid-template-columns:repeat(2,1fr)}.jm-top{padding:.5rem .7rem}.jm-top-actions button{padding:.35rem}.jm-page{padding:1rem}.jm-weekday{grid-template-columns:1fr 1fr}.jm-weekday input[type=time]{width:100%}.jm-message-layout{grid-template-columns:1fr}.jm-thread-list{max-height:16rem;overflow:auto}}@media (max-width:500px){.jm-top-actions button:first-of-type{display:none}.jm-service-kpis{gap:.7rem}.jm-calendar>button{min-height:4.3rem}.jm-calendar small{padding:.1rem;font-size:.65rem}.jm-fields{grid-template-columns:1fr}.jm-modal{border-radius:0;max-height:100dvh}.jm-modal-body{max-height:calc(100dvh - 8rem)}.jm-inline-form,.jm-settings-side article:nth-child(2) .jm-inline-form{grid-template-columns:1fr 1fr}.jm-inline-form button{grid-column:span 2}.jm-metric-grid b{font-size:1.7rem}}@media print{.jm-rail,.jm-top-actions,.jm-tools,.jm-filter,.jm-timeline,.jm-overlay,.jm-list-head button,.jm-service-toolbar,.jm-page{display:none!important}.jm-shell{background:#fff;display:block}.jm-main{width:100%}.jm-service-grid{display:block}.jm-booking-list{max-height:none}.jm-booking{break-inside:avoid}.jm-booking-list{display:block}.jm-booking-list>*{margin-bottom:.4rem}}.jm-shell input,.jm-shell select,.jm-shell textarea{width:100%;min-width:0}.jm-shell label,.jm-page>div,.jm-settings-grid article,.jm-metric-grid>div{min-width:0}.jm-shell button{overflow-wrap:anywhere;min-height:2.75rem}.jm-shell .jm-booking-name,.jm-thread-list b,.jm-detail header h2,.jm-user-row div,.jm-report-line,.jm-event span,.jm-customer-grid button{overflow-wrap:anywhere;min-width:0}.jm-booking-name{flex-wrap:wrap}.jm-status{flex-shrink:0;font-size:.875rem}.jm-rail button,.jm-website span{font-size:.875rem}.jm-rail{flex-basis:6rem}.jm-main>.admin-pwa-banner{color:#1b4b40;background:#e8f4ef;border:1px solid #acd5c6;border-radius:.5rem;justify-content:space-between;align-items:start;gap:1rem;margin:1rem clamp(1rem,2vw,2rem);padding:1rem;font-size:1rem;display:flex}.jm-main>.admin-pwa-banner p{color:#36574d;margin:.35rem 0 0;font-size:.875rem}.jm-main>.admin-pwa-banner .admin-pwa-controls{flex-wrap:wrap;flex:0 0 min(20rem,40%);justify-content:flex-start;align-items:start;gap:.5rem;min-width:0;display:flex}.jm-main>.admin-pwa-banner button{background:var(--teal);color:#fff;border:1px solid var(--teal);border-radius:.4rem;padding:.55rem .8rem}.jm-main>.admin-pwa-banner .admin-pwa-controls span{overflow-wrap:anywhere;flex-basis:100%;font-size:.875rem}.jm-dialog-error{color:#8c2a1b;overflow-wrap:anywhere;background:#fff0e9;border-left:4px solid #c94f36;margin:.75rem 0;padding:.75rem}.jm-modal footer{z-index:1;background:#fff;position:sticky;bottom:0}.jm-month-nav{flex-wrap:wrap}.jm-calendar>button{overflow-wrap:anywhere;min-width:0}.jm-calendar>button small{max-width:100%;font-size:.875rem;line-height:1.35}.jm-calendar>button span{font-size:.875rem}.jm-detail{overscroll-behavior:contain}.jm-search-results>button{flex-wrap:wrap}@media (max-width:700px){.jm-rail{flex-basis:auto;width:100%;max-width:100vw}.jm-rail button,.jm-website{flex-basis:6rem;min-width:6rem}.jm-main>.admin-pwa-banner{display:block}.jm-main>.admin-pwa-banner .admin-pwa-controls{margin-top:.75rem}.jm-event{flex-wrap:wrap}.jm-event time{flex-basis:100%;padding-left:1.4rem}.jm-top{flex-wrap:wrap;gap:.5rem}.jm-top-actions button{min-height:2.75rem}.jm-staff-form{grid-template-columns:minmax(0,1fr)}.jm-staff-form button{grid-column:auto}.jm-staff-reset{grid-template-columns:minmax(0,1fr)}.jm-staff-reset button{grid-column:auto}.jm-calendar>strong{padding:.4rem .1rem;font-size:.875rem}.jm-calendar>button{min-height:5.5rem}.jm-calendar>button small{color:#195944;background:0 0;padding:0}.jm-day-switch{min-width:0}.jm-tools button{flex:1}.jm-report-line{flex-wrap:wrap}}@media (max-width:380px){.jm-service-kpis{gap:.65rem}.jm-top-actions{gap:.3rem}.jm-top-actions button{padding:.4rem .55rem}.jm-metric-grid{grid-template-columns:minmax(0,1fr)}.jm-detail{padding:0 1rem 1rem}.jm-modal header,.jm-modal footer,.jm-modal-body{padding:1rem}}@media (prefers-reduced-motion:reduce){.jm-shell *{scroll-behavior:auto!important;transition:none!important}}
