.o-app{min-height:100vh;background:#f7f7f0;color:#243222;font-family:Arial,sans-serif;font-size:16px}.o-app *{box-sizing:border-box}.o-app button,.o-app input,.o-app textarea,.o-app select{font:inherit}.o-app a{color:#4b7014}.o-top{display:flex;align-items:center;justify-content:space-between;padding:16px max(24px,calc((100vw - 1140px)/2));background:#fff;border-bottom:1px solid #e4e6db;gap:20px}.o-top>a:first-child{display:flex;align-items:center;gap:10px;text-decoration:none;color:#243222}.o-top img{width:50px;height:50px;object-fit:cover;border-radius:50%}.o-top span{font-size:13px;color:#73806b}.o-wrap{max-width:1140px;margin:auto;padding:50px 24px 90px}.o-intro{max-width:670px;margin-bottom:30px}.o-overline{font-size:13px!important;color:#628319!important;font-weight:700;letter-spacing:.12em}.o-intro h1{font-size:clamp(34px,5vw,54px);line-height:1.15;margin:10px 0}.o-intro>p{line-height:1.6}.o-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);gap:24px;align-items:start}.o-card{background:#fff;border:1px solid #e5e9dc;border-radius:20px;padding:32px;box-shadow:0 8px 35px #23310b0c}.o-card h2{font-size:30px;margin:22px 0 8px}.o-card h3{margin:12px 0}.o-card p{color:#697362;line-height:1.6}.o-progress{display:flex;gap:8px}.o-progress span{flex:1;height:5px;border-radius:4px;background:#e6e9dd}.o-progress .active{background:#6a8b21}.o-options{display:grid;gap:8px;margin:25px 0}.o-options button{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:60px;padding:14px 18px;border:1px solid #dfe5d7;border-radius:12px;background:#fff;color:#243222;text-align:left;cursor:pointer}.o-options button:hover,.o-options button.selected,.o-slots button.selected{border-color:#658b19;background:#f2f7e8}.o-options small{white-space:nowrap;color:#62735b}.o-avatar{width:50px;height:50px;object-fit:cover;border-radius:50%}.o-actions{display:flex;justify-content:space-between;align-items:center;margin-top:28px;gap:12px}.o-actions button:not(.o-back),.o-primary{border:0;border-radius:10px;background:#587c18;color:white!important;padding:13px 24px;text-decoration:none;cursor:pointer}.o-actions button:disabled{opacity:.45;cursor:not-allowed}.o-back{border:0;background:transparent;color:#4b7014;cursor:pointer}.o-summary{position:sticky;top:20px}.o-summary h3{font-size:23px;margin:0 0 20px}.o-summary dl{margin:0}.o-summary dt{font-size:14px;color:#73806b;margin-top:14px}.o-summary dd{margin:3px 0 0;font-weight:700}.o-summary small{display:block;margin-top:25px;color:#697362;line-height:1.5}.o-label,.o-form label{display:grid;gap:7px;margin:15px 0;font-weight:600}.o-label input,.o-form input:not([type=checkbox]),.o-form textarea,.o-form select{border:1px solid #d8dfd1;border-radius:9px;padding:12px;width:100%;background:white;color:#243222}.o-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:10px}.o-slots button{padding:12px;border:1px solid #dce2d1;background:white;border-radius:8px;cursor:pointer}.o-form .o-check{display:flex;align-items:flex-start;font-weight:400;line-height:1.4}.o-check input{margin-top:4px}.o-error{padding:12px;background:#fff0ed;color:#9c3327!important;border-radius:9px}.o-table{width:100%;border-collapse:collapse;font-size:14px}.o-table td,.o-table th{padding:11px 8px;border-bottom:1px solid #e5e9dc;text-align:left}.o-table{display:block;overflow:auto}.o-nav{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}.o-nav button{border:1px solid #dce2d1;border-radius:9px;background:#fff;padding:9px 13px;cursor:pointer}.o-nav button.selected{background:#587c18;color:#fff}@media(max-width:760px){.o-top{padding:12px 18px}.o-top span{display:none}.o-wrap{padding:30px 16px}.o-grid{grid-template-columns:1fr}.o-summary{position:static}.o-card{padding:20px}.o-options button{align-items:flex-start}.o-options small{font-size:12px}.o-card h2{font-size:25px}}
.admin-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:12px 0;padding-bottom:12px;border-bottom:1px solid #ddd}.admin-row label:first-child{flex:2 1 240px}.admin-row label{flex:1 1 130px}.admin-row input,.admin-row textarea{width:100%}.admin-scroll{overflow-x:auto}.o-form{max-width:100%}.o-form label{display:block;margin:12px 0}.o-form input,.o-form select,.o-form textarea{max-width:100%}#notice{min-height:1.4em;color:#85553e}

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
.o-app{margin:0;background:#f9f8f3;color:#253023;font-family:'DM Sans',Arial,sans-serif}.o-app h1,.o-app h2,.o-app h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.025em}.o-app .o-intro h1{font-size:clamp(42px,6vw,72px)}.o-app .o-card{border-radius:4px;border-color:#e7e4d9;box-shadow:0 14px 50px #202c1609}.o-app .o-primary,.o-app .o-actions button:not(.o-back){border-radius:3px;background:#4e6f14}.o-app .o-overline{color:#667e34!important}.o-app .o-options button{border-radius:3px}.o-app .o-nav button{border-radius:2px}.o-app .o-summary{background:#f0f0e8;border-color:#e5e5d9}.o-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 20px}.o-admin-grid button{align-self:end}.o-admin-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:15px}.o-admin-cards .o-card{padding:18px}.o-admin-cards input:not([type=checkbox]){width:100%;padding:10px;border:1px solid #ddd}.o-admin-cards label{display:block;margin-bottom:12px}.o-muted{color:#687568}.o-app button:hover{filter:brightness(.96)}@media(max-width:760px){.o-admin-grid{grid-template-columns:1fr}}

.o-calendar-top{display:flex;align-items:center;justify-content:space-between;margin:20px 0 10px;text-transform:capitalize}.o-calendar-top button{padding:8px 12px;border:1px solid #dedfd1;background:white;cursor:pointer}.o-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #e5e5d9;border-left:1px solid #e5e5d9;margin-bottom:26px}.o-calendar>b{text-align:center;background:#f3f3ed;padding:10px 3px}.o-calendar>b,.o-day{border-right:1px solid #e5e5d9;border-bottom:1px solid #e5e5d9}.o-day{min-height:100px;padding:9px;overflow:hidden}.o-day strong{font:600 14px 'DM Sans',sans-serif}.o-day small{display:block;background:#eef2e5;color:#435e17;border-radius:3px;padding:4px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:760px){.o-day{min-height:65px;padding:4px}.o-day small{font-size:9px;padding:2px}.o-calendar>b{font-size:11px}}
.o-date-strip{display:flex;gap:9px;overflow:auto;padding:12px 2px 18px;scrollbar-color:#889574 #f2f1e9}.o-date-strip button{flex:0 0 72px;height:90px;background:#fff;border:1px solid #dadfd1;color:#344029;display:grid;place-items:center;cursor:pointer}.o-date-strip button.selected,.o-slots button.selected{background:#3a5604!important;color:white;border-color:#3a5604}.o-date-strip button strong{font:500 30px Georgia,serif}.o-date-strip button small{font-size:12px}.o-slots{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.o-slots button{border-radius:2px;min-height:58px;font-weight:700}.o-calendar{border:0;gap:4px}.o-calendar>b{border:0;background:none}.o-day{border:1px solid #e3e7db;background:#fff;min-height:82px;cursor:pointer;text-align:left}.o-day.o-empty{border:0;background:transparent}.o-day.has-events{background:#f3f7eb}.o-day.is-today{border-color:#647e32}.o-day.chosen{background:#42610d;color:white}.o-day-info small{background:#e2eccf}.o-day.chosen small{background:#638a30;color:white}.o-cal-hint{font-size:14px}.o-day-details{padding:14px;border-left:3px solid #607d27;background:#f6f8f2;margin:-8px 0 24px}.o-staff-check{border:1px solid #e0e5d7;padding:15px;grid-column:1/-1;display:flex;gap:10px 25px;flex-wrap:wrap}.o-staff-check legend{font-weight:700}.o-staff-check label{display:flex!important;align-items:center;gap:8px;cursor:pointer}.o-staff-check input{width:auto!important}.voucher-sheet{max-width:690px;position:relative;margin:0 auto}.voucher-sheet>img{display:block;width:100%}.voucher-overlay{position:absolute;left:22%;top:56%;width:66%;font:clamp(12px,2vw,23px) Georgia,serif;color:#253812}.voucher-overlay p{height:clamp(28px,5vw,66px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:0}.voucher-pending{position:absolute;left:0;right:0;top:52%;padding:18px;background:#fff8;color:#742c1e;text-align:center;font-weight:800;transform:rotate(-8deg)}@media(max-width:760px){.o-day{min-height:55px}.o-day-info small{font-size:8px}.o-staff-check{display:block}}@media print{.o-top,.o-actions,.o-wrap>h1{display:none!important}.o-wrap{padding:0!important}.voucher-sheet{max-width:100%;break-inside:avoid}.voucher-pending{background:#fff8!important;print-color-adjust:exact}}

.o-header-nav{display:flex;gap:20px;align-items:center}.o-header-nav a{white-space:nowrap}.o-app-alert{background:#f9f0dd;color:#583d1a;padding:15px;border-left:4px solid #c29437}.o-required{color:#ad372b;font-weight:800}.o-calendar-top #currentMonth{font-weight:700}@media(max-width:650px){.o-header-nav{gap:8px;font-size:12px}.o-top>a:first-child strong{display:none}}

.o-admin-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.o-admin-cards .o-card{padding:25px}.o-admin-cards .o-card textarea{width:100%;min-height:190px;border:1px solid #d8dfd1;padding:13px;line-height:1.5;resize:vertical}.o-admin-cards .o-card input:not([type=checkbox]){font-size:18px}.o-admin-cards .o-card label{font-weight:600}@media(max-width:820px){.o-admin-cards{grid-template-columns:1fr}}

.o-photo-preview{display:block;width:160px;height:110px;object-fit:cover;margin:0 0 14px}.o-booking-item{border-bottom:1px solid #dfe5d7;padding:16px 0;margin-bottom:10px}.o-booking-item a{color:#42610d;font-weight:700}.o-card .o-primary{display:inline-block;margin:10px 0 18px}.o-app h1{overflow-wrap:anywhere}

/* Installed app: a portrait layout without horizontal page scrolling */
html,body.o-app{width:100%;max-width:100%;overflow-x:clip}.o-app .o-wrap,.o-app .o-card,.o-app .o-grid,.o-app #booking,.o-app .o-options,.o-app .o-summary{min-width:0;max-width:100%}.o-app .o-date-strip{min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}.o-app .o-card input,.o-app .o-card select,.o-app .o-card textarea{max-width:100%}
@media(max-width:760px){.o-app .o-top{width:100%;min-width:0;display:grid;grid-template-columns:1fr;gap:12px;padding:12px 16px}.o-app .o-top>a:first-child{min-width:0;font-size:16px;gap:10px}.o-app .o-top>a:first-child img{width:40px;height:40px;flex:none}.o-app .o-header-nav{display:flex;flex-wrap:wrap;gap:8px 16px;min-width:0;font-size:13px}.o-app .o-header-nav a{white-space:normal;overflow-wrap:anywhere}.o-app .o-wrap{width:100%;padding:24px 14px 65px}.o-app .o-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.o-app .o-card{padding:18px;width:100%}.o-app .o-intro h1{font-size:clamp(36px,9vw,54px);line-height:1.08}.o-app .o-options button{min-width:0;overflow-wrap:anywhere;padding:12px}.o-app .o-options button>span{min-width:0}.o-app .o-options small{white-space:normal}.o-app .o-options button>strong:last-child{flex:0 0 auto}.o-app .o-slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.o-app .o-slots button{min-width:0}.o-app .o-date-strip button{flex:0 0 64px;height:78px}.o-app .o-actions{gap:8px}.o-app .o-actions button:not(.o-back){padding:12px;min-width:0;max-width:75%;white-space:normal;overflow-wrap:anywhere}.o-app .o-form input,.o-app .o-form textarea,.o-app .o-form select{width:100%;min-width:0}.o-app .o-summary{position:static}}

.o-danger{border:1px solid #b14135;background:#fff;color:#a02c22;padding:11px 18px;cursor:pointer;margin-left:12px}.o-status{display:inline-block;white-space:nowrap;padding:7px 10px;font-size:14px;letter-spacing:.025em;border-radius:3px}.o-status-cancelled{color:#a51919!important;font-weight:800;background:#fff0ed}.o-status-confirmed{color:#386118!important;font-weight:700;background:#eaf3e5}.o-cancelled-row{background:#fffafa}.o-list-controls{display:flex;gap:25px;align-items:end;justify-content:space-between;flex-wrap:wrap;margin:15px 0}.o-list-controls label{flex:1 1 320px;font-weight:700}.o-list-controls input{display:block;width:100%;max-width:520px;padding:12px;border:1px solid #cfd9c6;margin-top:6px}.o-pages{display:flex;justify-content:center;align-items:center;gap:18px;margin:22px 0}.o-pages button{padding:10px 18px;border:1px solid #c9d5bb;background:#fff;cursor:pointer}.o-pages button:disabled{opacity:.4;cursor:not-allowed}.o-client-link{color:#425e14;background:none;border:0;text-decoration:underline;font-weight:700;cursor:pointer;padding:0}.o-client-card{border:1px solid #d8e1cf;background:#f5f8ef;padding:20px;margin:16px 0}.o-client-close{float:right;border:0;background:none;font-size:26px;cursor:pointer}.o-client-visits{max-height:280px;overflow:auto}.o-client-visits>div{display:grid;grid-template-columns:180px minmax(0,1fr) 130px;gap:12px;padding:9px;border-top:1px solid #d8e1cf}@media(max-width:700px){.o-client-visits>div{grid-template-columns:1fr}.o-appointments{min-width:780px}.o-danger{margin-left:0;margin-top:10px}}
/* Voucher overlay sits on its printed lines at every screen size. */
.voucher-sheet{width:min(100%,690px);aspect-ratio:1055/1491}.voucher-sheet>img{width:100%;height:100%;object-fit:fill}.voucher-overlay{position:absolute;inset:0;width:100%;font:clamp(12px,2.7vw,21px) Georgia,serif}.voucher-overlay p{position:absolute;left:23%;width:62%;height:auto;margin:0;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voucher-overlay p:nth-child(1){top:56.8%}.voucher-overlay p:nth-child(2){top:62.2%}.voucher-overlay p:nth-child(3){left:46%;width:39%;top:68.0%}@media print{.voucher-sheet{width:100%;max-width:690px}.voucher-overlay{font-size:20px}}
/* Admin records: readable, centered lists and compact search. */
#panel{max-width:1320px;margin-inline:auto;box-sizing:border-box}
.o-list-controls{max-width:1080px;margin:18px auto 24px;justify-content:flex-start;align-items:end;gap:12px 16px}
.o-list-controls label{flex:0 1 370px;font-size:14px;line-height:1.35}
.o-list-controls input{max-width:370px;min-height:42px;border-radius:5px;margin-top:7px;font-size:15px}
.o-list-controls>span{margin-left:auto;color:#66705d;font-size:14px;padding-bottom:10px}
.o-search-button{min-height:42px;padding:8px 18px;border:1px solid #526f11;background:#526f11;color:#fff;border-radius:5px;cursor:pointer;font-weight:700}
.o-search-button:hover,.o-search-button:focus-visible{background:#3c5709}
.o-table-wrap{max-width:1080px;margin:22px auto 0;overflow-x:auto}
.o-table-wrap .o-table{width:100%;min-width:780px;border-collapse:collapse}
.o-table-wrap .o-table th,.o-table-wrap .o-table td{text-align:left;padding:12px 10px;vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid #e7ebdf}
.o-table-wrap .o-table th{white-space:nowrap;background:#f5f8ef}
.o-vouchers select{max-width:190px;padding:8px;border:1px solid #cbd5c0;border-radius:4px}
.service-row[role="link"]{cursor:pointer}
.service-row[role="link"]:focus-visible{outline:3px solid #526f11;outline-offset:3px}
@media(max-width:700px){.o-list-controls>span{margin-left:0;width:100%;padding-bottom:0}.o-list-controls label{flex:1 1 100%}.o-list-controls input{max-width:none}.o-table-wrap .o-table{min-width:780px}}
.o-vouchers .o-voucher-status{font-weight:700;border-radius:5px;min-width:155px}
.o-vouchers .o-voucher-new{color:#865700;background:#fff3d7;border-color:#e2bf6d}
.o-vouchers .o-voucher-contacted{color:#165578;background:#e7f5fc;border-color:#97c8e1}
.o-vouchers .o-voucher-paid{color:#286018;background:#eaf4e6;border-color:#a6cf9c}
.o-vouchers .o-voucher-cancelled{color:#a32828;background:#fff0ee;border-color:#e5a9a2}
.o-install-help{margin-top:26px;border-top:1px solid #dce4d1;padding-top:17px;color:#4b5a45}.o-install-help summary{font-size:15px;color:#486817;font-weight:700;cursor:pointer}.o-install-help p{font-size:14px;line-height:1.6}
/* Studio administration */
body:has(.o-admin-layout){background:#f7f5ef}.o-admin-layout{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:calc(100vh - 78px)}.o-admin-sidebar{background:#263d25;padding:30px 14px;color:#fff;display:flex;flex-direction:column;gap:4px}.o-admin-sidebar h2{font:26px Georgia,serif;color:#fff;margin:5px 12px 22px}.o-admin-sidebar button{width:100%;text-align:left;background:transparent;border:0;color:#e7eadd;padding:14px 16px;cursor:pointer;border-radius:5px;font-size:15px}.o-admin-sidebar button:hover,.o-admin-sidebar button.selected{background:#526d3e;color:#fff}.o-admin-main{min-width:0;padding:34px clamp(18px,3.5vw,65px)}.o-admin-main>h1{font:clamp(32px,4vw,48px) Georgia,serif;margin:8px 0 26px}.o-admin-main #panel{max-width:none;background:#fff;padding:30px;border:1px solid #e5e7df;border-radius:9px;box-shadow:0 10px 30px #21320c0a}.o-admin-main #panel h2{font:clamp(26px,3vw,36px) Georgia,serif}.o-service-checks{border:1px solid #d8dfcf;padding:13px;margin:12px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.o-service-checks legend{font-weight:700}.o-service-checks label{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:400!important}.o-service-checks input{width:auto!important}.o-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.o-fields input{width:100%}.o-hours-picker{display:block;margin:20px 0;font-weight:700;max-width:450px}.o-hours-picker select{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #cbd6c4}.o-redeem-form{display:flex;align-items:end;gap:15px;flex-wrap:wrap;background:#f5f8f0;padding:18px;margin:22px 0}.o-redeem-form input{display:block;padding:12px;min-width:230px;margin-top:7px}.o-admin-main .o-table-wrap,.o-admin-main .o-list-controls{max-width:none}.o-status-pending{color:#926400;background:#fff0c8}.voucher-pending{font-size:clamp(11px,2vw,17px);padding:8px;top:49%;left:13%;right:13%;opacity:.88}.voucher-sheet .voucher-overlay p{overflow:visible;white-space:normal;line-height:1.1}
@media(max-width:850px){.o-admin-layout{grid-template-columns:1fr}.o-admin-sidebar{flex-direction:row;overflow-x:auto;padding:8px;gap:4px;position:sticky;top:0;z-index:3}.o-admin-sidebar h2{display:none}.o-admin-sidebar button{width:max-content;white-space:nowrap;padding:10px}.o-admin-main{padding:20px 12px}.o-admin-main #panel{padding:16px}.o-fields{grid-template-columns:1fr}.o-service-checks{grid-template-columns:1fr}}
@media print{body:has(.voucher-sheet){margin:0!important;padding:0!important}.voucher-sheet,.voucher-sheet.voucher-format-A4,.voucher-sheet.voucher-format-A5,.voucher-sheet.voucher-format-A6{margin:0!important;max-width:none!important;break-inside:avoid;page-break-inside:avoid}.voucher-format-A4{width:210mm!important;height:297mm!important}.voucher-format-A5{width:148mm!important;height:210mm!important}.voucher-format-A6{width:105mm!important;height:148mm!important}.voucher-sheet>img{height:100%!important;object-fit:fill!important}.voucher-overlay{font-size:clamp(10px,2vw,20px)!important}.voucher-pending{font-size:12px!important}}
@media print{body:has(.voucher-sheet) .o-wrap{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}body:has(.voucher-sheet) #voucherView{width:100%!important;margin:0!important;padding:0!important}body:has(.voucher-sheet) .voucher-sheet{box-shadow:none!important;border:0!important}body:has(.voucher-sheet) .voucher-sheet img{display:block!important}}
/* Studio management interface */
body:has(.o-admin-layout){background:#f8f6ef;color:#22251f;font-family:Arial,sans-serif}body:has(.o-admin-layout) button,body:has(.o-admin-layout) input,body:has(.o-admin-layout) textarea,body:has(.o-admin-layout) select{font:inherit}body:has(.o-admin-layout) h1,body:has(.o-admin-layout) h2,body:has(.o-admin-layout) h3{font-family:Georgia,serif;font-weight:400;line-height:1.08}body:has(.o-admin-layout) h1{font-size:clamp(42px,4vw,75px);margin:13px 0 35px}body:has(.o-admin-layout) h2{font-size:clamp(25px,2.1vw,36px);margin:0 0 24px}body:has(.o-admin-layout) h3{font-size:24px}.studio-admin-header{height:75px;background:#fff;border-bottom:1px solid #e3e0d6;display:flex;justify-content:space-between;align-items:center;padding:0 36px;gap:24px}.studio-admin-header>div:first-child{display:flex;gap:28px;align-items:center}.studio-admin-brand{color:#222b1a;text-decoration:none;font-size:23px;font-family:Georgia,serif;letter-spacing:.25em;white-space:nowrap}.studio-admin-header small{font-size:13px;color:#70756a}.studio-admin-back{color:#393e35;text-decoration:none;font-size:14px}.studio-admin-header-actions{display:flex;align-items:center;gap:15px}#studio-mobile-menu{display:none}.o-admin-layout{display:grid;grid-template-columns:minmax(235px,305px) minmax(0,1fr);min-height:calc(100vh - 75px)}.o-admin-sidebar{background:#181e16;color:#fff;padding:48px 25px 40px;min-height:calc(100vh - 75px)}.o-admin-sidebar .o-overline{color:#c5d8a4;font-size:12px;letter-spacing:.2em}.o-admin-sidebar h2{color:white;font-size:clamp(31px,2.6vw,43px);margin:25px 0}.o-admin-sidebar>p{color:#b9c1b0;font-size:13px;line-height:1.5}.studio-nav-items{display:flex;flex-direction:column;margin-top:38px;gap:4px}.studio-nav-items button,.o-admin-sidebar #logout{width:100%;border:0;border-bottom:1px solid #343c31;background:transparent;color:#e9ece4;text-align:left;padding:16px 10px;cursor:pointer;font-size:15px}.studio-nav-items button{display:flex;justify-content:space-between}.studio-nav-items button.selected{background:#738743;color:#fff}.o-admin-sidebar #logout{margin-top:35px}.o-admin-main{min-width:0;padding:42px clamp(20px,3vw,55px) 90px!important}.o-admin-main #panel{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;max-width:none!important}.o-admin-main #admin-heading>.o-overline,.studio-card-grid .o-overline,.studio-panel .o-overline{color:#56722b;letter-spacing:.17em;font-weight:bold;font-size:12px}.o-admin-main #notice:empty{display:none}.o-admin-main #notice:not(:empty){padding:13px 17px;background:#e5eed8;border-left:3px solid #547119;margin-bottom:20px}.o-admin-main label{display:flex;flex-direction:column;gap:7px;color:#343b2d;font-size:14px;font-weight:600}.o-admin-main label>small,.o-admin-main small{display:block;color:#778071;font-size:12px;font-weight:400}.o-admin-main input:not([type=checkbox]):not([type=color]),.o-admin-main select,.o-admin-main textarea{width:100%;min-width:0;border:1px solid #dbded3;background:#fff;border-radius:0;padding:12px;color:#30342d;box-sizing:border-box}.o-admin-main input[type=color]{height:40px;max-width:70px;border:1px solid #d8ddd0;background:#fff}.o-admin-main button{cursor:pointer}.o-admin-main button:disabled{cursor:not-allowed;opacity:.48}.studio-solid{display:inline-flex;justify-content:center;align-items:center;padding:12px 17px;background:#536f18;border:1px solid #536f18;color:#fff!important;text-decoration:none;font-weight:bold;font-size:14px}.studio-danger{border:1px solid #afc0aa;background:#fff;color:#932f28;padding:9px 15px}.studio-panel,.studio-service-card,.studio-therapist-card{background:#fff;border:1px solid #e0e3d9;padding:clamp(18px,2vw,30px);box-shadow:0 8px 25px #26341608}.studio-panel p{line-height:1.55}.studio-panel label,.studio-service-card label,.studio-therapist-card label{margin-bottom:16px}.studio-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.studio-card-grid{display:grid;gap:18px}.studio-three{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-service-card,.studio-therapist-card{min-width:0}.studio-service-card .o-overline,.studio-therapist-card .o-overline{margin:0 0 22px}.studio-inline-check{display:flex!important;flex-wrap:wrap;gap:16px;align-items:center;margin:15px 0}.studio-inline-check label{display:inline-flex;flex-direction:row;align-items:center;margin:0}.studio-services-check{border:1px solid #e3e5dc;margin:15px 0;padding:14px;max-height:160px;overflow:auto}.studio-services-check legend{padding:0 5px}.studio-services-check label{display:flex;flex-direction:row;align-items:center;margin:9px 0;font-size:13px}.studio-therapist-image{display:block;max-height:120px;max-width:180px;object-fit:cover;margin:12px 0}.studio-therapist-card button{margin:5px 7px 0 0}.studio-week-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:18px}.studio-week-controls button,.studio-pagination button,.studio-list-head button{padding:11px 16px;background:#fff;border:1px solid #dedfd5}.studio-week-controls .studio-solid{margin-left:auto;background:#536f18}.studio-legend{display:flex;gap:18px;flex-wrap:wrap;margin:20px 0;color:#676c62;font-size:13px}.studio-legend span{display:flex;gap:7px;align-items:center}.o-admin-main i{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:6px}.studio-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid #e0e0d9;background:#fff;min-height:420px}.studio-week-day{min-width:0;border-right:1px solid #e0e0d9}.studio-week-day:last-child{border:0}.studio-week-head{padding:15px 12px;background:#f1f2e9;display:flex;flex-direction:column;gap:7px}.studio-week-head strong{font-size:12px;letter-spacing:.12em}.studio-week-events{padding:9px;display:grid;align-content:start;gap:8px}.studio-week-events>p{font-size:12px;color:#9da394}.studio-week-event{display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere;border-left:4px solid #587719;background:#f1f3eb;padding:10px;font-size:11px}.studio-week-event strong{font-size:12px}.studio-week-event b{font-size:13px}.studio-week-event span{color:#596153}.studio-week-off{background:#f8eee7}.studio-cal-bottom,.studio-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.studio-integration{margin-top:20px}.studio-form{display:grid;gap:14px}.studio-block-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;border-top:1px solid #e5e8df}.studio-block-row small{display:block;margin-top:4px}.studio-list-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:15px;margin:18px 0}.studio-list-head h2{margin:0}.studio-list-head label{min-width:min(320px,100%)}.studio-table-scroll{overflow:auto;background:#fff;border:1px solid #e1e3db}.studio-table{width:100%;border-collapse:collapse;min-width:800px;text-align:left}.studio-table td,.studio-table th{padding:17px 13px;border-bottom:1px solid #e7e8e1;vertical-align:top;font-size:14px}.studio-table th{background:#f4f5ed;white-space:nowrap;letter-spacing:.08em;font-size:11px;color:#707b59}.studio-table td small{margin-top:5px}.studio-table a,.studio-text-link{color:#4b6621}.studio-text-link{background:none;border:0;text-decoration:underline;padding:0}.studio-state{display:inline-block;padding:6px 9px;text-transform:uppercase;font-size:11px;letter-spacing:.06em;white-space:nowrap}.studio-state.confirmed{background:#e5efdf;color:#386622}.studio-state.pending{background:#fdf0d7;color:#7a5519}.studio-state.cancelled{background:#ffe9e5;color:#a92d22}.studio-voucher-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.studio-voucher-actions .studio-solid{font-size:11px;padding:6px 8px}.studio-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin:22px 0}.studio-redeem{display:flex;align-items:end;gap:10px;margin:16px 0 25px}.studio-redeem label{min-width:230px}.studio-hour-row{display:grid;grid-template-columns:55px 1fr minmax(120px,190px) minmax(120px,190px);gap:20px;align-items:center;padding:18px;background:#fff;border-bottom:1px solid #e3e4da}.studio-hours-header{display:flex;justify-content:space-between;gap:12px;margin-bottom:20px}.studio-hours-header label{min-width:220px}.studio-switch input{width:20px;height:20px}.studio-inquiry-grid,.studio-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.studio-gallery-grid img{width:100%;height:210px;object-fit:cover}.studio-gallery-upload{max-width:650px;margin-top:25px}.studio-unread{border-left:4px solid #587719}.studio-settings-grid form>label{margin-bottom:17px}
@media(max-width:1200px){.studio-three,.studio-inquiry-grid,.studio-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-week-grid{overflow-x:auto;grid-template-columns:repeat(7,minmax(160px,1fr))}}
@media(max-width:760px){.studio-admin-header{height:65px;padding:0 15px}.studio-admin-header small{display:none}.studio-admin-brand{font-size:17px}.studio-admin-back{font-size:12px}#studio-mobile-menu{display:block;border:0;background:transparent;font-size:23px}.o-admin-layout{display:block}.o-admin-sidebar{display:none;min-height:auto;padding:20px}.o-admin-sidebar.open{display:block}.o-admin-sidebar h2{font-size:27px;margin:10px 0}.studio-nav-items{margin-top:15px}.o-admin-main{padding:25px 15px 50px!important}.o-admin-main h1{font-size:40px!important}.studio-three,.studio-cal-bottom,.studio-settings-grid,.studio-inquiry-grid,.studio-gallery-grid{grid-template-columns:1fr}.studio-week-grid{overflow:auto;grid-template-columns:repeat(7,minmax(175px,1fr));min-height:300px}.studio-fields{grid-template-columns:1fr}.studio-hour-row{grid-template-columns:45px 1fr 1fr;gap:8px}.studio-hour-row>label:last-child{grid-column:3}.studio-redeem{align-items:stretch;flex-direction:column}.studio-week-controls .studio-solid{margin:0}}
.studio-move-link{border:1px solid #b6c3a3;background:#f6f9f0;color:#3e5a17;padding:7px 11px;margin-right:9px}.studio-move-box{margin:18px 0;border-left:4px solid #6a8440}.studio-move-box .studio-move-close{float:right;background:#fff;border:1px solid #d9dfd2;padding:8px}.studio-move-box #moveHint{grid-column:1/-1;color:#5a6453}.studio-payments-section{margin-top:55px}.studio-payment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-payment-card textarea{min-height:145px;resize:vertical}.studio-payment-actions{display:flex;justify-content:space-between;gap:12px}.studio-payment-card .studio-inline-check{flex-direction:row;justify-content:center}.studio-voucher-actions button{border:0}.studio-new-booking{margin-bottom:23px}@media(max-width:760px){.studio-payment-grid{grid-template-columns:1fr}}

.voucher-reference{position:absolute;top:72.2%;left:23%;width:62%;text-align:center;font:clamp(9px,1.6vw,14px) Arial,sans-serif;color:#29430c;background:#fff9;padding:3px}@media print{.voucher-reference{font-size:8pt;print-color-adjust:exact}}
.legacy-content{max-width:960px;margin:auto;font-size:clamp(16px,1.3vw,19px);line-height:1.7}.legacy-content img{max-width:100%;height:auto}.legacy-content table{width:100%;overflow:auto}.legacy-content h1{font-size:clamp(32px,5vw,58px)}.legacy-service{padding:22px 0;border-bottom:1px solid #e0e3d6}.legacy-service h2{font-size:24px;color:#547917}.legacy-service h3{font-size:28px}

.studio-category-head{display:flex;align-items:center;justify-content:center;gap:12px;margin:30px 0 18px}.studio-category-head h2{text-align:center;font-size:clamp(26px,3vw,38px);font-weight:700;margin:0;color:#4e6f16}.studio-service-group{margin-bottom:36px}.studio-category-head button{padding:8px 12px;flex-shrink:0}

.voucher-sheet{container-type:inline-size}.voucher-overlay p{font-size:clamp(9px,3cqw,21px);white-space:nowrap!important}.voucher-overlay p:nth-child(3){font-size:clamp(8px,2.15cqw,16px);top:68.3%}.voucher-reference{font-size:clamp(8px,1.8cqw,13px);padding:2px;background:transparent}@media print{.voucher-overlay p{font-size:3cqw!important}.voucher-overlay p:nth-child(3){font-size:2.15cqw!important}.voucher-reference{font-size:1.8cqw!important}}
.studio-table select[data-voucher]{min-width:190px}.studio-table th:nth-child(5){min-width:190px}
/* Imported WordPress content follows the studio's responsive design. */
.legacy-content{overflow-wrap:anywhere}.legacy-content h2{font-size:clamp(24px,4vw,36px);line-height:1.2;margin-top:1.5em}.legacy-content h3{font-size:clamp(21px,3vw,28px);line-height:1.3}.legacy-content p{margin:1em 0}.legacy-content figure{margin:24px 0}.legacy-content figure img{display:block;max-height:460px;object-fit:contain;margin:auto;border-radius:8px}.legacy-content section{padding:20px 0;border-bottom:1px solid #e0e3d6}.legacy-content section img{width:100%;max-height:260px;object-fit:cover}.legacy-nav{display:flex;flex-wrap:wrap;gap:20px;border-top:1px solid #e0e3d6;margin-top:36px;padding-top:24px}.legacy-content img{cursor:zoom-in}.legacy-lightbox{width:min(95vw,1100px);max-width:95vw;border:0;padding:16px;background:#fff;border-radius:12px}.legacy-lightbox::backdrop{background:#000c}.legacy-lightbox img{display:block;max-width:100%;max-height:80vh;margin:auto;object-fit:contain}.legacy-lightbox button{display:block;margin:0 0 12px auto;background:#547917;color:white;border:0;padding:10px 16px;cursor:pointer}

.voucher-overlay p:nth-child(-n+2){font-family:"Oazis Script","Monotype Corsiva","URW Chancery L",cursive;font-style:italic;font-size:3.4cqw}.voucher-reference{font-size:2.5cqw!important;font-weight:600}@media print{.voucher-reference{font-size:2.5cqw!important}.voucher-overlay p:nth-child(-n+2){font-size:3.4cqw!important}}
.studio-category-manager{padding:24px;background:#fff;margin-bottom:28px}.studio-category-edit{display:flex;gap:8px;align-items:center;margin:8px 0}.studio-category-edit input{min-width:0;flex:1}@media(max-width:600px){.studio-category-edit{flex-wrap:wrap}}

@font-face{font-family:"Oazis Script";src:url("/fonts/oazis-script.otf") format("opentype");font-style:italic;font-display:swap}

/* Notifications: scoped controls keep the rest of the administration unchanged. */
.studio-notifications{display:grid;gap:20px}.studio-notifications h2{font-family:Georgia,serif;font-size:28px;font-weight:400}.studio-notifications .studio-form{max-width:720px}.studio-notifications .studio-form label{display:grid;gap:8px;font-size:14px;font-weight:600}.studio-notifications .studio-form input:not([type=checkbox]),.studio-notifications textarea{display:block;width:100%;min-width:0;padding:12px;border:1px solid #d8dfd1;background:white;border-radius:4px;font:inherit;line-height:1.5}.studio-notifications .studio-form label:has(input[type=checkbox]){display:flex;align-items:center;gap:10px}.studio-notifications input[type=checkbox]{width:18px;height:18px;flex:none;accent-color:#547917}.studio-notifications button:not(.studio-solid){padding:10px 14px;border:1px solid #d8dfd1;background:#fff;color:#26331f;cursor:pointer;margin:4px 6px 4px 0}.studio-notifications .studio-form .studio-solid{justify-self:start;padding:12px 22px}.studio-notifications p{line-height:1.6;max-width:900px}.studio-notifications .studio-state{white-space:normal}@media(max-width:650px){.studio-notifications h2{font-size:24px}.studio-notifications .studio-panel{padding:18px}.studio-notifications .studio-form .studio-solid{width:100%}}
