/* Hautnah Spa, 2.0: original logo, sage palette and quiet step-by-step forms. */
:root{--sage:#9cb6b7;--sage-light:#e7ece8;--sage-deep:#49676a;--ink:#283c37;--cream:#f7f4ee;--line:#dedfd7;--text:var(--ink);--muted:#6d7670;--accent:var(--sage);--accent-deep:var(--sage-deep);--r:22px;--shadow:0 10px 35px #384f4210}
html{background:#e6e9e3;scroll-behavior:auto}body{background:var(--cream);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;line-height:1.5}button,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #536f68;outline-offset:4px}button{font-weight:600!important}h1,h2,h3,.home-choice strong{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:32px;line-height:1.2}h2{font-size:27px;margin-bottom:10px}h3{font-size:22px}p{margin-top:0}.app{padding:0;max-width:1100px;min-height:100dvh;margin:auto}.spa-home{min-height:100dvh;position:relative;overflow:hidden;padding:40px 7% 25px;display:flex;flex-direction:column;align-items:center;background:linear-gradient(100deg,#9cb6b755,#9cb6b70d),url('spa-background.png') center/cover no-repeat}.spa-settings{position:absolute;right:27px;top:27px;width:44px;height:44px;padding:10px;display:grid;place-items:center;background:#f7f4eeaa;border:1px solid #ffffff66;border-radius:50%;color:#405851;cursor:pointer}.spa-settings svg{width:23px;height:23px}.home-brand{text-align:center}.home-brand img{width:160px;height:160px;border-radius:50%;box-shadow:0 6px 30px #304d3820}.home-brand p{font-family:Georgia,serif;font-size:15px;letter-spacing:.16em;color:#344d46;margin:13px 0 0}.home-intro{text-align:center;margin:34px 0 27px}.spa-kicker{font-size:10px;font-weight:600;letter-spacing:.2em;line-height:1.4;color:var(--sage-deep)}.home-intro h1{font-size:39px;line-height:1.15;margin:13px 0 0;color:#29423a}.home-choices{width:min(620px,100%);display:grid;gap:18px}.home-choice{display:flex;align-items:center;gap:21px;width:100%;padding:25px 24px;background:#fcfaf6ef;border:1px solid #ffffffb0;border-radius:21px;color:var(--ink);text-align:left;box-shadow:0 12px 30px #36534214;cursor:pointer;transition:transform .18s,background .18s}.home-choice:hover{transform:translateY(-2px);background:#fffdf9}.home-choice strong{display:block;font-size:25px;line-height:1.22}.home-choice small{display:block;margin-top:7px;font-size:14px;line-height:1.55;font-weight:400;color:#69736e}.choice-icon{display:grid;place-items:center;flex:0 0 66px;width:66px;height:66px;border-radius:50%;background:var(--sage);color:#fff;box-shadow:0 5px 12px #36534212}.choice-icon svg{width:32px;height:32px}.photo-icon{background:#b5aa99}.choice-arrow{margin-left:auto;display:grid;place-items:center;background:#e9e8e1;border-radius:50%;flex:0 0 31px;width:31px;height:31px;font-family:Georgia,serif;font-size:30px;font-weight:400}.home-signoff{align-self:flex-start;margin:35px 0 30px 8%;font-family:Georgia,serif;font-style:italic;font-size:27px;line-height:1.4;color:#415a50}.home-signoff em{margin-left:26px;font-size:23px}.home-footer{display:flex;justify-content:space-between;align-items:center;width:100%;gap:16px;margin-top:auto;padding-top:25px;font-size:11px;color:#3d574c}.home-footer>span{background:#f5f7efb0;padding:6px 10px;border-radius:12px}.home-footer button{font-size:12px;color:#314c41;background:#faf8f0cc;border:1px solid #ffffff80;padding:8px 14px;border-radius:20px;cursor:pointer}
.spa-wizard{min-height:100dvh;padding:17px 34px 40px;background:radial-gradient(ellipse at 0% 90%,#9cb6b722,transparent 50%),linear-gradient(135deg,#faf8f3,#f1eee6);position:relative}.wizard-header{display:flex;align-items:center;justify-content:space-between;height:112px;margin-bottom:14px}.wizard-header img{width:94px;height:94px;border-radius:50%}.text-button{background:none;border:0;font-size:25px;color:#53675e;display:flex;align-items:center;gap:8px;cursor:pointer}.text-button span{font-size:13px}.header-spacer{width:92px}.wizard-title{display:flex;align-items:center;gap:17px;margin:12px 0 33px}.wizard-title .choice-icon{width:59px;height:59px;flex-basis:59px}.wizard-title h1{font-size:30px;line-height:1.1;margin:5px 0 7px}.wizard-title p{margin:0;font-size:13px;color:var(--muted)}.wizard-title p.spa-kicker{font-size:9px;letter-spacing:.14em}.step-count{font-size:12px;border:1px solid var(--line);background:#ffffff60;border-radius:30px;padding:5px 12px;white-space:nowrap;margin-left:auto}.wizard-layout{display:grid;grid-template-columns:138px minmax(0,1fr);gap:24px;align-items:start}.wizard-steps{padding-top:12px;position:sticky;top:20px;display:grid;gap:18px}.wizard-step{position:relative;border:0;background:transparent;text-align:left;display:flex;gap:11px;align-items:center;padding:0;color:#7c827c;font:inherit;cursor:pointer;min-height:42px;opacity:1!important}.wizard-step:not(:last-child):after{position:absolute;content:'';height:23px;width:1px;background:#d2d6cc;left:17px;top:39px}.wizard-step span{flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#e4e4dc;display:grid;place-items:center;font-family:Georgia,serif;font-size:16px;color:#53645b}.wizard-step small{font-size:11px}.wizard-step.active{color:#2b443a}.wizard-step.active span,.wizard-step.complete span{background:var(--sage);color:#fff}.wizard-step.active small{font-weight:700}.wizard-step:disabled{cursor:default}.wizard-main{min-width:0}.card{border:1px solid #e6e1d7;background:#fffdf8db;border-radius:23px;box-shadow:0 10px 30px #4a584b08;padding:28px;margin:0 0 17px}.card>.step{display:none}.section-note,.hint{font-size:13px;line-height:1.55;color:#747c75}.grid{gap:17px;grid-template-columns:1fr}label{font-size:13px;font-weight:500;color:#59665d;margin-bottom:6px}.req{color:#b2776b}input,textarea,select{border:1px solid #dfdfd5;border-radius:10px;padding:13px 14px;background:#fbf9f4;color:#354b40;font-size:16px;min-height:48px}input:focus,textarea:focus,select:focus{box-shadow:0 0 0 3px #9cb6b733;border-color:#9cb6b7}textarea{min-height:88px}input[type=checkbox],input[type=radio]{min-height:0}.legal{max-height:none;overflow:visible;border:0;background:transparent;padding:0;font-size:14px;line-height:1.7}.legal h3{font-size:22px;line-height:1.25}.legal p{margin-bottom:14px}.photo-intro{margin-top:25px;border-top:1px solid var(--line);padding-top:22px}.photo-intro h3{font-size:22px}.photo-intro p{font-size:13px;line-height:1.65}.photo-choices{gap:12px;margin-top:20px}.photo-choice{border:1px solid #dedfd4;border-radius:14px;background:#fbf9f5;padding:17px 15px;gap:12px;min-height:95px}.photo-choice input{width:22px;height:22px;flex-basis:22px;margin-top:3px;accent-color:#748b7e}.photo-choice strong{font-weight:600;font-size:16px;line-height:1.35;color:#2f473c}.photo-choice span{font-size:13px;line-height:1.55;color:#6c776d}.photo-choice:has(input:checked){box-shadow:none;border-color:#a3b4a6;background:#e7ece4}.consent-status{font-size:12px;line-height:1.6;background:#edf0e8;border:0;padding:13px 15px;margin-top:17px}.photo-details{margin-top:22px;font-size:12px;color:#5d7061}.photo-details summary{cursor:pointer}.photo-details textarea{margin-top:8px}.photo-details label{display:none}.checks{gap:13px}.check{font-size:14px;background:#faf9f3;border:1px solid #e0e1d6;padding:16px 13px;align-items:flex-start;gap:13px}.check span{font-size:13px;line-height:1.65;color:#425b4b}.check input{accent-color:#7c9585;width:22px;height:22px;flex-basis:22px;margin-top:3px}.photo-ack{margin-top:19px;border:0;background:transparent;padding:0}.signature-choice{font-size:13px;border-radius:12px;background:#e9eee5;padding:13px 16px;color:#526d58;margin:17px 0}#sig{height:240px;border:1px solid #d7ddd0;border-radius:13px;background:#fffdf9}#clearSig{font-size:12px;padding:8px 12px;min-height:40px}#savePage{padding:0;border:0;box-shadow:none;background:none}#savePage .fineprint{display:none}#savePage .actions{display:block}#saveBtn{width:100%;font-size:15px;min-height:54px}#saveBtn:disabled{opacity:.55}#resetBtn{display:none}.primary{background:#9cb6b7;color:#233d31;border:1px solid #8fa39a;border-radius:13px;box-shadow:0 6px 12px #536b5420;padding:14px 20px;min-height:51px}.primary:hover{background:#aabcb3}.secondary,.ghost-btn,.lock-btn{background:#e9e7de;border:1px solid #e0e0d5;color:#526052;border-radius:12px;min-height:47px}.wizard-navigation{display:flex;align-items:center;justify-content:space-between;gap:17px;margin-top:18px}.wizard-navigation .primary{flex:1 1 auto;display:flex;justify-content:space-between;align-items:center;gap:30px}.wizard-navigation .secondary{flex:0 0 auto;padding:12px 21px}.wizard-navigation .primary span{font-size:23px;line-height:1}.wizard-footnote{font-size:11px;line-height:1.6;text-align:center;color:#7a8177;margin:18px 0}.statusline{font-size:10px;justify-content:center;margin-top:16px}.dot{background:#8aa18a}.modal{border-radius:25px;background:#faf8f2;padding:29px;border:1px solid #e5e5d9}.modal h2{font-size:28px}.modal .primary{flex-basis:240px}.modal .secondary{font-size:13px}.modal .fineprint,.lock-note{font-size:11px;color:#6e786b}.modal .auth-icon{background:#e9eee3}.admin-tools{gap:11px}.admin-tools .search{flex-basis:100%}.admin-tools select{width:auto;flex:1 1 210px;font-size:13px}.admin-stat{display:grid;grid-template-columns:120px minmax(0,1fr)}.stat{min-width:0;background:#edf0e7}.stat strong{font-size:14px;overflow-wrap:anywhere}.stat:first-child strong{font-size:27px}.stat span{font-size:11px}.records{min-width:650px}.records td{padding:16px 13px;font-size:12px}.records th{background:#e8ede3}.records .mini{min-height:36px;padding:7px 12px;font-size:11px}.success-box{background:#e8eee2;border-color:#d7e0cd}.success-id{font-size:11px}.success-icon{background:#e7eee1}.toast{background:#405b47;max-width:90%;text-align:center;font-size:13px;border-radius:15px}.detail-grid{grid-template-columns:145px 1fr;font-size:13px}.auth-error{font-size:13px}#storageStatus{overflow-wrap:anywhere}
@media(min-width:900px){.spa-home{padding-top:45px}.home-brand img{width:175px;height:175px}.home-intro{margin-top:25px}.home-choice{padding:26px}.spa-wizard{padding-left:55px;padding-right:55px}.wizard-layout{grid-template-columns:150px minmax(0,1fr)}.wizard-main{max-width:650px}.wizard-title h1{font-size:34px}.wizard-step small{font-size:12px}}
@media(min-height:1050px) and (min-width:650px){.spa-home{padding-top:65px}.home-brand img{width:190px;height:190px}.home-intro{margin:45px 0 36px}.home-choice{min-height:137px}.home-choices{gap:22px}.home-signoff{margin-top:48px}.wizard-header{height:140px}.wizard-title{margin-bottom:40px}.card{padding:32px}.grid{gap:21px}}
@media(max-width:600px){.spa-home{padding:35px 22px 20px}.home-brand img{width:125px;height:125px}.home-brand p{font-size:12px}.home-intro{margin:25px 0}.home-intro h1{font-size:32px}.home-choice{gap:13px;padding:21px 16px}.home-choice strong{font-size:20px}.home-choice small{font-size:12px}.choice-icon{width:52px;height:52px;flex-basis:52px}.choice-icon svg{width:27px;height:27px}.home-signoff{margin:27px 0;font-size:24px}.home-footer{font-size:9px;gap:8px}.home-footer>span{max-width:70%}.spa-settings{top:18px;right:18px}.spa-wizard{padding:12px 17px 25px}.wizard-header{height:83px;margin-bottom:8px}.wizard-header img{width:73px;height:73px}.header-spacer{width:73px}.text-button span{font-size:11px}.wizard-title{gap:11px;margin:13px 0 22px}.wizard-title h1{font-size:24px;overflow-wrap:anywhere}.wizard-title p{font-size:11px}.wizard-title p.spa-kicker{display:none}.wizard-title .choice-icon{width:45px;height:45px;flex-basis:45px}.step-count{padding:4px 8px;font-size:10px}.wizard-layout{grid-template-columns:1fr;gap:17px}.wizard-steps{position:static;display:flex;justify-content:space-between;gap:5px;padding:0}.wizard-step{flex-direction:column;gap:5px;flex:1;min-height:55px;text-align:center}.wizard-step span{width:28px;height:28px;flex-basis:28px;font-size:13px}.wizard-step small{font-size:9px;line-height:1.2}.wizard-step:not(:last-child):after{width:calc(100% - 33px);height:1px;top:14px;left:calc(50% + 17px)}.card{padding:23px 20px;border-radius:20px}h2{font-size:25px}.legal{font-size:13px}.photo-choice{min-height:90px;padding:15px 12px}.photo-choice strong{font-size:14px}.photo-choice span{font-size:12px}#sig{height:210px}.wizard-navigation .secondary{font-size:13px;padding:12px 16px}.wizard-navigation .primary{font-size:14px}.modal{padding:22px}.modal h2{font-size:25px}.admin-stat{grid-template-columns:90px minmax(0,1fr)}.stat strong{font-size:11px}.detail-grid{grid-template-columns:1fr}.home-choice br{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* 2.1: exact logo colour, aligned SVG arrows, same hue for the background. */
.spa-home{background-color:#9cb6b7;background-image:linear-gradient(#9cb6b7,#9cb6b7),url('spa-background.png');background-blend-mode:color,normal}
.choice-icon,.photo-icon,.wizard-step.active span,.wizard-step.complete span{background:#9cb6b7}
.choice-arrow{align-self:center;line-height:1;padding:0;display:flex;align-items:center;justify-content:center;color:#49676a;background:#e4eded}
.nav-chevron{width:20px;height:20px;display:block;flex:0 0 20px}
.choice-arrow .nav-chevron{width:18px;height:18px;flex-basis:18px}
.wizard-navigation .secondary{display:flex;align-items:center;justify-content:center;gap:5px}
.wizard-navigation .primary>span{font-size:inherit;line-height:inherit}
.wizard-navigation .primary .nav-chevron{margin-left:auto}
.photo-choice:has(input:checked){background:#e5eff0;border-color:#9cb6b7}
.signature-choice,.consent-status,.stat,.success-box{background:#e8f0ef}
.photo-choice input,.check input{accent-color:#6d9293}

/* Two explicit treatment choices, no preselected procedure. */
.treatment-choices{display:grid;gap:15px;margin:4px 0 8px}
.treatment-choice{display:flex;align-items:center;gap:14px;padding:21px 18px;border:1px solid #d8e0dc;border-radius:15px;background:#faf9f4;cursor:pointer;margin:0;min-height:112px}
.treatment-choice:has(input:checked){border-color:#7f9d9e;background:#e5eff0;box-shadow:0 0 0 2px #9cb6b724}
.treatment-choice input{flex:0 0 22px;width:22px;height:22px;min-height:0;accent-color:#6d9293;margin:0}
.treatment-choice input{-webkit-appearance:radio;appearance:auto;border-radius:50%}
.treatment-choice strong{font:400 22px/1.25 Georgia,serif;display:block;color:#304d48}
.treatment-choice small{font-size:12px;line-height:1.55;font-weight:400;display:block;margin-top:7px;color:#64756b}
.treatment-symbol{flex:0 0 39px;width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:#9cb6b7;color:white;font-size:25px}
.legal ul{padding-left:22px;margin:12px 0 21px}.legal li{margin-bottom:9px}
@media(max-width:600px){.treatment-choice{padding:17px 13px;gap:10px}.treatment-choice strong{font-size:19px}.treatment-symbol{display:none}.treatment-choice small{font-size:12px}}
