:root{--forest:#3c4546;--plum:#485a68;--lime:#bdb682;--cream:#e4e2d3;--paper:#f8f7f3;--gold:#837981;--gray:#817d7a;--taupe:#b8b4ac;--lavender:#c1c0c7;--pearl:#cfd0cb;--sage:#989b98;--blush:#cec2bb;--line:#d2d0c9;--serif:"Iowan Old Style","Baskerville","Times New Roman",serif;--sans:"Helvetica Neue",Arial,sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--sans);color:#3c4546}button,input,textarea,select{font:inherit}button{cursor:pointer}.studio-login-page{min-height:100vh;background:var(--cream);display:grid;grid-template-columns:1fr 1fr}.login-card{padding:7vh 8vw;display:flex;flex-direction:column;justify-content:center;max-width:720px}.login-brand{position:absolute;top:35px;left:4vw;display:flex;align-items:center;gap:15px;color:inherit;text-decoration:none}.login-brand img{width:85px;height:58px;object-fit:contain}.login-brand span{display:grid}.login-brand strong{font:20px var(--serif);letter-spacing:.15em}.login-brand small{font-size:8px;letter-spacing:.4em;color:var(--gold);margin-top:5px}.studio-kicker{font-size:10px;letter-spacing:.25em;color:var(--plum);font-weight:700;margin:0 0 25px}.login-card h1{font:400 clamp(50px,5.5vw,80px)/.98 var(--serif);letter-spacing:-.04em;margin:0 0 28px}.login-card h1 em{display:block;color:var(--plum);font-weight:400}.login-card>p:not(.studio-kicker){color:#66716c;max-width:540px;line-height:1.7}.login-card form{margin-top:38px;max-width:480px}.login-card label{display:grid;gap:8px}.login-card label span{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}.login-card input{border:1px solid #d0cbc0;background:var(--paper);padding:15px;outline:none}.login-card input:focus{border-color:var(--plum)}.login-card button{width:100%;margin-top:12px;border:0;background:var(--forest);color:white;padding:16px;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.17em}.login-card button span{color:var(--lime);float:right}.login-status{min-height:24px;color:#9a2f2f!important;font-size:13px}.back-link{margin-top:20px;color:#68716d;font-size:12px;text-decoration:none}.login-art{background:var(--forest);display:grid;place-items:center;position:relative;padding:8vw}.login-art:before{content:"";position:absolute;inset:4vw;border:1px solid rgba(189,182,130,.25)}.login-art img{width:100%;max-width:620px;box-shadow:28px 28px 0 rgba(72,90,104,.55);position:relative}.login-art span{position:absolute;bottom:6vw;color:rgba(255,255,255,.5);font-size:9px;letter-spacing:.25em}.studio-app{height:100vh;overflow:hidden;background:#cfd0cb}.studio-topbar{height:58px;background:#3c4546;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid rgba(255,255,255,.12)}.studio-topbar>div{display:flex;align-items:center;gap:24px}.studio-topbar a{color:white;text-decoration:none;font-size:11px}.studio-topbar>div>span{font-size:9px;letter-spacing:.2em;color:rgba(255,255,255,.55)}.studio-actions{gap:8px!important}.studio-actions button{border:1px solid rgba(255,255,255,.18);background:transparent;color:white;padding:8px 12px;font-size:10px}.studio-actions .publish-button{background:var(--lime);color:var(--forest);border-color:var(--lime);font-weight:700}.studio-actions .publish-button span{color:var(--plum);margin-left:10px}.studio-shell{height:calc(100vh - 90px);display:grid;grid-template-columns:205px minmax(330px,410px) 1fr}.studio-sidebar{background:#f7f5ef;border-right:1px solid var(--line);padding:22px 14px;display:flex;flex-direction:column;overflow:auto}.studio-brand{text-align:center;padding-bottom:18px;border-bottom:1px solid var(--line);display:grid;justify-items:center}.studio-brand img{width:95px;height:62px;object-fit:contain}.studio-brand strong{font:16px var(--serif);letter-spacing:.17em}.studio-brand small{font-size:7px;letter-spacing:.27em;color:var(--gold);margin-top:4px}.studio-sidebar>p{font-size:8px;text-transform:uppercase;letter-spacing:.18em;color:#8b918e;margin:22px 10px 10px}.studio-sidebar nav{display:grid;gap:2px}.studio-sidebar nav button{border:0;background:transparent;text-align:left;padding:9px 11px;font-size:11px;color:#59625e;border-left:2px solid transparent;display:flex;justify-content:space-between}.studio-sidebar nav button:hover,.studio-sidebar nav button.active{background:#e8e4d9;color:var(--forest);border-left-color:var(--plum);font-weight:600}.studio-sidebar nav button span{background:var(--plum);color:white;border-radius:12px;padding:0 6px;font-size:8px}.signout{margin-top:auto;border:0;background:transparent;color:#7a817e;text-align:left;padding:12px;font-size:10px}.studio-inspector{background:var(--paper);border-right:1px solid var(--line);overflow:auto}.inspector-heading{padding:25px 25px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,253,248,.96);z-index:3}.inspector-heading>span{font-size:8px;text-transform:uppercase;letter-spacing:.18em;color:var(--gold)}.inspector-heading h1{font:34px var(--serif);margin:4px 0 6px}.inspector-heading p{font-size:11px;color:#7b827f;margin:0}.editor-fields{padding:20px 25px 50px}.field-group{border:0;padding:0;margin:0 0 28px}.field-group legend{width:100%;padding:0 0 10px;margin-bottom:13px;border-bottom:1px solid var(--line);font-size:9px;text-transform:uppercase;letter-spacing:.18em;color:var(--plum);font-weight:700}.studio-field{display:grid;gap:6px;margin-bottom:15px}.studio-field>span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#6f7773;display:flex;justify-content:space-between}.studio-field input,.studio-field textarea,.studio-field select{width:100%;border:1px solid #d8d4ca;background:white;padding:10px 11px;font-size:12px;color:#24302c;outline:none;border-radius:0}.studio-field textarea{resize:vertical;line-height:1.5}.studio-field input:focus,.studio-field textarea:focus,.studio-field select:focus{border-color:var(--plum);box-shadow:0 0 0 2px rgba(72,90,104,.08)}.studio-field small{color:#939995;font-size:9px}.color-row{display:grid;grid-template-columns:42px 1fr;gap:7px}.color-row input[type=color]{padding:2px;height:39px}.image-control{display:grid;grid-template-columns:1fr auto auto;gap:6px}.image-control button,.add-service,.remove-service,.secondary-button{border:1px solid #d0cbc0;background:#f4f1e9;padding:9px 11px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--forest)}.image-preview{height:95px;background:#eee9df;margin-top:7px;display:grid;place-items:center;overflow:hidden}.image-preview img{width:100%;height:100%;object-fit:contain}.service-picker{display:grid;grid-template-columns:1fr auto;gap:7px;margin-bottom:18px}.service-picker select{border:1px solid #d8d4ca;background:white;padding:10px}.remove-service{color:#8c2d2d}.add-service{width:100%;background:var(--forest);color:white;margin-top:8px}.studio-preview{padding:22px;min-width:0;overflow:hidden;background:#dfded9}.preview-bar{height:34px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#5d6662}.preview-bar span{display:flex;align-items:center;gap:7px}.preview-bar i{width:7px;height:7px;background:#65a65b;border-radius:50%}.preview-bar a{color:var(--plum);text-decoration:none}.browser-frame{height:calc(100% - 34px);background:white;border:1px solid #c9c8c3;box-shadow:0 14px 35px rgba(33,42,38,.12);border-radius:7px;overflow:hidden}.browser-dots{height:31px;background:#f5f4f0;border-bottom:1px solid #dddcd7;display:flex;align-items:center;gap:5px;padding:0 11px}.browser-dots i{width:7px;height:7px;border-radius:50%;background:#c8c6c0}.browser-dots i:first-child{background:#d88478}.browser-dots i:nth-child(2){background:#ddb969}.browser-dots i:nth-child(3){background:#79b47a}.browser-dots span{margin:auto;font-size:8px;color:#929794;background:#e9e8e3;border-radius:10px;padding:2px 45px}.browser-frame iframe{border:0;width:100%;height:calc(100% - 31px);background:white}.studio-footer{height:32px;background:#3c4546;color:rgba(255,255,255,.72);display:flex;align-items:center;justify-content:space-between;padding:0 20px;font-size:9px}.studio-footer .success{color:var(--lime)}.loading{color:#8c928f;font-size:12px;padding:25px 0}.booking-list{display:grid;gap:12px}.booking-item{border:1px solid var(--line);background:white;padding:14px}.booking-item header{display:flex;justify-content:space-between;gap:10px}.booking-item h3{font:21px var(--serif);margin:0}.booking-item time{font-size:9px;color:#888}.booking-item small{display:block;color:var(--plum);margin:5px 0}.booking-item p{font-size:11px;line-height:1.5;color:#58615d;white-space:pre-wrap}.booking-item dl{display:grid;grid-template-columns:65px 1fr;gap:3px 8px;font-size:10px}.booking-item dt{color:#999}.booking-item dd{margin:0}.booking-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.booking-actions a{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--plum)}.security-form{display:grid;gap:14px}.security-form button{border:0;background:var(--forest);color:white;padding:12px}.status-message{font-size:11px;color:var(--plum)}
@media(max-width:1050px){.studio-shell{grid-template-columns:170px 340px 1fr}.studio-preview{padding:12px}}
@media(max-width:820px){.studio-app{overflow:auto;height:auto}.studio-topbar{position:sticky;top:0;z-index:10}.studio-shell{height:auto;min-height:calc(100vh - 90px);grid-template-columns:150px 1fr}.studio-preview{display:none}.studio-inspector{min-height:calc(100vh - 90px)}.studio-login-page{grid-template-columns:1fr}.login-art{display:none}.login-card{min-height:100vh;padding:110px 9vw 60px}.studio-actions button:not(.publish-button){display:none}}
@media(max-width:560px){.studio-topbar>div>span,.studio-topbar a{display:none}.studio-shell{grid-template-columns:1fr}.studio-sidebar{position:relative;border-right:0;max-height:none;padding:10px}.studio-brand,.studio-sidebar>p,.signout{display:none}.studio-sidebar nav{display:flex;overflow:auto}.studio-sidebar nav button{white-space:nowrap;border-left:0;border-bottom:2px solid transparent}.studio-sidebar nav button.active{border-left:0;border-bottom-color:var(--plum)}.inspector-heading{top:58px}.studio-footer{position:sticky;bottom:0}.login-brand{left:8vw}.login-card h1{font-size:48px}}
