/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.block{display:block}}:root{color:#293b36;background:#f5f5ef;font-family:system-ui,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0}main{max-width:1200px;margin:auto;padding:24px}header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.brand{letter-spacing:3px;color:#57776b;font-size:12px}h1{margin:8px 0;font-size:28px}h2{margin:0 0 16px;font-size:20px}h3{margin:8px 0;font-size:18px}p{overflow-wrap:anywhere;margin:8px 0}nav,.toolbar,.actions{flex-wrap:wrap;gap:8px;display:flex}nav{margin-bottom:12px}button{color:#fff;cursor:pointer;min-height:46px;font:inherit;background:#315f50;border:0;border-radius:12px;padding:12px 18px}button.secondary{color:#315044;background:#e9eee8}button:disabled{opacity:.5;cursor:wait}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #c59c55}section{background:#fff;border:1px solid #e3e7df;border-radius:20px;margin-bottom:18px;padding:24px}label{margin-bottom:16px;font-size:14px;display:block}input,select,textarea{width:100%;min-width:0;min-height:46px;font:inherit;color:inherit;background:#fff;border:1px solid #cbd6ce;border-radius:10px;margin-top:6px;padding:10px;display:block}textarea{min-height:90px}.toolbar input{flex:1;width:auto}.check{align-items:center;gap:10px;display:flex}.check input{flex-shrink:0;width:20px;height:20px;min-height:20px;margin:0}fieldset{border:1px solid #e3e7df;border-radius:12px;margin:16px 0;padding:16px}.days{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:20px;display:grid}.visit{background:#f0f5ef;border-left:3px solid #6a9077;border-radius:10px;margin:12px 0;padding:16px}.visit.cancelled,.visit.no_show{opacity:.6;background:#f4f0ed}.visit.block{background:#fbf2dd;border-color:#bd9644}.actions button{padding:8px 12px;font-size:13px}.columns{grid-template-columns:1fr 1fr;gap:18px;display:grid}.listrow{border-bottom:1px solid #edf0e9;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;display:flex}.listrow button{margin:3px}.hour{border-bottom:1px solid #edf0e9;padding:12px 0}.hour .check{margin:0}.hour .toolbar{margin:8px 0}.message{color:#7a4e29;min-height:24px}.muted,footer{color:#77857a;font-size:14px}footer{text-align:center;padding:20px}.login{max-width:440px;margin:10vh auto}.login form,form+form{margin-top:24px}@media(max-width:640px){main{padding:14px}h1{font-size:23px}section{padding:18px}.columns,.days{grid-template-columns:1fr}.listrow{align-items:flex-start}nav button{flex:1;padding:10px}.toolbar input{max-width:100%}.login{margin-top:7vh}}.toolbar input[type=date]{min-width:165px}.month-calendar{max-width:600px;margin:0 auto 24px}.month-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px;display:flex}.month-heading h2{text-align:center;text-transform:capitalize;margin:0;font-size:20px}.month-heading button{padding:8px 16px;font-size:26px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.calendar-weekday{text-align:center;color:#77857a;padding:4px;font-size:12px}.calendar-day{color:#293b36;background:#f5f6f1;border:1px solid #0000;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;min-width:0;min-height:58px;padding:8px 2px;display:flex}.calendar-day.selected{color:#fff;background:#315f50;border-color:#315f50}.calendar-day.has-slots:not(.selected){background:#e7f1e8}.calendar-day:disabled{opacity:.38;cursor:default;background:#f4f5f1}.calendar-day:disabled.selected{color:#293b36;border-color:#cad6cb}.calendar-dots{gap:3px;min-height:5px;margin-top:5px;display:flex}.calendar-dots i{background:#577c64;border-radius:50%;width:5px;height:5px}.calendar-dots i.unread{background:#d99031}.calendar-day.selected .calendar-dots i:not(.unread){background:#dce8d9}.calendar-legend{color:#77857a;margin-top:14px;font-size:12px}.notification-panel{background:#fff7e8;border-color:#e6c995}.notification-heading{align-items:center;gap:12px;display:flex}.notification-heading h2{margin:0}.notification-count{color:#fff;background:#b16d21;border-radius:99px;padding:4px 10px}.notification-row{border-bottom:1px solid #edddbd;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.notification-row:last-child{border:0;padding-bottom:0}.online-badge{color:#39607b;background:#dfeaf4;border-radius:6px;padding:4px 8px;font-size:12px;display:inline-block}.booking-page{max-width:680px}.booking-page header{margin-bottom:12px}.step{color:#315f50;background:#e7eee5;border-radius:50%;place-items:center;width:28px;height:28px;margin-right:10px;font-size:15px;display:inline-grid}.service-option{cursor:pointer;border:1px solid #dce5db;border-radius:12px;align-items:center;gap:14px;margin:10px 0;padding:14px;display:flex}.service-option input{flex-shrink:0;width:22px;height:22px;min-height:22px;margin:0}.service-option small{color:#77857a;margin-top:4px;display:block}.booking-total,.booking-choice{background:#f0f5ed;border-radius:10px;padding:14px}.time-grid{grid-template-columns:repeat(auto-fit,minmax(75px,1fr));gap:10px;margin-top:16px;display:grid}.time-grid button{padding:12px 6px}.time-grid .active{outline-offset:2px;outline:2px solid #315f50}.book-submit{width:100%;margin-top:10px}.consent{align-items:flex-start;line-height:1.5}.consent input{margin-top:2px}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.receipt{text-align:center}.receipt-icon{color:#315f50;background:#e3eee0;border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto 20px;font-size:36px;display:grid}.receipt-date{font-size:23px;font-weight:600}.receipt button{margin:8px 4px}.receipt label{text-align:left;margin-top:20px}.personal-link{color:#315f50;margin:12px 0;text-decoration:underline;display:inline-block}.link-button{color:#315044;background:#e9eee8;border-radius:12px;padding:12px 18px;text-decoration:none;display:inline-block}@media(max-width:640px){.notification-row{flex-direction:column;align-items:flex-start}.notification-row button{width:100%}.month-heading h2{font-size:18px}.calendar-grid{gap:4px}.calendar-day{min-height:48px}.calendar-dots{gap:2px}.booking-page section{padding:16px}.receipt-date{font-size:21px}}.master-intro{align-items:center;gap:24px;display:flex}.master-intro h2{margin:4px 0 12px}.master-avatar,.master-placeholder{object-fit:cover;border-radius:50%;flex-shrink:0;width:110px;height:110px}.master-placeholder{color:#8c496f;background:#f1e5ed;place-items:center;font-size:38px;display:grid}.master-bio{white-space:pre-wrap;overflow-wrap:anywhere}.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.portfolio-photo{color:inherit;text-align:left;background:#f8f4f6;border-radius:14px;padding:0;overflow:hidden}.portfolio-photo img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.portfolio-photo span{overflow-wrap:anywhere;padding:10px;font-size:14px;display:block}.profile-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.photo-editor{border:1px solid #e9e0e5;border-radius:16px;min-width:0;padding:16px}.photo-editor>img{object-fit:cover;border-radius:12px;width:100%;height:220px;margin-bottom:16px;display:block}.photo-editor .check{font-size:14px}.photo-dialog{border:0;border-radius:18px;max-width:min(900px,94vw);max-height:92vh;padding:18px}.photo-dialog::backdrop{background:#201523bb}.photo-dialog img{object-fit:contain;max-width:100%;max-height:72vh;margin-top:16px;display:block}.photo-dialog p{overflow-wrap:anywhere}input[type=file]{max-width:100%}.master-intro>div:last-child{min-width:0}@media(max-width:600px){.master-intro{align-items:flex-start;gap:16px}.master-avatar,.master-placeholder{width:80px;height:80px}.master-intro h2{font-size:22px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-editor-grid{grid-template-columns:1fr}}.week-picker{flex-wrap:wrap;gap:12px;display:flex}.week-picker label{margin:0}.work-days-editor form{min-width:0}.work-days-editor .columns{margin-top:24px}.work-days-editor .columns>form+form{margin-top:0}.master-contact span{margin-bottom:10px;display:block}.master-contact .link-button{display:inline-block}@media(max-width:640px){main{padding-left:17px;padding-right:17px}}:root{--canvas:#f8f3f0;--paper:#fffdfc;--ink:#362b32;--muted:#796771;--plum:#704357;--plum-dark:#543040;--rose:#f5e5eb;--rose-border:#dfbdcb;--line:#eadddf;--sage:#e9f1e8;--sage-ink:#3e5c48;--shadow:0 8px 30px #70435707;color:var(--ink);background:var(--canvas);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5;font-synthesis:none}body{background:radial-gradient(ellipse at 90% 0,#f1dde5 0,transparent 42%),var(--canvas);min-height:100vh}body:has(.booking-page),body:has(.login){background:radial-gradient(ellipse at 10% 0,#f0dce4 0,transparent 48%),var(--canvas)}main{max-width:1200px;padding:36px 28px 24px}h1{font-family:Georgia,Times New Roman,serif;font-weight:400;font-size:38px;letter-spacing:-1px;line-height:1.15;margin:15px 0 9px}h2{font-size:19px;font-weight:600;letter-spacing:-.3px;line-height:1.35}h3{font-size:17px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}p{line-height:1.55}strong{font-weight:600}a{color:var(--plum)}.muted,footer{color:var(--muted);font-size:13px}header{margin-bottom:24px;align-items:center;gap:16px}header>div{min-width:0}.header-caption{color:var(--muted);font-size:14px;margin-top:6px;max-width:480px}.brand{display:flex;align-items:center;gap:10px;color:var(--plum);font-size:12px;font-weight:600;letter-spacing:2.5px;line-height:1.25}.brand-mark{flex-shrink:0;background:#f1e0e7;border-radius:50%;padding:4px;width:40px;height:40px}.brand small{display:block;letter-spacing:1.6px;font-size:9px;font-weight:400;margin-top:4px;color:var(--muted)}.brand-divider{color:#af8196;margin:0 3px}nav{display:flex;gap:6px;background:#ffffffb8;border:1px solid #ffffff;border-radius:18px;padding:6px;margin:0 0 22px;box-shadow:var(--shadow);width:fit-content;max-width:100%}nav button,nav button.secondary{display:flex;align-items:center;justify-content:center;gap:9px;padding:12px 20px;background:transparent;color:var(--muted);font-size:14px;border-radius:12px;box-shadow:none;font-weight:500}nav button.active{background:var(--plum);color:#fff;box-shadow:0 4px 10px #7043571a}.nav-icon{flex-shrink:0}section{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:26px;margin-bottom:22px;box-shadow:var(--shadow)}button,.link-button{font-weight:500;background:var(--plum);color:#fff;border-radius:12px;min-height:46px;padding:12px 20px;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}button.secondary{background:#f1e8ed;color:#684458}button:not(:disabled):active,.link-button:active{transform:translateY(1px)}button:disabled{opacity:.48;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #b07893;outline-offset:3px}label{color:#58434f;font-size:14px;font-weight:500;margin-bottom:18px}input,select,textarea{background:#fffcfb;border:1px solid #dccdd3;color:var(--ink);border-radius:12px;font-size:16px;min-height:50px;padding:12px;margin-top:8px;transition:border-color .16s,box-shadow .16s;accent-color:var(--plum)}input::placeholder,textarea::placeholder{color:#a58f9a}input:focus,select:focus,textarea:focus{border-color:#b77c96;box-shadow:0 0 0 3px #f4e4ed}input[type=checkbox]{cursor:pointer;border-radius:5px;box-shadow:none;accent-color:var(--plum)}input[type=file]{font-size:13px;padding:10px}input[type=file]::file-selector-button{background:var(--rose);color:var(--plum);border:0;padding:8px 12px;border-radius:8px;margin-right:10px;cursor:pointer}input[readonly]{background:#f7f1f4;color:#705b65}textarea{min-height:100px;resize:vertical}fieldset{border-color:var(--line);border-radius:14px;padding:16px}legend{font-size:13px;color:var(--muted);padding:0 6px}.check{font-weight:400;line-height:1.5}.check input{margin-top:0}.message{color:#89501f;font-size:13px;min-height:0}.message:empty{display:none}.message:not(:empty){padding:10px 14px;border-radius:12px;background:#fbecdf;margin:12px 0 18px}.calendar-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);align-items:start;gap:24px}.calendar-layout>section{min-width:0}.section-kicker{color:var(--muted);font-size:10px;font-weight:600;letter-spacing:2px;margin-bottom:22px}.schedule-agenda{border-top:1px solid var(--line);padding-top:22px}.appointment-editor h2,.month-calendar{margin-bottom:24px}.month-heading{gap:10px;margin-bottom:22px}.month-heading h2{font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:400;letter-spacing:-.4px;text-transform:capitalize}.month-heading button.secondary{width:42px;min-height:42px;padding:2px 10px;background:#f6eef1;color:var(--plum);font-size:26px;border:1px solid #efE3e8}.calendar-weekday{font-size:11px;letter-spacing:.4px;color:var(--muted);padding:8px 0}.calendar-grid{gap:6px}.calendar-day{background:#f8f3f5;color:#684f5b;border-radius:12px;min-height:52px;font-size:14px;padding:6px 1px;font-weight:400;box-shadow:none}.calendar-day.selected{background:var(--plum);color:#fff;border-color:var(--plum);box-shadow:0 3px 8px #70435720}.calendar-day.has-slots:not(.selected){background:var(--sage);color:var(--sage-ink);border-color:#dbe7d9}.calendar-day:disabled{background:#f9f5f6;color:#8e7e87;opacity:.5;box-shadow:none}.calendar-day:disabled.selected{color:var(--muted);border-color:#ddcfd6}.calendar-dots i{background:#72927a}.calendar-dots i.unread{background:#bd792d}.calendar-day.selected .calendar-dots i:not(.unread){background:#e9cedb}.calendar-legend{color:var(--muted);font-size:11px;line-height:1.6;margin-top:16px}.toolbar{gap:8px;align-items:center}.toolbar button{padding:10px 14px}.toolbar input{margin-top:0;min-height:46px}.schedule-agenda>.toolbar{display:grid;grid-template-columns:42px minmax(0,1fr) 42px auto}.schedule-agenda>.toolbar input[type=date]{min-width:0;width:100%;padding:10px 8px}.days{margin-top:22px;gap:18px}.days article{min-width:0}.days article>h2{font-size:15px;font-weight:500;color:var(--muted)}.days article>.muted{padding:26px 12px;background:#faf5f7;border:1px dashed #e5d4dd;border-radius:14px;text-align:center}.visit{background:#f8edf2;border:1px solid #edd6e1;border-left:3px solid #bb7c98;border-radius:15px;padding:18px;margin:14px 0}.visit>strong{font-size:13px;letter-spacing:.25px;color:var(--plum)}.visit h3{font-size:19px;margin:9px 0}.visit p{font-size:14px}.visit.confirmed,.visit.arrived{background:#edf3eb;border-color:#d9e5d7;border-left-color:#779b7c}.visit.cancelled,.visit.no_show{background:#f1ecee;border-color:#e1d7dc;border-left-color:#a38a96;opacity:.72}.visit.completed{background:#f5f0ed;border-color:#e5dad3;border-left-color:#b69780}.visit.block{background:#fcf2e7;border-color:#ecd9c6;border-left-color:#c49763}.actions{gap:7px;margin-top:12px}.actions button{font-size:12px;padding:8px 12px;min-height:40px;background:#fff8fb;border:1px solid #e6ceda;color:var(--plum)}.actions button:not(.secondary){background:var(--plum);color:#fff;border-color:var(--plum)}.online-badge{background:#f0e0ec;color:#7a4770;font-size:11px;padding:4px 9px;border-radius:6px}.notification-panel{background:#fff3e9;border-color:#efddca;box-shadow:none}.notification-heading h2{font-size:16px}.notification-count{background:#9f632d;font-size:13px;min-width:28px;text-align:center}.notification-row{border-color:#ead9c9}.notification-row p{font-size:13px}.listrow{border-color:var(--line);padding:20px 0;align-items:flex-start}.listrow>div{min-width:0}.listrow strong{overflow-wrap:anywhere;font-size:17px}.listrow p{color:var(--muted);font-size:14px}.listrow button{font-size:13px;padding:10px 14px}.hour{border-color:var(--line);padding:14px 0}.columns{gap:24px}.columns>section{min-width:0}.week-picker{gap:14px}.booking-page{max-width:740px;padding-top:32px}.booking-page header{position:relative;padding:0 4px 20px;margin-bottom:10px}.booking-page header:after{content:"";position:absolute;right:8px;top:0;width:76px;height:96px;border:1px solid #dfbccd;border-radius:50% 50% 45% 45%;transform:rotate(28deg);opacity:.55;pointer-events:none}.booking-page header h1{font-size:44px;margin-top:22px}.booking-page header .muted{margin-top:12px;font-size:13px}.booking-subtitle{color:var(--muted);font-size:14px;max-width:400px}.booking-page>section{margin-bottom:20px}.booking-page>section>h2{display:flex;align-items:center;gap:12px;font-size:18px;margin-bottom:22px}.step{background:var(--rose);border:1px solid #ecd1dd;color:var(--plum);width:34px;height:34px;font-family:Georgia,serif;font-size:17px;flex-shrink:0;margin:0}.service-option{background:#fff;border-color:var(--line);border-radius:15px;padding:18px;transition:background .15s,border-color .15s;gap:14px}.service-option:has(input:checked){background:#fbf0f5;border-color:#c68ba8;box-shadow:0 0 0 1px #c68ba8}.service-option strong{font-size:15px;color:var(--ink)}.service-option small{font-size:12px;color:var(--muted);font-weight:400;margin-top:6px}.booking-total,.booking-choice{background:#f6e9ef;border:1px solid #eddae4;color:var(--plum);font-size:14px;border-radius:12px}.booking-page .master-card{background:linear-gradient(130deg,#fffdfb 35%,#f9eaf0);border-color:#ead2de;padding:28px}.master-intro{gap:20px;align-items:center}.master-intro .muted{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;margin-bottom:7px}.master-intro h2{font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:400;letter-spacing:-.5px;margin-bottom:10px;overflow-wrap:anywhere}.master-avatar,.master-placeholder{width:104px;height:104px;border:4px solid white;box-shadow:0 0 0 1px #e4c7d5,0 8px 16px #7043570d}.master-placeholder{background:#f0dfe7;color:#965976;font-family:Georgia,serif;font-size:40px}.master-bio{font-size:14px;color:var(--muted)}.master-contact{font-size:13px;color:#6a4d5a;margin-top:12px}.master-contact .link-button{font-size:12px;padding:9px 13px;min-height:40px;background:#fff9fc;color:var(--plum);border:1px solid #e3c9d7}.master-card>h3{font-size:14px;margin:26px 0 14px;letter-spacing:.1px}.portfolio-grid{gap:10px}.portfolio-photo{background:#fff8fb;border:1px solid #eddae4;border-radius:14px;color:var(--ink);padding:0;box-shadow:none}.portfolio-photo span{font-size:12px;line-height:1.5;padding:11px 12px}.portfolio-photo img{transition:transform .2s ease}.profile-editor-grid{gap:18px}.photo-editor{background:#fffcfd;border-color:var(--line);padding:18px;border-radius:18px}.photo-dialog{background:var(--paper);color:var(--ink);box-shadow:0 24px 80px #42223940}.photo-dialog::backdrop{background:#30232dcc}.time-grid{gap:10px}.time-grid button{background:#faf1f5;color:var(--plum);border:1px solid #ebd7e1;border-radius:10px;font-size:14px;min-height:46px}.time-grid button.active{background:var(--plum);color:#fff;outline:2px solid #dcb3c7;outline-offset:2px;border-color:var(--plum)}.booking-page form label{font-size:13px}.booking-page .consent{font-size:12px;color:var(--muted);margin-top:22px;line-height:1.7}.book-submit{min-height:54px;border-radius:14px;box-shadow:0 6px 14px #70435718}.receipt-icon{background:#f1dce7;color:var(--plum);width:70px;height:70px;border:1px solid #e6c5d6}.booking-page>.receipt>h2{display:block;font-family:Georgia,serif;font-size:30px;font-weight:400;margin-bottom:20px}.receipt-date{font-size:21px;font-weight:500}.receipt>strong{font-size:24px;color:var(--plum)}.receipt .personal-link{color:var(--plum)}footer{font-size:11px;color:#8b7380;letter-spacing:.25px;padding:24px 12px}.login{max-width:460px;margin:9vh auto 40px;padding:34px;background:var(--paper);border:1px solid var(--line);border-radius:28px;box-shadow:0 16px 60px #7043570b}.login .brand{margin-bottom:30px}.login h1{font-size:38px}.login>p{font-size:14px;color:var(--muted)}.login form{margin-top:28px}.login form>button{width:100%;margin-top:6px;min-height:52px}.login>p:empty{display:none}@media(hover:hover){button:not(:disabled):hover,.link-button:hover{background:var(--plum-dark);color:#fff}button.secondary:not(:disabled):hover{background:#e8d6e0;color:var(--plum-dark)}nav button.secondary:hover{background:#f2e5ec}.calendar-day:not(:disabled):not(.selected):hover{background:#edd9e4;color:var(--plum)}.portfolio-photo:hover{background:#fff8fb;color:var(--ink)}.portfolio-photo:hover img{transform:scale(1.025)}.service-option:hover{border-color:#c995ad}}@media(max-width:960px){.calendar-layout{grid-template-columns:1fr}.calendar-layout .appointment-editor{max-width:none}nav button{padding:12px 16px}}@media(max-width:640px){main{padding:24px 17px 16px}h1{font-size:29px;letter-spacing:-.6px;margin-top:12px}.brand{font-size:10px;gap:8px;letter-spacing:2px}.brand-mark{width:34px;height:34px}.brand small{font-size:8px}header{gap:10px;margin-bottom:22px;align-items:center}header>button.secondary{min-height:40px;padding:9px 13px;font-size:12px}.header-caption{font-size:12px;line-height:1.5;max-width:240px}nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;gap:3px;padding:5px;border-radius:16px;position:sticky;top:8px;z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffcfbf2;margin-bottom:22px}nav button,nav button.secondary{flex-direction:column;gap:5px;padding:9px 2px;min-height:62px;font-size:10.5px;line-height:1.2;min-width:0}.nav-icon{width:19px;height:19px}section{padding:20px 17px;border-radius:21px;margin-bottom:18px}.calendar-layout{gap:0}.booking-page section{padding:21px 17px}.section-kicker{margin-bottom:18px;font-size:9px}.schedule-agenda{padding-top:18px}.month-heading{margin-bottom:16px}.month-heading h2{font-size:21px}.calendar-grid{gap:4px}.calendar-day{min-height:45px;border-radius:10px;font-size:13px}.calendar-weekday{font-size:10px}.month-heading button.secondary{width:38px;min-height:40px;padding:0}.calendar-legend{font-size:10px}.schedule-agenda>.toolbar{grid-template-columns:36px minmax(0,1fr) 36px}.schedule-agenda>.toolbar button{padding:8px 10px;min-height:42px}.schedule-agenda>.toolbar button:last-child{grid-column:1/-1;justify-self:start;padding:8px 15px;min-width:72px;font-size:12px}.schedule-agenda>.toolbar input{font-size:14px}h2{font-size:18px}.visit{padding:16px}.visit h3{font-size:18px}.actions button{min-height:42px}.columns{gap:0}.work-days-editor .columns{gap:24px}.listrow{gap:10px}.listrow button{padding:9px 11px;font-size:12px}.booking-page{padding-top:26px}.booking-page header{padding:0 2px 16px}.booking-page header h1{font-size:36px}.booking-page header:after{right:3px;top:8px;width:55px;height:72px}.booking-subtitle{font-size:13px;max-width:260px}.booking-page header .muted{font-size:11px}.booking-page>section>h2{font-size:17px;gap:10px;margin-bottom:20px}.step{width:30px;height:30px;font-size:16px}.booking-page .master-card{padding:23px 19px}.master-intro{gap:16px;align-items:flex-start}.master-avatar,.master-placeholder{width:78px;height:78px;border-width:3px}.master-intro h2{font-size:27px}.master-contact{font-size:12px}.master-contact .link-button{padding:9px 12px;font-size:11px}.master-bio{font-size:13px}.service-option{padding:16px 13px;gap:12px}.service-option strong{font-size:14px}.service-option small{font-size:11px}.booking-page .month-calendar{margin-top:6px}.booking-page form label{font-size:13px}.booking-page .consent{font-size:11px}.booking-page>.receipt>h2{font-size:28px}.receipt-date{font-size:20px}.login{margin:7vh 17px 32px;max-width:none;padding:28px 23px}.login h1{font-size:34px}.login .brand{margin-bottom:26px}.login .brand-mark{width:42px;height:42px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
