/* Nobeza editorial system. Shared by EN, FA and ES. */
:root{--ink:#30232b;--muted:#70646a;--accent:#71394f;--accent-dark:#502639;--accent-soft:#f4e9ed;--bg:#faf8f5;--paper:#fffefd;--line:#e8e0df;--lime:#e6ecd8;--violet:#e7cdd6;--shadow:0 22px 65px #442c3710}
body{font-family:Vazirmatn,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit}
button{touch-action:manipulation}
:focus-visible{outline:3px solid #aa657f;outline-offset:4px}
.ui-icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}
.top{height:90px;max-width:1440px;border-bottom:1px solid var(--line)}
.brandmark{background:var(--accent-dark);box-shadow:none;border-radius:14px}
.brandmark span{color:#f0d2ba}.brand{letter-spacing:-.04em}.brand small{font-size:13px}
.lang select{min-height:44px;background:transparent;border-color:var(--line);font-size:13px;border-radius:20px}
.header-actions .link{padding:10px 16px;border:1px solid var(--line);border-radius:24px;min-height:44px;font-size:13px}
.primary,.secondary{min-height:50px;border-radius:16px;padding:13px 22px;font-size:14px;font-weight:650;box-shadow:none}
.primary:hover,.secondary:hover,.small-btn:hover{transform:translateY(-1px);box-shadow:0 5px 16px #492c3715}
.secondary{background:transparent}.secondary:hover{border-color:var(--accent)}
.small-btn{min-height:42px;border-radius:12px;padding:10px 15px;font-size:12px;box-shadow:none}
.small-btn.outline{border-color:var(--line)}
.hero{max-width:1440px;min-height:0;grid-template-columns:1fr 1fr;padding:52px 5% 56px;gap:7%;align-items:center}
.hero .eyebrow{background:none;padding:0;border-radius:0;letter-spacing:.16em;color:var(--accent);font-size:11px}
.hero h1{font-size:clamp(44px,5.6vw,78px);font-weight:650;line-height:1.13;letter-spacing:-.055em;margin:24px 0;max-width:620px}
html[lang=fa] .hero h1{font-weight:750;line-height:1.55;font-size:clamp(40px,4.8vw,65px)}
.hero-copy>p{font-size:17px;line-height:1.85;max-width:470px}
.hero-buttons{gap:12px;margin-top:30px}.hero-buttons .primary,.hero-buttons .secondary{min-height:52px}
.specialties{display:flex;flex-wrap:wrap;gap:18px;margin-top:36px;padding-top:25px;border-top:1px solid var(--line)}
.specialties>span{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}
.specialties .ui-icon{width:19px;height:19px;color:var(--accent)}
.editorial-photo{position:relative;height:560px;border-radius:160px 160px 24px 24px;overflow:hidden;background:#dfcbb6;isolation:isolate}
.editorial-photo>img{width:100%;height:100%;object-fit:cover;object-position:50% 55%;display:block}
.editorial-photo:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#21181ac9);pointer-events:none}
.photo-caption{position:absolute;bottom:25px;inset-inline:28px;z-index:1;color:#fff}
.photo-caption>span{font-size:10px;letter-spacing:.2em;opacity:.85}.photo-caption p{color:#fff;font-size:20px;line-height:1.6;margin:7px 0 0;max-width:360px}
.ritual-strip{max-width:1296px;margin:0 auto 45px;display:flex;align-items:center;gap:22px;border-block:1px solid var(--line);padding:27px 10px}
.ritual-star{color:var(--accent);font-size:38px}.ritual-strip h2{font-size:23px;font-weight:550;margin:0;line-height:1.6;letter-spacing:-.025em}.ritual-languages{margin-inline-start:auto;font-size:12px;color:var(--muted);white-space:nowrap}
.value-grid{max-width:1440px;padding-bottom:65px;gap:24px}.value-grid>div{padding:26px;background:transparent;box-shadow:none;border-radius:20px}
.feature-icon{width:46px;height:46px;border-radius:14px;background:var(--accent-soft);display:grid;place-items:center;color:var(--accent)}
.value-grid h3{font-size:21px;font-weight:650;margin-top:22px}.value-grid p{font-size:14px;line-height:1.85}
footer{max-width:1440px;font-size:12px;align-items:center}footer .link{min-height:44px}
.container{max-width:1320px}.tabs{gap:8px;border:0;padding:8px;background:#f0eae7;border-radius:20px;overflow:auto}
.tabs button{display:flex;align-items:center;justify-content:center;gap:9px;flex:1;padding:13px 18px;font-size:13px;min-height:48px;border-radius:14px;font-weight:650}
.tabs button.active{background:var(--paper);color:var(--accent-dark);box-shadow:0 3px 12px #442c3710}
.dashboard-head h1,.section-head h1{font-weight:650;font-size:clamp(30px,3.5vw,43px);line-height:1.35;letter-spacing:-.04em}
html[lang=fa] :is(.dashboard-head h1,.section-head h1){letter-spacing:0;line-height:1.65}
.panel,.service-card,.pro-card{border-radius:22px;box-shadow:0 4px 20px #442c3705;padding:26px}
.metrics{gap:16px}.metrics>div{padding:25px;border-radius:20px;background:#fffefd}.metrics>div:before{display:none}.metrics b{font-size:37px;font-weight:650;color:var(--accent-dark)}.metrics span{font-size:13px}
.invite-panel,.pref-panel,.service-empty{background:linear-gradient(135deg,#f7eff0,#fffefd)}
.copy-box{border-radius:12px}.copy-box button{border-radius:9px;min-height:40px}
.date-square{background:var(--accent-soft);border-radius:14px;line-height:1.7;width:116px;min-width:116px}.date-square small{display:block;margin-top:6px;color:var(--muted)}
.appt{gap:18px;padding-block:22px}.appt-content{min-width:0;gap:7px}.appt-content>strong{font-size:16px}.appt-content>span{font-size:13px}.status{letter-spacing:0;border-radius:20px;padding:5px 10px;font-size:11px;max-width:100%}
.status.completed{background:#eee8e5}.empty{color:var(--accent);font-size:32px}.empty p{font-size:14px}
.avatar{background:#eee0e4;color:var(--accent-dark);border-radius:50%;font-size:22px}.service-card{min-height:200px}.service-card h2{font-weight:650}.service-detail{font-size:14px}
.field{font-size:13px;font-weight:600;gap:9px}.field input,.field select,.field textarea,.searchbar input,.searchbar select{min-height:49px;border-color:#dbd0d2;border-radius:13px;padding:12px 14px;background:#fffefd;font-size:15px}
.field input:focus,.field select:focus,.field textarea:focus,.searchbar input:focus{box-shadow:0 0 0 3px #71394f14;border-color:var(--accent)}
.check-row{font-weight:500;font-size:13px;line-height:1.85}.check-row input{flex-shrink:0;width:20px;height:20px}.hint{font-size:13px;line-height:1.8}.hour-row{background:#f6f1ef;border-radius:12px}.searchbar{border-radius:18px}
.profile-hero{background:linear-gradient(120deg,#402633,#7c4b60);border-radius:24px;padding:36px}.profile-hero h1{font-weight:650}.profile-hero p,.profile-hero .link,.profile-hero .overline{color:#f4e7ec}.profile-hero:after{color:#ffffff09}
.slot{background:#fffefd;border-color:var(--line);color:var(--accent-dark);border-radius:12px;min-height:48px;font-size:14px}.slot-day h3{font-weight:600;font-size:15px}.slot-days{max-height:420px;gap:24px}.service-choice{padding:18px 10px;min-height:70px}
.auth-wrap{max-width:1150px;border-radius:28px;grid-template-columns:.88fr 1.12fr;margin-top:35px;box-shadow:0 20px 65px #442c3708}
.auth-art{background:#422c36;padding:40px;display:flex;flex-direction:column;isolation:isolate;justify-content:start}.auth-art:after{display:none}.auth-art h1{font-size:43px;line-height:1.35;margin:35px 0 18px;font-weight:600}.auth-art p{font-size:15px;line-height:1.8;color:#f4e6eb}.auth-art .overline{color:#edccba}
.auth-photo{display:block;width:calc(100% + 80px);max-width:none;height:310px;object-fit:cover;position:relative;margin:32px -40px -40px;flex:1;min-height:200px}.auth-panel{padding:38px}.auth-panel h2{font-weight:650}.auth-links{gap:12px}.auth-links button{min-height:40px;font-size:12px}
.modal{border-radius:24px;box-shadow:0 30px 100px #30232b30;max-height:90dvh;overflow:auto}.booking-summary{background:#faf5f3;border-color:var(--line);border-radius:16px}.booking-modal h2{font-size:27px}.transfer-panel{background:#fcf9f7;border-radius:16px}.transfer-panel .small-btn{margin:4px}
@media(max-width:1000px){.hero{gap:4%;padding-top:35px}.editorial-photo{height:480px}.ritual-strip{margin-inline:5%}.auth-wrap{margin-inline:4%}.auth-art h1{font-size:35px}.cards,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .top{height:74px;padding-inline:5%;gap:10px}.brand{font-size:21px}.brand small{display:none}.header-actions{gap:8px}.header-actions .link{padding:8px 12px;font-size:12px}.user-pill{display:none}.lang select{min-height:40px;padding:7px;font-size:12px}
 .hero{display:flex;flex-direction:column;padding:33px 5% 32px;gap:28px;text-align:start}.hero-copy{width:100%}.hero h1{font-size:46px;max-width:440px;line-height:1.17;margin:16px 0}.hero-copy>p{font-size:15px;margin-bottom:0;line-height:1.8}.hero .eyebrow{font-size:10px;letter-spacing:.12em}html[lang=fa] .hero h1{font-size:38px;line-height:1.55}html[lang=fa] .hero .eyebrow{letter-spacing:0}
 .hero-buttons{display:flex;flex-direction:column;margin-top:23px;gap:10px}.hero-buttons .primary,.hero-buttons .secondary{font-size:14px;width:100%;min-height:50px;border-radius:15px}.specialties{gap:14px;margin-top:23px;padding-top:20px;justify-content:space-between}.specialties>span{font-size:11px;gap:5px}.specialties .ui-icon{width:17px;height:17px}
 .editorial-photo{width:100%;height:360px;border-radius:110px 110px 22px 22px}.photo-caption{bottom:22px;inset-inline:24px}.photo-caption p{font-size:19px}.ritual-strip{flex-wrap:wrap;padding:20px 0;gap:13px;margin-bottom:25px}.ritual-strip h2{font-size:19px;flex:1}.ritual-star{font-size:30px}.ritual-languages{width:100%;margin:0;text-align:center;font-size:11px}.value-grid{grid-template-columns:1fr;gap:12px;padding-bottom:35px}.value-grid>div{padding:22px}.value-grid h3{margin:14px 0 8px;font-size:20px}
 .container{padding:20px 5% 95px}.tabs{position:fixed;z-index:30;inset:auto 0 0;padding:9px 8px calc(9px + env(safe-area-inset-bottom));border:1px solid var(--line);border-radius:22px 22px 0 0;background:#fffefd;box-shadow:0 -5px 25px #442c370a;gap:4px;overflow:visible}.tabs button{flex-direction:column;gap:5px;padding:7px 2px;font-size:10px;line-height:1.4;white-space:normal;min-width:0;min-height:56px;border-radius:13px}.tabs .ui-icon{width:21px;height:21px}.tabs button.active{background:var(--accent-soft);box-shadow:none}.app-main~footer{padding-bottom:110px}
 .dashboard-head,.section-head{margin-top:15px;align-items:start;flex-wrap:wrap;gap:14px}.dashboard-head h1,.section-head h1{font-size:29px}.dashboard-head p{font-size:14px}.visibility{font-size:11px}.metrics{gap:9px}.metrics>div{padding:17px 12px;border-radius:16px}.metrics b{font-size:28px}.metrics span{font-size:11px}.panel,.service-card,.pro-card{padding:20px;border-radius:19px}.panel-heading h2,.panel>h2{font-size:18px}.two-col{grid-template-columns:1fr}.cards,.service-grid{grid-template-columns:1fr}
 .appt{flex-wrap:wrap;gap:12px}.date-square{width:100%;text-align:start;min-width:0;display:flex;align-items:center;gap:10px;justify-content:space-between;padding:12px}.date-square small{margin:0;max-width:45%}.appt-content{flex-basis:100%}.appt-actions{width:100%;justify-content:flex-end}.transfer-panel{margin-block:10px;padding:14px}.field input,.field select,.field textarea{font-size:16px!important}.form-grid.cols2{grid-template-columns:1fr}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-hero{padding:25px;min-height:220px}.profile-hero h1{font-size:35px}.profile-hero:after{pointer-events:none}
 .auth-wrap{display:block;margin:18px 4% 40px;border-radius:23px}.auth-art{padding:25px;min-height:0}.auth-art h1{font-size:29px;margin:15px 0 8px;line-height:1.5}.auth-art p{font-size:14px}.auth-photo{height:145px;min-height:145px;width:calc(100% + 50px);margin:16px -25px -25px;object-position:50% 55%;flex:none}.auth-panel{padding:25px 21px}.auth-panel .form-grid{grid-template-columns:1fr}.modal{padding:25px;max-width:calc(100vw - 24px)}footer{padding-block:23px}
}
@media(prefers-reduced-motion:reduce){button{transition:none!important}}

.modal-back{z-index:50;background:#241b22a8}.toast{z-index:60}@media(max-width:700px){.toast{bottom:calc(95px + env(safe-area-inset-bottom))}}
/* Business showcase */
.business-showcase{margin-block:36px}.showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-block:22px}.showcase-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;min-width:0}.showcase-photos{display:grid;background:#f3ece9}.showcase-photos.paired{grid-template-columns:1fr 1fr;gap:3px;direction:ltr}.showcase-photos figure{margin:0;position:relative;min-width:0}.showcase-photos img{width:100%;height:300px;display:block;object-fit:contain;background:#eee7e2}.showcase-photos.paired img{height:260px}.showcase-photos figcaption{position:absolute;bottom:12px;left:12px;padding:5px 12px;border-radius:20px;background:#fff;color:#372731;font-size:13px;font-weight:700}.showcase-copy{padding:24px}.showcase-copy h3{font-size:22px;margin:12px 0;overflow-wrap:anywhere}.showcase-description{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted);line-height:1.8}.showcase-meta{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#704054;font-weight:700}.showcase-poster{height:140px;background:linear-gradient(130deg,#efe1e5,#f8f0e6);display:flex;align-items:center;justify-content:center;gap:16px;color:#704054;font-size:22px}.showcase-poster svg{width:36px;height:36px}.showcase-dates{font-size:13px;color:#704054}.showcase-filters{display:flex;gap:8px;flex-wrap:wrap}.showcase-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.showcase-upload{padding:18px;border:1px dashed #b49aa5;border-radius:18px;overflow:hidden;background:#faf7f5}.showcase-upload img{width:100%;height:170px;object-fit:contain}.showcase-upload input{width:100%;min-width:0;font-size:14px}.showcase-upload small{color:var(--muted)}.showcase-form-actions{display:flex;gap:20px;align-items:center}.showcase-editor{scroll-margin-top:20px}.showcase-editor .check-row{margin-block:22px;line-height:1.7;align-items:flex-start}.showcase-editor .check-row input{flex-shrink:0}#showcase-error{color:#9b2637}.showcase-editor button:disabled{opacity:.6}.showcase-editor input[type=date]{min-width:0;max-width:100%}
@media(max-width:700px){.showcase-grid{grid-template-columns:1fr;gap:18px}.showcase-copy{padding:20px}.showcase-upload-grid{grid-template-columns:1fr}.showcase-photos.paired img{height:230px}.tabs button{min-width:0;padding-inline:3px!important}.tabs button span{font-size:10px;white-space:normal;line-height:1.35}.showcase-form-actions{justify-content:space-between}.showcase-editor{padding:20px}.business-showcase{margin-block:28px}}
