@font-face{font-family:PlexArabic;font-weight:400;font-style:normal;font-display:swap;src:url('/assets/IBMPlexSansArabic-Regular.ttf') format('truetype')}
@font-face{font-family:PlexArabic;font-weight:500;font-style:normal;font-display:swap;src:url('/assets/IBMPlexSansArabic-Medium.ttf') format('truetype')}
@font-face{font-family:PlexArabic;font-weight:600;font-style:normal;font-display:swap;src:url('/assets/IBMPlexSansArabic-SemiBold.ttf') format('truetype')}
/* Clinime v8. Mobile Fresha-reference geometry, with supplied Clinime identity. */
:root{--navy:#2D3E5B;--navy-press:#23324C;--blush:#FFD8EB;--ink:#25334B;--muted:#687180;--paper:#fff;--soft:#F6F6F6;--line:#DEDFE2;--control-line:#AEB4BE;--error:#B42335;--success:#21664B;--font-ar:'PlexArabic','IBM Plex Sans Arabic',system-ui,sans-serif;--font-en:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;--font:var(--font-ar);--gutter:20px;--safe-bottom:env(safe-area-inset-bottom,0px);--phone-width:430px;--caption:13px;--meta:14px;--body:16px;--service:16px;--section:20px;--title:28px;--radius:12px;--pill:999px;--press:120ms;--ease:cubic-bezier(.2,0,0,1)}html:lang(en){--font:var(--font-en)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--body);line-height:1.6;font-feature-settings:'calt' 1,'kern' 1}button,input,select{font:inherit;color:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;touch-action:manipulation;border:0;background:none;padding:0}button:disabled{cursor:default}button svg{pointer-events:none}button,a,input,select,[tabindex]{scroll-margin-block:24px}:where(button,a,input,select,[tabindex]):focus-visible{outline:2px solid var(--navy);outline-offset:3px}h1,h2,h3,p,figure{margin:0}h1,h2,h3,strong,b{font-weight:600}h1{font-size:var(--title);line-height:1.35}h2{font-size:var(--section);line-height:1.4}h3{font-size:var(--service);line-height:1.5}img{max-inline-size:100%;display:block}svg{inline-size:24px;block-size:24px;flex:none;vertical-align:middle}bdi{font-variant-numeric:tabular-nums}#app{inline-size:100%;max-inline-size:var(--phone-width);min-block-size:100dvh;margin-inline:auto;background:var(--paper);position:relative}.screen{padding-block-end:112px;min-block-size:100dvh}.screen--booking{padding-block-end:110px}.screen--times{background:var(--soft);padding-block-end:40px}.screen-main{padding-inline:var(--gutter)}.sr-only{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.muted,.meta{color:var(--muted)}.meta{font-size:var(--meta)}.view-heading{outline:none}.heading{margin-block:20px 28px}.heading>p{margin-block-start:8px;color:var(--muted)}.top-bar{display:flex;align-items:center;justify-content:space-between;min-block-size:64px;padding:8px 12px;gap:12px;background:var(--paper)}.top-bar .top-caption{font-size:14px;font-weight:600;text-align:center;flex:1}.icon-button{inline-size:44px;block-size:44px;display:inline-flex;align-items:center;justify-content:center;flex:none;border-radius:var(--pill)}.icon-button svg{inline-size:24px;block-size:24px}.back-button svg{transform:rotate(180deg)}:dir(rtl) .back-button svg{transform:none}.pill-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-block-size:48px;padding:12px 24px;border-radius:var(--pill);font-weight:600;line-height:1.45;background:var(--navy);color:var(--paper);border:1px solid var(--navy);transition:background var(--press) var(--ease)}.pill-button:active{background:var(--navy-press)}.pill-button:disabled{background:#A9AEB6;border-color:#A9AEB6;color:var(--paper)}.pill-button--secondary{background:var(--paper);color:var(--navy);border-color:var(--control-line)}.pill-button--quiet{border-color:transparent;background:transparent;color:var(--navy)}.pill-button--danger{background:var(--error);border-color:var(--error)}.pill-button--full{inline-size:100%}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-block-size:44px;padding:8px 0;font-weight:600;font-size:var(--meta);color:var(--navy)}.home-top{padding:16px var(--gutter) 0}.home-location{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-block-end:16px}.location-control{display:flex;align-items:center;gap:8px;min-block-size:44px;font-size:16px}.location-control>svg:first-child{inline-size:20px;block-size:20px}.location-control>svg:last-child{inline-size:16px;block-size:16px;transform:rotate(90deg)}.home-mark{inline-size:28px;block-size:28px;object-fit:contain}.search-pill{display:flex;align-items:center;gap:12px;min-block-size:58px;inline-size:100%;border:1px solid var(--line);border-radius:var(--pill);padding:6px 8px 6px 16px;background:var(--paper);box-shadow:0 4px 24px rgb(26 34 51 / 9%)}:dir(rtl) .search-pill{padding:6px 16px 6px 8px}.search-pill>svg{inline-size:22px;block-size:22px}.search-pill input{min-inline-size:0;flex:1;border:0;outline:0!important;background:transparent;min-block-size:44px;font-size:16px;inline-size:100%}.search-pill input::placeholder{color:var(--muted);opacity:1}.search-pill:focus-within{outline:2px solid var(--navy);outline-offset:2px}.search-pill>.pill-button{min-block-size:44px;padding:10px 18px;font-size:14px}.category-grid{display:grid;grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:88px;justify-content:space-between;gap:16px 12px;overflow:auto;scrollbar-width:none;padding:28px var(--gutter) 24px}.category-grid::-webkit-scrollbar{display:none}.category-item{display:flex;flex-direction:column;align-items:center;gap:8px;min-inline-size:0;font-size:13px;line-height:1.4;text-align:center}.category-item__icon{inline-size:64px;block-size:64px;border-radius:18px;background:var(--soft);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}.category-item__icon svg{inline-size:28px;block-size:28px}.category-item[aria-pressed=true] .category-item__icon{background:var(--blush);border-color:var(--navy)}.category-item__label{min-block-size:36px;max-inline-size:88px}.home-section{padding-block:12px 24px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-inline:var(--gutter);margin-block-end:16px}.horizontal-cards{display:flex;gap:16px;overflow:auto;scrollbar-width:none;padding-inline:var(--gutter);padding-block-end:4px;scroll-snap-type:x proximity}.horizontal-cards::-webkit-scrollbar{display:none}.venue-card{display:block;flex:0 0 min(78vw,312px);text-align:start;scroll-snap-align:start;min-inline-size:0}.venue-card__photo{inline-size:100%;block-size:168px;object-fit:cover;border-radius:16px;margin-block-end:12px}.venue-card h3{font-size:18px;margin-block-end:2px}.venue-card p{font-size:14px;color:var(--muted)}.popular-card{display:block;flex:0 0 156px;text-align:start;min-inline-size:0;scroll-snap-align:start}.popular-card img{inline-size:156px;block-size:132px;object-fit:cover;border-radius:12px;margin-block-end:10px}.popular-card h3{font-size:15px;line-height:1.5;margin-block-end:4px}.popular-card p{font-size:13px;color:var(--muted)}.popular-card strong{display:block;font-size:14px;margin-block-start:6px}.floating-nav{position:fixed;z-index:30;inset-block-end:calc(12px + var(--safe-bottom));left:50%;right:auto;transform:translateX(-50%);inline-size:calc(100% - 32px);max-inline-size:398px;block-size:72px;border:1px solid var(--line);border-radius:var(--pill);background:var(--paper);box-shadow:0 6px 32px rgb(26 34 51 / 12%);display:grid;grid-template-columns:repeat(4,1fr);padding:5px}.floating-nav__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:var(--pill);font-size:11px;font-weight:600;min-block-size:60px;white-space:nowrap;color:var(--ink)}.floating-nav__item svg{inline-size:24px;block-size:24px}.floating-nav__item.is-active{background:var(--soft);color:var(--navy)}.venue-gallery{position:relative;block-size:310px;background:var(--soft)}.venue-gallery>img{inline-size:100%;block-size:100%;object-fit:cover}.gallery-controls{position:absolute;inset:16px 12px auto;display:flex;align-items:center;justify-content:space-between}.gallery-controls__trailing{display:flex;gap:4px}.round-control{inline-size:44px;block-size:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate}.round-control:before{content:"";position:absolute;inset:4px;background:rgb(255 255 255 / 90%);border-radius:50%;z-index:-1}.round-control svg{inline-size:21px;block-size:21px}.gallery-count{position:absolute;inset-inline-end:20px;inset-block-end:40px;border-radius:var(--pill);background:rgb(34 42 54 / 70%);color:white;padding:3px 10px;font-size:13px}.venue-panel{position:relative;margin-block-start:-24px;border-radius:24px 24px 0 0;padding:20px var(--gutter) 24px;background:var(--paper)}.venue-panel h1{font-size:26px}.venue-panel .venue-descriptor{font-size:16px;color:var(--muted);margin-block-start:2px}.venue-scope{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--muted);margin-block:12px 16px}.venue-scope svg{inline-size:16px;block-size:16px}.location-row{display:flex;align-items:start;gap:8px;min-block-size:56px;padding:12px;background:var(--soft);border-radius:12px;font-size:14px}.location-row svg{inline-size:18px;block-size:18px;margin-block-start:2px}.about-section{padding-block-start:24px}.about-section h2{margin-block-end:12px;font-size:20px}.about-section p{font-size:15px;line-height:1.65}.venue-services{background:var(--soft);padding:24px 0}.venue-services>h2{padding-inline:var(--gutter);margin-block-end:16px}.chip-strip{display:flex;align-items:center;gap:8px;padding:0 var(--gutter) 20px;overflow:auto;scrollbar-width:none}.chip-strip::-webkit-scrollbar{display:none}.chip{display:inline-flex;align-items:center;justify-content:center;min-block-size:42px;flex:0 0 auto;border:1px solid var(--line);border-radius:var(--pill);padding:9px 16px;font-size:14px;line-height:1.4;white-space:nowrap;background:var(--paper)}.chip.is-active{color:var(--paper);background:var(--navy);border-color:var(--navy);font-weight:600}.venue-service-list{padding-inline:var(--gutter)}.venue-service-row{display:flex;gap:16px;align-items:center;justify-content:space-between;padding-block:18px;border-block-end:1px solid var(--line);inline-size:100%;text-align:start}.venue-service-row h3{font-size:16px}.venue-service-row p{font-size:14px;color:var(--muted);margin-block-start:3px}.venue-service-row strong{display:block;margin-block-start:8px;font-size:16px}.venue-service-row .pill-button{min-block-size:40px;padding:9px 16px;font-size:14px}.fixed-footer{position:fixed;z-index:25;inset-block-end:0;left:50%;right:auto;transform:translateX(-50%);inline-size:100%;max-inline-size:var(--phone-width);background:var(--paper);border-block-start:1px solid var(--line);padding:16px var(--gutter) calc(16px + var(--safe-bottom));display:flex;justify-content:space-between;align-items:center;gap:16px;min-block-size:88px}.footer-summary{display:flex;flex-direction:column;min-inline-size:0;font-size:14px;line-height:1.4}.footer-summary strong{font-size:16px;line-height:1.45}.footer-summary>span{color:var(--muted);font-size:13px;margin-block-start:2px}.fixed-footer>.pill-button{flex:none;min-inline-size:112px}.booking-heading{padding:20px var(--gutter) 24px}.booking-heading h1{font-size:28px}.booking-heading p{font-size:14px;color:var(--muted);margin-block-start:8px}.booking-services{padding-inline:var(--gutter)}.service-select{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:12px;padding:18px 16px;min-block-size:126px;inline-size:100%;margin-block-end:12px;text-align:start;background:var(--paper)}.service-select__text{flex:1;min-inline-size:0}.service-select h2{font-size:16px;line-height:1.5}.service-select p{font-size:14px;color:var(--muted);margin-block-start:4px}.service-select strong{display:block;font-size:16px;margin-block-start:12px}.selection-check{inline-size:24px;block-size:24px;border:1px solid var(--control-line);border-radius:7px;display:flex;align-items:center;justify-content:center;flex:none}.selection-check svg{inline-size:16px;block-size:16px}.service-select.is-selected{border:2px solid var(--navy);padding:17px 15px}.is-selected .selection-check{background:var(--navy);border-color:var(--navy);color:var(--paper)}.booking-subtitle{padding:4px var(--gutter) 16px;font-size:18px}.booking-detail-note{font-size:14px;color:var(--muted);padding:16px var(--gutter)}.provider-list{padding-inline:var(--gutter)}.provider-card{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:12px;padding:20px 16px;min-block-size:104px;inline-size:100%;text-align:start;margin-block-end:12px}.provider-card__avatar{inline-size:56px;block-size:56px;border-radius:50%;background:var(--soft);display:flex;align-items:center;justify-content:center;flex:none}.provider-card__avatar svg{inline-size:28px;block-size:28px}.provider-card__body{flex:1;min-inline-size:0}.provider-card h2{font-size:16px}.provider-card p{font-size:14px;color:var(--muted);margin-block-start:4px}.provider-card.is-selected{border:2px solid var(--navy);padding:19px 15px}.times-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:24px var(--gutter) 32px}.times-heading h1{font-size:27px;line-height:1.35;max-inline-size:260px}.calendar-trigger{inline-size:52px;block-size:40px;border:1px solid var(--line);background:var(--paper);border-radius:var(--pill);display:flex;align-items:center;justify-content:center;flex:none}.calendar-trigger svg{inline-size:23px;block-size:23px}.date-label{font-size:20px;margin:0 var(--gutter) 16px}.day-strip{display:flex;gap:8px;overflow:auto;scrollbar-width:none;padding:0 var(--gutter) 24px}.day-strip::-webkit-scrollbar{display:none}.day-card{flex:0 0 62px;min-block-size:92px;border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:var(--paper);font-size:13px;color:var(--muted)}.day-card strong{font-size:24px;line-height:1.3;color:var(--ink)}.day-card.is-selected{background:var(--navy);border-color:var(--navy);color:white}.day-card.is-selected strong{color:white}.times-list{display:grid;gap:12px;padding:0 var(--gutter)}.time-row{min-block-size:52px;border:1px solid var(--line);border-radius:14px;background:var(--paper);text-align:start;padding:12px 16px;font-size:16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.time-row.is-selected{border-color:var(--navy);background:var(--blush)}.time-row:disabled{color:var(--muted);text-decoration:line-through}.time-row svg{inline-size:18px;block-size:18px}.state-panel{padding:24px var(--gutter)}.state-panel h2{font-size:20px;margin-block-end:8px}.state-panel p{font-size:15px;color:var(--muted);margin-block-end:16px}.state-panel .pill-button{margin-block-start:8px}.notice{display:flex;gap:10px;padding:12px 14px;margin-block:12px 20px;background:#FFF6E7;color:#805A12;border-radius:12px;font-size:14px}.notice svg{inline-size:18px;block-size:18px;margin-block-start:2px}.notice--error{color:var(--error);background:#FFF1F2}.field{margin-block-end:20px}.field label{display:block;font-weight:600;font-size:15px;margin-block-end:8px}.field input{min-block-size:52px;inline-size:100%;border:1px solid var(--control-line);border-radius:12px;background:var(--paper);padding:12px 16px;font-size:16px}.field input[aria-invalid=true]{border-color:var(--error)}.field-help{font-size:13px;color:var(--muted);margin-block-start:8px}.field-error{display:flex;gap:8px;font-size:14px;color:var(--error);margin-block-start:8px}.field-error svg{inline-size:16px;block-size:16px;margin-block-start:3px}.auth-form{padding-inline:var(--gutter)}.auth-or{display:flex;align-items:center;gap:16px;color:var(--muted);font-size:14px;margin-block:24px}.auth-or:before,.auth-or:after{content:"";block-size:1px;flex:1;background:var(--line)}.plain-note{font-size:13px;color:var(--muted);padding:20px var(--gutter);display:flex;align-items:start;gap:8px}.plain-note svg{inline-size:18px;block-size:18px;margin-block-start:2px}.otp-input{letter-spacing:.4em;text-align:center;font-size:28px!important}.phone-context{padding-inline:var(--gutter);margin-block-end:20px}.phone-context p{unicode-bidi:plaintext}.form-actions{padding:12px var(--gutter) 20px}.form-actions>.pill-button{inline-size:100%}.attendee-kinds{display:flex;gap:8px;padding:0 var(--gutter) 24px}.attendee-kinds>.chip{flex:1;min-block-size:48px}.facts{padding-inline:var(--gutter)}.fact-row{display:flex;align-items:start;gap:12px;padding-block:16px;border-block-end:1px solid var(--line)}.fact-row>svg{inline-size:20px;block-size:20px;margin-block-start:3px}.fact-row>div{min-inline-size:0;flex:1}.fact-row span{display:block;font-size:13px;color:var(--muted);margin-block-end:4px}.fact-row strong{font-size:15px;line-height:1.6}.fact-row .text-button{padding:0}.summary-card{display:flex;align-items:center;gap:12px;padding:16px;margin:0 var(--gutter) 16px;background:var(--soft);border-radius:12px}.summary-card img{inline-size:64px;block-size:64px;border-radius:12px;object-fit:cover;flex:none}.summary-card>div{min-inline-size:0;flex:1}.summary-card h2{font-size:16px}.summary-card p{font-size:13px;color:var(--muted);margin-block-start:2px}.summary-card strong{font-size:14px;display:block;margin-block-start:4px}.total-line{padding:20px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:16px}.total-line strong{font-size:20px}.success-symbol{inline-size:48px;block-size:48px;display:flex;align-items:center;justify-content:center;color:var(--success);margin:20px var(--gutter) 0}.success-symbol svg{inline-size:44px;block-size:44px}.booking-reference{display:flex;justify-content:space-between;gap:12px;padding:12px var(--gutter);font-size:14px;overflow-wrap:anywhere}.booking-reference>span{color:var(--muted)}.saved-label{display:flex;gap:8px;align-items:center;color:var(--success);font-size:14px;padding:12px var(--gutter)}.booking-status{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--success)}.booking-status svg{inline-size:15px;block-size:15px}.booking-status.is-cancelled{color:var(--muted)}.booking-list{padding-inline:var(--gutter)}.booking-card{display:flex;align-items:start;gap:14px;border-block-end:1px solid var(--line);padding-block:20px}.booking-card__date{display:flex;flex-direction:column;align-items:center;justify-content:center;inline-size:56px;min-block-size:68px;border-radius:12px;background:var(--soft);font-size:13px;flex:none}.booking-card__date strong{font-size:26px;line-height:1.2}.booking-card__body{min-inline-size:0;flex:1}.booking-card h2{font-size:16px;margin-block:6px}.booking-card p{font-size:14px;color:var(--muted)}.draft-card{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;margin:0 var(--gutter) 16px;background:var(--soft);border-radius:12px;font-size:14px}.account-profile{display:flex;gap:16px;align-items:center;padding:8px var(--gutter) 24px}.account-profile>svg{inline-size:40px;block-size:40px}.account-profile>div{flex:1;min-inline-size:0}.account-profile h2{font-size:20px}.account-profile p{font-size:14px;color:var(--muted)}.settings-list{padding-inline:var(--gutter)}.setting-row{display:flex;align-items:center;gap:14px;inline-size:100%;min-block-size:74px;text-align:start;border-block-end:1px solid var(--line);padding-block:16px}.setting-row>svg{inline-size:22px;block-size:22px}.setting-row>div{flex:1;min-inline-size:0}.setting-row strong{display:block;font-size:16px}.setting-row p{font-size:13px;color:var(--muted);margin-block-start:4px}.setting-row>svg:last-child{inline-size:18px;block-size:18px;transform:rotate(180deg)}:dir(ltr) .setting-row>svg:last-child{transform:none}.app-dialog{padding:0;border:0;border-radius:24px 24px 0 0;inline-size:100%;max-inline-size:var(--phone-width);max-block-size:calc(100dvh - 12px);margin:auto auto 0;background:var(--paper);color:var(--ink);font-family:var(--font);overflow:auto;box-shadow:0 -8px 40px rgb(20 29 45 / 12%)}.app-dialog::backdrop{background:rgb(0 0 0 / 28%)}.dialog-header{display:flex;align-items:start;justify-content:space-between;gap:16px;padding:20px var(--gutter) 16px}.dialog-header h2{font-size:24px;padding-block-start:6px}.dialog-header .icon-button{margin-inline-end:-8px}.dialog-body{padding:0 var(--gutter) 24px}.dialog-body p{font-size:15px;line-height:1.65}.dialog-actions{padding:16px var(--gutter) calc(20px + var(--safe-bottom));display:grid;gap:12px}.dialog-actions .pill-button{inline-size:100%}.option-dialog{block-size:calc(100dvh - 12px);max-block-size:calc(100dvh - 12px);overflow:auto;background:var(--soft)}.option-dialog .dialog-header{padding-block:20px 12px}.option-dialog .dialog-header h2{font-size:26px}.option-intro{padding:0 var(--gutter) 24px;background:var(--soft)}.option-intro>p{font-size:15px;line-height:1.65;margin-block:12px 24px}.option-intro h3{font-size:18px}.option-intro .meta{font-size:13px}.option-options{background:var(--paper);padding:0 var(--gutter) 110px}.option-row{display:flex;align-items:center;gap:16px;inline-size:100%;padding:20px 0;text-align:start;min-block-size:104px;border-block-end:1px solid var(--line)}.option-row__body{flex:1;min-inline-size:0}.option-row h3{font-size:16px;font-weight:400}.option-row p{font-size:14px;color:var(--muted);margin-block-start:3px}.option-row strong{display:block;font-size:16px;margin-block-start:12px}.radio-circle{inline-size:22px;block-size:22px;border:1px solid var(--control-line);border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none}.radio-circle svg{inline-size:14px;block-size:14px}.option-row.is-selected .radio-circle{border:6px solid var(--navy)}.option-dialog .fixed-footer{z-index:60}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin-block-end:16px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekdays>span{text-align:center;font-size:12px;color:var(--muted);padding-block:8px}.calendar-grid>button,.calendar-grid>.calendar-blank{min-block-size:42px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px}.calendar-grid>button.is-selected{background:var(--navy);color:white}.calendar-grid>button:disabled{color:#969DA8}.spinner{inline-size:18px;block-size:18px;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;display:inline-block;flex:none;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.skip-link{position:fixed;inset-block-start:8px;inset-inline-start:8px;background:white;color:var(--navy);z-index:200;padding:12px 16px;transform:translateY(-160%)}.skip-link:focus{transform:none}
@media(min-width:431px){body{background:#ECEDEF}#app{box-shadow:0 0 0 1px #E2E4E8}.app-dialog{border-radius:24px;max-block-size:calc(100dvh - 24px);margin:auto}.option-dialog{margin:12px auto;block-size:calc(100dvh - 24px)}.option-dialog .fixed-footer{border-radius:0 0 24px 24px;inset-block-end:12px}}
@media(max-width:360px){:root{--gutter:16px}.home-top{padding-block-start:12px}.category-grid{grid-auto-columns:80px;column-gap:10px}.floating-nav{inline-size:calc(100% - 24px)}.floating-nav__item{font-size:10px}.search-pill{gap:8px}.search-pill>.pill-button{padding-inline:14px}.times-heading h1{font-size:25px}.venue-card{flex-basis:82vw}.fixed-footer{gap:12px}.fixed-footer>.pill-button{min-inline-size:104px;padding-inline:20px}}
@media(hover:hover){.pill-button:not(:disabled):hover{background:var(--navy-press)}.pill-button--secondary:not(:disabled):hover{background:var(--soft)}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.service-select:hover,.provider-card:hover,.time-row:not(:disabled):hover{border-color:var(--control-line)}.icon-button:hover{background:var(--soft)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.spinner{animation:none}}@media(prefers-contrast:more){.chip,.service-select,.time-row,.day-card,.search-pill{border-color:var(--control-line)}}
/* Service-selection screen follows the captured Fresha card composition. */
.screen--services{background:var(--soft)}.screen--services .top-bar{background:var(--soft)}.selection-check{inline-size:36px;block-size:36px;border-radius:50%;align-self:flex-end;box-shadow:0 2px 5px rgb(26 34 51 / 5%)}.selection-check svg{inline-size:18px;block-size:18px}.service-select{min-block-size:136px}.screen--times .top-bar{background:var(--soft)}.gallery-modal-image{inline-size:100%;max-block-size:62dvh;object-fit:cover;border-radius:12px;margin-block-end:16px}
.location-row{inline-size:100%;text-align:start}.calendar-trigger{min-block-size:44px}
:dir(rtl) .calendar-heading>.icon-button:not(.back-button) svg{transform:rotate(180deg)}.round-control[aria-pressed=true] svg{fill:var(--blush);stroke:var(--navy)}

/* Align booking rhythm to the observed 390px Fresha reference. */
.times-heading{padding-block-start:40px}

.screen--times:has(.fixed-footer){padding-block-end:110px}.time-row.is-selected{background:var(--paper);border:2px solid var(--navy)}

.gallery-photo{inline-size:100%;block-size:100%;display:block}.gallery-photo img{inline-size:100%;block-size:100%;object-fit:cover}.gallery-modal-image{touch-action:pan-y}#intro{max-width:430px;margin-inline:auto;width:100%}

.floating-nav__item{font-size:12px}@media(max-width:360px){.floating-nav__item{font-size:12px}}

.date-label{font-size:18px;line-height:24px}.action-arrow{inline-size:18px;block-size:18px}:dir(rtl) .action-arrow{transform:rotate(180deg)}.fixed-footer>.pill-button{padding-inline:16px}.option-dialog .fixed-footer>.pill-button{min-inline-size:70px;padding-inline:20px}

/* Isolated discovery geometry. Uses the current mobile token/asset contract. */
.mobile-discovery{--disc-gutter:20px;--disc-soft:#F5F5F5;--disc-line:#E3E3E6;--disc-secondary:#737782;min-block-size:100dvh;background:var(--paper);color:var(--ink);padding-block-end:112px}.mobile-discovery main{outline:none}.mobile-discovery button{text-align:start}.disc-home-header{padding:16px var(--disc-gutter) 0}.disc-location-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-block-end:20px}.disc-location{display:flex;align-items:center;gap:9px;min-block-size:44px;font-size:17px;line-height:1.4}.disc-location>svg:first-child{inline-size:19px;block-size:19px;color:var(--navy)}.disc-location>svg:last-child{inline-size:16px;block-size:16px;transform:rotate(90deg)}.disc-brand-mark{inline-size:25px;block-size:25px;object-fit:contain}.disc-searchbar{display:flex;align-items:center;gap:10px;inline-size:100%;min-block-size:56px;border:1px solid var(--disc-line);border-radius:999px;background:var(--paper);padding:6px 8px 6px 16px;box-shadow:0 5px 24px rgb(20 29 45 / 10%)}:dir(rtl) .disc-searchbar{padding:6px 16px 6px 8px}.disc-searchbar__icon{display:inline-flex}.disc-searchbar__icon svg{inline-size:22px;block-size:22px}.disc-searchbar input{min-inline-size:0;inline-size:100%;flex:1;min-block-size:42px;border:0;outline:0!important;background:none;font-size:14px;line-height:1.4;padding:0;color:var(--ink)}.disc-searchbar input::placeholder{color:var(--disc-secondary);opacity:1}.disc-searchbar input::-webkit-search-cancel-button{display:none}.disc-searchbar:focus-within{outline:2px solid var(--navy);outline-offset:3px}.disc-searchbar__submit{border-radius:999px;background:var(--navy);color:white;min-block-size:42px;min-inline-size:71px;padding:10px 18px;font-size:14px;font-weight:600;text-align:center!important}.disc-searchbar__clear{display:flex;align-items:center;justify-content:center;inline-size:32px;min-block-size:44px;flex:none}.disc-searchbar__clear svg{inline-size:17px;block-size:17px}.disc-categories{display:grid;grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:82px;justify-content:space-between;gap:18px 12px;overflow-x:auto;scrollbar-width:none;padding:30px var(--disc-gutter) 22px}.disc-categories::-webkit-scrollbar{display:none}.disc-category{display:flex;flex-direction:column;align-items:center;gap:9px;inline-size:82px;font-size:12px;line-height:1.45;text-align:center!important}.disc-category>span:last-child{min-block-size:35px;max-inline-size:82px}.disc-category__icon{display:flex;align-items:center;justify-content:center;inline-size:62px;block-size:62px;border:1px solid var(--disc-line);border-radius:18px;background:var(--disc-soft)}.disc-category__icon svg{inline-size:27px;block-size:27px}.disc-category[aria-pressed=true] .disc-category__icon{color:var(--navy);border-color:var(--control-line);background:var(--disc-soft)}.disc-home-section{padding-block:16px 22px}.disc-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-inline:var(--disc-gutter);margin-block-end:14px}.disc-section-heading h2{font-size:21px;line-height:1.4}.disc-text-button{min-block-size:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--navy);font-size:13px;font-weight:600;line-height:1.4}.disc-venue-carousel{display:flex;gap:16px;overflow-x:auto;padding-inline:var(--disc-gutter);scrollbar-width:none}.disc-venue-card{display:block;flex:0 0 100%;inline-size:100%;min-inline-size:0;text-align:start;overflow:hidden}.disc-venue-card__image{inline-size:100%;block-size:174px;object-fit:cover;border-radius:16px}.disc-venue-card__body{padding-block-start:12px}.disc-venue-card h3{font-size:17px;line-height:1.45}.disc-venue-card p{font-size:14px;color:var(--disc-secondary);margin-block-start:3px}.disc-venue-card__facts{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--disc-secondary);margin-block-start:4px}.disc-venue-card__facts>span+span:before{content:'·';margin-inline-end:12px}.disc-service-carousel{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;padding:0 var(--disc-gutter) 4px;scroll-snap-type:x proximity}.disc-service-carousel::-webkit-scrollbar,.disc-venue-carousel::-webkit-scrollbar{display:none}.disc-treatment-card{display:block;flex:0 0 164px;min-inline-size:0;text-align:start;scroll-snap-align:start}.disc-treatment-card img{inline-size:164px;block-size:128px;object-fit:cover;border-radius:12px;margin-block-end:10px}.disc-treatment-card h3{font-size:15px;line-height:1.5;min-block-size:23px}.disc-treatment-card p{font-size:13px;color:var(--disc-secondary);margin-block-start:3px}.disc-treatment-card strong{display:block;font-size:14px;margin-block-start:5px}.disc-nav{position:fixed;z-index:30;left:50%;right:auto;transform:translateX(-50%);bottom:calc(12px + var(--safe-bottom));inline-size:calc(100% - 32px);max-inline-size:398px;block-size:66px;padding:5px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--paper);border:1px solid var(--disc-line);border-radius:999px;box-shadow:0 8px 32px rgb(20 29 45 / 12%)}.disc-nav__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-inline-size:0;min-block-size:54px;padding:4px 0;border-radius:999px;color:var(--ink);font-size:11px;line-height:1.4;font-weight:600;text-align:center!important;white-space:nowrap}.disc-nav__item svg{inline-size:23px;block-size:23px}.disc-nav__item.is-active{background:#F0F0F1;color:var(--navy)}.disc-nav__item.is-active svg{stroke-width:2}.disc-gallery{position:relative;block-size:308px;background:var(--disc-soft)}.disc-gallery__photo{display:block;inline-size:100%;block-size:100%}.disc-gallery__photo img{inline-size:100%;block-size:100%;object-fit:cover}.disc-gallery__controls{position:absolute;inset:14px 12px auto;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.disc-gallery__controls>div{display:flex;gap:4px}.disc-round-control{position:relative;display:flex;align-items:center;justify-content:center;inline-size:44px;block-size:44px;border-radius:50%;isolation:isolate;pointer-events:auto}.disc-round-control:before{position:absolute;inset:4px;content:'';border-radius:50%;background:rgb(255 255 255 / 92%);z-index:-1}.disc-round-control svg{inline-size:21px;block-size:21px}.disc-back svg{transform:rotate(180deg)}:dir(rtl) .disc-back svg{transform:none}.disc-round-control[aria-pressed=true] svg{fill:var(--blush);stroke:var(--navy)}.disc-gallery__count{position:absolute;inset-inline-end:20px;inset-block-end:40px;padding:3px 11px;min-block-size:28px;color:white;background:rgb(30 37 48 / 65%);font-size:13px;border-radius:999px;text-align:center!important}.disc-venue-panel{position:relative;background:var(--paper);border-radius:24px 24px 0 0;margin-block-start:-24px;padding:20px var(--disc-gutter) 20px}.disc-venue-identity h1{font-size:26px;line-height:1.35}.disc-venue-identity>p{font-size:16px;color:var(--disc-secondary);margin-block-start:4px}.disc-venue-facts{display:flex;align-items:center;gap:12px;margin-block:12px 16px;font-size:14px;color:var(--disc-secondary)}.disc-venue-facts>span+span:before{content:'·';margin-inline-end:12px}.disc-location-info{inline-size:100%;display:flex;align-items:center;gap:9px;min-block-size:56px;background:var(--disc-soft);border-radius:12px;padding:12px;font-size:14px;text-align:start}.disc-location-info>svg{inline-size:18px;block-size:18px}.disc-location-info>span{flex:1}.disc-location-info>svg:last-child{inline-size:16px;block-size:16px;transform:rotate(180deg)}:dir(ltr) .disc-location-info>svg:last-child{transform:none}.disc-about{padding-block-start:24px;scroll-margin-block-start:64px}.disc-about h2{font-size:20px;margin-block-end:12px}.disc-about p{font-size:15px;line-height:1.65}.disc-read-more{display:inline-flex;align-items:center;min-block-size:44px;font-size:14px;color:var(--navy);font-weight:600}.disc-venue-tabs{position:sticky;top:0;z-index:12;display:flex;align-items:stretch;gap:24px;min-block-size:52px;padding-inline:var(--disc-gutter);border-block-end:1px solid var(--disc-line);background:var(--paper)}.disc-venue-tab{min-block-size:52px;display:flex;align-items:center;font-size:15px;font-weight:600;white-space:nowrap}.disc-venue-services{background:var(--disc-soft);padding-block:20px 24px;scroll-margin-block-start:52px}.disc-filters{display:flex;gap:8px;align-items:center;overflow-x:auto;scrollbar-width:none;padding:0 var(--disc-gutter) 16px}.disc-filters::-webkit-scrollbar{display:none}.disc-filter{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-block-size:42px;white-space:nowrap;padding:9px 16px;border:1px solid var(--disc-line);border-radius:999px;background:var(--paper);font-size:14px;line-height:1.4;text-align:center!important}.disc-filter.is-active{background:var(--navy);border-color:var(--navy);color:white;font-weight:600}.disc-venue-services>.disc-filters{position:sticky;top:52px;z-index:10;background:var(--disc-soft);padding-block:8px 16px;margin-block-start:-8px}.disc-venue-services__list{padding-inline:var(--disc-gutter)}.disc-venue-service{display:flex;align-items:center;gap:16px;justify-content:space-between;padding-block:16px;border-block-end:1px solid var(--disc-line)}.disc-venue-service__body{flex:1;min-inline-size:0}.disc-venue-service__details{display:block;inline-size:100%;text-align:start}.disc-venue-service h3{font-size:16px;line-height:1.5}.disc-venue-service p{font-size:14px;color:var(--disc-secondary);margin-block-start:4px}.disc-venue-service p>span{display:block;font-size:13px;margin-block-start:2px}.disc-venue-service strong{display:block;font-size:15px;margin-block-start:8px}.disc-book-service{display:inline-flex;align-items:center;justify-content:center;min-block-size:44px;padding:10px 17px;border:1px solid var(--control-line);border-radius:999px;background:white;font-size:14px;font-weight:600;line-height:1.4;text-align:center!important}.disc-booking-footer{position:fixed;z-index:25;bottom:0;left:50%;right:auto;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;gap:16px;inline-size:100%;max-inline-size:var(--phone-width);min-block-size:88px;padding:16px var(--disc-gutter) calc(16px + var(--safe-bottom));border-block-start:1px solid var(--disc-line);background:var(--paper)}.disc-booking-footer>span{font-size:14px;color:var(--disc-secondary)}.disc-primary{display:inline-flex;align-items:center;justify-content:center;min-block-size:48px;padding:12px 24px;color:white;background:var(--navy);border-radius:999px;font-size:16px;font-weight:600;line-height:1.4;text-align:center!important}.disc-search-header{padding:20px var(--disc-gutter) 24px}.disc-search-header__title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-block-end:16px}.disc-search-header h1{font-size:26px;line-height:1.35}.disc-search-results{padding-inline:var(--disc-gutter)}.disc-results-heading{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-block:8px 0 4px}.disc-results-heading h2{font-size:18px;line-height:1.5;min-inline-size:0}.disc-results-heading>span{font-size:12px;color:var(--disc-secondary);white-space:nowrap;padding-block-start:3px}.disc-search-result{display:flex;align-items:center;gap:12px;inline-size:100%;padding-block:16px;border-block-end:1px solid var(--disc-line);text-align:start}.disc-search-result>img{inline-size:64px;block-size:72px;border-radius:10px;object-fit:cover;flex:none}.disc-search-result__body{display:flex;flex-direction:column;flex:1;min-inline-size:0;gap:4px}.disc-search-result h3{font-size:15px;line-height:1.5}.disc-search-result__body>span{font-size:13px;color:var(--disc-secondary)}.disc-search-result strong{font-size:14px;margin-block-start:2px}.disc-search-result__action{display:flex;align-items:center;justify-content:center;inline-size:32px;block-size:32px;border:1px solid var(--disc-line);border-radius:50%;flex:none}.disc-search-result__action svg{inline-size:16px;block-size:16px}.disc-empty{padding-block:28px}.disc-empty__icon{display:flex;align-items:center;justify-content:start;block-size:36px;margin-block-end:12px}.disc-empty h2{font-size:20px;line-height:1.4;margin-block-end:8px}.disc-empty p{color:var(--disc-secondary);font-size:15px;line-height:1.65}.disc-empty>div{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-block-start:24px}.disc-empty .disc-primary{font-size:14px;padding-inline:20px}.disc-empty .disc-text-button{font-size:14px}
@media(max-width:360px){.mobile-discovery{--disc-gutter:16px}.disc-home-header{padding-block-start:12px}.disc-categories{grid-auto-columns:78px;gap:16px 10px;padding-block:26px 18px}.disc-category{inline-size:78px;font-size:12px}.disc-category>span:last-child{max-inline-size:78px}.disc-category__icon{inline-size:60px;block-size:60px}.disc-searchbar{gap:8px}.disc-searchbar input{font-size:14px}.disc-searchbar__submit{min-inline-size:60px;padding-inline:14px}.disc-searchbar__icon svg{inline-size:20px;block-size:20px}.disc-nav{inline-size:calc(100% - 24px)}.disc-nav__item{font-size:10px}.disc-venue-card__image{block-size:160px}.disc-gallery{block-size:294px}.disc-search-result{gap:10px}.disc-search-result>img{inline-size:58px;block-size:68px}.disc-search-result__action{inline-size:28px;block-size:28px}.disc-results-heading{gap:10px}.disc-results-heading>span{font-size:11px}}
@media(hover:hover){.disc-primary:hover,.disc-searchbar__submit:hover{background:var(--navy-press)}.disc-book-service:hover{background:var(--disc-soft)}.disc-text-button:hover,.disc-read-more:hover{text-decoration:underline;text-underline-offset:4px}}
/* Stable task labels retain a readable size on narrow phones. */
.disc-nav__item{font-size:12px}@media(max-width:360px){.disc-nav__item{font-size:12px}}
.disc-venue-services{min-block-size:calc(100dvh - 140px)}

/* Clinime mobile journey surfaces. Scoped to journey-*; no date-screen overrides. */
.journey-screen {
  --journey-gutter: 20px;
  --journey-line: #dedfe2;
  --journey-input-line: #ced0d5;
  --journey-muted: #73747a;
  --journey-text: var(--ink, #25334b);
  --journey-action: var(--navy, #2d3e5b);
  inline-size: 100%;
  max-inline-size: 430px;
  min-block-size: 100dvh;
  margin-inline: auto;
  padding-block-end: calc(28px + env(safe-area-inset-bottom, 0px));
  background: #fff;
  color: var(--journey-text);
  font-size: 16px;
  line-height: 1.4;
}
.journey-screen *, .journey-screen *::before, .journey-screen *::after { box-sizing: border-box; }
.journey-screen button, .journey-screen input, .journey-screen select { font-family: inherit; }
.journey-screen button { touch-action: manipulation; }
.journey-screen :where(button, a, input, select, [tabindex]):focus-visible {
  outline: 2px solid var(--journey-action);
  outline-offset: 2px;
}
.journey-screen .view-heading:focus { outline: none; }
.journey-topbar {
  min-block-size: 64px;
  padding: 10px 12px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.journey-back, .journey-close, .journey-icon-button {
  inline-size: 44px;
  block-size: 44px;
  min-inline-size: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
  color: var(--journey-text);
  border: 0;
  padding: 0;
  background: transparent;
  border-radius: 50%;
}
.journey-back svg, .journey-close svg, .journey-icon-button svg { inline-size: 24px; block-size: 24px; }
.journey-back svg { transform: rotate(180deg); }
:dir(rtl) .journey-back svg { transform: none; }
.journey-heading { padding: 4px var(--journey-gutter) 0; text-align: center; }
.journey-heading h1, h1.journey-heading {
  margin: 0;
  font-size: 24px;
  font-weight: 600;
  line-height: 32px;
  letter-spacing: -.5px;
  overflow-wrap: break-word;
}
:lang(ar) .journey-heading h1, h1.journey-heading:lang(ar) { letter-spacing: 0; }
.journey-heading > p { margin: 0; color: var(--journey-muted); font-size: 16px; line-height: 22px; font-weight: 400; }
.journey-auth .journey-heading { position: relative; inset-block-start: -4px; }
.journey-auth .journey-heading > p { min-block-size: 44px; }
.journey-heading--start { text-align: start; }
.journey-body { padding-inline: var(--journey-gutter); }
.journey-root .journey-heading { padding-block-start: 24px; }
.journey-root { padding-block-end: calc(112px + env(safe-area-inset-bottom, 0px)); }
.journey-screen:has(.fixed-footer) { padding-block-end: calc(112px + env(safe-area-inset-bottom, 0px)); }
.journey-text { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-block-size: 44px; padding: 8px 0; font-size: 14px; line-height: 20px; font-weight: 500; color: var(--journey-action); }
.journey-text svg { inline-size: 20px; block-size: 20px; }
.journey-danger { color: var(--error, #b42335); }
.journey-section { padding: 24px var(--journey-gutter); }
.journey-section + .journey-section { border-block-start: 1px solid var(--journey-line); }
.journey-section-title { margin: 0 0 16px; font-size: 18px; line-height: 26px; font-weight: 600; }
.journey-meta, .journey-help { color: var(--journey-muted); font-size: 13px; line-height: 18px; font-weight: 400; }
.journey-help { margin: 4px 0 0; }
.journey-link { min-block-size: 44px; display: inline-flex; align-items: center; justify-content: center; color: var(--journey-action); font-size: 14px; line-height: 20px; font-weight: 500; }

/* Phone auth geometry: visual title at 72px, field at188, CTA at280 for 390px. */
.journey-auth-form { margin-block-start: 20px; padding-inline: var(--journey-gutter); }
.journey-field { margin: 0 0 20px; min-inline-size: 0; }
.journey-field > label, .journey-label { display: block; margin: 0 0 4px; font-size: 14px; line-height: 20px; font-weight: 500; }
.journey-field input, .journey-input {
  inline-size: 100%;
  min-inline-size: 0;
  block-size: 48px;
  min-block-size: 48px;
  padding: 10px 14px;
  border: 1px solid var(--journey-input-line);
  border-radius: 12px;
  background: #fff;
  font-size: 16px;
  line-height: 24px;
  color: var(--journey-text);
  box-shadow: none;
}
.journey-field input::placeholder, .journey-input::placeholder { color: #85878e; opacity: 1; }
.journey-phone { display: flex; align-items: stretch; gap: 8px; direction: ltr; }
.journey-country { inline-size: 73px; min-inline-size: 73px; min-block-size: 48px; border: 1px solid var(--journey-input-line); border-radius: 12px; display: flex; align-items: center; justify-content: center; background: #fff; font-size: 16px; line-height: 24px; color: var(--journey-text); }
.journey-phone input { direction: ltr; text-align: start; flex: 1; }
.journey-field [aria-invalid=true] { border-color: var(--error, #b42335); }
.journey-error { display: flex; align-items: flex-start; gap: 6px; margin-block-start: 6px; color: var(--error, #b42335); font-size: 13px; line-height: 20px; }
.journey-error svg { inline-size: 16px; block-size: 16px; flex: none; margin-block-start: 2px; }
.journey-submit, .journey-button {
  inline-size: 100%;
  min-block-size: 48px;
  border: 1px solid var(--journey-action);
  border-radius: 999px;
  background: var(--journey-action);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 11px 20px;
  font-size: 16px;
  line-height: 24px;
  font-weight: 600;
  text-align: center;
}
.journey-submit:disabled, .journey-button:disabled { background: #8992a1; border-color: #8992a1; cursor: default; }
.journey-auth-form > .journey-field { margin-block-end: 0; }
.journey-auth-form > .journey-submit { margin-block-start: 22px; }
.journey-button--secondary { background: #fff; color: var(--journey-text); border-color: var(--journey-input-line); }
.journey-button--danger { background: var(--error, #b42335); border-color: var(--error, #b42335); }
.journey-divider { display: flex; align-items: center; gap: 12px; margin: 24px var(--journey-gutter) 26px; color: #a1a1a7; font-size: 13px; line-height: 16px; font-weight: 400; text-align: center; }
.journey-divider::before, .journey-divider::after { content: ''; block-size: 1px; flex: 1; background: #e2e2e5; }
.journey-auth-support { margin: 23px var(--journey-gutter) 0; padding-block-start: 24px; border-block-start: 1px solid #e2e2e5; text-align: center; font-size: 13px; line-height: 20px; }
.journey-auth-support p { margin: 0; }
.journey-auth-support strong { font-size: 13px; font-weight: 600; }
.journey-auth-support .journey-link { min-block-size: 32px; margin-block-start: 0; }
.journey-auth-support .journey-text { margin-block-start: 0; }
.journey-auth-disclosure { margin: 16px var(--journey-gutter) 0; font-size: 12px; line-height: 18px; text-align: center; color: var(--journey-muted); }
.journey-otp .journey-auth-form { margin-block-start: 28px; }
.journey-otp-input { text-align: center; letter-spacing: .45em; font-variant-numeric: tabular-nums; }
.journey-email-context { margin-block-start: 16px; text-align: center; font-size: 15px; line-height: 22px; }
.journey-email-context bdi { direction: ltr; unicode-bidi: isolate; }
.journey-auth .journey-body { padding-block-start: 20px; }
.journey-auth .journey-body form { margin-block-start: 20px; }
.journey-auth .journey-body > .journey-text { margin-block-start: 12px; }
.journey-auth .journey-code { text-align: center; font-size: 24px; letter-spacing: .4em; }
.journey-auth .journey-email-context { display: flex; align-items: center; justify-content: center; gap: 12px; }
.journey-otp-help { text-align: center; margin-block: 16px 0; }

/* Account and appointments retain native list density, without card wrappers. */
.journey-profile { padding: 28px var(--journey-gutter) 24px; text-align: center; }
.journey-avatar, .journey-profile-avatar { inline-size: 80px; block-size: 80px; margin-inline: auto; margin-block-end: 16px; border-radius: 50%; background: var(--soft, #f6f6f6); color: var(--journey-action); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.journey-avatar > svg, .journey-profile-avatar > svg { inline-size: 40px; block-size: 40px; }
.journey-avatar > img, .journey-profile-avatar > img { inline-size: 100%; block-size: 100%; object-fit: cover; }
.journey-profile-name { margin: 0; text-align: center; font-size: 20px; line-height: 28px; font-weight: 600; overflow-wrap: anywhere; }
.journey-profile-contact { margin: 4px 0 0; text-align: center; color: var(--journey-muted); font-size: 14px; line-height: 20px; }
.journey-body > .journey-profile-avatar { margin-block-start: 28px; }
.journey-profile-avatar { font-size: 32px; line-height: 40px; font-weight: 500; }
.journey-body > .journey-profile-contact { margin-block-end: 24px; }
.journey-profile h2 { margin: 0; font-size: 20px; line-height: 28px; font-weight: 600; overflow-wrap: anywhere; }
.journey-profile > p { margin: 4px 0 0; color: var(--journey-muted); font-size: 14px; line-height: 20px; }
.journey-profile > .journey-button { margin-block-start: 20px; }
.journey-menu, .journey-menu-group { padding-inline: var(--journey-gutter); }
.journey-menu-group + .journey-menu-group { margin-block-start: 24px; }
.journey-body > .journey-menu-group { padding-inline: 0; }
.journey-menu-row { display: flex; align-items: center; gap: 14px; inline-size: 100%; min-block-size: 56px; padding: 12px 0; border-block-end: 1px solid var(--journey-line); background: transparent; text-align: start; color: var(--journey-text); }
.journey-menu-row > svg { inline-size: 22px; block-size: 22px; flex: none; }
.journey-menu-copy, .journey-menu-row > span { flex: 1; min-inline-size: 0; }
.journey-menu-copy strong, .journey-menu-row strong { display: block; font-size: 16px; line-height: 24px; font-weight: 400; }
.journey-menu-copy p, .journey-menu-copy small, .journey-menu-row > span > small { display: block; margin: 2px 0 0; font-size: 13px; line-height: 18px; color: var(--journey-muted); }
.journey-menu-row:has(small) { padding-block: 8px; }
.journey-menu-row:has(small) strong { line-height: 22px; }
.journey-menu-row > span > small { margin-block-start: 0; line-height: 16px; }
.journey-menu-row > svg:last-child { inline-size: 18px; block-size: 18px; margin-inline-start: auto; }
:dir(rtl) .journey-menu-row > svg:last-child { transform: rotate(180deg); }
.journey-setting-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; inline-size: 100%; min-block-size: 56px; padding-block: 5px; border-block-end: 1px solid var(--journey-line); font-size: 16px; line-height: 24px; text-align: start; }
.journey-setting-row > span:first-child { min-inline-size: 0; flex: 1; }
.journey-setting-row small { display: block; margin-block-start: 2px; color: var(--journey-muted); font-size: 13px; line-height: 18px; }
.journey-switch { position: relative; inline-size: 48px; min-inline-size: 48px; block-size: 44px; border: 0; background: transparent; padding: 0; flex: none; }
.journey-switch::before { content: ''; position: absolute; inset: 8px 0; border-radius: 999px; background: #d6d8dc; }
.journey-switch::after { content: ''; position: absolute; inset-block-start: 11px; inset-inline-start: 3px; inline-size: 22px; block-size: 22px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgb(20 29 45 / 14%); }
.journey-switch[aria-checked=true]::before { background: var(--journey-action); }
.journey-switch[aria-checked=true]::after { inset-inline-start: 23px; }
.journey-setting-row[aria-checked=true] .journey-switch::before { background: var(--journey-action); }
.journey-setting-row[aria-checked=true] .journey-switch::after { inset-inline-start: 23px; }
.journey-switch:disabled { cursor: default; }
.journey-tabs { display: flex; align-items: stretch; gap: 24px; padding-inline: var(--journey-gutter); margin-block-start: 24px; border-block-end: 1px solid var(--journey-line); }
.journey-tabs .chip { min-block-size: 48px; padding: 12px 0; position: relative; border: 0; border-radius: 0; font-size: 15px; line-height: 24px; background: transparent; color: var(--journey-muted); }
.journey-tabs .chip.is-active { color: var(--journey-action); font-weight: 600; }
.journey-tabs .chip.is-active::after { content: ''; position: absolute; inset-inline: 0; inset-block-end: -1px; block-size: 2px; background: var(--journey-action); }
.journey-tab { position: relative; min-block-size: 48px; padding: 12px 0; color: var(--journey-muted); font-size: 16px; line-height: 24px; text-align: center; }
.journey-tab[aria-pressed=true], .journey-tab[aria-selected=true], .journey-tab.is-active { color: var(--journey-action); font-weight: 600; }
.journey-tab[aria-pressed=true]::after, .journey-tab[aria-selected=true]::after, .journey-tab.is-active::after { position: absolute; content: ''; inset-inline: 0; inset-block-end: -1px; block-size: 2px; background: var(--journey-action); }
.journey-empty { padding: 40px var(--journey-gutter); text-align: center; }
.journey-empty h2 { margin: 0; font-size: 20px; line-height: 28px; font-weight: 600; }
.journey-empty p { max-inline-size: 320px; margin: 8px auto 24px; color: var(--journey-muted); font-size: 15px; line-height: 22px; }
.journey-empty > svg { inline-size: 32px; block-size: 32px; margin-block-end: 20px; color: var(--journey-muted); }
.journey-empty .journey-button { max-inline-size: 280px; }
.journey-draft { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 20px var(--journey-gutter) 0; padding-block: 12px; border-block: 1px solid var(--journey-line); font-size: 14px; line-height: 20px; }
.journey-appointments-list { padding-inline: var(--journey-gutter); }
.journey-appointment { display: flex; align-items: flex-start; gap: 14px; padding-block: 20px; border-block-end: 1px solid var(--journey-line); }
.journey-appointment { inline-size: 100%; text-align: start; }
.journey-appointment > img { inline-size: 64px; block-size: 64px; min-inline-size: 64px; border-radius: 8px; object-fit: cover; }
.journey-appointment > span { display: block; min-inline-size: 0; flex: 1; }
.journey-appointment > span > strong { display: block; margin-block: 4px; font-size: 16px; line-height: 24px; font-weight: 600; }
.journey-appointment > span > span { display: block; font-size: 14px; line-height: 20px; }
.journey-appointment > span > small { display: block; font-size: 12px; line-height: 18px; color: var(--journey-muted); }
.journey-appointment > svg { inline-size: 18px; block-size: 18px; margin-block-start: 4px; }
:dir(rtl) .journey-appointment > svg { transform: rotate(180deg); }
.journey-appointment-date { inline-size: 48px; min-inline-size: 48px; text-align: center; font-size: 13px; line-height: 18px; color: var(--journey-muted); }
.journey-appointment-date strong { display: block; margin-block-start: 2px; color: var(--journey-text); font-size: 28px; line-height: 34px; font-weight: 600; }
.journey-appointment-copy { min-inline-size: 0; flex: 1; }
.journey-appointment-copy h2 { margin: 4px 0; font-size: 16px; line-height: 24px; font-weight: 600; }
.journey-appointment-copy p { margin: 0; font-size: 14px; line-height: 20px; color: var(--journey-muted); }
.journey-status { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; line-height: 18px; color: var(--success, #21664b); }
.journey-status svg { inline-size: 14px; block-size: 14px; }
.journey-status.is-cancelled { color: var(--journey-muted); }

/* Compact review/record facts use separators and a 64px source photo. */
.journey-with-footer { padding-block-end: calc(112px + env(safe-area-inset-bottom, 0px)); }
.journey-with-nav { padding-block-end: calc(112px + env(safe-area-inset-bottom, 0px)); }
.journey-items { margin-block-start: 24px; padding-inline: var(--journey-gutter); }
.journey-services { inline-size: 100%; }
.journey-clinic { display: flex; align-items: center; gap: 12px; margin-block-start: 24px; padding-block: 16px; border-block-end: 1px solid var(--journey-line); }
.journey-clinic > img { inline-size: 64px; block-size: 64px; min-inline-size: 64px; border-radius: 8px; object-fit: cover; }
.journey-clinic > div { min-inline-size: 0; flex: 1; }
.journey-clinic h2 { margin: 0; font-size: 18px; line-height: 26px; }
.journey-clinic p { margin: 4px 0 0; color: var(--journey-muted); font-size: 13px; line-height: 19px; }
.journey-body > .journey-section-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-block: 24px 0; }
.journey-section-title > h2 { font-size: 18px; line-height: 26px; }
.journey-service, .journey-service-row { display: flex; align-items: flex-start; gap: 12px; padding-block: 16px; border-block-end: 1px solid var(--journey-line); }
.journey-service-image, .journey-service > img, .journey-service-row > img { inline-size: 64px; block-size: 64px; min-inline-size: 64px; object-fit: cover; border-radius: 8px; flex: none; }
.journey-service-copy, .journey-service-row > div { min-inline-size: 0; flex: 1; }
.journey-service-name, .journey-service h2, .journey-service-row h2, .journey-service-row h3 { margin: 0; font-size: 16px; line-height: 24px; font-weight: 600; overflow-wrap: break-word; }
.journey-service-meta, .journey-service p, .journey-service-row p { margin: 2px 0 0; font-size: 13px; line-height: 19px; color: var(--journey-muted); }
.journey-service-price, .journey-service strong, .journey-service-row strong { display: block; margin-block-start: 4px; font-size: 14px; line-height: 20px; font-weight: 500; }
.journey-items > .journey-link { justify-content: flex-start; margin-block-start: 4px; }
.journey-facts { margin-block-start: 24px; padding-inline: var(--journey-gutter); }
.journey-body > .journey-facts { padding-inline: 0; margin-block-start: 8px; }
.journey-fact { display: flex; align-items: flex-start; gap: 12px; padding-block: 16px; border-block-end: 1px solid var(--journey-line); }
.journey-fact > svg { inline-size: 20px; block-size: 20px; flex: none; margin-block-start: 2px; }
.journey-fact-copy, .journey-fact > div { min-inline-size: 0; flex: 1; }
.journey-fact-copy > span, .journey-fact-copy > small, .journey-fact > div > span, .journey-fact > div > small { display: block; color: var(--journey-muted); font-size: 13px; line-height: 18px; }
.journey-fact-copy > strong, .journey-fact > div > strong { display: block; margin-block-start: 4px; font-size: 15px; line-height: 22px; font-weight: 500; overflow-wrap: anywhere; }
.journey-fact > .journey-link { min-block-size: 44px; margin-block: -4px; flex: none; }
.journey-fact > .journey-text { margin-block: -4px; flex: none; }
.journey-total { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px var(--journey-gutter); font-size: 16px; line-height: 24px; }
.journey-total strong { font-size: 20px; line-height: 28px; font-weight: 600; }
.journey-notice { display: flex; align-items: flex-start; gap: 8px; margin: 16px var(--journey-gutter); padding-block: 12px; border-block: 1px solid var(--journey-line); font-size: 13px; line-height: 20px; color: var(--journey-muted); }
.journey-notice svg { inline-size: 18px; block-size: 18px; flex: none; margin-block-start: 1px; }
.journey-notice p { margin: 0; }
.journey-notice--error { color: var(--error, #b42335); }
.journey-note { margin: 0; padding: 16px var(--journey-gutter); font-size: 13px; line-height: 20px; color: var(--journey-muted); }
.journey-note { display: flex; align-items: flex-start; gap: 8px; }
.journey-note > p { margin: 0; }
.journey-note > svg { inline-size: 18px; block-size: 18px; flex: none; margin-block-start: 1px; }
.journey-body > .journey-note { padding-inline: 0; }
.journey-body > .journey-total { padding-inline: 0; }
.journey-reference { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-inline: var(--journey-gutter); padding-block: 16px; border-block-end: 1px solid var(--journey-line); font-size: 14px; line-height: 20px; }
.journey-reference > span { color: var(--journey-muted); }
.journey-reference bdi { direction: ltr; unicode-bidi: isolate; overflow-wrap: anywhere; }
.journey-body > .journey-reference { margin-inline: 0; }
.journey-actions { display: grid; gap: 12px; padding: 16px var(--journey-gutter); }
.journey-success { margin: 16px auto 0; inline-size: 40px; block-size: 40px; color: var(--success, #21664b); display: flex; align-items: center; justify-content: center; }
.journey-success svg { inline-size: 32px; block-size: 32px; }
.journey-screen .fixed-footer { max-inline-size: 430px; min-block-size: 88px; padding: 16px var(--journey-gutter) calc(16px + env(safe-area-inset-bottom, 0px)); }
.journey-screen .fixed-footer .journey-button { inline-size: auto; min-inline-size: 120px; }
.journey-form { margin-block-start: 24px; padding-inline: var(--journey-gutter); }
.journey-form .journey-submit { margin-block-start: 4px; }
.journey-body[data-form], .journey-body > form[data-form=attendee] { margin-block-start: 24px; }
.journey-body > .attendee-kinds { padding: 24px 0; }
.journey-body > form[data-form=attendee] { margin-block-start: 0; }
.journey-body > form[data-form=attendee] > .journey-submit, .journey-body[data-form] > .journey-submit { margin-block-start: 20px; }
.journey-faq { padding-block: 18px; border-block-end: 1px solid var(--journey-line); }
.journey-faq > summary { min-block-size: 44px; display: list-item; align-content: center; font-size: 16px; line-height: 24px; font-weight: 500; cursor: pointer; }
.journey-faq > p { padding-block-start: 8px; font-size: 14px; line-height: 22px; color: var(--journey-muted); }
.journey-saved { display: flex; gap: 12px; align-items: center; inline-size: 100%; min-block-size: 96px; padding-block: 16px; text-align: start; border-block-end: 1px solid var(--journey-line); }
.journey-saved > img { inline-size: 64px; block-size: 64px; min-inline-size: 64px; object-fit: cover; border-radius: 8px; }
.journey-saved > span { min-inline-size: 0; flex: 1; }
.journey-saved strong { display: block; font-size: 16px; line-height: 24px; }
.journey-saved small { display: block; font-size: 13px; line-height: 19px; color: var(--journey-muted); }
.journey-saved > svg { inline-size: 18px; block-size: 18px; }
:dir(rtl) .journey-saved > svg { transform: rotate(180deg); }
.journey-kinds { display: flex; gap: 8px; padding: 20px var(--journey-gutter) 0; }
.journey-kind { flex: 1; min-inline-size: 0; min-block-size: 44px; border: 1px solid var(--journey-input-line); border-radius: 999px; padding: 9px 12px; font-size: 15px; line-height: 22px; }
.journey-kind[aria-pressed=true] { border-color: var(--journey-action); background: var(--journey-action); color: #fff; font-weight: 500; }
@media (max-width: 359px) {
  .journey-fact { gap: 8px; }
  .journey-fact > .journey-link { font-size: 13px; }
  .journey-screen .fixed-footer { gap: 12px; }
  .journey-screen .fixed-footer .journey-button { min-inline-size: 104px; padding-inline: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .journey-screen *, .journey-screen *::before, .journey-screen *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; }
}
/* Live email and delivery states reuse the approved account geometry. */
.journey-mail-status{padding-block:20px;border-block-start:1px solid var(--line);margin-block-start:16px}.journey-mail-status h2{font-size:16px;margin-block-end:8px}.journey-mail-status p{font-size:14px;line-height:1.65;color:var(--muted)}.journey-profile-contact{overflow-wrap:anywhere}.journey-field input[readonly]{background:var(--soft);color:var(--muted)}.journey-auth-support>button{margin-block-end:16px}.operation-recovery{position:relative;z-index:35;max-inline-size:430px;margin-inline:auto;padding:14px 20px;background:#FFF6E7;color:#805A12;font-size:14px}.operation-recovery button{display:block;min-block-size:44px;font-weight:600;text-decoration:underline}

#intro{position:fixed;inset:0;z-index:100;background:#FFF8FB;display:grid;place-items:center}#intro[hidden]{display:none}.intro-lockup{width:230px;height:70px;position:relative;direction:ltr}.intro-mark{position:absolute;inset:0 auto auto 80px;width:70px;height:70px;opacity:0}.intro-logo{width:230px;position:absolute;top:6px;left:0;opacity:0}.is-playing .intro-mark{animation:mark-enter 1.2s cubic-bezier(.22,1,.36,1) both}.is-playing .intro-logo{animation:logo-enter .3s .95s ease both}.intro-skip{position:absolute;bottom:max(32px,env(safe-area-inset-bottom));padding:12px 24px;border:1px solid #7C8798;border-radius:10px;color:#2D3E5B;background:white;font:inherit;min-height:44px}@keyframes mark-enter{0%{opacity:1;transform:rotate(180deg) scale(1.35)}42%{opacity:1;transform:rotate(0) scale(1.35)}78%{opacity:1;transform:translateX(-86px) scale(.68)}100%{opacity:0;transform:translateX(-86px) scale(.68)}}@keyframes logo-enter{to{opacity:1}}@media(prefers-reduced-motion:reduce){#intro{display:none}.app-content{animation:none!important}}.skip-link{position:fixed;inset-block-start:8px;inset-inline-start:8px;z-index:150;padding:12px;background:white;border:2px solid #2D3E5B;transform:translateY(-150%)}.skip-link:focus{transform:none}
