@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;500;700;800;900&display=swap');
:root{--ink:#14212a;--muted:#7c878f;--line:#e8ecef;--soft:#f5f7f8;--header:#102f4c;--accent:#d81709;--green:#168553;--blue:#3a89dd;--amber:#f4a900;--shadow:0 14px 38px rgba(22,37,48,.09);--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:#edf0f2}body{margin:0;background:#edf0f2;color:var(--ink);font-family:Vazirmatn,IRANSansX,"Segoe UI",Tahoma,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.app-shell{position:relative;width:min(100%,520px);min-height:100dvh;margin:auto;background:#fff;box-shadow:0 0 60px rgba(16,36,48,.12);padding-bottom:132px;overflow:hidden}.app-header{background:#fff;padding:8px 22px 10px;position:relative;z-index:20}.topbar{min-height:118px;border-radius:40px;background:var(--header);color:#fff;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:18px 22px;box-shadow:0 15px 36px rgba(16,47,76,.16)}.topbar-left{display:flex;gap:12px;align-items:center;direction:ltr}.icon-button{width:76px;height:76px;border:0;border-radius:24px;background:#fff;color:#0c1b26;display:grid;place-items:center;position:relative}.icon-button svg{width:34px;height:34px}.bell-button{width:76px;background:rgba(255,255,255,.11);color:#fff;border:1px solid rgba(255,255,255,.18)}.avatar{display:grid;place-items:center;width:100%;height:100%;overflow:hidden;border-radius:inherit}.avatar img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;top:-5px;right:-5px;min-width:23px;height:23px;padding:0 5px;border-radius:20px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:10px;border:3px solid var(--header)}.resident-identity{text-align:right;min-width:0}.resident-identity strong{font-size:15px;font-weight:900;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resident-identity small{display:block;margin-top:7px;color:#c9d5df;font-size:11px;white-space:nowrap}.menu-button{width:66px;height:66px;border:0;background:transparent;color:#fff;display:grid;place-items:center}.menu-button svg{width:44px;height:44px;stroke-width:2.2}.app-main{padding:18px 26px 24px;min-height:calc(100dvh - 150px)}.page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 22px}.page-head h1{margin:0;font-size:25px;font-weight:950}.page-head p{margin:5px 0 0;color:var(--muted);font-size:11px}.back-button{width:43px;height:43px;border:0;background:transparent;display:grid;place-items:center;color:#111}.back-button svg{transform:scaleX(-1);width:28px;height:28px}.section-title{display:flex;align-items:flex-end;justify-content:space-between;margin:24px 2px 13px}.section-title h2{font-size:17px;margin:0}.section-title small{color:var(--muted);font-size:10px}.section-title button{border:0;background:transparent;color:var(--accent);font-size:11px;font-weight:800}.home-slider{position:relative;border-radius:24px;overflow:hidden;min-height:180px;background:linear-gradient(135deg,#147c78,#075a60);box-shadow:var(--shadow);margin-bottom:24px}.home-slide{display:none;position:relative;min-height:180px;padding:26px 24px;color:#fff;background-size:cover;background-position:center}.home-slide.active{display:flex;align-items:center;justify-content:space-between;gap:18px;animation:fadeSlide .45s ease}.home-slide::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,28,36,.14),rgba(5,28,36,.72))}.home-slide>div{position:relative;z-index:2;max-width:70%}.home-slide strong{display:block;font-size:20px;font-weight:950}.home-slide p{font-size:11px;line-height:1.9;color:#e8f5f5;margin:7px 0 14px}.home-slide a{display:inline-flex;min-height:36px;align-items:center;padding:0 16px;border-radius:99px;background:#fff;color:#0b6562;font-size:11px;font-weight:900}.home-slide-art{position:relative;z-index:2;width:80px;height:80px;border-radius:27px;background:rgba(255,255,255,.18);backdrop-filter:blur(8px);display:grid;place-items:center}.home-slide-art svg{width:42px;height:42px}.slider-dots{position:absolute;left:18px;bottom:14px;z-index:4;display:flex;gap:5px;direction:ltr}.slider-dots button{width:7px;height:7px;padding:0;border:0;border-radius:99px;background:#ffffff88}.slider-dots button.active{width:22px;background:#fff}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quick-card{min-height:118px;border:1px solid #edf0f2;background:#fff;border-radius:20px;box-shadow:0 9px 26px rgba(20,34,44,.05);padding:14px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}.quick-card span{width:62px;height:62px;border-radius:18px;background:#eef3f6;color:var(--blue);display:grid;place-items:center}.quick-card span svg{width:34px;height:34px}.quick-card strong{font-size:11px;line-height:1.7}.status-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.status-card{border-radius:18px;background:#f4f6f7;padding:16px 8px;text-align:center}.status-card b{display:block;font-size:22px;color:var(--accent)}.status-card span{font-size:9px;color:var(--muted)}.search-box{height:68px;border:1px solid #dfe4e8;border-radius:18px;display:flex;align-items:center;gap:12px;padding:0 18px;background:#fff;margin-bottom:20px}.search-box svg{color:#89949c;width:28px;height:28px}.search-box input{width:100%;height:60px;border:0;outline:0;background:transparent;color:var(--ink);font-size:14px}.category-strip{display:flex;gap:12px;overflow:auto;padding:2px 0 15px;scrollbar-width:none}.category-strip::-webkit-scrollbar{display:none}.category-chip{flex:0 0 auto;border:1px solid var(--line);background:#fff;border-radius:18px;min-width:92px;padding:10px;text-align:center}.category-chip .category-image{width:64px;height:64px;margin:auto;border-radius:18px;background:#eef2f4 center/cover no-repeat}.category-chip strong{font-size:10px;display:block;margin-top:8px}.category-chip.active{border-color:var(--accent);color:var(--accent);box-shadow:0 7px 20px rgba(216,23,9,.1)}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.product-card{border:1px solid #edf0f2;border-radius:22px;background:#fff;padding:11px;box-shadow:0 8px 25px rgba(23,36,45,.05);min-width:0;position:relative}.product-image{height:150px;border-radius:18px;background:#f2f4f5 center/cover no-repeat;position:relative}.product-card h3{font-size:12px;line-height:1.7;margin:11px 2px 4px;height:41px;overflow:hidden}.product-card small{font-size:9px;color:var(--muted)}.product-price{display:flex;align-items:end;justify-content:space-between;margin-top:11px}.product-price b{font-size:13px}.add-product{width:38px;height:38px;border-radius:13px;background:var(--accent);color:#fff;border:0;display:grid;place-items:center}.add-product svg{width:21px;height:21px}.old-price{text-decoration:line-through;color:#a2abb1;font-size:9px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.service-card{min-height:178px;border:1px solid #eceff1;border-radius:22px;background:#fff;padding:14px 9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;box-shadow:0 8px 24px rgba(20,34,44,.04)}.service-image{width:92px;height:92px;border-radius:20px;background:#edf3f6 center/cover no-repeat;color:var(--blue);display:grid;place-items:center;overflow:hidden}.service-image svg{width:46px;height:46px}.service-card strong{font-size:12px;line-height:1.8}.amenity-list{display:grid;gap:15px}.amenity-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.amenity-image{height:210px;background:#edf2f4 center/cover no-repeat;position:relative}.amenity-image::after{content:"";position:absolute;inset:auto 0 0;height:60%;background:linear-gradient(transparent,rgba(5,20,30,.72))}.amenity-title{position:absolute;z-index:2;right:18px;bottom:18px;color:#fff}.amenity-title strong{font-size:18px;display:block}.amenity-body{padding:16px}.meta-row{display:flex;gap:8px;flex-wrap:wrap}.meta{font-size:9px;background:#f2f5f6;padding:7px 9px;border-radius:10px;color:#65717a}.amenity-card .primary-button{margin-top:14px}.card-list{display:grid;gap:12px}.list-card{border:1px solid var(--line);border-radius:20px;padding:16px;background:#fff;box-shadow:0 7px 23px rgba(23,38,48,.04)}.list-card-head{display:flex;justify-content:space-between;align-items:start;gap:10px}.list-card h3{font-size:13px;margin:0 0 5px}.list-card p{font-size:10px;line-height:1.8;color:var(--muted);margin:8px 0}.status-badge{display:inline-flex;padding:6px 9px;border-radius:99px;background:#eef2f4;color:#5d6870;font-size:9px;font-weight:800}.status-badge.new,.status-badge.pending,.status-badge.expected{background:#fff4dc;color:#9a6800}.status-badge.confirmed,.status-badge.paid,.status-badge.completed,.status-badge.approved{background:#e7f7ee;color:#16754a}.status-badge.cancelled,.status-badge.rejected{background:#ffeded;color:#a92525}.status-badge.processing,.status-badge.in_progress,.status-badge.entered{background:#eaf3ff;color:#2767ae}.timeline{border-right:2px solid #e8ecef;margin:16px 7px 0 0;padding-right:18px}.timeline-item{position:relative;padding-bottom:15px}.timeline-item::before{content:"";position:absolute;right:-24px;top:2px;width:10px;height:10px;border-radius:50%;background:var(--blue);border:3px solid #fff;box-shadow:0 0 0 1px #d8e0e6}.timeline-item strong{font-size:10px;display:block}.timeline-item small{font-size:8px;color:var(--muted)}.account-hero{border-radius:24px;background:linear-gradient(135deg,var(--header),#1c4a70);color:#fff;padding:22px;display:flex;align-items:center;gap:15px}.account-hero .avatar{width:74px;height:74px;border-radius:24px;background:#fff;color:var(--header)}.account-hero .avatar svg{width:34px;height:34px}.account-hero strong{font-size:17px}.account-hero small{display:block;color:#d0dce5;margin-top:5px}.account-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.account-tabs button{border:0;border-radius:14px;background:#f1f4f5;min-height:44px;font-size:10px;font-weight:800}.account-tabs button.active{background:var(--header);color:#fff}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.info-card{background:#f5f7f8;border-radius:17px;padding:14px}.info-card small{color:var(--muted);font-size:9px}.info-card strong{display:block;margin-top:5px;font-size:12px}.form-card{border:1px solid var(--line);border-radius:22px;padding:18px;background:#fff;margin-top:14px}.form-card h3{margin:0 0 15px;font-size:15px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-stack{display:grid;gap:13px}.form-grid label,.form-stack label{font-size:10px;font-weight:800;color:#4e5a62;display:grid;gap:7px}.form-grid label.full{grid-column:1/-1}input,select,textarea{border:1px solid #dfe4e7;border-radius:14px;background:#fff;min-height:49px;padding:10px 13px;outline:none;color:var(--ink);font-size:13px}textarea{min-height:95px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#6a9ec7;box-shadow:0 0 0 3px #e8f2f9}.primary-button,.secondary-button,.danger-button{min-height:50px;border:0;border-radius:15px;padding:0 18px;font-weight:900;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary-button{background:var(--accent);color:#fff}.secondary-button{background:var(--header);color:#fff}.danger-button{background:#ffe9e9;color:#a51f1f}.text-button{border:0;background:transparent;color:var(--accent);font-weight:800;min-height:38px}.empty-state{text-align:center;padding:38px 20px;border:1px dashed #dce2e6;border-radius:22px;color:var(--muted)}.empty-state span{width:72px;height:72px;border-radius:24px;background:#f0f3f5;display:grid;place-items:center;margin:0 auto 13px}.empty-state svg{width:34px;height:34px}.empty-state strong{display:block;color:var(--ink);margin-bottom:5px}.slots-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.slot-button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 4px;font-size:10px}.slot-button.active{background:var(--header);color:#fff;border-color:var(--header)}.slot-button:disabled{opacity:.4;cursor:not-allowed}.qty-control{display:flex;align-items:center;justify-content:center;gap:10px}.qty-control button{width:34px;height:34px;border:0;border-radius:11px;background:#edf1f3;display:grid;place-items:center}.qty-control input{width:55px;min-height:36px;text-align:center;padding:4px}.bottom-nav{position:fixed;z-index:80;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,520px);height:106px;display:grid;grid-template-columns:1fr 142px 1fr;align-items:end;padding:0 20px calc(12px + env(safe-area-inset-bottom));filter:drop-shadow(0 -10px 22px rgba(19,34,44,.1));direction:ltr}.bottom-nav::before{content:"";position:absolute;inset:18px 0 0;background:#fff;-webkit-mask:radial-gradient(circle 92px at 50% -34px,transparent 0 78px,#000 79px);mask:radial-gradient(circle 92px at 50% -34px,transparent 0 78px,#000 79px);border-top:1px solid #eef0f2}.bottom-nav.is-cart-empty{grid-template-columns:1fr 1fr}.bottom-nav.is-cart-empty::before{-webkit-mask:radial-gradient(circle 92px at 50% -34px,transparent 0 78px,#000 79px);mask:radial-gradient(circle 92px at 50% -34px,transparent 0 78px,#000 79px)}.nav-side{position:relative;z-index:2;height:78px;border:0;background:transparent;color:#0d1a23;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;font-size:13px;font-weight:900;direction:rtl}.nav-side svg{width:34px;height:34px}.nav-side.active{color:var(--header)}.order-orb{position:relative;z-index:4;align-self:end;justify-self:center;width:132px;height:132px;margin-bottom:5px;border-radius:50%;border:0;background:var(--accent);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 -12px 38px rgba(216,23,9,.18),0 13px 27px rgba(15,31,42,.15);direction:rtl;transform:translateY(-28px)}.order-orb[hidden]{display:none}.order-orb.is-entering{animation:orbEnter .5s cubic-bezier(.18,.89,.32,1.28)}.order-orb.is-shaking{animation:orbShake .55s ease}.order-orb strong{font-size:19px;font-weight:950}.order-orb span{font-size:13px;margin-top:4px}.drawer,.modal,.sheet{position:fixed;inset:0;z-index:120;pointer-events:none;visibility:hidden}.drawer.open,.modal.open,.sheet.open{pointer-events:auto;visibility:visible}.drawer-backdrop,.modal-backdrop,.sheet-backdrop{position:absolute;inset:0;background:rgba(5,15,22,.48);opacity:0;transition:.25s;backdrop-filter:blur(2px)}.drawer.open .drawer-backdrop,.modal.open .modal-backdrop,.sheet.open .sheet-backdrop{opacity:1}.drawer-panel{position:absolute;right:0;top:0;bottom:0;width:min(360px,88vw);background:#fff;padding:22px;transform:translateX(105%);transition:.3s cubic-bezier(.2,.8,.2,1);box-shadow:-20px 0 60px rgba(12,28,39,.15);display:flex;flex-direction:column}.drawer.open .drawer-panel{transform:none}.drawer-head{display:flex;align-items:center;justify-content:space-between}.drawer-head strong{font-size:18px}.drawer-head button,.sheet-head button,.modal-close{border:0;background:#f0f3f4;border-radius:13px;width:42px;height:42px;display:grid;place-items:center}.drawer-profile{display:flex;align-items:center;gap:12px;background:var(--header);color:#fff;border-radius:20px;padding:14px;margin:20px 0}.drawer-profile .avatar{width:58px;height:58px;border-radius:18px;background:#fff;color:var(--header)}.drawer-profile strong{font-size:13px}.drawer-profile small{display:block;color:#cbd6df;font-size:9px;margin-top:4px}.drawer-links{display:grid;gap:4px;overflow:auto}.drawer-links button,.drawer-links a{border:0;background:transparent;border-radius:13px;min-height:49px;padding:0 12px;display:flex;align-items:center;gap:11px;color:#34414a;font-size:12px;font-weight:800;text-align:right}.drawer-links button:hover,.drawer-links a:hover{background:#f3f5f6}.drawer-links svg{width:21px;height:21px;color:#547187}.logout-button{margin-top:auto;min-height:48px;border:0;border-radius:14px;background:#fff0f0;color:#b32626;font-weight:900;display:flex;align-items:center;justify-content:center;gap:8px}.modal-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-45%) scale(.96);width:min(430px,calc(100% - 34px));max-height:88dvh;overflow:auto;background:#fff;border-radius:26px;padding:24px;opacity:0;transition:.25s;box-shadow:0 26px 80px rgba(7,19,28,.24)}.modal.open .modal-card{opacity:1;transform:translate(-50%,-50%) scale(1)}.modal-close{position:absolute;left:16px;top:16px}.login-card{text-align:center;padding:34px 26px 26px}.login-mark{width:76px;height:76px;border-radius:25px;background:var(--header);color:#fff;display:grid;place-items:center;margin:0 auto 15px}.login-mark svg{width:39px;height:39px}.login-card h2{margin:0;font-size:20px}.login-card>p{font-size:11px;color:var(--muted);margin:7px 0 22px}.dev-code{background:#fff7db;border:1px dashed #e1b02b;padding:9px;border-radius:10px;color:#7a5700}.sheet-panel{position:absolute;left:50%;bottom:0;transform:translate(-50%,105%);width:min(520px,100%);max-height:89dvh;overflow:auto;background:#fff;border-radius:28px 28px 0 0;padding:12px 22px calc(24px + env(safe-area-inset-bottom));transition:.32s cubic-bezier(.2,.8,.2,1)}.sheet.open .sheet-panel{transform:translate(-50%,0)}.sheet-handle{width:48px;height:5px;border-radius:10px;background:#d9dfe3;margin:0 auto 15px}.sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.sheet-head small{font-size:9px;color:var(--muted)}.sheet-head h3{margin:3px 0 0;font-size:19px}.cart-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:15px}.cart-tab{border:1px solid var(--line);background:#fff;border-radius:14px;min-height:46px;font-size:11px;font-weight:900}.cart-tab.active{background:var(--header);color:#fff;border-color:var(--header)}.cart-item{display:grid;grid-template-columns:64px 1fr auto;gap:11px;align-items:center;border-bottom:1px solid #eef0f2;padding:12px 0}.cart-item-image{width:64px;height:64px;border-radius:16px;background:#f1f3f4 center/cover no-repeat}.cart-item strong{font-size:11px;display:block}.cart-item small{font-size:9px;color:var(--muted)}.cart-summary{background:#f5f7f8;border-radius:18px;padding:15px;margin:15px 0}.cart-summary p{display:flex;justify-content:space-between;margin:7px 0;font-size:11px}.cart-summary p.total{border-top:1px solid #dfe4e7;padding-top:10px;font-size:13px;font-weight:900}.product-modal-card{padding-top:58px}.product-modal-image{height:260px;border-radius:22px;background:#f0f3f4 center/cover no-repeat}.product-modal-card h2{font-size:20px;margin:16px 0 7px}.product-modal-card p{color:var(--muted);font-size:11px;line-height:2}.product-modal-price{font-size:18px;font-weight:950;margin:13px 0}.toast-stack{position:fixed;z-index:200;right:50%;bottom:135px;transform:translateX(50%);width:min(440px,calc(100% - 32px));display:grid;gap:8px;pointer-events:none}.toast{background:#14242f;color:#fff;border-radius:14px;padding:13px 15px;box-shadow:0 12px 35px rgba(11,25,34,.2);font-size:11px;animation:toastIn .28s ease}.toast.error{background:#a82929}.toast.success{background:#14734c}.skeleton{background:linear-gradient(90deg,#f0f2f3,#f8f9fa,#f0f2f3);background-size:200% 100%;animation:shimmer 1.2s infinite;border-radius:16px}.skeleton.line{height:26px;margin-bottom:16px}.skeleton.line.wide{width:60%}.skeleton.slider{height:180px}.skeleton-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.skeleton.card{height:120px}.loading-inline{padding:30px;text-align:center;color:var(--muted)}
.status-badge.open,.status-badge.in_progress{background:#eaf3ff;color:#2767ae}.status-badge.waiting_user{background:#fff4dc;color:#9a6800}.status-badge.resolved{background:#e7f7ee;color:#16754a}.status-badge.closed{background:#eef1f4;color:#5d6870}
@keyframes shimmer{to{background-position:-200% 0}}@keyframes fadeSlide{from{opacity:.25;transform:translateX(-12px)}to{opacity:1;transform:none}}@keyframes orbEnter{0%{opacity:0;transform:translateY(18px) scale(.5)}100%{opacity:1;transform:translateY(-28px) scale(1)}}@keyframes orbShake{0%,100%{transform:translateY(-28px) rotate(0)}20%{transform:translateY(-28px) rotate(-2deg)}40%{transform:translateY(-28px) rotate(2deg)}60%{transform:translateY(-28px) rotate(-1.5deg)}80%{transform:translateY(-28px) rotate(1.5deg)}}@keyframes toastIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:420px){.app-header{padding:7px 14px 8px}.topbar{min-height:96px;border-radius:34px;padding:14px 15px}.icon-button{width:62px;height:62px;border-radius:20px}.bell-button{width:62px}.icon-button svg{width:29px;height:29px}.menu-button{width:52px;height:52px}.menu-button svg{width:36px;height:36px}.resident-identity strong{font-size:12px}.resident-identity small{font-size:9px}.app-main{padding:16px 18px 22px}.service-grid{gap:9px}.service-card{min-height:150px;padding:10px 6px}.service-image{width:74px;height:74px}.product-image{height:132px}.bottom-nav{height:98px;padding-inline:10px;grid-template-columns:1fr 116px 1fr}.order-orb{width:112px;height:112px;transform:translateY(-24px)}.order-orb strong{font-size:16px}.order-orb span{font-size:11px}.nav-side{font-size:11px}.nav-side svg{width:29px;height:29px}.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}.quick-card{min-height:105px}.quick-card span{width:54px;height:54px}.amenity-image{height:180px}}@media(min-width:760px){.app-shell{margin-top:20px;margin-bottom:20px;min-height:calc(100dvh - 40px);border-radius:34px}.bottom-nav{bottom:20px;border-radius:0 0 34px 34px}.topbar{min-height:100px}.icon-button{width:64px;height:64px}.bell-button{width:64px}}

.login-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#eef2f6;padding:5px;border-radius:14px;margin:14px 0}.login-tabs button{border:0;background:transparent;padding:10px;border-radius:10px;font:inherit;font-weight:700;color:#66788a;cursor:pointer}.login-tabs button.active{background:#fff;color:var(--mts-header);box-shadow:0 2px 8px rgba(20,40,60,.08)}

.service-progress-card{margin-top:14px;border:1px solid #e2e7ea;border-radius:22px;padding:16px;background:#fbfcfd}
.service-progress-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.service-progress-head h4{margin:0;font-size:14px}
.service-progress-head small{color:#748089;font-size:10px}
.service-progress{display:grid;grid-template-columns:repeat(5,minmax(84px,1fr));gap:0;align-items:start;position:relative;margin-bottom:12px}
.service-progress:before{content:"";position:absolute;top:22px;right:10%;left:10%;height:3px;background:#dfe5e8;z-index:0}
.service-progress-step{position:relative;z-index:1;display:grid;justify-items:center;text-align:center;gap:8px;color:#8b97a0;font-size:10px;font-weight:800}
.service-progress-step strong{font-size:11px;line-height:1.7}
.service-progress-marker{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fff;border:3px solid #dfe5e8;color:#7a8690;font-weight:900;font-size:15px}
.service-progress-step.done,.service-progress-step.active{color:#1c7f4f}
.service-progress-step.done .service-progress-marker,.service-progress-step.active .service-progress-marker{background:#e8f7ef;border-color:#31a865;color:#168352}
.service-progress-step.done .service-progress-marker{background:#31a865;color:#fff}
.service-progress-notes{display:grid;gap:8px;margin-top:8px}
.service-progress-notes article{background:#fff;border:1px solid #e7ecef;border-radius:14px;padding:10px 12px}
.service-progress-notes strong{display:block;font-size:11px;margin-bottom:4px}
.service-progress-notes small{display:block;color:#748089;font-size:9px;line-height:1.8}
@media(max-width:640px){.service-progress{grid-template-columns:repeat(5,minmax(86px,1fr));overflow-x:auto;padding-bottom:6px}.service-progress:before{right:44px;left:44px}.service-progress-step{min-width:86px}}

.service-progress-card{overflow:hidden}.service-progress-head{align-items:center}.service-progress-track{overflow-x:auto;overflow-y:hidden;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.service-progress{display:flex;align-items:center;gap:0;min-width:max-content;padding-inline:10px}.service-progress:before{content:none}.service-progress-step{min-width:86px;display:flex;justify-content:center;align-items:center;position:relative}.service-progress-step::before{content:"";position:absolute;top:50%;right:calc(50% + 22px);width:100%;height:3px;background:#dfe5e8;transform:translateY(-50%);z-index:0}.service-progress-step:first-child::before{display:none}.service-progress-marker{position:relative;z-index:1}.service-progress-step strong{display:none}.service-progress-notes article strong{font-size:11px}.service-progress-track::-webkit-scrollbar{height:7px}.service-progress-track::-webkit-scrollbar-thumb{background:#d5dde3;border-radius:99px}

.weekday-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin-top:8px}.weekday-chip{display:flex;align-items:center;gap:8px;border:1px solid #dfe5e8;border-radius:14px;padding:10px 12px;background:#fbfcfd;font-weight:700}.weekday-chip input{width:18px;height:18px}.jalali-date{text-align:center;direction:ltr}

/* v2.4.0 header mini-icons layout */
.topbar{grid-template-areas:"menu identity actions";grid-template-columns:auto 1fr auto}
.topbar-left{grid-area:actions;justify-self:start;gap:10px}
.resident-identity{grid-area:identity;text-align:center}
.menu-button{grid-area:menu;justify-self:end;width:52px;height:52px}
.menu-button svg{width:34px;height:34px;stroke-width:2.1}
.icon-button{width:58px;height:58px;border-radius:20px}
.bell-button{width:58px}
.icon-button svg{width:28px;height:28px}
.badge{top:-4px;right:-4px;min-width:21px;height:21px;font-size:10px;border-width:2px}
@media(max-width:420px){.topbar{min-height:92px;padding:14px 14px}.topbar-left{gap:8px}.icon-button,.bell-button{width:52px;height:52px;border-radius:18px}.icon-button svg{width:24px;height:24px}.menu-button{width:46px;height:46px}.menu-button svg{width:30px;height:30px}.badge{min-width:19px;height:19px;font-size:9px}}
@media(min-width:760px){.icon-button,.bell-button{width:56px;height:56px}.menu-button{width:50px;height:50px}.icon-button svg{width:26px;height:26px}.menu-button svg{width:32px;height:32px}}


/* v2.4.0 minimal front refinement */
html,body{font-family:"Vazirmatn",IRANSansX,"Segoe UI",Tahoma,sans-serif;font-feature-settings:"ss01" 1}
body{font-size:13px}
.page-head{margin-bottom:18px}.page-head h1{font-size:22px}.page-head p{font-size:10px}
.section-title{margin:20px 2px 10px}.section-title h2{font-size:15px}
.list-card{border-radius:24px;padding:18px;box-shadow:0 10px 28px rgba(23,38,48,.05)}
.list-card h3{font-size:12px}.list-card p{font-size:11px;line-height:1.9}
.status-badge{font-size:10px;padding:8px 12px}
.primary-button,.secondary-button,.danger-button{min-height:44px;font-size:11px;border-radius:14px}
.service-request-card{border:1px solid var(--line);border-radius:28px;background:#fff;padding:18px 18px 16px;box-shadow:0 8px 26px rgba(17,32,45,.05)}
.service-request-top{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start}
.service-refresh-button{width:48px;height:48px;border:1px solid #d7dee4;background:#fff;border-radius:16px;display:grid;place-items:center;color:#6d7a85;box-shadow:0 4px 12px rgba(16,30,40,.04)}
.service-refresh-button svg{width:22px;height:22px}
.service-request-heading{min-width:0;text-align:right}.service-request-code{color:#7b8892;font-size:11px;margin-bottom:6px}.service-request-heading h3{margin:0;font-size:15px;line-height:1.8;font-weight:800}
.service-request-icon{width:56px;height:56px;border-radius:18px;background:#faefea;color:#c08f68;display:grid;place-items:center;flex-shrink:0}.service-request-icon svg{width:28px;height:28px}
.service-request-meta{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin:14px 0 12px}
.service-meta-pill{display:inline-flex;align-items:center;gap:5px;padding:8px 12px;border-radius:999px;background:#f4f6f8;color:#66737d;font-size:11px;font-weight:600}
.service-description-card{background:#fafbfc;border:1px solid #eef2f4;border-radius:20px;padding:15px 16px;margin-bottom:14px}
.service-description-card .service-label{display:block;color:#8a95a0;font-size:10px;font-weight:700;margin-bottom:8px}
.service-description-card p{margin:0;color:#4a5660;font-size:11px;line-height:2}
.service-dual-row{display:grid;grid-template-columns:190px 1fr;gap:14px;margin-bottom:14px;align-items:stretch}
.service-note-card{background:#f6f8fe;border-radius:18px;padding:16px;color:#51617a;display:flex;flex-direction:column;justify-content:center}.service-note-card small{font-size:10px;color:#7f8da0}.service-note-card strong{font-size:13px;margin-top:8px;line-height:1.8}
.service-price-card{border-radius:22px;padding:18px 18px 16px;border:1px solid #dce8dd;background:#f6fbf7}
.service-price-card.pending{background:#fff9ee;border-color:#f1e3b8}.service-price-card.accepted{background:#edf7ef;border-color:#cde6d2}
.service-price-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.service-price-head strong{font-size:13px;color:#8b6a2a}.service-price-head b{font-size:14px;color:#8b6a2a}
.service-price-card p{margin:0;color:#5c665f;font-size:11px;line-height:1.95}.service-price-card.pending .service-price-head strong,.service-price-card.pending .service-price-head b{color:#8c6b1f}
.service-action-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.service-action-row .primary-button,.service-action-row .danger-button{flex:1}
.service-divider{height:1px;background:repeating-linear-gradient(to left,#d8dde2 0 6px,transparent 6px 12px);margin:16px 0 14px}
.service-progress-card{padding-top:0}.service-progress-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.service-progress-head h4{margin:0;font-size:15px}.service-progress-head small{color:#7b8791;font-size:10px}
.service-progress-slider{display:flex;gap:6px;overflow:auto;padding-bottom:4px;scrollbar-width:none}.service-progress-slider::-webkit-scrollbar{display:none}
.service-progress-step{position:relative;min-width:88px;flex:0 0 88px;padding-top:2px;text-align:center;color:#9aa4ac}.service-progress-step:not(:last-child)::after{content:"";position:absolute;top:18px;right:58px;width:calc(100% - 28px);height:2px;background:#d8dde2}.service-progress-step.done:not(:last-child)::after,.service-progress-step.active:not(:last-child)::after{background:#39b463}
.service-progress-marker{position:relative;z-index:1;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;background:#fff;border:2px solid #d8dde2;color:#8a949c;font-weight:800;font-size:15px}
.service-progress-label{display:block;font-size:10px;font-weight:700;line-height:1.7}
.service-progress-step.done .service-progress-marker,.service-progress-step.active .service-progress-marker{border-color:#39b463;color:#fff;background:#39b463}.service-progress-step.active .service-progress-marker{background:#fff;color:#39b463}
.service-progress-step.done .service-progress-label,.service-progress-step.active .service-progress-label{color:#2d9c57}
@media(max-width:420px){body{font-size:12.5px}.service-request-card{padding:15px}.service-request-top{gap:10px}.service-request-icon{width:48px;height:48px;border-radius:16px}.service-request-heading h3{font-size:14px}.service-dual-row{grid-template-columns:1fr}.service-note-card{order:2}.service-price-card{order:1}.service-request-meta{gap:8px}.service-meta-pill{font-size:10px;padding:7px 10px}.service-progress-step{min-width:82px;flex-basis:82px}.service-progress-step:not(:last-child)::after{right:55px;width:calc(100% - 24px)}}


/* v2.4.0 exact service reference + stable mobile timeline */
.service-request-card{width:100%;max-width:100%;min-width:0;overflow:hidden;padding:15px 16px 14px;border-radius:24px}
.service-request-card *{min-width:0}
.service-request-top{display:grid!important;grid-template-columns:58px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;direction:rtl!important;border-bottom:1px solid #edf0f2;padding-bottom:12px}
.service-request-icon{grid-column:1!important;grid-row:1!important;width:52px!important;height:52px!important;border-radius:16px!important}.service-request-icon svg{width:26px!important;height:26px!important}
.service-request-heading{grid-column:2!important;grid-row:1!important;text-align:right!important}.service-request-code{font-size:9px!important;margin-bottom:3px!important}.service-request-heading h3{font-size:13px!important;line-height:1.7!important;font-weight:800!important}
.service-request-actions{grid-column:3!important;grid-row:1!important;display:flex!important;align-items:center!important;gap:8px!important;direction:ltr!important;justify-self:start!important}
.service-request-actions .status-badge{font-size:9px!important;padding:7px 10px!important;white-space:nowrap!important}
.service-refresh-button{width:42px!important;height:42px!important;border-radius:13px!important;flex:0 0 42px!important}.service-refresh-button svg{width:20px!important;height:20px!important}
.service-info-row{display:grid;grid-template-columns:minmax(0,1fr) 142px;gap:10px;align-items:stretch;margin:12px 0;direction:rtl}
.service-request-meta{grid-column:1!important;display:flex!important;align-items:center!important;align-content:center!important;gap:7px!important;flex-wrap:wrap!important;justify-content:flex-start!important;margin:0!important}
.service-meta-pill{font-size:9px!important;padding:7px 9px!important;white-space:nowrap!important}
.service-note-card{grid-column:2!important;padding:11px 12px!important;border-radius:15px!important;text-align:center!important;align-items:center!important}.service-note-card small{font-size:8.5px!important}.service-note-card strong{font-size:11px!important;margin-top:5px!important}
.service-description-card{padding:12px 14px!important;border-radius:17px!important;margin-bottom:11px!important}.service-description-card .service-label{font-size:9px!important;margin-bottom:6px!important}.service-description-card p{font-size:10px!important;line-height:1.9!important}
.service-price-card{padding:13px 14px 12px!important;border-radius:18px!important}.service-price-head{margin-bottom:8px!important}.service-price-head strong{font-size:10.5px!important}.service-price-head b{font-size:11.5px!important}.service-price-card p{font-size:9.5px!important;line-height:1.9!important}.service-action-row .primary-button,.service-action-row .danger-button{min-height:38px!important;font-size:9.5px!important}
.service-divider{margin:13px 0 11px!important}
.service-request-card .service-progress-card{width:100%!important;max-width:100%!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
.service-request-card .service-progress-head{margin:0 0 10px!important}.service-request-card .service-progress-head h4{font-size:12px!important}.service-request-card .service-progress-head small{font-size:8.5px!important}
.service-request-card .service-progress-slider{position:relative!important;display:grid!important;grid-auto-flow:column!important;grid-auto-columns:minmax(72px,1fr)!important;gap:0!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0 0 4px!important;scrollbar-width:none!important;direction:rtl!important}
.service-request-card .service-progress-slider::-webkit-scrollbar{display:none!important}
.service-request-card .service-progress-step{position:relative!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:5px!important;min-width:72px!important;width:auto!important;padding:0 2px!important;text-align:center!important;color:#98a2aa!important}
.service-request-card .service-progress-step::before{content:none!important}
.service-request-card .service-progress-step:not(:last-child)::after{content:""!important;position:absolute!important;top:16px!important;left:-50%!important;width:100%!important;height:2px!important;background:#dfe4e8!important;z-index:0!important}
.service-request-card .service-progress-step.done:not(:last-child)::after,.service-request-card .service-progress-step.active:not(:last-child)::after{background:#31ad64!important}
.service-request-card .service-progress-marker{position:relative!important;z-index:2!important;width:34px!important;height:34px!important;min-width:34px!important;border-radius:50%!important;margin:0!important;display:grid!important;place-items:center!important;background:#fff!important;border:2px solid #dce2e6!important;color:#7f8991!important;font-size:12px!important;font-weight:800!important}
.service-request-card .service-progress-label{display:block!important;width:100%!important;max-width:72px!important;min-height:30px!important;font-size:8.5px!important;line-height:1.55!important;font-weight:700!important;text-align:center!important;white-space:normal!important;word-break:normal!important;color:inherit!important}
.service-request-card .service-progress-step.done,.service-request-card .service-progress-step.active{color:#229653!important}.service-request-card .service-progress-step.done .service-progress-marker{background:#31ad64!important;border-color:#31ad64!important;color:#fff!important}.service-request-card .service-progress-step.active .service-progress-marker{background:#fff!important;border-color:#31ad64!important;color:#229653!important}
@media(max-width:420px){.service-request-card{padding:13px 12px}.service-request-top{grid-template-columns:50px minmax(0,1fr) auto!important;gap:8px!important}.service-request-icon{width:46px!important;height:46px!important}.service-request-actions{gap:5px!important}.service-request-actions .status-badge{padding:6px 8px!important;font-size:8px!important}.service-refresh-button{width:38px!important;height:38px!important;flex-basis:38px!important}.service-info-row{grid-template-columns:minmax(0,1fr) 124px;gap:8px}.service-meta-pill{font-size:8px!important;padding:6px 8px!important}.service-note-card{padding:9px!important}.service-request-card .service-progress-slider{grid-auto-columns:minmax(66px,1fr)!important}.service-request-card .service-progress-step{min-width:66px!important}.service-request-card .service-progress-label{max-width:66px!important;font-size:8px!important}}


/* v2.4.0 service timeline readability fix */
.service-request-card{overflow:hidden}
.service-request-card .service-progress-card{padding-top:2px}
.service-request-card .service-progress-head h4{font-size:13px!important}
.service-request-card .service-progress-head small{font-size:10px!important;color:#8b97a0!important}
.service-request-card .service-progress-slider{position:relative!important;display:grid!important;grid-template-columns:repeat(5,minmax(66px,1fr))!important;direction:rtl!important;align-items:start!important;gap:0!important;padding:10px 6px 2px!important;overflow:visible!important}
.service-request-card .service-progress-slider::before{content:""!important;position:absolute!important;top:26px!important;right:9%!important;left:9%!important;height:3px!important;border-radius:99px!important;background:linear-gradient(to left,#31ad64 0,var(--progress-fill,0%),#dfe4e8 var(--progress-fill,0%),#dfe4e8 100%)!important;z-index:0!important}
.service-request-card .service-progress-step,.service-request-card .service-progress-slider .service-progress-step{position:relative!important;z-index:1!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;min-width:0!important;width:auto!important;padding:0 2px!important;text-align:center!important;color:#98a2aa!important}
.service-request-card .service-progress-step::before,.service-request-card .service-progress-step::after{content:none!important}
.service-request-card .service-progress-marker{width:38px!important;height:38px!important;min-width:38px!important;border:3px solid #dfe4e8!important;border-radius:50%!important;background:#fff!important;color:#74818b!important;font-size:12px!important;font-weight:800!important;display:grid!important;place-items:center!important;line-height:1!important}
.service-request-card .service-progress-label{display:block!important;max-width:68px!important;min-height:34px!important;font-size:10px!important;line-height:1.55!important;font-weight:700!important;text-align:center!important;white-space:normal!important;word-break:keep-all!important;overflow-wrap:anywhere!important;color:inherit!important}
.service-request-card .service-progress-step.done,.service-request-card .service-progress-step.active{color:#239653!important}
.service-request-card .service-progress-step.done .service-progress-marker{background:#31ad64!important;border-color:#31ad64!important;color:#fff!important}
.service-request-card .service-progress-step.active .service-progress-marker{background:#fff!important;border-color:#31ad64!important;color:#239653!important}
.service-request-card .service-request-heading h3{font-size:15px!important}
.service-request-card .service-request-code{font-size:11px!important}
.service-request-card .service-meta-pill,.service-request-card .status-badge{font-size:10px!important}
@media(max-width:420px){
  .service-request-card .service-progress-slider{grid-template-columns:repeat(5,minmax(60px,1fr))!important;padding-inline:2px!important}
  .service-request-card .service-progress-slider::before{right:8%!important;left:8%!important;top:24px!important}
  .service-request-card .service-progress-marker{width:34px!important;height:34px!important;min-width:34px!important;font-size:11px!important}
  .service-request-card .service-progress-label{max-width:60px!important;min-height:32px!important;font-size:9px!important;line-height:1.45!important}
}


/* v2.4.0 final timeline cleanup */
.service-request-card .service-progress-card{overflow:hidden!important;margin-top:0!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important}
.service-request-card .service-progress-head{display:block!important;margin:0 0 12px!important;padding:0!important}
.service-request-card .service-progress-head h4{margin:0!important;width:100%!important;text-align:right!important;font-size:13px!important;line-height:1.8!important;font-weight:800!important;color:#16232c!important}
.service-request-card .service-progress-head small{display:none!important}
.service-request-card .service-progress-slider{--progress-fill:0%;position:relative!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;direction:rtl!important;align-items:start!important;gap:0!important;width:100%!important;min-width:0!important;overflow:visible!important;padding:8px 0 2px!important;margin:0!important}
.service-request-card .service-progress-slider::before{content:""!important;position:absolute!important;top:27px!important;right:10%!important;left:10%!important;height:3px!important;border-radius:99px!important;background:linear-gradient(to left,#31ad64 0,var(--progress-fill),#dfe4e8 var(--progress-fill),#dfe4e8 100%)!important;z-index:0!important}
.service-request-card .service-progress-step{position:relative!important;z-index:1!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important;min-width:0!important;width:100%!important;padding:0 2px!important;margin:0!important;text-align:center!important;color:#99a3ab!important}
.service-request-card .service-progress-step::before,.service-request-card .service-progress-step::after{display:none!important;content:none!important}
.service-request-card .service-progress-marker{position:relative!important;z-index:2!important;width:38px!important;height:38px!important;min-width:38px!important;border-radius:50%!important;border:3px solid #dfe4e8!important;background:#fff!important;color:#77848e!important;display:grid!important;place-items:center!important;font-size:12px!important;font-weight:800!important;line-height:1!important;margin:0!important;padding:0!important}
.service-request-card .service-progress-label{display:block!important;width:100%!important;max-width:72px!important;min-height:31px!important;margin:0 auto!important;text-align:center!important;font-size:9px!important;line-height:1.55!important;font-weight:700!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;color:inherit!important}
.service-request-card .service-progress-step.done,.service-request-card .service-progress-step.active{color:#219653!important}
.service-request-card .service-progress-step.done .service-progress-marker{background:#31ad64!important;border-color:#31ad64!important;color:#fff!important}
.service-request-card .service-progress-step.active .service-progress-marker{background:#fff!important;border-color:#31ad64!important;color:#219653!important}
@media(max-width:420px){
  .service-request-card .service-progress-head h4{font-size:12px!important}
  .service-request-card .service-progress-slider{padding-top:7px!important}
  .service-request-card .service-progress-slider::before{top:25px!important;right:9%!important;left:9%!important;height:2px!important}
  .service-request-card .service-progress-marker{width:34px!important;height:34px!important;min-width:34px!important;font-size:11px!important}
  .service-request-card .service-progress-label{max-width:62px!important;min-height:29px!important;font-size:8.5px!important;line-height:1.5!important}
}


/* v2.4.0 mobile menu + bottom nav refresh */
:root{--menu-pink:#ef3f8f;--menu-pink-soft:#fde6f0;--menu-pink-soft-2:#fff2f8}
.app-shell{padding-bottom:124px}
.bottom-nav{position:fixed;z-index:90;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,520px);height:104px;display:grid;grid-template-columns:1fr 1fr 94px 1fr 1fr;align-items:end;padding:0 12px calc(10px + env(safe-area-inset-bottom));background:transparent;filter:drop-shadow(0 -10px 24px rgba(20,24,34,.08));direction:ltr}
.bottom-nav::before{content:"";position:absolute;inset:14px 10px 0;background:#fff;border-radius:28px 28px 0 0;box-shadow:0 -1px 0 #eef1f4 inset,0 -8px 22px rgba(25,31,42,.05);-webkit-mask:radial-gradient(circle 62px at 50% -6px,transparent 0 42px,#000 43px);mask:radial-gradient(circle 62px at 50% -6px,transparent 0 42px,#000 43px)}
.nav-side{position:relative;z-index:2;height:72px;border:0;background:transparent;color:#6d7481;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;font-size:10px;font-weight:800;line-height:1.2;padding-bottom:4px}
.nav-side svg{width:23px;height:23px;stroke-width:2}
.nav-side.active{color:var(--menu-pink)}
.nav-badge{position:absolute;top:11px;right:28px;min-width:16px;height:16px;padding:0 4px;border-radius:99px;background:var(--menu-pink);color:#fff;font-size:9px;display:grid;place-items:center;border:2px solid #fff;z-index:3}
.order-orb{position:relative;z-index:3;align-self:end;justify-self:center;width:76px;height:76px;margin-bottom:18px;border-radius:50%;border:4px solid #fff;background:linear-gradient(180deg,#ff73b3 0%,#ef3f8f 68%,#df2377 100%);box-shadow:0 12px 26px rgba(239,63,143,.33),0 0 0 8px rgba(255,255,255,.72);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;transform:none}
.order-orb svg{width:24px;height:24px}
.order-orb strong{font-size:13px;font-weight:900;line-height:1}
.order-orb small{font-size:9px;line-height:1.2;opacity:.95}
.order-orb-badge{position:absolute;top:-2px;right:-2px;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#fff;color:var(--menu-pink);font-size:10px;font-weight:900;display:grid;place-items:center;box-shadow:0 6px 14px rgba(239,63,143,.22)}
.order-orb.is-shaking{animation:orbShake .55s ease}
.drawer-panel.pink-drawer-panel{left:0;right:auto;top:0;bottom:0;width:min(350px,88vw);padding:22px 16px 18px;background:#fff;border-radius:0 28px 28px 0;transform:translateX(-105%);box-shadow:20px 0 60px rgba(12,28,39,.12);overflow:hidden}
.drawer.open .drawer-panel.pink-drawer-panel{transform:none}
.drawer-close{position:relative;z-index:2;border:0;background:transparent;color:var(--menu-pink);width:38px;height:38px;display:grid;place-items:center;margin:0 0 8px auto}
.drawer-close svg{width:23px;height:23px}
.drawer-ornament{position:absolute;top:-14px;right:-26px;width:148px;height:128px;background:radial-gradient(circle at 30% 30%,#ffd6e8 0 20%,transparent 21%),radial-gradient(circle at 72% 24%,#f7bfd8 0 23%,transparent 24%),radial-gradient(circle at 82% 78%,#ffe7f1 0 32%,transparent 33%);opacity:.95}
.pink-drawer-profile{position:relative;z-index:1;margin:6px 0 18px;padding:0;display:flex;flex-direction:column;align-items:center;gap:10px;background:transparent;color:var(--ink)}
.pink-drawer-profile .avatar{width:86px;height:86px;border-radius:50%;background:#fff;border:2px solid #f6b1cf;box-shadow:0 8px 20px rgba(239,63,143,.08);color:var(--menu-pink)}
.pink-drawer-profile .avatar img{border-radius:50%}
.pink-drawer-profile strong{font-size:21px;font-weight:900}
.pink-drawer-profile small{font-size:14px;color:#666f7a}
.pink-drawer-links{display:grid;gap:2px;padding:10px 0 8px;overflow:auto}
.pink-drawer-links button,.pink-drawer-links a{border:0;background:transparent;min-height:48px;padding:0 12px;border-radius:14px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;color:#111;font-size:14px;font-weight:800;text-align:right}
.pink-drawer-links button:hover,.pink-drawer-links a:hover,.pink-drawer-links button:focus-visible,.pink-drawer-links a:focus-visible{background:var(--menu-pink-soft-2);outline:none}
.pink-drawer-links button.active-drawer-link{background:var(--menu-pink-soft);color:var(--menu-pink)}
.pink-drawer-links svg{width:21px;height:21px;color:var(--menu-pink)}
.drawer-link-label{justify-self:start}
.drawer-link-badge{justify-self:end;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:var(--menu-pink);color:#fff;font-size:11px;display:grid;place-items:center}
.drawer-logout-link .drawer-link-label{color:#d62f7f}
.drawer-support-card{margin-top:auto;border-radius:16px;background:var(--menu-pink-soft-2);padding:14px 16px;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;color:var(--menu-pink)}
.drawer-support-card strong{font-size:16px}
.drawer-support-card small{display:block;font-size:11px;color:#b15480}
.drawer-support-card span{width:44px;height:44px;border-radius:14px;background:#fff;display:grid;place-items:center}
.drawer-support-card span svg{width:24px;height:24px;color:var(--menu-pink)}
#logoutButton{margin-top:0;background:transparent;color:inherit;justify-content:initial}
@media(max-width:420px){
  .app-shell{padding-bottom:118px}
  .bottom-nav{height:98px;padding-inline:8px}
  .bottom-nav::before{inset:12px 8px 0;border-radius:24px 24px 0 0;-webkit-mask:radial-gradient(circle 56px at 50% -6px,transparent 0 39px,#000 40px);mask:radial-gradient(circle 56px at 50% -6px,transparent 0 39px,#000 40px)}
  .nav-side{height:68px;font-size:9px;gap:4px}
  .nav-side svg{width:21px;height:21px}
  .nav-badge{right:22px;top:10px}
  .order-orb{width:70px;height:70px;margin-bottom:18px}
  .order-orb strong{font-size:12px}.order-orb small{font-size:8px}
  .pink-drawer-profile strong{font-size:18px}.pink-drawer-profile small{font-size:12px}
  .pink-drawer-links button,.pink-drawer-links a{min-height:44px;font-size:13px;padding:0 10px}
}

/* ===== 2.4.3 reference-overview refresh ===== */
.app-shell{width:min(100%,430px);background:#f6f7f9;padding-bottom:126px}
.app-header{padding:14px 18px 8px;background:#f6f7f9}
.app-main{padding:8px 18px 24px;min-height:calc(100dvh - 120px);background:#f6f7f9}
.topbar.topbar-overview{min-height:auto;background:transparent;box-shadow:none;border-radius:0;padding:0;grid-template-columns:auto 1fr auto;gap:12px;color:#0f2340}
.overview-bell,.overview-account{width:44px;height:44px;border-radius:14px;background:#fff;border:1px solid #e9edf2;color:#0f2340;box-shadow:0 8px 20px rgba(14,33,60,.05)}
.overview-bell svg,.overview-account svg{width:22px;height:22px}
.overview-account .avatar,.overview-account .avatar img{border-radius:14px}
.resident-summary{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}
.resident-identity{text-align:right;flex:1;min-width:0}
.resident-identity strong{font-size:14px;color:#0f2340;margin-bottom:3px}
.resident-identity small{margin:0;font-size:11px;color:#7b8695}
.overview-menu-button{width:22px;height:22px;background:transparent;color:#59667a;padding:0}
.overview-menu-button svg{width:16px;height:16px}
.overview-home{display:grid;gap:16px}
.overview-cart{display:none}
[data-device="tablet"] .overview-cart,[data-device="desktop"] .overview-cart{display:grid}
.order-tracker-banner{width:100%;border:0;background:linear-gradient(135deg,#173b6d,#214c84);color:#fff;border-radius:22px;padding:15px 16px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;box-shadow:0 16px 28px rgba(23,59,109,.18)}
.order-tracker-icon{width:48px;height:48px;border-radius:16px;background:rgba(255,255,255,.14);display:grid;place-items:center}
.order-tracker-icon svg{width:24px;height:24px}
.order-tracker-content small{display:block;font-size:11px;color:#d8e6fa;margin-bottom:4px}
.order-tracker-content strong{display:block;font-size:16px;margin-bottom:4px}
.order-tracker-content p{margin:0;font-size:11px;color:#eef4ff}
.order-tracker-action{white-space:nowrap;background:#fff;color:#173b6d;border-radius:999px;padding:9px 12px;font-size:11px;font-weight:900}
.overview-home-slide.is-clickable{cursor:pointer}
.home-slide-cta{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 16px;border-radius:99px;background:#fff;color:#173b6d;font-size:11px;font-weight:900;margin-top:8px}
.overview-activity-body p{margin:6px 0 0;font-size:10px;line-height:1.8;color:#7d8997}
@media(max-width:640px){.overview-quick-grid,.overview-services-grid,.overview-quick-grid-expanded{grid-template-columns:repeat(3,minmax(0,1fr))}.order-tracker-banner{grid-template-columns:auto 1fr;align-items:start}.order-tracker-action{grid-column:1 / -1;justify-self:start}}
.overview-hero-card{display:grid;gap:12px}
.overview-home-slider{min-height:198px;margin:0;border-radius:24px;background:#dde6f2;box-shadow:0 16px 32px rgba(17,36,66,.08)}
.overview-home-slide{min-height:198px;padding:16px;align-items:flex-end}
.overview-home-slide::before{background:linear-gradient(180deg,rgba(8,18,34,.08),rgba(8,18,34,.44))}
.overview-home-slide>div{position:absolute;right:18px;left:18px;bottom:22px;max-width:none;z-index:2}
.overview-home-slide strong{font-size:18px}
.overview-home-slide p{margin-top:5px;margin-bottom:0;font-size:11px;color:#edf3f8}
.overview-weather-pill{position:absolute;z-index:5;right:16px;top:12px;background:rgba(23,59,109,.82);color:#fff;border-radius:16px;padding:8px 12px;font-size:12px;font-weight:700;backdrop-filter:blur(6px)}
.overview-announcement{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid #e8edf3;border-radius:18px;padding:14px 16px;box-shadow:0 8px 20px rgba(14,33,60,.04)}
.overview-announcement small{display:block;color:#7f8b98;font-size:10px;margin-bottom:4px}.overview-announcement strong{font-size:12px;color:#1c2736}.overview-announcement span{width:34px;height:34px;border-radius:12px;background:#eff4fb;color:#173b6d;display:grid;place-items:center;flex:0 0 34px}.overview-announcement span svg{width:18px;height:18px}
.overview-section-title{margin:0}.overview-section-title h2{font-size:16px;font-weight:900}.overview-section-title button{font-size:11px;color:#173b6d}
.overview-quick-grid,.overview-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.overview-quick-grid-expanded{grid-template-columns:repeat(3,minmax(0,1fr))}
.overview-tile,.overview-service-tile{background:#fff;border:1px solid #e9edf3;border-radius:18px;min-height:88px;padding:12px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;box-shadow:0 8px 22px rgba(14,33,60,.045)}
.overview-tile span,.overview-service-tile span{width:42px;height:42px;border-radius:14px;background:#f2f5f9;color:#173b6d;display:grid;place-items:center}
.overview-tile span svg,.overview-service-tile span svg{width:20px;height:20px}
.overview-tile strong,.overview-service-tile strong{font-size:11px;line-height:1.7;color:#233145}
.overview-activity-list{display:grid;gap:10px}
.overview-activity-card{display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:12px;background:#fff;border:1px solid #e9edf3;border-radius:18px;padding:12px 14px;box-shadow:0 8px 22px rgba(14,33,60,.04)}
.overview-activity-icon{width:46px;height:46px;border-radius:14px;background:#f4f7fb;color:#173b6d;display:grid;place-items:center}.overview-activity-icon svg{width:22px;height:22px}
.overview-activity-body h3{margin:0;font-size:13px;color:#1b2736}.overview-activity-body small{display:block;margin-top:4px;color:#8a96a3;font-size:10px}
.overview-activity-status .status-badge{white-space:nowrap}
.bottom-nav.bottom-nav-overview{width:min(100%,430px);height:96px;padding:0 14px calc(8px + env(safe-area-inset-bottom));grid-template-columns:1fr 1fr 84px 1fr 1fr}
.bottom-nav.bottom-nav-overview::before{inset:12px 12px 0;background:#fff;border-radius:22px 22px 0 0;box-shadow:0 -1px 0 #edf0f4 inset,0 -12px 26px rgba(20,29,39,.06);-webkit-mask:radial-gradient(circle 54px at 50% -8px,transparent 0 36px,#000 37px);mask:radial-gradient(circle 54px at 50% -8px,transparent 0 36px,#000 37px)}
.bottom-nav.bottom-nav-overview.no-cart{grid-template-columns:repeat(4,1fr)}
.bottom-nav.bottom-nav-overview.no-cart::before{-webkit-mask:none;mask:none}
.bottom-nav.bottom-nav-overview.no-cart .nav-side{grid-column:auto}
.bottom-nav.bottom-nav-overview .order-orb[hidden]{display:none!important}
.nav-side{position:relative;z-index:2;border:0;background:transparent;color:#647184;padding:0 4px 12px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;font-size:10px;font-weight:700}
.nav-side svg{width:20px;height:20px}.nav-side.active{color:#173b6d}.nav-side .nav-badge{position:absolute;top:12px;right:22px;min-width:16px;height:16px;border-radius:99px;background:#ef4444;color:#fff;font-size:9px;display:grid;place-items:center;padding:0 4px}
.order-orb{width:64px;height:64px;margin-bottom:18px;border:4px solid #fff;background:#173b6d;box-shadow:0 14px 26px rgba(23,59,109,.28),0 0 0 7px rgba(255,255,255,.8)}
.order-orb svg{width:22px;height:22px}.order-orb strong{font-size:12px}.order-orb small{font-size:8px}
.order-orb-badge{background:#ef4444;color:#fff;box-shadow:none}
.drawer-panel.pink-drawer-panel{right:0;left:auto;width:min(330px,86vw);padding:0;border-radius:28px 0 0 28px;transform:translateX(105%);background:#fff;box-shadow:-18px 0 52px rgba(12,28,39,.12)}
.drawer.open .drawer-panel.pink-drawer-panel{transform:none}
.drawer-close{position:absolute;left:14px;top:14px;border:0;background:transparent;color:#fff;z-index:2}
.drawer-ornament{display:none}
.pink-drawer-profile{margin:0;padding:26px 22px 22px;background:linear-gradient(180deg,#0f2d56 0%,#173b6d 100%);color:#fff;border-radius:28px 0 18px 18px;display:flex;flex-direction:column;align-items:center;gap:10px}
.pink-drawer-profile .avatar{width:72px;height:72px;border-radius:50%;background:#fff;border:0;box-shadow:none;color:#173b6d}
.pink-drawer-profile strong{font-size:20px;color:#fff}.pink-drawer-profile small{color:#d8e2f0;font-size:12px}
.pink-drawer-links{padding:14px 14px 8px;gap:4px}.pink-drawer-links button,.pink-drawer-links a{min-height:46px;padding:0 12px;border-radius:14px;grid-template-columns:auto 1fr auto;font-size:13px;color:#1f2d3d}.pink-drawer-links svg{color:#173b6d}
.pink-drawer-links button.active-drawer-link{background:#eef4fb;color:#173b6d}
.drawer-support-card{margin:10px 14px 14px;background:#173b6d;color:#fff;border-radius:16px;padding:14px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;text-align:center}.drawer-support-card strong,.drawer-support-card small{grid-column:1/-1}.drawer-support-card span{display:none}
.drawer-support-card::after{content:"تماس تلفنی";background:rgba(255,255,255,.08);border-radius:12px;padding:10px 6px;font-size:11px}
.drawer-support-card::before{content:"چت آنلاین";background:rgba(255,255,255,.08);border-radius:12px;padding:10px 6px;font-size:11px}
.overview-account-screen{display:grid;gap:14px}
.overview-account-hero{background:linear-gradient(180deg,#0f2d56 0%,#173b6d 100%);border-radius:24px;padding:18px 16px 14px;color:#fff;box-shadow:0 14px 30px rgba(15,45,86,.18)}
.overview-account-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.overview-account-user{display:flex;align-items:center;gap:10px}.overview-account-user .avatar{width:58px;height:58px;border-radius:50%;background:#fff;color:#173b6d;overflow:hidden}.overview-account-user strong{display:block;font-size:20px}.overview-account-user small{display:block;margin-top:4px;color:#d8e2f0;font-size:12px}
.overview-gear-button{width:30px;height:30px;border:0;border-radius:10px;background:transparent;color:#dbe5f3;padding:0}.overview-gear-button svg{width:18px;height:18px}
.overview-account-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);border-radius:16px;padding:14px 6px}.overview-account-stats div{text-align:center;position:relative}.overview-account-stats div+div::before{content:"";position:absolute;top:6px;bottom:6px;right:100%;width:1px;background:rgba(255,255,255,.12)}.overview-account-stats small{display:block;color:#d5e0ef;font-size:10px;margin-bottom:6px}.overview-account-stats strong{font-size:14px}
.overview-account-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.overview-account-tabs button{border:1px solid #e4e9ef;background:#fff;border-radius:14px;min-height:42px;color:#607084;font-size:12px;font-weight:700}.overview-account-tabs button.active{background:#173b6d;color:#fff;border-color:#173b6d}
.overview-summary-stack{display:grid;gap:12px}.overview-summary-card{background:#fff;border:1px solid #e9edf3;border-radius:20px;padding:14px 16px;box-shadow:0 8px 22px rgba(14,33,60,.04)}
.overview-summary-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.overview-summary-head small{display:block;color:#8390a0;font-size:10px;margin-bottom:4px}.overview-summary-head h3{margin:0;font-size:16px;color:#172434}
.small-button{min-height:34px;padding:0 14px;border-radius:12px;font-size:11px}.secondary-text-button{border:0;background:transparent;color:#173b6d;font-size:11px;font-weight:700;padding:0}
.overview-summary-price{font-size:28px;font-weight:900;color:#173b6d;margin:8px 0 4px}
.overview-summary-card p{margin:0;color:#788596;font-size:11px}
.overview-mini-list{display:grid;gap:12px}.overview-mini-item{display:flex;align-items:center;gap:10px}.overview-mini-item span{width:34px;height:34px;border-radius:12px;background:#f3f7fb;color:#173b6d;display:grid;place-items:center}.overview-mini-item span svg{width:18px;height:18px}.overview-mini-item strong{display:block;font-size:12px;color:#223045}.overview-mini-item small{display:block;margin-top:3px;color:#8a96a3;font-size:10px}
.overview-menu-list{display:grid;gap:6px}.overview-menu-list button{border:0;background:#fff;min-height:46px;padding:0 4px;display:flex;align-items:center;justify-content:space-between;color:#253244;font-size:13px;font-weight:700}.overview-menu-list button svg{width:18px;height:18px;color:#173b6d}
@media(max-width:420px){
  .app-shell{width:100%}
  .overview-quick-grid,.overview-services-grid{gap:10px}
  .overview-tile,.overview-service-tile{min-height:82px;padding:10px 5px}
  .overview-tile strong,.overview-service-tile strong{font-size:10px}
  .overview-account-user strong{font-size:18px}
}

/* ===== 2.4.3 full reference consistency pack ===== */
:root{
  --navy:#173b6d;
  --navy-2:#0f2d56;
  --soft-bg:#f6f7f9;
  --surface:#ffffff;
  --line:#e9edf3;
  --text:#1f2d3d;
  --muted:#7f8b98;
  --green:#16a34a;
}
body{background:#eef2f6;color:var(--text)}
body,button,input,select,textarea{font-family:'Vazirmatn',Tahoma,sans-serif}
h1,h2,h3,strong,b{letter-spacing:0}
.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin:0 0 16px}
.page-head h1{margin:0;font-size:20px;line-height:1.5;color:#172434;font-weight:900}
.page-head p{margin:4px 0 0;font-size:11px;line-height:1.9;color:var(--muted)}
.back-button{width:38px;height:38px;border-radius:12px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 18px rgba(14,33,60,.05)}
.section-title{margin:2px 0 10px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.section-title small{font-size:10px;color:var(--muted)}
.section-title h2{font-size:16px;line-height:1.6;color:#172434;font-weight:900}
.section-title button{font-size:11px;font-weight:700;color:var(--navy);background:transparent;border:0}
.search-box{position:relative;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 14px;min-height:50px;box-shadow:0 8px 22px rgba(14,33,60,.04);margin-bottom:14px}
.search-box svg{width:18px;height:18px;color:#7d8b9a;flex:0 0 auto}.search-box input{border:0;outline:none;background:transparent;width:100%;font-size:13px;color:#172434;padding:0}
.card-list,.service-grid,.product-grid,.amenity-list,.info-grid{display:grid;gap:12px}
.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.list-card,.service-card,.product-card,.amenity-card,.form-card,.info-card,.card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 24px rgba(14,33,60,.045)}
.list-card{padding:14px 16px}.list-card.unread{border-color:#cfe1ff;background:linear-gradient(0deg,#fbfdff,#fff)}
.list-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}
.list-card-head h3{margin:0;font-size:14px;line-height:1.7;font-weight:800;color:#172434}.list-card-head small{display:block;margin-top:4px;font-size:10px;color:var(--muted)}
.list-card p{margin:8px 0 0;font-size:12px;line-height:2;color:#475569}
.product-card{padding:10px;display:flex;flex-direction:column;gap:10px}.product-image{aspect-ratio:1/1;border-radius:16px;background:#f3f6fb center/cover no-repeat;display:grid;place-items:center;color:#173b6d}.product-image svg{width:30px;height:30px}
.product-card h3,.product-card strong{margin:0;font-size:13px;line-height:1.7;color:#172434;font-weight:800}.product-price{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#64748b}.product-price b{font-size:14px;color:var(--navy)}
.category-strip{display:flex;gap:10px;overflow:auto;padding:2px 0 6px;margin-bottom:12px;scrollbar-width:none}.category-strip::-webkit-scrollbar{display:none}
.category-chip{min-width:86px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px 10px;display:grid;place-items:center;gap:8px;text-align:center;box-shadow:0 8px 18px rgba(14,33,60,.03)}
.category-chip.active,.category-chip:hover{border-color:#c9dbf5;background:#f8fbff;color:var(--navy)}.category-chip strong{font-size:11px;line-height:1.6}
.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{padding:10px;display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center}.service-card strong{font-size:12px;line-height:1.8;color:#172434}
.service-image{width:100%;aspect-ratio:1.18/1;border-radius:16px;background:#f2f6fb center/cover no-repeat;display:grid;place-items:center;color:var(--navy)}.service-image svg{width:32px;height:32px}
.amenity-list{grid-template-columns:1fr}.amenity-card{overflow:hidden}.amenity-image{min-height:180px;background:#edf3fb center/cover no-repeat;position:relative}.amenity-image::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,45,86,.08),rgba(15,45,86,.55))}
.amenity-title{position:absolute;inset:auto 16px 16px 16px;z-index:1;color:#fff}.amenity-title strong{display:block;font-size:16px}.amenity-title small{display:block;margin-top:5px;font-size:11px;color:#eef5ff}.amenity-body{padding:16px}.amenity-body p{margin:0 0 10px;font-size:12px;line-height:2;color:#536172}
.meta-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.meta{background:#f3f7fb;border:1px solid #e7edf5;color:#4f5f71;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:700}.meta-note{color:#173b6d!important;font-size:11px!important}
.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-card{padding:14px}.info-card h3{margin:0 0 8px;font-size:13px;color:#172434}.info-card p{margin:0;font-size:11px;line-height:2;color:#5c6a79}
.form-card{padding:16px}.form-grid,.form-stack{display:grid;gap:12px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .full{grid-column:1/-1}.form-card h3{margin:0 0 6px;font-size:16px;font-weight:900;color:#172434}
label{display:grid;gap:7px;font-size:11px;font-weight:700;color:#173b6d}input,select,textarea{width:100%;border:1px solid #dbe3ec;background:#fff;border-radius:14px;min-height:48px;padding:0 14px;font-size:13px;color:#172434;outline:none;transition:border-color .2s, box-shadow .2s}textarea{padding:12px 14px;min-height:120px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#99b5da;box-shadow:0 0 0 3px rgba(23,59,109,.08)}
.primary-button,.secondary-button,.danger-button{min-height:46px;border-radius:14px;font-size:13px;font-weight:800;padding:0 16px}.primary-button{background:linear-gradient(180deg,var(--navy),var(--navy-2));border:0;box-shadow:0 12px 24px rgba(23,59,109,.18)}.secondary-button{background:#f6f9fc;border:1px solid var(--line);color:var(--navy)}.danger-button{background:#fff5f5;border:1px solid #fecaca;color:#b91c1c}
.account-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.account-tabs button{min-height:42px;border-radius:14px;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:700;color:#617084}.account-tabs button.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 12px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.status-badge.confirmed,.status-badge.paid,.status-badge.completed,.status-badge.done{background:#e8f7ee;color:#15803d}.status-badge.pending,.status-badge.processing,.status-badge.in_progress{background:#fff7e6;color:#b45309}.status-badge.new{background:#eef4ff;color:#1d4ed8}.status-badge.cancelled,.status-badge.rejected{background:#fef2f2;color:#b91c1c}
.empty-state{background:#fff;border:1px dashed #dbe3ec;border-radius:20px;padding:24px 18px;text-align:center;display:grid;place-items:center;gap:10px}.empty-state span{width:52px;height:52px;border-radius:16px;background:#f2f6fb;color:#173b6d;display:grid;place-items:center}.empty-state strong{font-size:15px;color:#172434}.empty-state small{font-size:11px;line-height:1.9;color:#7f8b98}
.modal-card,.product-modal-card{border-radius:24px}.product-modal-image{aspect-ratio:1.2/1;border-radius:18px;background:#edf2f8 center/cover no-repeat}.product-modal-price{font-size:16px;color:#173b6d;font-weight:900}
.qty-control{display:inline-flex;align-items:center;gap:10px;background:#f6f8fb;border:1px solid var(--line);border-radius:14px;padding:6px}.qty-control button{width:34px;height:34px;border:0;border-radius:10px;background:#fff;color:#173b6d;font-size:18px}.qty-control b{min-width:22px;text-align:center;font-size:13px}
.cart-summary{background:#fff;border:1px solid var(--line);border-radius:20px;padding:14px 16px;box-shadow:0 8px 22px rgba(14,33,60,.04)}.cart-item{padding:10px 0;border-bottom:1px solid #eef2f6}.cart-item:last-child{border-bottom:0}.cart-item-image{width:54px;height:54px;border-radius:14px;background:#eff4fb center/cover no-repeat}
.service-progress-card,.service-description-card,.service-note-card,.service-price-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 22px rgba(14,33,60,.04)}
.service-progress-card{padding:16px}.service-progress-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px}.service-progress-head h3{margin:0;font-size:17px;font-weight:900}.service-progress-head p{margin:4px 0 0;font-size:11px;color:var(--muted)}
.service-progress-slider{padding:10px 4px 0}.service-progress{display:grid;grid-template-columns:repeat(5,minmax(56px,1fr));gap:0;align-items:start}.service-progress-step{text-align:center;position:relative;display:grid;justify-items:center;gap:8px}.service-progress-step::before{content:'';position:absolute;top:23px;right:50%;width:100%;height:3px;background:#dfe6ee;z-index:0}.service-progress-step:first-child::before{display:none}.service-progress-marker{position:relative;z-index:1;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#fff;border:3px solid #d8e1ea;color:#8a97a6;font-size:16px;font-weight:900}.service-progress-step.completed .service-progress-marker,.service-progress-step.active .service-progress-marker{border-color:var(--green);background:var(--green);color:#fff}.service-progress-step.active .service-progress-marker{background:#fff;color:var(--green)}.service-progress-step.completed::before,.service-progress-step.active::before{background:var(--green)}.service-progress-label{font-size:11px;line-height:1.8;color:#6b7785;font-weight:700}.service-progress-step.active .service-progress-label,.service-progress-step.completed .service-progress-label{color:#16803d}
.service-info-row,.service-dual-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-label{font-size:11px;color:#7b8795;font-weight:700;margin-bottom:6px}.service-meta-pill{display:inline-flex;align-items:center;gap:6px;background:#f5f8fc;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:11px;font-weight:700;color:#516172}.service-refresh-button{width:40px;height:40px;border-radius:14px;background:#fff;border:1px solid var(--line)}
@media(max-width:430px){
  .app-main{padding:8px 14px 24px}
  .page-head h1{font-size:18px}
  .overview-home-slider,.overview-home-slide{min-height:184px}
  .product-grid,.service-grid,.info-grid,.form-grid,.service-info-row,.service-dual-row{grid-template-columns:1fr}
  .service-progress{grid-template-columns:repeat(5,minmax(48px,1fr))}
  .service-progress-marker{width:40px;height:40px}
  .service-progress-label{font-size:10px}
}

/* 2.4.4 dynamic service forms */
.service-request-modal-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.service-request-modal-head>span{width:48px;height:48px;border-radius:16px;background:#eef4fb;color:#173b6d;display:grid;place-items:center;flex:0 0 48px}.service-request-modal-head>span svg{width:24px;height:24px}.service-request-modal-head h2{margin:2px 0 5px;font-size:20px;color:#172434}.service-request-modal-head small{font-size:10px;color:#7f8b98}.service-request-modal-head p{margin:0;font-size:11px;line-height:1.9;color:#6b7785}.service-request-form{gap:14px}.service-choice-field{border:0;padding:0;margin:0;grid-column:1/-1}.service-choice-field legend{font-size:12px;font-weight:800;color:#173b6d;margin-bottom:9px}.service-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.service-choice{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;padding:0 12px;border:1px solid #dbe3ec;border-radius:13px;background:#fff;color:#344254;font-size:12px;font-weight:600}.service-choice input{width:18px;height:18px;min-height:auto;padding:0;accent-color:#173b6d}.service-choice:has(input:checked){border-color:#9db9dc;background:#f3f7fd;color:#173b6d}.service-checkbox{display:flex!important;align-items:center;gap:10px;min-height:46px;border:1px solid #dbe3ec;border-radius:13px;padding:0 12px}.service-checkbox input{width:18px;height:18px;min-height:auto;accent-color:#173b6d}@media(max-width:430px){.service-choice-grid{grid-template-columns:1fr}}

/* ===== 2.4.6 service form: two-column fields + Jalali date/time picker ===== */
.service-request-form{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.service-request-form>.full,.service-request-form .service-choice-field,.service-request-form .service-schedule-card{grid-column:1/-1!important}
.service-choice-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
.service-choice{min-width:0!important;min-height:48px!important;padding:8px 10px!important;align-items:center!important}
.service-choice span{font-size:11px!important;line-height:1.7!important;overflow-wrap:anywhere}
.service-choice input{flex:0 0 18px!important}
.service-schedule-card{background:#f8fbff;border:1px solid #dbe6f3;border-radius:18px;padding:14px;display:grid;gap:12px}
.service-schedule-title{display:flex;align-items:center;justify-content:space-between;gap:10px}
.service-schedule-title small{display:block;font-size:10px;color:#8090a2;margin-bottom:3px}
.service-schedule-title h3{margin:0;font-size:15px;font-weight:900;color:#173b6d}
.service-schedule-title>span{width:38px;height:38px;border-radius:12px;background:#eaf2fb;color:#173b6d;display:grid;place-items:center}
.service-schedule-title>span svg{width:19px;height:19px}
.service-day-strip{display:flex;gap:9px;overflow-x:auto;scroll-snap-type:x proximity;padding:2px 1px 5px;scrollbar-width:none;direction:rtl}
.service-day-strip::-webkit-scrollbar{display:none}
.service-day-chip{flex:0 0 82px;min-height:86px;border:1px solid #d9e3ee;border-radius:16px;background:#fff;color:#415065;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 5px;scroll-snap-align:start;transition:.2s}
.service-day-chip small{font-size:10px;color:#7c8999}
.service-day-chip strong{font-size:20px;line-height:1.2;color:#24344a}
.service-day-chip span{font-size:9px;color:#8b97a7;white-space:nowrap}
.service-day-chip.active{background:#173b6d;border-color:#173b6d;box-shadow:0 9px 18px rgba(23,59,109,.18)}
.service-day-chip.active small,.service-day-chip.active strong,.service-day-chip.active span{color:#fff}
.service-selected-date{font-size:11px;color:#68788a;background:#fff;border-radius:12px;padding:9px 11px;border:1px solid #e3eaf2}
.service-selected-date b{color:#173b6d;font-size:12px;margin-right:4px}
.service-time-section{scroll-margin-top:18px}
.service-time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.service-time-slot{min-height:46px;border:1px solid #d9e3ee;background:#fff;color:#34445a;border-radius:13px;font-size:11px;font-weight:800;padding:7px 5px;transition:.2s}
.service-time-slot.active{background:#173b6d;color:#fff;border-color:#173b6d;box-shadow:0 8px 18px rgba(23,59,109,.17)}
.service-time-hint{margin:0!important;font-size:10px!important;line-height:1.9!important;color:#7f8b98!important}
@media(max-width:430px){
  .service-request-form{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .service-request-form>label:not(.full){min-width:0}
  .service-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .service-choice{min-height:50px!important;padding:7px 8px!important}
  .service-choice span{font-size:10px!important}
  .service-schedule-card{padding:12px}
  .service-day-chip{flex-basis:76px;min-height:82px}
  .service-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-time-slot{font-size:10px;min-height:44px}
}


/* v2.4.7 header alignment + 2-column service cards */
.topbar.topbar-overview{grid-template-areas:"menu identity actions";grid-template-columns:auto 1fr auto;align-items:center;gap:12px}
.topbar.topbar-overview .overview-menu-button{grid-area:menu;justify-self:end;width:50px;height:50px;border:0;border-radius:16px;background:transparent;color:#6f7d8d;display:grid;place-items:center}
.topbar.topbar-overview .overview-menu-button svg{width:32px;height:32px;stroke-width:2.3}
.topbar.topbar-overview .resident-summary{grid-area:identity;display:flex;align-items:center;justify-content:center;min-width:0}
.topbar.topbar-overview .resident-identity{display:block !important;width:100%;text-align:center}
.topbar.topbar-overview .resident-identity strong{font-size:17px;line-height:1.45;color:#10233f}
.topbar.topbar-overview .resident-identity small{margin-top:4px;font-size:12px;color:#8b97a5}
.topbar.topbar-overview .topbar-actions{grid-area:actions;justify-self:start;display:flex;align-items:center;gap:10px;direction:ltr}
.topbar.topbar-overview .overview-bell,
.topbar.topbar-overview .overview-account{width:56px;height:56px;border-radius:18px;background:#fff;color:#102f4c;border:1px solid #e7edf3;box-shadow:none}
.topbar.topbar-overview .overview-bell svg,
.topbar.topbar-overview .overview-account svg{width:29px;height:29px}
.topbar.topbar-overview .overview-bell .badge{top:-6px;right:-5px;border-color:#fff}
.service-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px}
.service-card{min-height:170px}
.service-card strong{font-size:14px;line-height:1.7}
.service-image{width:88px;height:88px;border-radius:18px}
@media (max-width:420px){
  .topbar.topbar-overview{gap:10px}
  .topbar.topbar-overview .overview-menu-button{width:44px;height:44px;border-radius:14px}
  .topbar.topbar-overview .overview-menu-button svg{width:28px;height:28px}
  .topbar.topbar-overview .overview-bell,
  .topbar.topbar-overview .overview-account{width:52px;height:52px;border-radius:17px}
  .topbar.topbar-overview .overview-bell svg,
  .topbar.topbar-overview .overview-account svg{width:26px;height:26px}
  .topbar.topbar-overview .resident-identity strong{font-size:15px}
  .topbar.topbar-overview .resident-identity small{font-size:10px}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px}
  .service-card{min-height:156px;padding:10px 8px}
  .service-image{width:78px;height:78px}
  .service-card strong{font-size:12px}
}
@media (max-width:360px){
  .service-grid{gap:10px}
  .service-card{min-height:146px;padding:9px 7px}
  .service-image{width:70px;height:70px}
  .service-card strong{font-size:11px}
}


/* v2.4.8 amenity booking slider + slot availability */
.amenity-booking-head{margin-bottom:16px}
.amenity-booking-form{gap:14px}
.amenity-booking-card{padding:14px}
.booking-day-strip{display:flex;gap:9px;overflow-x:auto;scrollbar-width:none;padding:2px 1px 5px;scroll-snap-type:x proximity;direction:rtl}
.booking-day-strip::-webkit-scrollbar{display:none}
.booking-day-chip{flex:0 0 84px;scroll-snap-align:start}
.amenity-slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.amenity-slot-button{min-height:62px;padding:10px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:14px}
.amenity-slot-button strong{font-size:13px;line-height:1.2}
.amenity-slot-button small{display:block;font-size:9px;line-height:1.6}
.amenity-slot-button.available{background:#fff;border:1px solid #d9e3ee;color:#334255}
.amenity-slot-button.available.active{background:#173b6d;border-color:#173b6d;color:#fff;box-shadow:0 8px 18px rgba(23,59,109,.17)}
.amenity-slot-button.unavailable{background:#f5f7f9;border-color:#e2e8ee;color:#a0acb8;opacity:1}
.amenity-slot-button.unavailable small{color:#b0bac5}
.booking-price-hint{margin:2px 0 0;font-size:11px;line-height:1.9;color:#6e7c89}
.booking-price-hint b{color:#173b6d}
@media(max-width:430px){
  .booking-day-chip{flex-basis:78px}
  .amenity-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .amenity-slot-button{min-height:58px}
}


/* v2.5.4 maximum service image size */
.service-card{padding:8px!important;gap:10px!important;justify-content:flex-start!important;overflow:hidden}
.service-image{width:100%!important;height:auto!important;aspect-ratio:1.08/1!important;max-width:none!important;border-radius:18px!important;background-position:center!important;background-size:cover!important;flex:0 0 auto}
.service-image svg{width:48px!important;height:48px!important}
.service-card strong{padding:2px 5px 7px;margin-top:auto;font-size:14px!important;line-height:1.7!important}
@media(max-width:420px){
  .service-card{padding:7px!important;min-height:0!important}
  .service-image{width:100%!important;height:auto!important;aspect-ratio:1.06/1!important;border-radius:16px!important}
  .service-image svg{width:44px!important;height:44px!important}
  .service-card strong{font-size:12px!important;padding-bottom:6px}
}
@media(max-width:360px){
  .service-card{padding:6px!important}
  .service-image{width:100%!important;height:auto!important;aspect-ratio:1.04/1!important}
  .service-card strong{font-size:11px!important}
}


/* v2.5.5 unified cart quantity selector */
.cart-item{grid-template-columns:54px minmax(0,1fr)!important}
.cart-qty-control{display:inline-grid!important;grid-template-columns:38px minmax(28px,auto) 38px;align-items:center;gap:2px!important;min-height:48px;padding:5px 6px!important;background:#f4f4f4!important;border:0!important;border-radius:24px!important;direction:ltr}
.cart-qty-control button{width:38px!important;height:38px!important;border-radius:19px!important;background:transparent!important;color:#111!important;padding:0!important;display:grid!important;place-items:center!important}
.cart-qty-control button svg{width:23px!important;height:23px!important;stroke-width:2.2}
.cart-qty-control .cart-qty-delete svg{width:22px!important;height:22px!important}
.cart-qty-control b{min-width:28px;text-align:center;font-size:17px!important;font-weight:800;color:#161616;line-height:1}
.cart-qty-control button:active{background:#e8e8e8!important;transform:scale(.96)}
@media(max-width:430px){
 .cart-qty-control{grid-template-columns:36px minmax(26px,auto) 36px;min-height:46px;border-radius:23px!important}
 .cart-qty-control button{width:36px!important;height:36px!important}
 .cart-qty-control b{font-size:16px!important}
}


/* v2.5.6 stable cart quantity control */
.cart-items-list{display:grid;gap:0}
.cart-item.cart-item-v256{display:grid!important;grid-template-columns:72px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;direction:rtl;padding:14px 0!important}
.cart-item-v256 .cart-item-image{grid-column:1;width:72px;height:72px;border-radius:18px}
.cart-item-v256 .cart-item-info{grid-column:2;min-width:0;text-align:right}
.cart-item-v256 .cart-item-info strong{display:block;font-size:12px;margin-bottom:6px}
.cart-item-v256 .cart-item-info small{font-size:10px}
.cart-item-v256 .cart-qty-control{grid-column:3;margin:0!important;justify-self:start;direction:ltr;display:inline-grid!important;grid-template-columns:40px 34px 40px!important;gap:2px!important;min-height:50px;padding:5px 6px!important;border-radius:26px!important;background:#f3f4f5!important}
.cart-item-v256 .cart-qty-control button{width:40px!important;height:40px!important;border-radius:20px!important;background:#fff!important;border:0!important;color:#14263a!important}
.cart-item-v256 .cart-qty-control b{font-size:17px!important;text-align:center;color:#14263a!important}
.cart-item-v256 .cart-qty-control .cart-qty-delete{color:#111!important}
@media(max-width:430px){
 .cart-item.cart-item-v256{grid-template-columns:62px minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important}
 .cart-item-v256 .cart-item-image{width:62px;height:62px}
 .cart-item-v256 .cart-item-info{grid-column:2}
 .cart-item-v256 .cart-qty-control{grid-column:3;justify-self:start;margin-top:0!important;grid-template-columns:34px 28px 34px!important;min-height:42px;padding:4px 5px!important;border-radius:22px!important}
 .cart-item-v256 .cart-qty-control button{width:34px!important;height:34px!important;background:transparent!important}
 .cart-item-v256 .cart-qty-control b{font-size:15px!important}
}


/* v2.6.1 — redesigned resident header */
.app-header-redesign{
  padding:10px 14px 8px;
  background:linear-gradient(180deg,#f7f9fc 0%,#ffffff 100%);
}
.header-card-v261{
  position:relative;
  isolation:isolate;
  min-height:92px!important;
  padding:14px 15px!important;
  border-radius:27px!important;
  border:1px solid #e4eaf1;
  background:linear-gradient(135deg,#ffffff 0%,#f7f9fc 100%)!important;
  box-shadow:0 14px 34px rgba(17,44,77,.09)!important;
  color:#10233f!important;
  grid-template-areas:"menu identity actions"!important;
  grid-template-columns:54px minmax(0,1fr) auto!important;
  gap:13px!important;
  overflow:visible;
}
.header-card-v261::after{
  content:"";
  position:absolute;
  width:92px;height:92px;
  right:72px;top:-48px;
  border-radius:50%;
  background:rgba(23,59,109,.045);
  z-index:-1;
}
.header-card-v261 .overview-menu-button{
  grid-area:menu;
  width:54px!important;height:54px!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,#102f4c,#173b6d)!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 9px 20px rgba(16,47,76,.20);
  display:grid!important;place-items:center!important;
  transition:transform .18s ease,box-shadow .18s ease;
}
.header-card-v261 .overview-menu-button:active{transform:scale(.95);box-shadow:0 5px 13px rgba(16,47,76,.16)}
.header-card-v261 .overview-menu-button svg{width:27px!important;height:27px!important;stroke-width:2.35!important}
.header-card-v261 .resident-summary{
  grid-area:identity;
  min-width:0;
  display:flex!important;
  flex-direction:column;
  align-items:flex-start!important;
  justify-content:center!important;
  text-align:right;
  padding-inline:2px 6px;
}
.header-card-v261 .resident-eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:20px;
  margin-bottom:2px;
  padding:2px 8px;
  border-radius:999px;
  background:#eaf1f8;
  color:#31577f;
  font-size:8px;
  font-weight:900;
  letter-spacing:.1px;
}
.header-card-v261 .resident-identity{
  display:block!important;
  width:100%;
  min-width:0;
  text-align:right!important;
}
.header-card-v261 .resident-identity strong{
  display:block;
  max-width:100%;
  margin:0!important;
  color:#10233f!important;
  font-size:15px!important;
  font-weight:950;
  line-height:1.55!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.header-card-v261 .resident-identity small{
  display:block;
  width:max-content;
  max-width:100%;
  margin-top:3px!important;
  padding:3px 8px;
  border-radius:9px;
  background:#f0f4f8;
  color:#708094!important;
  font-size:9px!important;
  font-weight:700;
  line-height:1.55;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.header-card-v261 .topbar-actions{
  grid-area:actions;
  justify-self:start;
  display:flex!important;
  align-items:center;
  gap:8px!important;
  direction:ltr;
  padding-right:11px;
  border-right:1px solid #e8edf3;
}
.header-card-v261 .overview-bell,
.header-card-v261 .overview-account{
  width:48px!important;height:48px!important;
  border-radius:16px!important;
  border:1px solid #e3e9f0!important;
  background:#fff!important;
  color:#173b6d!important;
  box-shadow:0 6px 15px rgba(19,43,72,.055)!important;
  transition:transform .18s ease,background .18s ease;
}
.header-card-v261 .overview-bell:active,
.header-card-v261 .overview-account:active{transform:scale(.95);background:#f3f6fa!important}
.header-card-v261 .overview-bell svg,
.header-card-v261 .overview-account svg{width:24px!important;height:24px!important;stroke-width:2!important}
.header-card-v261 .overview-account{position:relative;background:#eef4fa!important;border-color:#dbe5ef!important}
.header-card-v261 .overview-account .avatar,
.header-card-v261 .overview-account .avatar img{border-radius:15px!important}
.header-card-v261 .account-online-dot{
  position:absolute;
  right:-2px;bottom:-2px;
  width:12px;height:12px;
  border-radius:50%;
  background:#25a56a;
  border:3px solid #fff;
  box-shadow:0 2px 5px rgba(17,87,56,.22);
}
.header-card-v261 .overview-bell .badge{
  top:-7px!important;right:-6px!important;
  min-width:22px;height:22px;
  padding-inline:5px;
  border:3px solid #fff!important;
  background:#df2118!important;
  font-size:9px;
  box-shadow:0 4px 10px rgba(223,33,24,.25);
}
@media(max-width:420px){
  .app-header-redesign{padding:8px 10px 7px}
  .header-card-v261{
    min-height:82px!important;
    padding:11px 11px!important;
    border-radius:24px!important;
    grid-template-columns:48px minmax(0,1fr) auto!important;
    gap:9px!important;
  }
  .header-card-v261 .overview-menu-button{width:48px!important;height:48px!important;border-radius:16px!important}
  .header-card-v261 .overview-menu-button svg{width:24px!important;height:24px!important}
  .header-card-v261 .resident-summary{padding-inline:0 3px}
  .header-card-v261 .resident-eyebrow{font-size:7px;min-height:18px;padding:1px 7px}
  .header-card-v261 .resident-identity strong{font-size:13px!important}
  .header-card-v261 .resident-identity small{font-size:8px!important;padding:2px 6px}
  .header-card-v261 .topbar-actions{gap:6px!important;padding-right:8px}
  .header-card-v261 .overview-bell,
  .header-card-v261 .overview-account{width:43px!important;height:43px!important;border-radius:14px!important}
  .header-card-v261 .overview-bell svg,
  .header-card-v261 .overview-account svg{width:21px!important;height:21px!important}
}
@media(max-width:365px){
  .header-card-v261{grid-template-columns:45px minmax(0,1fr) auto!important;gap:7px!important}
  .header-card-v261 .overview-menu-button{width:45px!important;height:45px!important}
  .header-card-v261 .overview-bell,
  .header-card-v261 .overview-account{width:39px!important;height:39px!important}
  .header-card-v261 .topbar-actions{padding-right:6px;gap:5px!important}
  .header-card-v261 .resident-identity strong{font-size:12px!important}
}


/* v2.6.2 — minimal circular header actions and smart login/registration */
.header-card-v261 .topbar-actions{gap:7px!important;padding-right:8px!important;border-right:0!important}
.header-card-v261 .overview-bell,
.header-card-v261 .overview-account{
  width:40px!important;height:40px!important;border-radius:50%!important;
  border:1px solid #e2e8ef!important;background:#fff!important;
  box-shadow:0 4px 12px rgba(17,44,77,.055)!important;
}
.header-card-v261 .overview-account{background:#f2f6fa!important}
.header-card-v261 .overview-bell svg,
.header-card-v261 .overview-account svg{width:20px!important;height:20px!important;stroke-width:2!important}
.header-card-v261 .overview-account .avatar,
.header-card-v261 .overview-account .avatar img{border-radius:50%!important}
.header-card-v261 .account-online-dot{width:9px;height:9px;border-width:2px;right:0;bottom:0}
.header-card-v261 .overview-bell .badge{top:-7px!important;right:-7px!important;min-width:19px;height:19px;border-width:2px!important;font-size:8px}
.login-card-v262{max-width:440px}
.login-card-v262 .admin-login-link{margin-top:2px;font-size:10px;color:#7b8794}
.verified-mobile,.registration-mobile-note{padding:11px 13px;border-radius:16px;background:#f1f5f9;border:1px solid #e1e8ef;text-align:center}
.verified-mobile small,.registration-mobile-note small{display:block;color:#83909d;font-size:9px}
.verified-mobile strong,.registration-mobile-note strong{display:block;margin-top:3px;color:#173b6d;font-size:15px;letter-spacing:1px}
.registration-request-form{gap:12px}
.registration-unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.registration-unit-grid label{margin:0}
.registration-pending{text-align:center;padding:14px 4px 5px}
.registration-pending>span{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 10px;border-radius:50%;background:#e7f7ee;color:#138454;font-size:25px;font-weight:900}
.registration-pending h3{margin:0;color:#10233f;font-size:17px}
.registration-pending p{margin:8px auto 12px;max-width:310px;color:#718090;font-size:11px;line-height:2}
@media(max-width:420px){
  .header-card-v261 .overview-bell,.header-card-v261 .overview-account{width:36px!important;height:36px!important}
  .header-card-v261 .overview-bell svg,.header-card-v261 .overview-account svg{width:18px!important;height:18px!important}
  .header-card-v261 .topbar-actions{gap:5px!important;padding-right:4px!important}
  .registration-unit-grid{grid-template-columns:1fr 1fr;gap:8px}
}


/* v2.6.3 unified dropdowns + Jalali fields */
:root{--form-control-height:48px}
select,
.form-card select,
.form-grid select,
.form-stack select,
.service-request-form select,
.auth-form select,
.registration-form select,
.account-member-form select,
.modal-card select,
.product-modal-card select{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:block!important;
  width:100%!important;
  height:var(--form-control-height)!important;
  min-height:var(--form-control-height)!important;
  max-height:none!important;
  line-height:normal!important;
  padding:0 14px 0 46px!important;
  border:1px solid #dbe3ec!important;
  border-radius:14px!important;
  background-color:#fff!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23173b6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:left 14px center!important;
  background-size:18px 18px!important;
  color:#172434!important;
  font-size:13px!important;
  font-weight:600!important;
  text-align:right!important;
  direction:rtl!important;
  box-shadow:none!important;
}
select:focus{border-color:#99b5da!important;box-shadow:0 0 0 3px rgba(23,59,109,.08)!important}
select:disabled{background-color:#f3f5f7!important;color:#94a0ad!important;opacity:1!important}
input.jalali-date{direction:ltr;text-align:center;font-variant-numeric:tabular-nums}
@media(max-width:430px){:root{--form-control-height:48px}}


/* v2.6.5 — circular user avatar + compact header */
.topbar.topbar-overview{
  min-height:72px !important;
  padding:10px 14px !important;
}

.topbar.topbar-overview .overview-account,
.topbar.topbar-overview .account-button,
.topbar.topbar-overview .avatar,
.topbar.topbar-overview .avatar img,
.topbar.topbar-overview #headerAvatar{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  max-width:44px !important;
  max-height:44px !important;
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
}

.topbar.topbar-overview .avatar,
.topbar.topbar-overview #headerAvatar{
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  padding:0 !important;
}

.topbar.topbar-overview .avatar img,
.topbar.topbar-overview #headerAvatar img{
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:50% !important;
}

.topbar.topbar-overview .overview-account{
  padding:0 !important;
  border-radius:50% !important;
  overflow:visible !important;
}

.topbar.topbar-overview .overview-bell{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  border-radius:50% !important;
}

.topbar.topbar-overview .overview-menu-button{
  width:46px !important;
  height:46px !important;
  min-width:46px !important;
  min-height:46px !important;
  border-radius:50% !important;
}

.topbar.topbar-overview .resident-identity strong{
  font-size:15px !important;
  line-height:1.35 !important;
}
.topbar.topbar-overview .resident-identity small{
  margin-top:2px !important;
  font-size:10px !important;
  line-height:1.4 !important;
}

/* Account/profile hero avatar must also remain perfectly circular */
.account-hero .avatar,
.account-hero .avatar img,
.profile-hero .avatar,
.profile-hero .avatar img,
.account-avatar,
.account-avatar img,
.profile-avatar,
.profile-avatar img{
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
  object-fit:cover !important;
  object-position:center !important;
  overflow:hidden !important;
}

/* Generic safety for any avatar image in the app */
img.avatar,
.avatar > img{
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
  object-fit:cover !important;
  object-position:center !important;
}

@media (max-width:430px){
  .topbar.topbar-overview{
    min-height:66px !important;
    padding:8px 12px !important;
    gap:8px !important;
  }
  .topbar.topbar-overview .overview-account,
  .topbar.topbar-overview .account-button,
  .topbar.topbar-overview .avatar,
  .topbar.topbar-overview .avatar img,
  .topbar.topbar-overview #headerAvatar{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    max-width:40px !important;
    max-height:40px !important;
  }
  .topbar.topbar-overview .overview-bell{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
  }
  .topbar.topbar-overview .overview-menu-button{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    min-height:42px !important;
  }
}


/* v2.6.7 — notification and user avatar exact equal dimensions */
:root{
  --mts-header-action-size:42px;
}

.topbar.topbar-overview .topbar-actions{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
}

.topbar.topbar-overview .overview-bell,
.topbar.topbar-overview .overview-account{
  box-sizing:border-box !important;
  flex:0 0 var(--mts-header-action-size) !important;
  width:var(--mts-header-action-size) !important;
  height:var(--mts-header-action-size) !important;
  min-width:var(--mts-header-action-size) !important;
  min-height:var(--mts-header-action-size) !important;
  max-width:var(--mts-header-action-size) !important;
  max-height:var(--mts-header-action-size) !important;
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
  padding:0 !important;
  margin:0 !important;
}

.topbar.topbar-overview .overview-account .avatar,
.topbar.topbar-overview .overview-account #headerAvatar,
.topbar.topbar-overview .overview-account .avatar img,
.topbar.topbar-overview .overview-account #headerAvatar img{
  box-sizing:border-box !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
}

.topbar.topbar-overview .overview-account .avatar,
.topbar.topbar-overview .overview-account #headerAvatar{
  overflow:hidden !important;
  display:grid !important;
  place-items:center !important;
}

.topbar.topbar-overview .overview-account img{
  display:block !important;
  object-fit:cover !important;
  object-position:center !important;
}

.topbar.topbar-overview .overview-bell{
  display:grid !important;
  place-items:center !important;
}

.topbar.topbar-overview .overview-bell > svg{
  width:21px !important;
  height:21px !important;
}

.topbar.topbar-overview .overview-account svg{
  width:21px !important;
  height:21px !important;
}

@media(max-width:430px){
  :root{--mts-header-action-size:40px}
}


/* v2.6.8 — step-by-step AJAX authentication wizard */
.login-card-v262 [hidden]{display:none!important}
.login-card-v262{overflow-x:hidden;overflow-y:auto;max-height:88vh}
.login-card-v262 .auth-step{
  width:100%;
  opacity:1;
  transform:translateX(0);
  transition:opacity .18s ease,transform .18s ease;
  will-change:opacity,transform;
}
.login-card-v262 .auth-step.auth-step-enter{opacity:0;transform:translateX(-20px)}
.login-card-v262 .auth-step.auth-step-enter.auth-step-back{transform:translateX(20px)}
.login-card-v262 .auth-step.auth-step-leave{opacity:0;transform:translateX(20px);pointer-events:none}
.login-card-v262 .auth-step.auth-step-leave.auth-step-back{transform:translateX(-20px)}
.otp-secondary-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}
.otp-secondary-actions .text-button{flex:1;font-size:10px}
.otp-resend-button:disabled{opacity:.45;cursor:not-allowed}
.registration-section-title{
  margin:4px 0 -2px;padding:10px 12px;border-radius:14px;
  background:#f6f9fc;border:1px solid #e7edf4
}
.registration-section-title strong{display:block;color:#173b6d;font-size:11px}
.registration-section-title small{display:block;margin-top:3px;color:#8794a2;font-size:8px;line-height:1.8}
@media(max-width:430px){
  .login-card-v262{max-height:min(86vh,720px);overflow-y:auto}
  .registration-unit-grid{grid-template-columns:1fr 1fr}
}


/* v2.7.0 — Jalali picker, install prompt, mobile push prompt */
.jalali-picker-overlay{
  position:fixed;inset:0;z-index:5000;background:rgba(12,24,38,.42);
  display:grid;place-items:end center;padding:16px
}
.jalali-picker-card{
  width:min(420px,100%);background:#fff;border-radius:24px;padding:15px;
  box-shadow:0 24px 70px rgba(8,24,40,.25);direction:rtl
}
.jalali-picker-head{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;margin-bottom:10px}
.jalali-picker-head strong{text-align:center;color:#173b6d;font-size:15px}
.jalali-picker-head button,.jalali-picker-actions button{
  border:0;background:#f2f5f8;color:#173b6d;border-radius:12px;min-height:40px;font-weight:900
}
.jalali-picker-week,.jalali-picker-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}
.jalali-picker-week{margin-bottom:5px}.jalali-picker-week span{text-align:center;color:#8a96a2;font-size:9px;padding:6px 0}
.jalali-picker-days button{
  aspect-ratio:1;border:0;border-radius:12px;background:#f8fafc;color:#203246;font-weight:800;font-size:11px
}
.jalali-picker-days button.today{outline:1px solid #9bb6d3;color:#173b6d}
.jalali-picker-days button.selected{background:#173b6d;color:#fff;outline:0}
.jalali-picker-days i{display:block}
.jalali-picker-actions{display:flex;justify-content:space-between;gap:8px;margin-top:12px}
.jalali-picker-actions button{padding:0 18px}
.jalali-date{cursor:pointer;background-image:none!important}

.pwa-offer{
  position:fixed;z-index:4200;right:14px;left:14px;bottom:calc(84px + env(safe-area-inset-bottom));
  margin:auto;max-width:520px;background:#fff;border:1px solid #e1e8ef;border-radius:20px;
  box-shadow:0 18px 50px rgba(14,35,58,.2);display:grid;grid-template-columns:48px 1fr auto;
  gap:10px;align-items:center;padding:12px;direction:rtl
}
.pwa-offer-icon{width:46px;height:46px;border-radius:15px;background:#edf3fb;color:#173b6d;display:grid;place-items:center}
.pwa-offer-icon svg{width:24px;height:24px}
.pwa-offer-text strong{display:block;color:#14263a;font-size:12px}.pwa-offer-text small{display:block;margin-top:4px;color:#738191;font-size:9px;line-height:1.8}
.pwa-offer-actions{display:flex;gap:6px;align-items:center}.pwa-offer-actions button{border:0;border-radius:11px;min-height:36px;padding:0 10px;font-size:9px;font-weight:900;background:#f1f4f7;color:#506071}
.pwa-offer-actions .pwa-offer-primary{background:#173b6d;color:#fff}
.push-offer{bottom:calc(84px + env(safe-area-inset-bottom))}
@media(max-width:430px){
  .pwa-offer{grid-template-columns:42px 1fr;bottom:calc(78px + env(safe-area-inset-bottom))}
  .pwa-offer-icon{width:40px;height:40px;border-radius:13px}.pwa-offer-actions{grid-column:1/-1;justify-content:flex-end}
}


/* v2.7.2 — compact checkboxes */
input[type="checkbox"]{
  box-sizing:border-box!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  max-width:18px!important;
  max-height:18px!important;
  padding:0!important;
  margin:0 6px!important;
  vertical-align:middle!important;
  accent-color:#173b6d;
}
.form-stack label:has(input[type="checkbox"]),
.form-grid label:has(input[type="checkbox"]){
  min-height:32px!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
}


/* v2.7.3 — mobile stores are always exactly two columns */
@media (max-width: 767px){
  .product-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
  }
  .product-card{
    min-width:0 !important;
    width:100% !important;
    padding:9px !important;
    border-radius:18px !important;
  }
  .product-card .product-image,
  .product-image{
    width:100% !important;
    height:auto !important;
    aspect-ratio:1 / 1 !important;
    border-radius:15px !important;
  }
  .product-card h3{
    font-size:11px !important;
    line-height:1.65 !important;
    min-height:36px !important;
    height:auto !important;
    margin:7px 1px 2px !important;
  }
  .product-card small{
    font-size:8px !important;
    min-height:14px !important;
  }
  .product-price{
    gap:5px !important;
    font-size:9px !important;
  }
  .product-price b{
    font-size:11px !important;
  }
  .add-product{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    border-radius:11px !important;
  }
}

/* v2.7.3 — compact checkboxes */
input[type="checkbox"],
input[type="radio"]{
  width:17px !important;
  height:17px !important;
  min-width:17px !important;
  min-height:17px !important;
  max-width:17px !important;
  max-height:17px !important;
  padding:0 !important;
  margin:0 0 0 7px !important;
  vertical-align:middle !important;
  accent-color:#173b6d;
}


/* v2.7.9 — REAL compact product cards; final hard override */
.product-card.compact-product-card{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
}
.product-card.compact-product-card .product-copy{
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
  margin:5px 1px 0 !important;
  padding:0 !important;
}
.product-card.compact-product-card .product-copy h3{
  margin:0 !important;
  padding:0 !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
}
.product-card.compact-product-card .product-copy small{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  height:auto !important;
  min-height:0 !important;
}
.product-card.compact-product-card .product-price{
  margin:3px 0 0 !important;
  padding:0 !important;
}
@media (max-width:767px){
  .product-card.compact-product-card{padding:8px !important;gap:0 !important}
  .product-card.compact-product-card .product-copy{margin:4px 1px 0 !important}
  .product-card.compact-product-card .product-copy h3{font-size:11px !important;line-height:1.35 !important;margin:0 !important;min-height:0 !important;height:auto !important}
  .product-card.compact-product-card .product-copy small{font-size:8px !important;line-height:1.2 !important;margin:1px 0 0 !important;min-height:0 !important;height:auto !important}
  .product-card.compact-product-card .product-price{margin-top:3px !important;gap:4px !important}
}


/* v2.8.0 — three adaptive experiences: mobile PWA, tablet, desktop */
.desktop-sidebar{display:none}

/* ---------- TABLET ---------- */
html[data-device="tablet"] body{
  background:#edf2f7;
}
html[data-device="tablet"] .app-shell{
  width:min(100%,1100px) !important;
  max-width:1100px !important;
  margin:0 auto !important;
  min-height:100dvh;
  border-left:1px solid #e2e8f0;
  border-right:1px solid #e2e8f0;
  box-shadow:0 0 50px rgba(15,35,60,.09) !important;
  overflow:hidden;
}
html[data-device="tablet"] .app-header{
  padding:14px 28px 8px !important;
}
html[data-device="tablet"] .topbar.topbar-overview{
  min-height:78px !important;
  border-radius:24px !important;
  padding:12px 18px !important;
}
html[data-device="tablet"] .app-main{
  padding:22px 30px 132px !important;
}
html[data-device="tablet"] .bottom-nav{
  width:min(calc(100% - 44px),820px) !important;
  left:50% !important;
  border-radius:28px 28px 0 0;
}
html[data-device="tablet"] .product-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:15px !important;
}
html[data-device="tablet"] .service-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
}
html[data-device="tablet"] .amenity-list{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px !important;
}
html[data-device="tablet"] .overview-activity-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
html[data-device="tablet"] .overview-quick-grid,
html[data-device="tablet"] .overview-services-grid{
  gap:14px !important;
}
html[data-device="tablet"] .modal-card{
  width:min(600px,calc(100% - 64px)) !important;
}
html[data-device="tablet"] .sheet-panel{
  width:min(760px,100%) !important;
}
html[data-device="tablet"] .home-slider,
html[data-device="tablet"] .home-slide{
  min-height:230px !important;
}

/* ---------- DESKTOP ---------- */
html[data-device="desktop"] body{
  background:#f4f7fb;
  overflow-x:hidden;
}
html[data-device="desktop"] .app-shell{
  width:100% !important;
  max-width:none !important;
  min-height:100dvh !important;
  margin:0 !important;
  padding-right:276px !important;
  background:#f4f7fb !important;
  box-shadow:none !important;
  overflow:visible !important;
}
html[data-device="desktop"] .desktop-sidebar{
  position:fixed;
  z-index:110;
  top:0;
  right:0;
  bottom:0;
  width:276px;
  display:flex;
  flex-direction:column;
  padding:24px 18px;
  background:linear-gradient(180deg,#102f4c 0%,#173b6d 100%);
  color:#fff;
  box-shadow:-12px 0 36px rgba(15,38,64,.12);
}
.desktop-sidebar-brand{
  display:flex;
  align-items:center;
  gap:12px;
  padding:4px 6px 20px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.desktop-brand-icon{
  width:52px;height:52px;border-radius:17px;
  display:grid;place-items:center;background:rgba(255,255,255,.12);
}
.desktop-brand-icon svg{width:27px;height:27px}
.desktop-sidebar-brand strong{display:block;font-size:17px;font-weight:950}
.desktop-sidebar-brand small{display:block;margin-top:4px;font-size:9px;color:#b9cad9}
.desktop-nav{
  display:grid;
  gap:5px;
  margin-top:20px;
  overflow:auto;
  scrollbar-width:none;
}
.desktop-nav::-webkit-scrollbar{display:none}
.desktop-nav button{
  min-height:48px;
  padding:0 13px;
  border:0;
  border-radius:14px;
  background:transparent;
  color:#dce6ef;
  display:flex;
  align-items:center;
  gap:11px;
  text-align:right;
  font-size:12px;
  font-weight:800;
}
.desktop-nav button svg{width:20px;height:20px;color:#9eb5c8}
.desktop-nav button:hover{background:rgba(255,255,255,.08);color:#fff}
.desktop-nav button.active{
  background:#fff;
  color:#173b6d;
  box-shadow:0 9px 24px rgba(3,17,34,.16);
}
.desktop-nav button.active svg{color:#173b6d}
.desktop-cart-button{
  position:relative;
  margin-top:auto;
  min-height:52px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:15px;
  background:rgba(255,255,255,.1);
  color:#fff;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 14px;
  font-weight:900;
  font-size:12px;
}
.desktop-cart-button svg{width:22px;height:22px}
.desktop-cart-button b{
  margin-right:auto;
  min-width:25px;height:25px;border-radius:99px;
  display:grid;place-items:center;background:#fff;color:#173b6d;font-size:9px
}
.desktop-sidebar-foot{padding:14px 4px 0;color:#aebfd0}
.desktop-sidebar-foot span{display:block;font-size:10px;font-weight:900}
.desktop-sidebar-foot small{display:block;margin-top:4px;font-size:8px;line-height:1.8}

html[data-device="desktop"] .app-header{
  position:sticky;
  top:0;
  z-index:90;
  padding:16px 32px 8px !important;
  background:rgba(244,247,251,.92) !important;
  backdrop-filter:blur(16px);
}
html[data-device="desktop"] .topbar.topbar-overview{
  width:100%;
  min-height:76px !important;
  padding:12px 18px !important;
  border-radius:20px !important;
  background:#fff !important;
  color:#172434 !important;
  border:1px solid #e2e8f0 !important;
  box-shadow:0 9px 30px rgba(15,35,60,.06) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}
html[data-device="desktop"] .overview-menu-button{display:none !important}
html[data-device="desktop"] .resident-summary{
  flex:1;
  justify-content:flex-start !important;
  text-align:right;
}
html[data-device="desktop"] .resident-eyebrow{color:#7890a5 !important}
html[data-device="desktop"] .resident-identity{text-align:right !important}
html[data-device="desktop"] .resident-identity strong{color:#102f4c !important;font-size:16px !important}
html[data-device="desktop"] .resident-identity small{color:#8090a0 !important}
html[data-device="desktop"] .topbar-actions{margin-right:auto}
html[data-device="desktop"] .overview-bell,
html[data-device="desktop"] .overview-account{
  background:#f5f8fb !important;
  color:#173b6d !important;
  border:1px solid #e1e8f0 !important;
}
html[data-device="desktop"] .app-main{
  width:100%;
  max-width:1560px;
  margin:0 auto;
  padding:24px 36px 54px !important;
  min-height:calc(100dvh - 104px);
}
html[data-device="desktop"] .bottom-nav{display:none !important}
html[data-device="desktop"] #drawer{display:none !important}
html[data-device="desktop"] .product-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
}
html[data-device="desktop"] .service-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px !important;
}
html[data-device="desktop"] .amenity-list{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px !important;
}
html[data-device="desktop"] .overview-activity-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
}
html[data-device="desktop"] .overview-quick-grid,
html[data-device="desktop"] .overview-services-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:16px !important;
}
html[data-device="desktop"] .overview-tile,
html[data-device="desktop"] .overview-service-tile{
  min-height:112px;
}
html[data-device="desktop"] .home-slider,
html[data-device="desktop"] .home-slide{
  min-height:300px !important;
}
html[data-device="desktop"] .overview-hero-card{
  gap:16px !important;
}
html[data-device="desktop"] .search-box{
  max-width:760px;
}
html[data-device="desktop"] .modal-card{
  width:min(680px,calc(100% - 80px)) !important;
  max-height:86vh;
}
html[data-device="desktop"] .sheet-panel{
  width:min(860px,calc(100% - 300px)) !important;
  border-radius:28px 28px 0 0;
}
html[data-device="desktop"] .page-head h1{font-size:28px}
html[data-device="desktop"] .card-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
html[data-device="desktop"] .account-tabs{max-width:760px}

/* ---------- MOBILE / PWA ---------- */
html[data-device="mobile"] .desktop-sidebar{display:none !important}
html[data-device="mobile"] .app-shell{
  width:min(100%,520px) !important;
  max-width:520px !important;
  margin:auto !important;
}
html[data-device="mobile"] .pwa-offer{
  animation:mtsInstallIn .35s cubic-bezier(.2,.8,.2,1);
}
html[data-device="mobile"] .pwa-offer-primary{
  min-width:72px;
}
@keyframes mtsInstallIn{
  from{opacity:0;transform:translateY(24px)}
  to{opacity:1;transform:none}
}

/* CSS fallback before/without JS device detection */
@media (min-width:768px) and (max-width:1199px) and (pointer:coarse){
  html:not([data-device]) .app-shell{width:min(100%,1100px);max-width:1100px}
}
@media (min-width:1200px) and (pointer:fine){
  html:not([data-device]) .desktop-sidebar{display:flex}
}


/* v2.8.1 — desktop/tablet menu follows mobile hamburger drawer behavior */
html[data-device="desktop"] .app-shell{
  padding-right:0 !important;
}
html[data-device="desktop"] .desktop-sidebar{
  display:none !important;
}
html[data-device="desktop"] .overview-menu-button{
  display:grid !important;
  place-items:center !important;
  flex:0 0 46px !important;
  width:46px !important;
  height:46px !important;
  min-width:46px !important;
  min-height:46px !important;
  border-radius:14px !important;
  background:#f5f8fb !important;
  color:#173b6d !important;
  border:1px solid #e1e8f0 !important;
}
html[data-device="desktop"] .overview-menu-button svg{
  width:25px !important;
  height:25px !important;
}
html[data-device="desktop"] .topbar.topbar-overview{
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  grid-template-areas:"menu identity actions" !important;
  gap:14px !important;
}
html[data-device="desktop"] .topbar.topbar-overview .overview-menu-button{
  grid-area:menu !important;
  justify-self:start !important;
}
html[data-device="desktop"] .topbar.topbar-overview .resident-summary{
  grid-area:identity !important;
  justify-self:stretch !important;
}
html[data-device="desktop"] .topbar.topbar-overview .topbar-actions{
  grid-area:actions !important;
  justify-self:end !important;
}
html[data-device="desktop"] #drawer{
  display:block !important;
}
html[data-device="desktop"] .drawer-panel{
  width:min(380px,88vw) !important;
  right:0 !important;
  left:auto !important;
  transform:translateX(105%) !important;
}
html[data-device="desktop"] .drawer.open .drawer-panel{
  transform:translateX(0) !important;
}
html[data-device="desktop"] .app-main{
  max-width:1560px !important;
}
html[data-device="tablet"] .overview-menu-button{
  display:grid !important;
}
html[data-device="tablet"] #drawer{
  display:block !important;
}


/* v2.8.5 support tickets */
.ticket-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #e5ebf1;border-radius:20px;padding:14px 16px;margin-bottom:15px;box-shadow:0 8px 22px rgba(14,33,60,.04)}
.ticket-toolbar small{display:block;color:#7e8b99;font-size:10px;margin-bottom:4px}.ticket-toolbar strong{font-size:15px}.ticket-toolbar .primary-button{width:auto;min-height:42px;padding:0 16px}
.ticket-list{display:grid;gap:12px}.ticket-card{width:100%;border:1px solid #e4eaf0;background:#fff;border-radius:20px;padding:16px;text-align:right;box-shadow:0 8px 22px rgba(14,33,60,.045)}
.ticket-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.ticket-type{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eef4fb;color:#173b6d;font-size:10px;font-weight:900}.ticket-card h3{margin:13px 0 11px;font-size:14px;color:#17283b}.ticket-card-meta{display:flex;gap:7px;flex-wrap:wrap}.ticket-card-meta span{padding:6px 8px;border-radius:9px;background:#f5f7f9;color:#718090;font-size:9px}
.ticket-modal-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:18px}.ticket-modal-head>span{width:50px;height:50px;border-radius:16px;background:#eef4fb;color:#173b6d;display:grid;place-items:center;flex:0 0 50px}.ticket-modal-head>span svg{width:25px;height:25px}.ticket-modal-head small{color:#7a8897;font-size:10px}.ticket-modal-head h2{margin:3px 0 5px;font-size:20px}.ticket-modal-head p{margin:0!important;color:#718090!important;font-size:10px!important;line-height:1.9!important}
.ticket-form textarea{min-height:130px}.ticket-detail-head{padding-bottom:14px;border-bottom:1px solid #e7ecf1}.ticket-detail-head small{color:#7c8997}.ticket-detail-head h2{margin:6px 0 10px;font-size:20px}.ticket-detail-badges{display:flex;gap:7px;flex-wrap:wrap}
.ticket-thread{display:grid;gap:11px;margin:18px 0}.ticket-message{max-width:88%;border-radius:18px;padding:12px 14px}.ticket-message.resident{justify-self:start;background:#173b6d;color:#fff;border-bottom-left-radius:6px}.ticket-message.admin{justify-self:end;background:#f0f4f8;color:#17304a;border-bottom-right-radius:6px}.ticket-message-head{display:flex;justify-content:space-between;gap:14px;align-items:center}.ticket-message-head strong{font-size:11px}.ticket-message-head small{font-size:8px;opacity:.72}.ticket-message p{margin:8px 0 0!important;font-size:11px!important;line-height:1.9!important;color:inherit!important;white-space:pre-wrap}
.ticket-reply-form{display:grid;gap:10px;padding-top:15px;border-top:1px solid #e5ebf0}.ticket-reply-form label{display:grid;gap:7px;font-size:11px;font-weight:800}.ticket-reply-form textarea{min-height:95px;border:1px solid #dfe6ed;border-radius:15px;padding:12px;resize:vertical}.ticket-closed-note{padding:13px 15px;border-radius:14px;background:#f1f4f7;color:#687788;font-size:11px;line-height:1.9}
@media(max-width:430px){.ticket-toolbar{align-items:stretch;flex-direction:column}.ticket-toolbar .primary-button{width:100%}.ticket-message{max-width:94%}}


/* v2.8.6 — header cart visibility, unit label and reference trash icon */
.overview-cart{display:none!important}
html[data-device="tablet"] .overview-cart,
html[data-device="desktop"] .overview-cart{display:grid!important}
.header-card-v261 .overview-cart{
  width:40px!important;height:40px!important;border-radius:50%!important;
  border:1px solid #e2e8ef!important;background:#fff!important;color:#173b6d!important;
  box-shadow:0 4px 12px rgba(17,44,77,.055)!important;position:relative!important;
  place-items:center!important;flex:0 0 40px!important;
}
.header-card-v261 .overview-cart svg{width:20px!important;height:20px!important;stroke-width:2!important}
.header-card-v261 .overview-cart .badge{
  top:-7px!important;right:-6px!important;min-width:22px!important;height:22px!important;
  padding-inline:5px!important;border:3px solid #fff!important;background:#df2118!important;
  color:#fff!important;font-size:9px!important;box-shadow:0 4px 10px rgba(223,33,24,.25)!important;
}
html[data-device="desktop"] .overview-cart,
html[data-device="tablet"] .overview-cart{background:#f5f8fb!important;color:#173b6d!important;border-color:#e1e8f0!important}
.cart-item-v256 .cart-qty-control .cart-qty-delete{
  color:#111!important;background:transparent!important;box-shadow:none!important;
}
.cart-item-v256 .cart-qty-control .cart-qty-delete .cart-trash-icon{
  width:23px!important;height:23px!important;stroke:#111!important;fill:none!important;
  stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
@media(max-width:680px){.overview-cart{display:none!important}}


/* v2.8.7 — square desktop products, compact contact drawer and exact cart trash */
html[data-device="tablet"] .product-card .product-image,
html[data-device="tablet"] .product-image,
html[data-device="desktop"] .product-card .product-image,
html[data-device="desktop"] .product-image{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:1 / 1!important;
  object-fit:cover!important;
  background-size:cover!important;
  background-position:center!important;
}
.pink-drawer-panel{
  padding:10px 12px 12px!important;
}
.pink-drawer-panel .drawer-close{
  width:34px!important;height:34px!important;margin:0 0 5px auto!important;
}
.pink-drawer-profile{
  margin:0 2px 8px!important;
  padding:11px 54px 11px 13px!important;
  min-height:66px!important;
  border-radius:17px!important;
  display:flex!important;
  flex-direction:row!important;
  direction:rtl!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  background:linear-gradient(135deg,#102f4c,#173b6d)!important;
  text-align:right!important;
}
.pink-drawer-profile>div{min-width:0;flex:1;text-align:right!important}
.pink-drawer-profile .avatar{
  order:2!important;
  margin-left:6px!important;
  width:44px!important;height:44px!important;min-width:44px!important;
  border-radius:14px!important;background:rgba(255,255,255,.96)!important;
  color:#173b6d!important;
}
.pink-drawer-profile .avatar svg{width:23px!important;height:23px!important}
.pink-drawer-profile strong{display:block!important;font-size:14px!important;line-height:1.45!important;color:#fff!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pink-drawer-profile small{display:block!important;margin-top:3px!important;font-size:10px!important;color:#d7e3ef!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pink-drawer-links{flex:1!important;min-height:0!important;padding:2px 0 6px!important;gap:1px!important}
.pink-drawer-links button,.pink-drawer-links a{min-height:39px!important;padding:0 10px!important;border-radius:11px!important;font-size:12px!important}
.pink-drawer-links svg{width:18px!important;height:18px!important}
.drawer-support-card.drawer-contact-card{
  margin:6px 2px 0!important;
  padding:11px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#102f4c,#173b6d)!important;
  color:#fff!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  text-align:right!important;
  flex:0 0 auto!important;
}
.drawer-contact-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.drawer-contact-head>div small{display:block!important;color:#adbed0!important;font-size:8px!important;margin:0 0 2px!important}
.drawer-contact-head>div strong{display:block!important;color:#fff!important;font-size:12px!important}
.drawer-contact-head>span{display:grid!important;width:32px!important;height:32px!important;border-radius:10px!important;background:rgba(255,255,255,.11)!important;place-items:center!important}
.drawer-contact-head>span svg{width:17px!important;height:17px!important;color:#fff!important}
.drawer-contact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.drawer-contact-list a{min-width:0;display:flex;flex-direction:column;gap:2px;padding:7px 8px;border-radius:10px;background:rgba(255,255,255,.075);color:#fff}
.drawer-contact-list a span{font-size:8px;color:#b9c9d8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drawer-contact-list a b{font-size:10px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drawer-contact-empty{grid-column:1/-1!important;color:#bdcad7!important;font-size:8px!important;line-height:1.7}
.drawer-ticket-compact{
  min-height:36px!important;border:0!important;border-radius:11px!important;
  padding:0 10px!important;background:#fff!important;color:#173b6d!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  font-size:10px!important;font-weight:900!important;
}
.drawer-ticket-compact svg{width:17px!important;height:17px!important}
.desktop-contact-card{display:none}
html[data-device="desktop"] .desktop-contact-card{
  display:grid;gap:8px;margin-top:10px;padding:11px;border-radius:15px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.11)
}
.desktop-contact-title{display:flex;align-items:center;gap:8px}.desktop-contact-title>span{width:31px;height:31px;border-radius:10px;background:rgba(255,255,255,.1);display:grid;place-items:center}.desktop-contact-title svg{width:16px;height:16px}.desktop-contact-title small{display:block;color:#aebfd0;font-size:8px}.desktop-contact-title strong{font-size:11px}
.desktop-contact-list{display:grid;gap:5px}.desktop-contact-list a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px;border-radius:9px;background:rgba(255,255,255,.06);font-size:9px}.desktop-contact-list a span{color:#c4d2df}.desktop-contact-list a b{font-size:9px}.desktop-contact-list>small{font-size:8px;color:#afc0d0}
.desktop-contact-card>button{min-height:34px;border:0;border-radius:10px;background:#fff;color:#173b6d;display:flex;align-items:center;justify-content:space-between;padding:0 10px;font-size:9px;font-weight:900}.desktop-contact-card>button svg{width:16px;height:16px}
.cart-item-v256 .cart-qty-control .cart-qty-delete{
  color:#111!important;background:transparent!important;border:0!important;box-shadow:none!important;
}
.cart-item-v256 .cart-qty-control .cart-qty-delete .snap-trash-v287,
.cart-item-v256 .cart-qty-control .cart-qty-delete .cart-trash-icon{
  width:25px!important;height:25px!important;stroke:#111!important;fill:none!important;
  stroke-width:2.65!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}


/* v2.8.8 — remove chat online, reveal ticket label, exact trash icon */
.drawer-support-card::before,
.drawer-support-card::after{content:none!important;display:none!important}
.drawer-ticket-compact{min-height:40px!important;padding:0 12px!important;font-size:11px!important;gap:8px!important}
.drawer-ticket-compact span{display:block!important;flex:1!important;text-align:right!important;color:#173b6d!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.drawer-ticket-compact svg{flex:0 0 17px!important;color:#173b6d!important}
.drawer-support-card{grid-template-columns:1fr!important}
.drawer-contact-list{margin-top:2px!important}
.cart-item-v256 .cart-qty-control .cart-qty-delete{background:transparent!important;color:#111!important;border:0!important;box-shadow:none!important;padding:0!important}
.cart-item-v256 .cart-qty-control .cart-qty-delete .snap-trash-v288,
.cart-item-v256 .cart-qty-control .cart-qty-delete .snap-trash-v287,
.cart-item-v256 .cart-qty-control .cart-qty-delete .cart-trash-icon{width:24px!important;height:24px!important;stroke:#222!important;fill:none!important;stroke-width:2.25!important;stroke-linecap:round!important;stroke-linejoin:round!important}


/* v2.8.9 — compact cart sheet and bottom product sheet redesign */
#productModal[data-variant="sheet"] .modal-card{position:absolute!important;left:50%!important;top:auto!important;bottom:0!important;transform:translate(-50%,105%)!important;width:min(520px,100%)!important;max-height:92dvh!important;overflow:auto!important;background:#fff!important;border-radius:28px 28px 0 0!important;padding:0 0 calc(20px + env(safe-area-inset-bottom))!important;opacity:1!important;box-shadow:0 -12px 40px rgba(9,20,33,.16)!important} 
#productModal.open[data-variant="sheet"] .modal-card{transform:translate(-50%,0)!important}
#productModal[data-variant="sheet"] .modal-close{left:18px!important;top:18px!important;width:56px!important;height:56px!important;border-radius:18px!important;background:#f1f3f6!important;color:#101820!important}
#productModal[data-variant="sheet"] .product-sheet-handle{display:block!important;width:62px!important;height:6px!important;border-radius:999px!important;background:#cfd5dc!important;margin:12px auto 10px!important}
#productModal[data-variant="dialog"] .product-sheet-handle{display:none!important}
.shop-product-sheet{display:grid;gap:12px;padding:0 0 8px}.shop-product-sheet-head{text-align:center;padding:0 88px 0 88px}.shop-product-sheet-head small{display:block;color:#a1afbf;font-size:11px;margin-bottom:4px}.shop-product-sheet-head h2{margin:0;font-size:17px;color:#162233;line-height:1.8}.shop-product-image-stage{padding:0 0 4px}.shop-product-image{height:min(48vh,470px);background:#eef1f5 center/contain no-repeat}.shop-product-body{padding:0 24px;display:grid;gap:14px}.shop-product-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.shop-product-summary h3{margin:0;font-size:18px;color:#182638;line-height:1.9}.shop-product-summary small{display:block;margin-top:8px;color:#8d98a6;font-size:11px}.shop-product-price{color:#e11d10;font-size:17px;font-weight:900;white-space:nowrap}.shop-product-pills{display:flex;flex-wrap:wrap;gap:8px}.shop-pill{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 14px;border-radius:999px;background:#f4f6f8;color:#586575;font-size:11px;font-weight:800}.shop-pill svg{width:18px;height:18px;color:#667382}.shop-pill.available{background:#e6f6ea;color:#11824a}.shop-pill.unavailable{background:#ffeaea;color:#b42318}.shop-product-description{margin:0;color:#758293;font-size:12px;line-height:2}.shop-product-footer{display:grid;gap:12px;margin-top:2px}.shop-product-qty{display:inline-grid;justify-self:start;grid-template-columns:46px 42px 46px;align-items:center;direction:ltr;background:#f4f4f5;border-radius:18px;padding:4px 6px}.shop-product-qty button{width:46px;height:46px;border:0;border-radius:14px;background:#fff;color:#d71809;display:grid;place-items:center}.shop-product-qty button svg{width:20px;height:20px}.shop-product-qty b{text-align:center;font-size:18px;color:#172434}.shop-product-submit{width:100%!important;min-height:64px!important;border-radius:21px!important;background:#e11509!important;justify-content:space-between!important;padding:0 24px!important;font-size:14px!important;box-shadow:0 18px 28px rgba(225,21,9,.18)!important}.shop-product-submit b{font-size:15px!important}.shop-product-submit:disabled{opacity:.55!important;box-shadow:none!important}.cart-sheet-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:12px}.cart-sheet-tab{border:1px solid #e7ecf1;background:#fff;border-radius:14px;min-height:48px;padding:8px 10px;display:grid;gap:2px;text-align:right}.cart-sheet-tab span{font-size:12px;font-weight:900;color:#1c2736}.cart-sheet-tab b{font-size:10px;color:#7e8a97}.cart-sheet-tab.active{background:#f4f8fc;border-color:#d8e4f0}.cart-sheet-card{display:grid;gap:12px}.cart-sheet-card.is-muted{opacity:1}.cart-sheet-items{display:grid;gap:10px}.cart-sheet-item{display:grid;grid-template-columns:auto 1fr 82px;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #edf1f5;cursor:pointer}.cart-sheet-item:last-child{border-bottom:0}.cart-sheet-item-image{width:82px;height:82px;border-radius:22px;background:#f0f3f6 center/cover no-repeat}.cart-sheet-item-copy{min-width:0;text-align:right}.cart-sheet-item-copy strong{display:block;font-size:16px;line-height:1.8;color:#1d2b3c}.cart-sheet-item-copy small{display:block;margin-top:6px;font-size:12px;color:#6f7d8b}.cart-sheet-item-qty{justify-self:start!important;grid-template-columns:40px 34px 40px!important;min-height:44px!important;padding:4px 5px!important;border-radius:16px!important;background:#fff!important;border:1px solid #e7ecf1!important;box-shadow:none!important}.cart-sheet-item-qty button{width:40px!important;height:40px!important;background:#fff!important}.cart-sheet-item-qty b{font-size:16px!important}.compact-cart-summary{background:#f6f8fa!important;border-radius:20px!important;padding:16px 18px!important;margin:0!important;display:grid;gap:6px}.compact-cart-summary>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.compact-cart-summary small{color:#7e8b98;font-size:11px}.compact-cart-summary strong{font-size:18px;color:#1a2737}.compact-cart-summary p{margin:0;color:#8c97a5;font-size:11px;line-height:1.9}.cart-sheet-submit{width:100%!important;min-height:58px!important;border-radius:18px!important;justify-content:space-between!important;padding:0 20px!important;font-size:13px!important}.cart-sheet-submit b{font-size:14px!important}.sheet-panel{padding-bottom:calc(20px + env(safe-area-inset-bottom))!important}.sheet-head{margin-bottom:10px!important}.sheet-head h3{font-size:18px!important}.sheet-head small{font-size:10px!important}.sheet-head button{width:50px!important;height:50px!important;border-radius:16px!important;background:#f1f3f6!important}.cart-sheet-item .cart-trash-icon{stroke:#202020!important}html[data-device="desktop"] .shop-product-image{height:min(56vh,520px)}@media(max-width:640px){.shop-product-sheet-head{padding:0 72px}.shop-product-image{height:340px}.shop-product-body{padding:0 16px}.shop-product-summary{display:grid;gap:8px}.shop-product-price{font-size:16px}.cart-sheet-item{grid-template-columns:auto 1fr 68px;gap:10px}.cart-sheet-item-image{width:68px;height:68px;border-radius:18px}.cart-sheet-item-copy strong{font-size:13px}.cart-sheet-item-copy small{font-size:11px}.cart-sheet-item-qty{grid-template-columns:34px 28px 34px!important;min-height:38px!important}.cart-sheet-item-qty button{width:34px!important;height:34px!important}.cart-sheet-item-qty b{font-size:14px!important}.shop-product-submit{min-height:58px!important;padding:0 18px!important}}


/* v2.8.10 — correct cart item sides and shorter product sheet */
.cart-sheet-item{
  direction:rtl!important;
  grid-template-columns:82px minmax(0,1fr) auto!important;
}
.cart-sheet-item-image{grid-column:1!important;grid-row:1!important;justify-self:end!important}
.cart-sheet-item-copy{grid-column:2!important;grid-row:1!important;text-align:right!important}
.cart-sheet-item-qty{grid-column:3!important;grid-row:1!important;justify-self:start!important}
#productModal[data-variant="sheet"] .modal-card{max-height:82dvh!important}
.shop-product-image{height:min(34vh,300px)!important}
.shop-product-body{gap:10px!important;padding-bottom:2px!important}
.shop-product-summary h3{font-size:16px!important;line-height:1.7!important}
.shop-product-summary small{margin-top:4px!important}
.shop-product-pills{gap:6px!important}
.shop-pill{min-height:32px!important;padding:0 11px!important;font-size:10px!important}
.shop-product-description{font-size:11px!important;line-height:1.8!important;max-height:44px!important;overflow:hidden!important}
.shop-product-footer{margin-top:0!important}
.shop-product-qty{display:none!important}
.shop-product-submit{min-height:58px!important}
@media(max-width:640px){
  .cart-sheet-item{grid-template-columns:68px minmax(0,1fr) auto!important}
  #productModal[data-variant="sheet"] .modal-card{max-height:80dvh!important}
  .shop-product-image{height:230px!important}
  .shop-product-sheet{gap:8px!important}
  .shop-product-sheet-head{padding:0 70px!important}
  .shop-product-sheet-head h2{font-size:15px!important;line-height:1.65!important}
  .shop-product-body{padding:0 16px!important;gap:9px!important}
  .shop-product-summary{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important}
  .shop-product-summary h3{font-size:15px!important}
  .shop-product-price{font-size:15px!important}
  .shop-product-submit{min-height:54px!important;border-radius:18px!important}
}


/* v2.8.12 — exclusive cart tabs */
.cart-sheet-card[hidden]{display:none!important}
.cart-sheet-tab{cursor:pointer}


/* v2.8.15 — support title, centered ticket button, booking qty without spinners */
.drawer-contact-head>div small{font-size:9px!important}
.drawer-ticket-compact{position:relative!important;justify-content:center!important;padding:0 14px!important;text-align:center!important}
.drawer-ticket-compact span{width:100%!important;flex:0 0 100%!important;text-align:center!important;padding:0 32px!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.5!important}
.drawer-ticket-compact svg{position:absolute!important;right:12px!important;top:50%!important;transform:translateY(-50%)!important;flex:none!important}
.amenity-booking-form .qty-control input[name="people_count"], .booking-people-input{appearance:textfield!important;-moz-appearance:textfield!important;-webkit-appearance:none!important;text-align:center!important;caret-color:transparent!important;background:#fff!important;font-weight:800!important}
.amenity-booking-form .qty-control input[name="people_count"]::-webkit-outer-spin-button, .amenity-booking-form .qty-control input[name="people_count"]::-webkit-inner-spin-button, .booking-people-input::-webkit-outer-spin-button, .booking-people-input::-webkit-inner-spin-button{appearance:none!important;-webkit-appearance:none!important;margin:0!important}


/* v2.8.16 — sidebar support center redesign */
.drawer-support-card.drawer-contact-card.drawer-support-card-v216{margin:8px 2px 0!important;padding:14px!important;border-radius:20px!important;background:linear-gradient(135deg,#0c2f54,#173b6d)!important;gap:12px!important;overflow:hidden!important}
.drawer-support-card-v216 .drawer-support-hero{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important}
.drawer-support-card-v216 .drawer-support-copy{display:grid!important;gap:4px!important;text-align:right!important}
.drawer-support-card-v216 .drawer-support-copy strong{font-size:18px!important;line-height:1.4!important;color:#fff!important}
.drawer-support-card-v216 .drawer-support-copy small{font-size:12px!important;color:#c7d6e5!important;line-height:1.6!important}
.drawer-support-card-v216 .drawer-support-hero-icon{width:56px!important;height:56px!important;border-radius:18px!important;background:rgba(255,255,255,.08)!important;display:grid!important;place-items:center!important;flex:0 0 56px!important}
.drawer-support-card-v216 .drawer-support-hero-icon svg{width:30px!important;height:30px!important;color:#fff!important}
.drawer-support-card-v216 .drawer-support-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.drawer-support-card-v216 .drawer-support-action{min-height:88px!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:18px!important;background:rgba(255,255,255,.08)!important;color:#fff!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:10px!important;padding:10px 8px!important;text-align:center!important;font-size:12px!important;font-weight:800!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important}
.drawer-support-card-v216 .drawer-support-action svg{width:22px!important;height:22px!important;color:#fff!important;flex:none!important;position:static!important;transform:none!important}
.drawer-support-card-v216 .drawer-support-action span{display:block!important;width:auto!important;flex:none!important;padding:0!important;text-align:center!important;color:#fff!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.6!important}
.drawer-support-card-v216 .drawer-support-action.is-disabled{opacity:.5!important;pointer-events:none!important}


/* v2.8.17 — popular services, family, my services and order history tabs */
.overview-services-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.orders-type-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:4px 0 18px}
.orders-type-tabs button{min-height:76px;border:1px solid #dfe7ef;border-radius:18px;background:#fff;color:#17304a;padding:12px 14px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;gap:3px 10px;text-align:right}
.orders-type-tabs button>span{grid-row:1/3;width:42px;height:42px;border-radius:13px;background:#f1f5f9;color:#173b6d;display:grid;place-items:center}
.orders-type-tabs button>span svg{width:21px;height:21px}
.orders-type-tabs button>b{font-size:13px}
.orders-type-tabs button>small{font-size:9px;color:#8390a0}
.orders-type-tabs button.active{background:#173b6d;color:#fff;border-color:#173b6d;box-shadow:0 12px 24px rgba(23,59,109,.15)}
.orders-type-tabs button.active>span{background:rgba(255,255,255,.12);color:#fff}
.orders-type-tabs button.active>small{color:#cfdaea}
.orders-history-list{display:grid;gap:12px}
.order-history-card{border:1px solid #e2e9f0;border-radius:20px;background:#fff;padding:16px;box-shadow:0 8px 22px rgba(23,48,74,.04)}
.order-history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.order-history-head h3{margin:4px 0 0;font-size:14px;color:#17304a}
.order-history-head small{font-size:9px;color:#8995a2}
.order-history-status{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}
.order-history-items{display:grid;gap:8px;margin:14px 0;padding:12px 0;border-top:1px solid #edf1f5;border-bottom:1px solid #edf1f5}
.order-history-items>div{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:#5f6d7b}
.order-history-items span{min-width:0}
.order-history-items span b{color:#17304a}
.order-history-items strong{white-space:nowrap;color:#17304a;font-size:11px}
.order-history-total{display:flex;align-items:center;justify-content:space-between;font-size:12px}
.order-history-total strong{font-size:15px;color:#173b6d}
@media(max-width:560px){.orders-type-tabs button{min-height:68px;padding:10px}.orders-type-tabs button>span{width:36px;height:36px}.order-history-card{padding:14px}}


/* v2.8.18 — latest cafe products carousel on home */
.home-cafe-showcase{min-width:0;display:grid;gap:10px}
.home-cafe-title{margin-bottom:0!important;align-items:center!important}
.home-cafe-title>div>small{display:block;color:#8a97a5;font-size:9px;margin-bottom:3px}
.home-cafe-title-actions{display:flex;align-items:center;gap:6px}
.home-cafe-arrow{width:34px;height:34px;border:1px solid #e1e8ef;border-radius:11px;background:#fff;color:#173b6d;display:grid;place-items:center;padding:0}
.home-cafe-arrow svg{width:17px;height:17px}
.home-cafe-arrow.reverse svg{transform:scaleX(-1)}
.home-cafe-all{border:0!important;background:transparent!important;color:#173b6d!important;font-size:10px!important;font-weight:900!important;padding:0 4px!important}
.home-cafe-slider{display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:3px 2px 12px;scrollbar-width:none;direction:rtl}
.home-cafe-slider::-webkit-scrollbar{display:none}
.home-cafe-product{position:relative;flex:0 0 calc((100% - 24px)/3);min-width:0;scroll-snap-align:start;border:1px solid #e3eaf1;border-radius:21px;background:#fff;padding:10px;text-align:right;color:#17304a;box-shadow:0 9px 25px rgba(23,48,74,.055);display:grid;gap:10px;overflow:hidden}
.home-cafe-product-image{width:100%;aspect-ratio:1/1;border-radius:16px;background:#f2f5f7 center/cover no-repeat;display:grid;place-items:center;color:#173b6d}
.home-cafe-product-image svg{width:36px;height:36px}
.home-cafe-product-copy{display:grid;grid-template-rows:minmax(34px,auto) auto auto;gap:2px;min-width:0;align-content:start}
.home-cafe-product-copy>strong{font-size:12px;line-height:1.6;min-height:34px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}
.home-cafe-product-copy>small{color:#8995a2;font-size:9px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
.home-cafe-product-price{display:flex;align-items:end;justify-content:space-between;gap:4px;margin-top:0;line-height:1.35}
.home-cafe-product-price b{font-size:12px;color:#173b6d}
.home-cafe-product-price del{font-size:8px;color:#a5afb9}
.home-cafe-product>em{position:absolute;top:18px;right:18px;border-radius:999px;background:rgba(255,255,255,.94);color:#a52a2a;padding:5px 8px;font-size:8px;font-style:normal;font-weight:900;box-shadow:0 4px 12px rgba(0,0,0,.08)}
.home-cafe-product.is-unavailable{opacity:.72}
@media(max-width:560px){.home-cafe-arrow{display:none}.home-cafe-slider{gap:8px;padding-bottom:10px}.home-cafe-product{flex:0 0 calc((100% - 16px)/3);min-width:0;padding:8px;border-radius:17px;gap:6px}.home-cafe-title-actions{gap:2px}.home-cafe-product-image{border-radius:12px}.home-cafe-product-copy{grid-template-rows:minmax(30px,auto) auto auto;gap:1px}.home-cafe-product-copy>strong{font-size:10px;min-height:30px;line-height:1.5}.home-cafe-product-copy>small{font-size:8px;line-height:1.35}.home-cafe-product-price{gap:2px;flex-direction:column;align-items:flex-start;margin-top:0}.home-cafe-product-price b{font-size:10px}.home-cafe-product-price del{font-size:7px}.home-cafe-product>em{top:10px;right:10px;font-size:7px;padding:4px 6px}}


/* v2.8.19 — vehicle plate registration redesign */
.vehicle-register-form{gap:14px!important}.vehicle-plate-card{padding:20px!important;border:1px solid #dde6ee!important;border-radius:30px!important;background:#fbfcfd!important;display:grid!important;gap:16px!important}.vehicle-plate-head h4{margin:0;font-size:19px;color:#1a3046;line-height:1.8}.vehicle-plate-head p{margin:6px 0 0;color:#8a96a3;font-size:12px;line-height:1.9}.vehicle-plate-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.vehicle-plate-tabs button{min-height:62px;border-radius:18px;border:1px solid #d8e1e9;background:#fff;color:#667487;font:inherit;font-size:14px;font-weight:800;padding:0 14px;transition:.18s ease}.vehicle-plate-tabs button.active{border-color:#ff4a3d;color:#ed2d1f;background:#fff7f6;box-shadow:0 0 0 1px rgba(255,74,61,.04) inset}.vehicle-plate-frame{direction:ltr;display:grid;grid-template-columns:112px 1px 1fr 1.28fr .78fr;gap:12px;align-items:center;border:4px solid #24313b;border-radius:24px;padding:10px 12px;background:#fff}.vehicle-plate-divider{width:1px;height:70px;background:#d8dee6;display:block}.vehicle-plate-box{height:76px;border:1px solid #dbe3ea;border-radius:16px;background:#f7f9fc;color:#182f45;font:inherit;font-size:22px;font-weight:900;text-align:center;outline:none}.vehicle-plate-box::placeholder{color:#abb5c0}.vehicle-plate-box-letter{appearance:none;background:#f7f9fc;padding:0 2px;font-size:30px;font-weight:900;color:#162b40}.vehicle-plate-box-iran{display:grid;align-content:center;justify-items:center;padding:6px 4px}.vehicle-plate-box-iran small{font-size:12px;color:#808d9d;line-height:1.4}.vehicle-plate-box-iran input{width:100%;border:0;background:transparent;text-align:center;font:inherit;font-size:22px;font-weight:900;color:#182f45;outline:none}.vehicle-plate-raw input{width:100%;min-height:68px;border:1px solid #dbe3ea;border-radius:18px;background:#f7f9fc;padding:0 18px;font:inherit;font-size:16px;font-weight:700;color:#17304a;outline:none}.vehicle-plate-raw input::placeholder{color:#98a4b1}.vehicle-register-form input[name="owner_name"],.vehicle-register-form input[name="model"],.vehicle-register-form input[name="color"]{min-height:56px}.vehicle-register-form .primary-button{margin-top:2px}@media(max-width:640px){.vehicle-plate-card{padding:14px!important;border-radius:24px!important;gap:12px!important}.vehicle-plate-head h4{font-size:17px}.vehicle-plate-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.vehicle-plate-tabs button{min-height:52px;font-size:12px;padding:0 8px}.vehicle-plate-frame{grid-template-columns:72px 1px .82fr 94px 62px;gap:8px;padding:8px;border-width:3px;border-radius:20px}.vehicle-plate-divider{height:56px}.vehicle-plate-box{height:58px;font-size:18px;border-radius:14px}.vehicle-plate-box-iran small{font-size:10px}.vehicle-plate-box-iran input{font-size:18px}.vehicle-plate-raw input{min-height:56px;font-size:14px}}


/* v2.8.22 — guest form plate integration */
.guest-register-form .vehicle-plate-card{margin-top:2px}.guest-register-form input[name="people_count"]{appearance:textfield;-moz-appearance:textfield}.guest-register-form input[name="people_count"]::-webkit-outer-spin-button,.guest-register-form input[name="people_count"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* v2.8.23 — home cafe slider 3-up auto carousel */

/* v2.8.24 — home cafe card tighter copy spacing */

/* v2.8.25 — vehicle plate style closer to provided mock */

/* v2.8.26 — wider letter segment in vehicle plate */

/* v2.8.27 — larger vehicle plate letter box */
