/* ===== assets/css/app.css ===== */
:root{--primary:#0f5d66;--primary-2:#2d8c78;--primary-3:#d9f0ea;--accent:#d3a99c;--sun:#fafcf7;--ink:#17343a;--muted:#6d7f83;--line:#dfe9e7;--white:#fff;--danger:#b83f4c;--warning:#a66b12;--shadow:0 18px 50px rgba(15,93,102,.12);--radius:22px;--container:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7faf9;color:var(--ink);font-family:"Readex Pro","Tajawal",system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.7}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 10% 0%,rgba(45,140,120,.09),transparent 28%),radial-gradient(circle at 90% 25%,rgba(211,169,156,.12),transparent 25%)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}.container{width:min(calc(100% - 32px),var(--container));margin-inline:auto}.site-notice{background:#f5e7df;color:#6d4033;text-align:center;padding:8px 16px;font-size:14px}.site-header{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(223,233,231,.9)}.header-inner{height:78px;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.brand-mark{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-size:26px;font-weight:800;box-shadow:0 8px 18px rgba(15,93,102,.2)}.brand span:last-child{display:grid;line-height:1.15}.brand strong{font-size:20px}.brand small{font-size:11px;color:var(--muted);margin-top:4px}.brand-large .brand-mark{width:58px;height:58px;border-radius:18px}.brand-large strong{font-size:25px}.main-nav{display:flex;align-items:center;gap:4px;margin-inline:auto}.main-nav a{padding:10px 14px;border-radius:12px;color:#52686c;font-size:14px;font-weight:650}.main-nav a:hover,.main-nav a.active{background:var(--primary-3);color:var(--primary)}.header-actions{display:flex;align-items:center;gap:9px}.icon-btn{width:42px;height:42px;border:1px solid var(--line);border-radius:13px;display:grid;place-items:center;background:#fff;color:var(--primary);font-size:24px}.account-chip{display:flex;align-items:center;gap:8px;padding:5px 9px 5px 12px;border:1px solid var(--line);border-radius:14px;background:#fff}.account-chip span{width:31px;height:31px;border-radius:10px;background:var(--primary-3);display:grid;place-items:center;color:var(--primary);font-weight:800}.account-chip b{font-size:13px}.menu-toggle{display:none;border:0;background:transparent;font-size:26px;color:var(--primary)}.btn{border:0;border-radius:14px;padding:11px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:750;transition:.2s transform,.2s box-shadow,.2s background}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;box-shadow:0 10px 24px rgba(15,93,102,.18)}.btn-secondary{background:var(--primary-3);color:var(--primary)}.btn-outline{background:#fff;border:1px solid var(--primary);color:var(--primary)}.btn-ghost{background:#fff;border:1px solid var(--line);color:var(--ink)}.btn-danger{background:#fff0f1;color:var(--danger);border:1px solid #f3c9ce}.btn-sm{padding:8px 13px;border-radius:11px;font-size:13px}.btn-lg{padding:14px 24px;font-size:16px}.btn-block{width:100%}.hero{padding:58px 0 30px}.hero-grid{display:grid;grid-template-columns:1.18fr .82fr;align-items:center;gap:46px}.hero-copy h1{font-size:clamp(38px,6vw,72px);line-height:1.13;margin:10px 0 18px;letter-spacing:-2px}.hero-copy h1 em{font-style:normal;color:var(--primary-2)}.hero-copy>p{font-size:18px;color:var(--muted);max-width:650px}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 11px;border-radius:99px;background:var(--primary-3);color:var(--primary);font-size:13px;font-weight:800}.hero-search{margin-top:28px;background:#fff;padding:8px;border-radius:18px;box-shadow:var(--shadow);display:flex;gap:8px;max-width:690px}.hero-search input{border:0;outline:0;padding:11px 14px;flex:1;min-width:0;background:transparent}.hero-search select{border:0;border-inline-start:1px solid var(--line);padding:0 12px;color:var(--muted);background:#fff;max-width:180px}.hero-search .btn{white-space:nowrap}.hero-actions{display:flex;gap:11px;margin-top:18px;flex-wrap:wrap}.hero-stats{display:flex;gap:26px;margin-top:28px}.hero-stats div{display:grid}.hero-stats strong{font-size:25px;color:var(--primary)}.hero-stats span{font-size:12px;color:var(--muted)}.hero-visual{position:relative;min-height:460px}.visual-card{position:absolute;inset:28px 18px 20px;border-radius:40px;background:linear-gradient(145deg,#0f5d66,#277d70);box-shadow:0 28px 70px rgba(15,93,102,.24);overflow:hidden}.visual-card:before,.visual-card:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.08)}.visual-card:before{width:300px;height:300px;top:-80px;left:-80px}.visual-card:after{width:210px;height:210px;bottom:-70px;right:-40px}.phone-mock{position:absolute;width:260px;height:420px;border-radius:35px;background:#fbfdfc;top:15px;right:50%;transform:translateX(50%) rotate(-3deg);border:8px solid #17343a;box-shadow:0 25px 45px rgba(0,0,0,.25);padding:24px 16px 16px;overflow:hidden}.phone-notch{position:absolute;width:86px;height:20px;background:#17343a;border-radius:0 0 14px 14px;top:0;left:50%;transform:translateX(-50%)}.mini-search{height:35px;border-radius:11px;background:#edf5f2;margin:9px 0 15px}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mini-grid span{height:55px;border-radius:13px;background:#e6f2ee;display:grid;place-items:center;font-size:22px}.mini-map{height:145px;border-radius:18px;margin-top:13px;background:linear-gradient(45deg,#d9e9e2 25%,transparent 25%),linear-gradient(-45deg,#d9e9e2 25%,transparent 25%),#eff5f2;background-size:38px 38px;position:relative}.mini-map:after{content:"⌖";position:absolute;inset:0;display:grid;place-items:center;color:var(--danger);font-size:40px}.floating-badge{position:absolute;background:#fff;border-radius:15px;padding:10px 14px;box-shadow:var(--shadow);font-size:13px;font-weight:800}.badge-one{top:82px;right:4px}.badge-two{bottom:55px;left:0}.section{padding:62px 0}.section-muted{background:rgba(231,242,238,.55)}.section-heading{margin-bottom:28px}.section-heading.compact{margin-bottom:18px}.section-heading h1,.section-heading h2{font-size:clamp(28px,4vw,42px);line-height:1.25;margin:8px 0}.section-heading p{color:var(--muted);margin:0;max-width:690px}.heading-row{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.text-link{color:var(--primary);font-weight:800}.categories-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:12px}.category-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px 12px;text-align:center;transition:.2s}.category-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent}.category-card .category-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;font-size:27px;margin:0 auto 11px;background:color-mix(in srgb,var(--cat-color) 14%,#fff)}.category-card strong{display:block;font-size:13px;line-height:1.4}.category-card small{color:var(--muted);font-size:11px}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.place-card,.content-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.2s;position:relative}.place-card:hover,.content-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:transparent}.card-image{height:205px;object-fit:cover;width:100%;background:var(--primary-3)}.card-body{padding:18px}.card-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.category-pill{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;color:var(--primary);background:var(--primary-3);padding:5px 9px;border-radius:99px}.verified{display:inline-flex;align-items:center;gap:4px;color:#147b64;font-size:11px;font-weight:800}.place-card h3,.content-card h3{margin:5px 0;font-size:19px}.place-card p,.content-card p{color:var(--muted);font-size:13px;margin:5px 0}.rating-line{display:flex;align-items:center;gap:7px;color:#bb7a17;font-size:13px}.rating-line small{color:var(--muted)}.card-actions{display:flex;gap:8px;margin-top:15px}.card-actions .btn{flex:1}.favorite-button{position:absolute;top:13px;left:13px;width:38px;height:38px;border:0;border-radius:12px;background:rgba(255,255,255,.93);display:grid;place-items:center;font-size:19px;cursor:pointer;z-index:2}.favorite-button.active{color:#c4414d}.map-frame{height:520px;border-radius:28px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#dce9e5}.map-frame.full{height:calc(100vh - 190px);min-height:560px;border-radius:22px}.map-section{display:grid;grid-template-columns:340px 1fr;gap:18px;padding:24px 0 56px}.map-sidebar{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px;max-height:calc(100vh - 190px);overflow:auto}.map-sidebar h1{font-size:25px;margin:0 0 5px}.map-sidebar>p{color:var(--muted);font-size:13px;margin-top:0}.filter-stack{display:grid;gap:10px}.filter-stack input,.filter-stack select{width:100%;border:1px solid var(--line);border-radius:13px;padding:11px 12px;background:#fbfdfc}.map-results{display:grid;gap:9px;margin-top:16px}.map-result{display:grid;grid-template-columns:48px 1fr;gap:10px;padding:10px;border:1px solid var(--line);border-radius:14px}.map-result:hover{background:#f2f8f6}.map-result .result-icon{width:48px;height:48px;border-radius:13px;background:var(--primary-3);display:grid;place-items:center;font-size:22px}.map-result strong{display:block;font-size:13px}.map-result small{color:var(--muted);font-size:11px}.map-marker{width:36px;height:36px;border-radius:13px 13px 13px 3px;transform:rotate(-45deg);display:grid;place-items:center;border:3px solid #fff;box-shadow:0 5px 14px rgba(0,0,0,.25)}.map-marker span{transform:rotate(45deg);font-size:17px}.leaflet-popup-content-wrapper{border-radius:16px!important}.popup-card{direction:rtl;min-width:180px}.popup-card strong{display:block;font-size:15px}.popup-card p{margin:4px 0;color:#617579;font-size:12px}.popup-card a{display:inline-block;margin-top:5px;color:var(--primary);font-weight:800}.filters-bar{background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;display:grid;grid-template-columns:1fr 220px 160px auto;gap:10px;margin-bottom:25px}.filters-bar input,.filters-bar select,.form-control{width:100%;border:1px solid var(--line);border-radius:13px;background:#fbfdfc;padding:11px 13px;outline:0}.filters-bar input:focus,.filters-bar select:focus,.form-control:focus{border-color:var(--primary-2);box-shadow:0 0 0 3px rgba(45,140,120,.1)}.empty-state{background:#fff;border:1px dashed #c8d9d5;border-radius:22px;text-align:center;padding:45px 22px}.empty-state h1,.empty-state h2{margin:0 0 8px}.empty-state p{color:var(--muted)}.pagination{display:flex;justify-content:center;gap:7px;margin-top:28px;flex-wrap:wrap}.pagination a{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;border:1px solid var(--line);background:#fff}.pagination a.active{background:var(--primary);color:#fff;border-color:var(--primary)}.place-hero{padding:28px 0}.place-cover{position:relative;height:430px;border-radius:30px;overflow:hidden;background:var(--primary-3)}.place-cover img{width:100%;height:100%;object-fit:cover}.place-cover:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(5,35,39,.78))}.place-cover-copy{position:absolute;z-index:2;right:32px;left:32px;bottom:27px;color:#fff}.place-cover-copy h1{font-size:clamp(30px,5vw,48px);margin:6px 0}.place-cover-copy p{margin:0;color:#e6f1ef}.place-layout{display:grid;grid-template-columns:1fr 340px;gap:24px;padding-bottom:65px}.content-panel,.side-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:23px}.content-panel+.content-panel,.side-card+.side-card{margin-top:16px}.content-panel h2,.side-card h3{margin-top:0}.contact-list{display:grid;gap:9px}.contact-list a,.contact-list div{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.contact-list :last-child{border-bottom:0}.hours-table{width:100%;border-collapse:collapse}.hours-table td{padding:9px;border-bottom:1px solid var(--line);font-size:13px}.review{padding:17px 0;border-bottom:1px solid var(--line)}.review:last-child{border-bottom:0}.review-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.review p{margin-bottom:0;color:#52686c}.stars{color:#be7e18;letter-spacing:1px}.rating-input{display:flex;direction:ltr;justify-content:flex-end;gap:5px}.rating-input input{position:absolute;opacity:0}.rating-input label{font-size:32px;color:#cdd7d5;cursor:pointer}.rating-input input:checked~label,.rating-input label:hover,.rating-input label:hover~label{color:#e3a021}.form-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-grid label{display:grid;gap:6px;font-size:13px;font-weight:750}.form-grid label small{color:var(--muted);font-weight:400}.form-grid input,.form-grid textarea,.form-grid select{width:100%;border:1px solid var(--line);border-radius:13px;padding:11px 13px;background:#fbfdfc;outline:0}.form-grid textarea{resize:vertical;min-height:110px}.form-grid .span-2{grid-column:span 2}.form-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;grid-column:1/-1;margin-top:4px}.alert{position:relative;margin:14px 0;padding:12px 44px 12px 15px;border-radius:13px;font-size:14px}.alert button{position:absolute;right:auto;left:12px;top:50%;transform:translateY(-50%);border:0;background:transparent;font-size:21px;cursor:pointer}.alert-success{background:#e7f6ef;color:#176f59}.alert-error,.alert-danger{background:#fff0f1;color:#9b3340}.alert-warning{background:#fff6df;color:#8d5e13}.alert-info{background:#eaf4f6;color:#246873}.content-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.content-date{display:flex;align-items:center;gap:7px;color:var(--primary);font-weight:800;font-size:12px}.account-layout{display:grid;grid-template-columns:250px 1fr;gap:22px;padding:42px 0 65px}.account-nav{background:#fff;border:1px solid var(--line);border-radius:22px;padding:15px;height:max-content}.account-nav a{display:block;padding:11px 12px;border-radius:11px;font-size:14px}.account-nav a:hover,.account-nav a.active{background:var(--primary-3);color:var(--primary)}.auth-shell{min-height:calc(100vh - 200px);display:grid;place-items:center;padding:45px 16px}.auth-card{width:min(100%,480px);background:#fff;border:1px solid var(--line);border-radius:27px;padding:28px;box-shadow:var(--shadow)}.auth-card h1{margin:10px 0 5px}.auth-card>p{color:var(--muted);margin-top:0}.password-wrap{position:relative}.password-wrap button{position:absolute;left:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--primary);font-size:12px;cursor:pointer}.site-footer{background:#123e45;color:#e7f1ef;padding:50px 0 95px;margin-top:20px}.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:34px}.brand-light small{color:#bcd2cf}.footer-grid p{color:#bdd0cd;font-size:13px;max-width:340px}.footer-grid h3{font-size:14px;margin:0 0 12px}.footer-grid>div>a{display:block;color:#bdd0cd;font-size:13px;padding:4px 0}.footer-grid a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.12);margin-top:32px;padding-top:18px;color:#9fbbb7;font-size:12px}.mobile-nav{display:none}.install-page{min-height:100vh;background:linear-gradient(135deg,#e6f2ee,#fafcf7);padding:40px 16px}.install-shell{width:min(100%,850px);margin:auto}.install-card{background:#fff;border:1px solid var(--line);border-radius:30px;padding:32px;box-shadow:var(--shadow)}.install-card>.brand{margin-bottom:22px}.install-form fieldset{grid-column:1/-1;border:1px solid var(--line);border-radius:18px;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.install-form legend{padding:0 9px;color:var(--primary);font-weight:800}.install-success{text-align:center}.success-icon{display:grid;place-items:center;margin:15px auto;width:78px;height:78px;border-radius:50%;background:#e0f4eb;color:#13755c;font-size:42px;font-weight:800}.install-success .btn{margin-top:10px}.kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.kpi-card{background:#fff;border:1px solid var(--line);border-radius:19px;padding:18px}.kpi-card strong{display:block;font-size:28px;color:var(--primary)}.kpi-card span{font-size:12px;color:var(--muted)}@media(max-width:1000px){.categories-grid{grid-template-columns:repeat(4,1fr)}.cards-grid,.content-list{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1fr}.hero-visual{min-height:420px}.map-section{grid-template-columns:1fr}.map-sidebar{max-height:none}.map-frame.full{height:590px}.place-layout{grid-template-columns:1fr}.place-sidebar{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.side-card+.side-card{margin-top:0}.footer-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){body{padding-bottom:68px}.site-header{top:0}.header-inner{height:68px}.main-nav{display:none;position:absolute;top:68px;right:16px;left:16px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.main-nav.open{display:flex}.menu-toggle{display:block;margin-inline-start:auto}.header-actions .icon-btn,.account-chip b{display:none}.brand-mark{width:39px;height:39px;border-radius:12px;font-size:22px}.brand strong{font-size:17px}.brand small{font-size:10px}.hero{padding-top:34px}.hero-copy h1{letter-spacing:-1px}.hero-search{display:grid;grid-template-columns:1fr auto}.hero-search select{grid-column:1/-1;grid-row:2;border:0;border-top:1px solid var(--line);padding:10px}.hero-stats{gap:14px}.hero-stats strong{font-size:20px}.hero-visual{min-height:360px}.visual-card{inset:15px 0}.phone-mock{height:340px;width:215px}.mini-map{height:100px}.badge-one{right:-4px}.badge-two{left:-4px}.section{padding:42px 0}.heading-row{align-items:start}.categories-grid{grid-template-columns:repeat(2,1fr)}.cards-grid,.content-list{grid-template-columns:1fr}.filters-bar{grid-template-columns:1fr}.map-section{padding-top:14px}.map-frame.full,.map-frame{height:62vh;min-height:440px;border-radius:18px}.map-sidebar{order:2}.place-cover{height:380px;border-radius:22px}.place-cover-copy{right:20px;left:20px}.place-sidebar{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:span 1}.form-actions{grid-column:1}.account-layout{grid-template-columns:1fr}.account-nav{display:flex;overflow:auto}.account-nav a{white-space:nowrap}.kpi-strip{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:grid;gap:5px}.mobile-nav{position:fixed;z-index:950;bottom:0;right:0;left:0;height:68px;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding-bottom:env(safe-area-inset-bottom)}.mobile-nav a{display:grid;place-items:center;align-content:center;font-size:10px;color:var(--muted)}.mobile-nav a span{font-size:20px;line-height:1.1}.mobile-nav a.active{color:var(--primary);font-weight:800}.site-footer{padding-bottom:35px}.install-page{padding:18px 10px}.install-card{padding:20px;border-radius:22px}.install-form fieldset{grid-template-columns:1fr}.install-form .span-2{grid-column:span 1}}@media(max-width:450px){.container{width:min(calc(100% - 22px),var(--container))}.header-actions .btn{padding:7px 10px}.hero-copy>p{font-size:16px}.hero-search{grid-template-columns:1fr}.hero-search .btn{grid-row:3}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr)}.hero-stats div{text-align:center}.category-card{padding:14px 8px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.place-cover{height:330px}.kpi-strip{grid-template-columns:1fr 1fr}}


/* ===== assets/css/app-v2.css ===== */
:root{--app-surface:#f7fcfa;--glass:rgba(255,255,255,.72);--glass-strong:rgba(255,255,255,.9);--glass-line:rgba(255,255,255,.72);--app-shadow:0 20px 60px rgba(10,64,61,.14);--dock-height:76px;--header-height:78px}html{overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:none}body{overflow-x:hidden;background:var(--app-surface);touch-action:manipulation}body:before{background:radial-gradient(circle at 10% 10%,color-mix(in srgb,var(--primary-2) 18%,transparent),transparent 29%),radial-gradient(circle at 92% 20%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 25%),linear-gradient(160deg,var(--app-surface),#fff 55%,color-mix(in srgb,var(--primary-2) 7%,#fff));animation:ambientShift 12s ease-in-out infinite alternate}.site-header{position:fixed;top:0;right:0;left:0;z-index:1100;background:rgba(247,252,250,.68);border-bottom:1px solid rgba(255,255,255,.7);backdrop-filter:blur(24px) saturate(155%);-webkit-backdrop-filter:blur(24px) saturate(155%);transition:.25s}.site-header.scrolled{background:rgba(255,255,255,.86);box-shadow:0 12px 35px rgba(15,93,102,.08)}body:not(.map-page){padding-top:var(--header-height)}.brand-logo-image{width:46px;height:46px;object-fit:contain;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(15,93,102,.12)}.account-chip img{width:32px;height:32px;border-radius:10px;object-fit:cover}.install-header{font-size:20px}.glass-panel{background:var(--glass);border:1px solid var(--glass-line);box-shadow:var(--app-shadow);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%)}.app-home{padding-bottom:32px}.app-hero{position:relative;margin:24px auto 0;padding:clamp(24px,5vw,54px);border-radius:34px;overflow:hidden;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;min-height:360px;display:grid;align-content:center}.app-hero:before,.app-hero:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.11);filter:blur(1px);animation:floatOrb 8s ease-in-out infinite}.app-hero:before{width:330px;height:330px;top:-180px;left:-80px}.app-hero:after{width:240px;height:240px;bottom:-145px;right:-30px;animation-delay:-4s}.app-hero-content{position:relative;z-index:2;max-width:730px}.home-greeting{display:flex;align-items:center;gap:9px;font-size:13px;color:rgba(255,255,255,.82)}.home-greeting img{width:34px;height:34px;border-radius:12px;object-fit:cover;border:2px solid rgba(255,255,255,.65)}.app-hero h1{font-size:clamp(36px,6vw,66px);line-height:1.12;letter-spacing:-1.8px;margin:13px 0 12px}.app-hero p{color:rgba(255,255,255,.8);font-size:16px;margin:0}.app-search{display:flex;gap:8px;background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.92);padding:7px;border-radius:20px;margin-top:26px;box-shadow:0 18px 42px rgba(3,45,44,.18);backdrop-filter:blur(15px)}.app-search input{flex:1;border:0;outline:0;background:transparent;min-width:0;padding:11px 13px;color:var(--ink)}.app-search .search-button{width:48px;height:48px;border-radius:15px;border:0;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-size:22px;cursor:pointer}.hero-quick-row{display:flex;gap:9px;margin-top:15px;flex-wrap:wrap}.hero-quick-row a{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.23);padding:8px 12px;border-radius:13px;font-size:12px;backdrop-filter:blur(8px)}.app-section{padding:42px 0 4px}.app-section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:18px}.app-section-head h2{font-size:clamp(23px,4vw,34px);margin:0}.app-section-head p{margin:3px 0 0;color:var(--muted);font-size:13px}.soft-action{border:1px solid color-mix(in srgb,var(--primary) 16%,transparent);background:color-mix(in srgb,var(--primary-2) 10%,#fff);color:var(--primary);border-radius:13px;padding:8px 12px;font-size:12px;font-weight:800;cursor:pointer}.app-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.app-category{position:relative;min-height:144px;border-radius:24px;overflow:hidden;background:var(--glass-strong);border:1px solid var(--glass-line);box-shadow:0 14px 35px rgba(15,93,102,.09);padding:18px;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;transition:.25s}.app-category:nth-child(1),.app-category:nth-child(2){grid-column:span 2;min-height:190px}.app-category:hover{transform:translateY(-5px);box-shadow:var(--app-shadow)}.app-category-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.app-category:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(7,49,52,.82),rgba(7,49,52,.08) 68%)}.app-category.no-image:after{background:linear-gradient(145deg,color-mix(in srgb,var(--cat-color) 17%,#fff),#fff)}.app-category-icon{width:47px;height:47px;border-radius:16px;background:rgba(255,255,255,.86);display:grid;place-items:center;font-size:25px;margin-bottom:auto;box-shadow:0 8px 24px rgba(0,0,0,.08)}.app-category strong{color:#fff;font-size:16px}.app-category small{color:rgba(255,255,255,.76)}.app-category.no-image strong{color:var(--ink)}.app-category.no-image small{color:var(--muted)}.app-category.no-image:before{content:"";position:absolute;width:110px;height:110px;border-radius:35px;background:color-mix(in srgb,var(--cat-color) 16%,transparent);top:-35px;left:-25px;transform:rotate(25deg);z-index:-1}.horizontal-cards{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(275px,31%);gap:15px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 18px;scrollbar-width:none}.horizontal-cards::-webkit-scrollbar{display:none}.app-place-card{scroll-snap-align:start;position:relative;background:var(--glass-strong);border:1px solid var(--glass-line);border-radius:25px;overflow:hidden;box-shadow:0 14px 36px rgba(15,93,102,.09)}.app-place-card>a:first-child{display:block;position:relative}.app-place-card .card-image{height:180px}.verified-overlay{position:absolute;top:12px;right:12px;padding:5px 9px;border-radius:99px;background:rgba(255,255,255,.9);color:var(--primary);font-size:10px;font-weight:900;backdrop-filter:blur(10px)}.app-place-card-body{padding:16px}.app-place-card h3{margin:7px 0 3px;font-size:18px}.app-place-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:11px}.distance-badge{padding:4px 8px;background:color-mix(in srgb,var(--primary-2) 12%,#fff);color:var(--primary);border-radius:99px;font-weight:800}.app-place-card .card-actions{margin-top:12px}.app-content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.app-story-card{min-height:210px;border-radius:25px;padding:20px;position:relative;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 92%,#000),var(--primary-2));color:#fff;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:var(--app-shadow)}.app-story-card:nth-child(2n){background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 55%,var(--primary)),var(--primary-2))}.app-story-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.app-story-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(4,38,40,.86))}.app-story-card>*:not(img){position:relative;z-index:2}.app-story-card h3{margin:6px 0}.install-promo{position:relative;overflow:hidden;border-radius:28px;padding:25px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 92%,#000),var(--primary-2));color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px}.install-promo:after{content:"⇩";position:absolute;left:4%;font-size:120px;opacity:.08;transform:rotate(-12deg)}.install-promo h2{margin:0}.install-promo p{margin:4px 0 0;color:rgba(255,255,255,.75)}.app-dock{position:fixed;z-index:1300;bottom:max(10px,env(safe-area-inset-bottom));right:50%;transform:translateX(50%);width:min(440px,calc(100% - 24px));height:66px;border:1px solid rgba(255,255,255,.8);border-radius:25px;background:rgba(255,255,255,.78);box-shadow:0 20px 55px rgba(9,57,59,.22);backdrop-filter:blur(24px) saturate(160%);display:none;grid-template-columns:1fr 112px 1fr;align-items:center;padding:5px 16px}.dock-edge{display:grid;place-items:center;align-content:center;color:var(--muted);font-size:20px;line-height:1}.dock-edge small{font-size:9px;margin-top:5px}.dock-edge.active{color:var(--primary)}.fab-shell{position:relative;display:grid;place-items:center}.fab-main{width:62px;height:62px;border-radius:50%;border:5px solid rgba(255,255,255,.9);background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;box-shadow:0 13px 30px color-mix(in srgb,var(--primary) 35%,transparent);font-size:26px;cursor:pointer;transition:.25s}.fab-shell.open .fab-main{transform:rotate(45deg) scale(1.05)}.fab-actions{position:absolute;bottom:78px;display:grid;gap:9px;min-width:185px;pointer-events:none;opacity:0;transform:translateY(16px) scale(.94);transition:.25s}.fab-shell.open .fab-actions{pointer-events:auto;opacity:1;transform:none}.fab-action{border:1px solid rgba(255,255,255,.84);background:rgba(255,255,255,.9);box-shadow:0 12px 34px rgba(9,57,59,.16);border-radius:16px;padding:9px 11px;display:flex;align-items:center;gap:9px;color:var(--ink);white-space:nowrap;backdrop-filter:blur(18px);cursor:pointer}.fab-action span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary-2) 13%,#fff);color:var(--primary)}.fab-action b{font-size:12px}.install-modal{position:fixed;z-index:1700;inset:0;background:rgba(6,33,36,.45);display:grid;place-items:center;padding:20px}.install-modal[hidden]{display:none}.install-modal-card{position:relative;width:min(100%,400px);border-radius:28px;padding:28px;text-align:center}.modal-close{position:absolute;top:13px;left:13px;border:0;background:rgba(255,255,255,.8);width:34px;height:34px;border-radius:11px;font-size:21px;cursor:pointer}.install-app-icon{width:76px;height:76px;border-radius:22px;margin:0 auto 15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-size:35px;font-weight:900}.install-modal-card h2{margin:5px 0}.install-modal-card p{color:var(--muted)}.site-footer{margin-bottom:0}.map-page{height:var(--app-height,100vh);padding-top:var(--header-height);overflow:hidden}.map-page .site-footer{display:none}@keyframes ambientShift{from{transform:scale(1)}to{transform:scale(1.05) translate3d(1%,-1%,0)}}@keyframes floatOrb{0%,100%{transform:translateY(0)}50%{transform:translateY(18px)}}@media(min-width:761px){.app-dock{display:grid;right:28px;transform:none;bottom:28px;width:70px;height:70px;border-radius:50%;grid-template-columns:1fr;padding:0;background:transparent;border:0;box-shadow:none;backdrop-filter:none}.app-dock>.dock-edge{display:none}.app-dock .fab-actions{left:0;right:auto;align-items:end}.fab-main{width:66px;height:66px}}@media(max-width:900px){.app-category-grid{grid-template-columns:repeat(2,1fr)}.app-category:nth-child(1),.app-category:nth-child(2){grid-column:span 1;min-height:165px}.horizontal-cards{grid-auto-columns:minmax(270px,72%)}.app-content-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){:root{--header-height:68px}body:not(.map-page){padding-top:var(--header-height);padding-bottom:calc(var(--dock-height) + 18px)}.app-dock{display:grid}.site-footer{display:none}.header-inner{height:68px}.header-actions .install-header,.header-actions>a.icon-btn{display:none}.app-hero{margin-top:12px;border-radius:27px;min-height:300px;padding:27px 21px}.app-hero h1{font-size:39px;letter-spacing:-1px}.app-hero p{font-size:14px}.app-search input,.form-grid input,.form-grid textarea,.form-grid select,.filters-bar input,.filters-bar select{font-size:16px}.app-section{padding-top:31px}.app-category-grid{gap:10px}.app-category{min-height:138px;border-radius:20px;padding:14px}.app-category:nth-child(1),.app-category:nth-child(2){min-height:153px}.horizontal-cards{grid-auto-columns:83%;gap:11px;margin-left:-11px;padding-left:11px}.app-content-grid{grid-template-columns:1fr}.app-story-card{min-height:185px}.install-promo{align-items:flex-start;display:grid;padding:22px}.install-promo .btn{width:100%}.main-nav{top:68px}.account-chip{border:0;background:transparent;padding:0}.account-chip img{width:39px;height:39px;border-radius:13px}.brand-logo-image{width:40px;height:40px;border-radius:12px}}@media(max-width:390px){.app-hero h1{font-size:34px}.app-category-grid{grid-template-columns:1fr 1fr}.app-category{padding:12px}.app-section-head h2{font-size:22px}.horizontal-cards{grid-auto-columns:88%}}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}


/* ===== assets/css/app-extra.css ===== */
.profile-identity {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 22px;
  margin-bottom: 16px;
  border-radius: 26px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--primary) 12%, white), rgba(255,255,255,.82));
  border: 1px solid rgba(255,255,255,.85);
  box-shadow: 0 18px 50px rgba(11,110,79,.1);
  backdrop-filter: blur(20px);
}

.profile-identity h1 {
  margin: 3px 0 4px;
}

.profile-identity p {
  margin: 0;
  color: var(--muted);
}

.profile-avatar {
  width: 94px;
  height: 94px;
  border-radius: 28px;
  object-fit: cover;
  flex: 0 0 auto;
  border: 4px solid rgba(255,255,255,.9);
  box-shadow: 0 12px 26px rgba(11,110,79,.18);
}

.avatar-upload-field small {
  display: block;
  margin-top: 6px;
  color: var(--muted);
}

.danger-check {
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: 8px;
  color: #9a3440;
}

.danger-check input {
  width: auto;
}

.site-header {
  top: var(--notice-height, 0px);
}

body:not(.map-page) {
  padding-top: calc(var(--header-height) + var(--notice-height, 0px));
}

.site-notice {
  position: fixed;
  z-index: 1200;
  top: 0;
  right: 0;
  left: 0;
  height: var(--notice-height, 34px);
  display: grid;
  place-items: center;
  padding: 0 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.map-page {
  padding-top: calc(var(--header-height) + var(--notice-height, 0px));
}

.map-page .immersive-map {
  height: calc(var(--app-height, 100vh) - var(--header-height) - var(--notice-height, 0px));
}

@media (max-width: 640px) {
  .profile-identity {
    align-items: flex-start;
    padding: 18px;
    gap: 14px;
  }

  .profile-avatar {
    width: 72px;
    height: 72px;
    border-radius: 22px;
  }

  .profile-identity h1 {
    font-size: 23px;
  }
}


/* ===== assets/css/motion-v3.css ===== */
/* Nabkna 2.1 — lightweight motion and homepage advertising */
.motion-enabled.motion-ready [data-reveal] {
  opacity: 0;
  transform: translate3d(0, 28px, 0) scale(.985);
  transition: opacity .7s cubic-bezier(.2,.8,.2,1), transform .7s cubic-bezier(.2,.8,.2,1);
  transition-delay: var(--reveal-delay, 0ms);
}

.motion-enabled.motion-ready [data-reveal].is-revealed {
  opacity: 1;
  transform: none;
}

.motion-enabled .app-category,
.motion-enabled .app-place-card,
.motion-enabled .app-story-card {
  animation: cardEnter .55s backwards;
  animation-delay: calc(var(--reveal-index, 0) * 55ms);
}

.hero-motion-orbs {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.hero-motion-orbs span,
.hero-motion-orbs i {
  position: absolute;
  display: block;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.16);
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.2), rgba(255,255,255,.03) 62%);
  backdrop-filter: blur(4px);
  transform: translate3d(calc(var(--hero-x, 0px) * var(--depth, 1)), calc(var(--hero-y, 0px) * var(--depth, 1)), 0);
  transition: transform .5s cubic-bezier(.2,.8,.2,1);
}

.hero-motion-orbs span:first-child {
  --depth: .65;
  width: 150px;
  height: 150px;
  top: 18%;
  left: 8%;
  animation: heroFloat 7s ease-in-out infinite;
}

.hero-motion-orbs span:nth-child(2) {
  --depth: -.45;
  width: 72px;
  height: 72px;
  bottom: 14%;
  left: 30%;
  animation: heroFloat 5s ease-in-out -2s infinite reverse;
}

.hero-motion-orbs i {
  --depth: .35;
  width: 220px;
  height: 220px;
  right: -80px;
  bottom: -100px;
}

.hero-live-badge {
  position: absolute;
  z-index: 3;
  left: clamp(24px, 5vw, 60px);
  bottom: clamp(25px, 5vw, 56px);
  min-width: 178px;
  padding: 13px 15px 13px 42px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 18px;
  background: rgba(255,255,255,.14);
  box-shadow: 0 18px 45px rgba(0,0,0,.12);
  backdrop-filter: blur(18px);
}

.hero-live-badge > span {
  position: absolute;
  left: 15px;
  top: 18px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 0 color-mix(in srgb, var(--accent) 48%, transparent);
  animation: livePulse 2s infinite;
}

.hero-live-badge b,
.hero-live-badge small {
  display: block;
}

.hero-live-badge b {font-size: 12px}
.hero-live-badge small {font-size: 9px;color: rgba(255,255,255,.72);margin-top: 2px}

.app-search {
  position: relative;
  overflow: hidden;
}

.app-search::after {
  content: "";
  position: absolute;
  top: -40%;
  bottom: -40%;
  width: 55px;
  left: -80px;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.8), transparent);
  animation: searchSweep 6s ease-in-out 1.3s infinite;
  pointer-events: none;
}

.soft-action,
.hero-quick-row a,
.fab-main,
.btn {
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.soft-action:active,
.hero-quick-row a:active,
.fab-main:active,
.btn:active {transform: scale(.96)}

.card-glint {
  position: absolute;
  z-index: 4;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(circle at var(--glint-x, 50%) var(--glint-y, 50%), rgba(255,255,255,.32), transparent 33%);
  transition: opacity .24s;
}

.app-story-card > .card-glint,
.app-place-card > .card-glint,
.app-category > .card-glint,
.install-promo > .card-glint {
  position: absolute;
  inset: 0;
  z-index: 4;
}

.motion-enabled [data-tilt]:hover .card-glint {opacity: 1}

.motion-disabled .app-hero::before,
.motion-disabled .app-hero::after,
.motion-disabled .hero-motion-orbs span,
.motion-disabled .hero-live-badge > span,
.motion-disabled .app-search::after,
.motion-disabled .app-category,
.motion-disabled .app-place-card,
.motion-disabled .app-story-card,
.motion-disabled .app-ad-dots button.is-active {
  animation: none !important;
}

.motion-disabled .app-ad-slide,
.motion-disabled .app-ad-link > img,
.motion-disabled [data-tilt] {
  transition: none !important;
}

.app-ad-wrap {
  padding-top: 28px;
}

.app-ad-slider {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  background: color-mix(in srgb, var(--primary) 90%, #001b11);
  box-shadow: 0 24px 70px rgba(8,64,48,.18);
  isolation: isolate;
  touch-action: pan-y;
}

.app-ad-track {
  position: relative;
  height: clamp(220px, 31vw, 420px);
}

.app-ad-slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transform: scale(1.035);
  transition: opacity .65s ease, visibility .65s ease, transform 1.1s cubic-bezier(.2,.8,.2,1);
}

.app-ad-slide.is-active {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
  z-index: 2;
}

.app-ad-link {
  display: block;
  position: absolute;
  inset: 0;
  color: #fff;
}

.app-ad-link > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.025);
  transition: transform 7s linear;
}

.app-ad-slide.is-active .app-ad-link > img {transform: scale(1.095)}

.app-ad-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(to left, rgba(3,32,23,.86), rgba(3,32,23,.4) 48%, rgba(3,32,23,.06));
}

.app-ad-copy {
  position: absolute;
  z-index: 2;
  right: clamp(22px, 6vw, 75px);
  top: 50%;
  width: min(520px, 62%);
  transform: translateY(-50%);
  display: grid;
  justify-items: start;
}

.app-ad-copy > small {
  padding: 5px 9px;
  border: 1px solid rgba(255,255,255,.26);
  border-radius: 99px;
  background: rgba(255,255,255,.13);
  backdrop-filter: blur(10px);
  font-size: 9px;
}

.app-ad-copy > strong {
  margin-top: 10px;
  font-size: clamp(25px, 4.2vw, 52px);
  line-height: 1.12;
  text-shadow: 0 5px 25px rgba(0,0,0,.22);
}

.app-ad-copy > span {
  margin-top: 7px;
  color: rgba(255,255,255,.78);
  font-size: clamp(11px, 1.5vw, 15px);
  line-height: 1.7;
}

.app-ad-copy > b {
  margin-top: 16px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  border-radius: 13px;
  background: rgba(255,255,255,.92);
  color: var(--primary);
  font-size: 11px;
  box-shadow: 0 12px 30px rgba(0,0,0,.13);
}

.app-ad-copy > b i {
  font-size: 16px;
  font-style: normal;
  transition: transform .2s;
}

.app-ad-link:hover .app-ad-copy > b i {transform: translateX(-4px)}

.app-ad-arrow {
  position: absolute;
  z-index: 5;
  top: 50%;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255,255,255,.42);
  border-radius: 14px;
  transform: translateY(-50%);
  background: rgba(255,255,255,.16);
  color: #fff;
  font-size: 28px;
  line-height: 1;
  backdrop-filter: blur(12px);
  cursor: pointer;
  transition: .2s;
}

.app-ad-arrow:hover {background: rgba(255,255,255,.28);transform: translateY(-50%) scale(1.06)}
.app-ad-prev {right: 15px}
.app-ad-next {left: 15px}

.app-ad-dots {
  position: absolute;
  z-index: 5;
  right: 50%;
  bottom: 16px;
  transform: translateX(50%);
  display: flex;
  gap: 6px;
  padding: 6px;
  border-radius: 99px;
  background: rgba(0,0,0,.15);
  backdrop-filter: blur(10px);
}

.app-ad-dots button {
  width: 7px;
  height: 7px;
  padding: 0;
  border: 0;
  border-radius: 99px;
  background: rgba(255,255,255,.52);
  cursor: pointer;
  transition: width .25s, background .25s;
}

.app-ad-dots button.is-active {
  width: 28px;
  background: #fff;
  animation: dotPulse var(--slide-duration, 5s) linear;
}

@media (hover:hover) and (pointer:fine) {
  .motion-enabled [data-tilt] {
    transform: perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translate3d(0,var(--tilt-lift,0),0);
    transform-style: preserve-3d;
    transition: transform .16s ease-out, box-shadow .24s;
    will-change: transform;
  }
  .motion-enabled [data-tilt]:hover {--tilt-lift:-5px}
  .motion-enabled .app-category:hover,
  .motion-enabled .app-place-card:hover,
  .motion-enabled .app-story-card:hover {box-shadow: 0 25px 65px rgba(11,110,79,.18)}
}

@media (max-width: 760px) {
  .hero-live-badge {display: none}
  .hero-motion-orbs span:first-child {width: 100px;height: 100px;left: -15px}
  .hero-motion-orbs span:nth-child(2) {bottom: 8%;left: 12%}
  .app-ad-wrap {padding-top: 16px}
  .app-ad-slider {border-radius: 23px}
  .app-ad-track {height: clamp(205px, 58vw, 270px)}
  .app-ad-copy {right: 20px;width: calc(100% - 70px)}
  .app-ad-copy > strong {font-size: clamp(23px, 7vw, 34px)}
  .app-ad-copy > span {font-size: 10px;line-height: 1.55;max-width: 85%}
  .app-ad-copy > b {margin-top: 11px;padding: 8px 11px}
  .app-ad-arrow {width: 34px;height: 34px;border-radius: 11px;font-size: 22px}
  .app-ad-prev {right: 9px}.app-ad-next {left: 9px}
  .app-ad-dots {bottom: 9px}
}

@media (max-width: 390px) {
  .app-ad-copy > span {display: none}
  .app-ad-copy > strong {font-size: 23px}
}

@keyframes cardEnter {
  from {opacity: 0;transform: translateY(18px)}
  to {opacity: 1;transform: none}
}

@keyframes heroFloat {
  0%,100% {margin-top: 0}
  50% {margin-top: 18px}
}

@keyframes livePulse {
  0% {box-shadow: 0 0 0 0 color-mix(in srgb, var(--accent) 48%, transparent)}
  75%,100% {box-shadow: 0 0 0 12px transparent}
}

@keyframes searchSweep {
  0%,68% {left: -80px;opacity: 0}
  72% {opacity: .75}
  88%,100% {left: calc(100% + 80px);opacity: 0}
}

@keyframes dotPulse {
  from {box-shadow: inset 0 0 0 20px rgba(255,255,255,.15)}
  to {box-shadow: inset -28px 0 0 rgba(11,110,79,.52)}
}

@media (prefers-reduced-motion: reduce) {
  .motion-enabled.motion-ready [data-reveal] {opacity: 1;transform: none;transition: none}
  .motion-enabled .app-category,
  .motion-enabled .app-place-card,
  .motion-enabled .app-story-card,
  .hero-motion-orbs span,
  .hero-live-badge > span,
  .app-search::after,
  .app-ad-dots button.is-active {animation: none!important}
  .app-ad-slide,
  .app-ad-link > img {transition: none!important}
}


/* ===== assets/css/mobile-feel-v4.css ===== */
:root{
  --tap-duration:180ms;
  --spring:cubic-bezier(.2,.82,.22,1.18);
  --sheet-drag-y:0px;
}

html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 14px)}
body{-webkit-tap-highlight-color:transparent}
a,button,input,select,textarea{font:inherit}
a,button,[role="button"],label:has(input){-webkit-touch-callout:none}
a,button,[role="button"],.soft-action,.map-chip,.map-result-pill{touch-action:manipulation}
button:disabled,.is-submitting{cursor:wait;opacity:.72}

.pressable{position:relative;isolation:isolate;overflow:hidden;transition:transform var(--tap-duration) var(--spring),filter var(--tap-duration) ease,box-shadow var(--tap-duration) ease}
.pressable::after{content:"";position:absolute;z-index:8;pointer-events:none;width:120px;height:120px;left:calc(var(--press-x,50%) - 60px);top:calc(var(--press-y,50%) - 60px);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.42),rgba(255,255,255,0) 68%);opacity:0;transform:scale(.2);transition:opacity .3s ease,transform .44s ease}
.pressable.is-pressing{transform:scale(.972);filter:saturate(1.04) brightness(.985)}
.pressable.is-pressing::after{opacity:1;transform:scale(1)}
.fab-main.pressable,.icon-btn.pressable,.favorite-button.pressable{overflow:visible}

.horizontal-cards,.map-chips,.map-results-strip,.recent-viewed-row{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-width:none}
.horizontal-cards,.recent-viewed-row{scroll-snap-type:x mandatory}
.horizontal-cards>* , .recent-viewed-row>*{scroll-snap-align:start;scroll-snap-stop:normal}

.progressive-image{background:linear-gradient(100deg,rgba(15,93,102,.06) 20%,rgba(255,255,255,.86) 38%,rgba(15,93,102,.06) 56%);background-size:220% 100%;animation:skeletonMove 1.1s linear infinite;transition:opacity .25s ease,filter .35s ease}
.progressive-image:not(.is-loaded){filter:blur(7px);opacity:.74}
.progressive-image.is-loaded{filter:none;opacity:1;animation:none}
.skeleton{position:relative;overflow:hidden;background:rgba(15,93,102,.08);color:transparent!important;border-radius:14px}
.skeleton::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent,rgba(255,255,255,.78),transparent);transform:translateX(100%);animation:skeletonSweep 1.2s infinite}
@keyframes skeletonMove{to{background-position:-220% 0}}
@keyframes skeletonSweep{to{transform:translateX(-100%)}}

.app-toast-region{position:fixed;z-index:2200;right:50%;bottom:calc(94px + env(safe-area-inset-bottom));transform:translateX(50%);width:min(92%,390px);display:grid;gap:8px;pointer-events:none}
.app-toast{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid rgba(255,255,255,.82);border-radius:17px;background:rgba(20,48,46,.92);color:#fff;box-shadow:0 18px 48px rgba(7,38,38,.25);backdrop-filter:blur(20px);font-size:13px;pointer-events:auto;animation:toastIn .32s var(--spring)}
.app-toast.success{background:color-mix(in srgb,var(--primary) 92%,#102b28)}
.app-toast.error{background:#8d3040}
.app-toast.is-leaving{opacity:0;transform:translateY(12px) scale(.96);transition:.2s}
@keyframes toastIn{from{opacity:0;transform:translateY(18px) scale(.94)}to{opacity:1;transform:none}}

.page-transition-layer{position:fixed;z-index:2100;inset:0;pointer-events:none;opacity:0;background:rgba(244,251,247,.25);backdrop-filter:blur(0);transition:opacity .2s ease,backdrop-filter .2s ease}
.page-transition-layer span{position:absolute;right:50%;top:50%;width:46px;height:46px;margin:-23px;border:4px solid color-mix(in srgb,var(--primary) 18%,transparent);border-top-color:var(--primary);border-radius:50%;opacity:0}
body.page-leaving .page-transition-layer{opacity:1;backdrop-filter:blur(5px)}
body.page-leaving .page-transition-layer span{opacity:1;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

@view-transition{navigation:none}
::view-transition-old(root){animation:pageOut .18s ease both}
::view-transition-new(root){animation:pageIn .34s var(--spring) both}
@keyframes pageOut{to{opacity:.25;transform:scale(.992)}}
@keyframes pageIn{from{opacity:0;transform:translateY(8px) scale(.995)}}

.smart-search-wrap{position:relative;flex:1;display:flex}
.smart-search-wrap>input{width:100%}
.smart-search-results{position:absolute;z-index:950;top:calc(100% + 9px);right:0;left:0;display:grid;gap:4px;padding:8px;border:1px solid rgba(255,255,255,.82);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 20px 50px rgba(8,54,54,.18);backdrop-filter:blur(22px);color:var(--ink);max-height:330px;overflow:auto}
.smart-search-results[hidden]{display:none}
.smart-search-item{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:9px;border-radius:13px;padding:7px;text-align:right;color:var(--ink)}
.smart-search-item:hover,.smart-search-item.is-active{background:color-mix(in srgb,var(--primary-2) 10%,#fff)}
.smart-search-item img,.smart-search-item>span:first-child{width:42px;height:42px;border-radius:12px;object-fit:cover;display:grid;place-items:center;background:var(--app-surface)}
.smart-search-item strong,.smart-search-item small{display:block}.smart-search-item small{color:var(--muted);font-size:10px}.smart-search-item>i{font-style:normal;color:var(--primary)}
.smart-search-empty{padding:15px;text-align:center;color:var(--muted);font-size:12px}

.recent-viewed-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,26%);gap:12px;overflow-x:auto;padding:3px 2px 15px}
.recent-mini-card{display:grid;grid-template-columns:70px 1fr;gap:10px;align-items:center;padding:9px;border-radius:19px;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);box-shadow:0 11px 27px rgba(15,93,102,.08)}
.recent-mini-card img{width:70px;height:70px;border-radius:14px;object-fit:cover}.recent-mini-card strong{display:block;font-size:13px}.recent-mini-card small{color:var(--muted);font-size:10px}

.notification-permission{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px;border-radius:21px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 9%,#fff),#fff)}
.notification-list{display:grid;gap:11px}.notification-card{display:grid;grid-template-columns:50px 1fr auto;gap:12px;align-items:start;padding:16px;border-radius:22px;background:rgba(255,255,255,.83);border:1px solid rgba(255,255,255,.9);box-shadow:0 12px 30px rgba(15,93,102,.08)}
.notification-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;background:color-mix(in srgb,var(--primary-2) 13%,#fff);font-size:23px}.notification-card h2{font-size:16px;margin:2px 0 4px}.notification-card p{font-size:12px;color:var(--muted);margin:0}.notification-card time{font-size:9px;color:var(--muted)}

.rewards-card{position:relative;overflow:hidden;padding:22px;border-radius:25px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;box-shadow:var(--app-shadow)}
.rewards-card::after{content:attr(data-badge-icon);position:absolute;left:12px;bottom:-26px;font-size:100px;opacity:.14}.rewards-card h2{margin:3px 0}.rewards-card p{color:rgba(255,255,255,.78)}.reward-progress{height:8px;background:rgba(255,255,255,.24);border-radius:99px;overflow:hidden}.reward-progress>span{display:block;height:100%;width:var(--reward-progress);background:#fff;border-radius:inherit}.points-history{display:grid;gap:8px}.points-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.points-row b{color:var(--primary)}

.owner-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.owner-stat{padding:17px;border-radius:20px;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9)}.owner-stat strong{font-size:25px;display:block}.owner-stat small{color:var(--muted)}
.owner-place{display:grid;grid-template-columns:80px 1fr auto;gap:13px;align-items:center;padding:13px;border-radius:22px;background:#fff;border:1px solid var(--line)}.owner-place img{width:80px;height:70px;border-radius:16px;object-fit:cover}

.coupon-box{display:grid;grid-template-columns:minmax(130px,180px) 1fr;gap:18px;align-items:center;padding:18px;margin-top:14px;border:1px dashed color-mix(in srgb,var(--primary) 35%,transparent);border-radius:22px;background:color-mix(in srgb,var(--primary-2) 7%,#fff)}
.coupon-qr{width:100%;aspect-ratio:1;border-radius:16px;background:#fff;padding:8px;object-fit:contain}.coupon-code{display:inline-flex;padding:8px 13px;border-radius:12px;background:#fff;border:1px solid var(--line);font:900 18px/1 monospace;letter-spacing:1px;color:var(--primary)}

.nearest-status{position:sticky;top:calc(var(--header-height) + 8px);z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:18px;margin-bottom:16px}.nearest-card[data-distance-value]{order:var(--distance-order,0)}

.motion-off *{animation:none!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
.motion-light .hero-motion-orbs,.motion-light .card-glint{display:none}.motion-light [data-reveal]{transition-duration:.28s!important}.motion-rich .app-hero{animation:richHeroFloat 7s ease-in-out infinite}.motion-rich .fab-main{animation:richFabPulse 3.2s ease-in-out infinite}
@keyframes richHeroFloat{50%{box-shadow:0 28px 70px color-mix(in srgb,var(--primary) 20%,transparent)}}
@keyframes richFabPulse{50%{box-shadow:0 15px 38px color-mix(in srgb,var(--primary) 50%,transparent)}}

@media(max-width:760px){
  a.btn,button.btn,.soft-action,.icon-btn,.favorite-button,.map-chip,.map-result-pill,.fab-action,.dock-edge{min-height:48px}
  input,select,textarea{min-height:48px}
  .app-toast-region{bottom:calc(91px + env(safe-area-inset-bottom))}
  .page-transition-layer span{top:46%}
  .recent-viewed-row{grid-auto-columns:78%;margin-left:-10px;padding-left:10px}
  .smart-search-results{position:fixed;top:calc(var(--header-height) + 76px);right:12px;left:12px;max-height:min(52vh,420px)}
  .notification-permission{align-items:flex-start;display:grid}.notification-permission .btn{width:100%}
  .notification-card{grid-template-columns:46px 1fr}.notification-card>a,.notification-card>time{grid-column:2}
  .owner-stats{grid-template-columns:1fr 1fr}.owner-place{grid-template-columns:65px 1fr}.owner-place img{width:65px;height:62px}.owner-place>.btn{grid-column:1/-1}
  .coupon-box{grid-template-columns:110px 1fr;gap:12px;padding:12px}
}
@media(max-width:390px){.coupon-box{grid-template-columns:1fr}.coupon-qr{max-width:180px;margin:auto}.owner-stats{grid-template-columns:1fr}}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}.pressable,.page-transition-layer,.progressive-image{transition:none!important}.page-transition-layer{display:none}.motion-rich .app-hero,.motion-rich .fab-main{animation:none!important}
}


/* ===== assets/css/theme-v3.css ===== */
/* Nabkna 3.0 — professional local-app theme */
.ui-icon{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.25em;pointer-events:none}.ui-icon use{pointer-events:none}.eyebrow .ui-icon,.btn .ui-icon{margin-inline-end:.35em}
body{background:radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--primary-2) 12%,transparent),transparent 30rem),linear-gradient(180deg,#f8fcfa 0,var(--app-surface) 38%,#f6faf8 100%);color:#173b36}.site-header{border-bottom:1px solid rgba(255,255,255,.7);background:color-mix(in srgb,#fff 78%,transparent);backdrop-filter:blur(22px) saturate(145%)}.site-header.scrolled{box-shadow:0 12px 40px rgba(15,73,58,.1)}.brand-mark{box-shadow:inset 0 1px 0 #fff5,0 8px 20px color-mix(in srgb,var(--primary) 26%,transparent)}.main-nav a{border-radius:12px}.main-nav a.active{background:color-mix(in srgb,var(--primary) 9%,#fff);color:var(--primary)}
.emergency-banner{position:relative;z-index:91;min-height:48px;display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 18px;background:linear-gradient(135deg,var(--emergency-color),color-mix(in srgb,var(--emergency-color) 78%,#161a24));color:#fff;text-decoration:none;box-shadow:0 9px 25px color-mix(in srgb,var(--emergency-color) 30%,transparent)}.emergency-banner span{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#fff2}.emergency-banner p{margin:0;opacity:.9}.emergency-banner b{font-size:12px;background:#fff;color:var(--emergency-color);padding:7px 11px;border-radius:999px}.emergency-banner .ui-icon{width:18px;height:18px}
.glass-card,.glass-panel,.content-panel,.side-card,.form-card{border:1px solid rgba(255,255,255,.82);box-shadow:0 18px 50px rgba(21,72,59,.08),inset 0 1px 0 #fff;background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(255,255,255,.69));backdrop-filter:blur(18px) saturate(130%)}.btn{gap:6px}.icon-btn .ui-icon,.menu-toggle .ui-icon{width:21px;height:21px}.app-dock .ui-icon{width:21px;height:21px}.fab-action .ui-icon{width:20px;height:20px}.fab-main{background:linear-gradient(145deg,var(--primary),var(--primary-2));box-shadow:0 14px 38px color-mix(in srgb,var(--primary) 38%,transparent),inset 0 1px 0 #ffffff59}.fab-main:after{content:"";position:absolute;inset:-7px;border:1px solid color-mix(in srgb,var(--primary) 30%,transparent);border-radius:50%;animation:v3FabHalo 2.8s ease-in-out infinite}@keyframes v3FabHalo{50%{transform:scale(1.08);opacity:.28}}
.owner-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:34px;border-radius:30px;background:linear-gradient(135deg,#0b5d4a,#12815f 58%,#53b77b);color:#fff;box-shadow:0 24px 70px #0b6e4f33}.owner-hero:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;inset:auto -70px -110px auto;background:#fff1}.owner-hero h1{margin:8px 0}.owner-hero p{margin:0;opacity:.85}.owner-hero .btn{z-index:1}.owner-stats,.admin-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.owner-stat,.admin-kpi-grid article{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px 11px;padding:18px;border:1px solid #fff;border-radius:22px;background:#ffffffd9;box-shadow:0 12px 35px #173b3610}.owner-stat>span,.admin-kpi-grid article>span{grid-row:1/3;width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--primary) 11%,#fff);color:var(--primary)}.owner-stat strong,.admin-kpi-grid strong{font-size:24px}.owner-stat small,.admin-kpi-grid small{color:#6a817b}.owner-place-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.owner-dashboard-card{overflow:hidden;border:1px solid #fff;border-radius:28px;background:#fffc;box-shadow:0 20px 52px #12392e12}.owner-card-cover{position:relative;height:190px}.owner-card-cover>img{width:100%;height:100%;object-fit:cover}.owner-card-cover>.status{position:absolute;top:14px;right:14px}.owner-verified{position:absolute;bottom:12px;left:12px;display:flex;gap:4px;align-items:center;padding:7px 10px;border-radius:999px;background:#0b6e4f;color:#fff;font-size:12px}.owner-card-body{padding:20px}.owner-mini-stats{display:flex;gap:12px;color:#71857f;font-size:12px}.owner-control-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:16px}.owner-control-grid a{position:relative;display:grid;justify-items:center;gap:7px;padding:13px 6px;border:1px solid #e3efeb;border-radius:16px;color:#305b52;text-align:center;text-decoration:none;background:#f7fbf9}.owner-control-grid a:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 25%,#ddd)}.owner-control-grid b{font-size:11px}.owner-control-grid i{position:absolute;top:5px;left:5px;min-width:19px;border-radius:99px;background:#d5414d;color:#fff;font-size:10px;font-style:normal}.owner-edit-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:18px;align-items:start}.owner-list{display:grid;gap:10px}.owner-list article{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px;border:1px solid #e4efeb;border-radius:16px;background:#fafdfc}.owner-list p{margin:3px 0;color:#6b807a}.owner-filter-row{display:flex;gap:8px;overflow:auto;margin-bottom:15px;padding:2px}.owner-filter-row a{white-space:nowrap;padding:9px 14px;border:1px solid #dceae5;border-radius:999px;text-decoration:none;color:#506e67;background:#fff}.owner-filter-row a.active{background:var(--primary);color:#fff}.requests-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.request-card{padding:20px;border:1px solid #fff;border-radius:22px;background:#ffffffe8;box-shadow:0 13px 36px #173b3610}.request-card header{display:flex;justify-content:space-between}.request-card h2{margin:13px 0 6px}.request-card strong{display:block;margin:8px 0}.owner-reply{padding:12px;border-radius:14px;background:#eef8f4}.verification-state{display:flex;align-items:center;gap:14px;margin-bottom:16px;padding:18px}.verification-orb{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-2))}.verification-orb .ui-icon{width:27px;height:27px}.interest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:11px}.interest-grid label{position:relative;display:grid;justify-items:center;gap:6px;padding:13px 7px;border:1px solid #dceae5;border-radius:17px;background:#fff;cursor:pointer}.interest-grid input{position:absolute;opacity:0}.interest-grid label:has(input:checked){color:var(--primary);border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,#fff);box-shadow:0 6px 20px color-mix(in srgb,var(--primary) 13%,transparent)}.interest-grid span{font-size:22px}.account-nav .ui-icon{width:18px;height:18px}.notification-card.is-unread{border-color:color-mix(in srgb,var(--primary) 42%,#fff);box-shadow:0 12px 35px color-mix(in srgb,var(--primary) 11%,transparent)}.subheading{margin-top:28px}.code-box{display:block;overflow:auto;padding:13px;border-radius:13px;background:#153a33;color:#d8fff0;direction:ltr;text-align:left;user-select:all}.map-filter-toggles{display:flex;gap:7px;overflow:auto;padding-top:10px}.map-filter-toggle{white-space:nowrap;border:1px solid #d7e6e1;border-radius:999px;padding:8px 13px;background:#fff;color:#315d53}.map-filter-toggle.active{background:#163d35;color:#fff}.marker-cluster div{display:grid!important;place-items:center!important;background:linear-gradient(145deg,var(--primary),var(--primary-2))!important;color:#fff!important;font-weight:900!important;box-shadow:0 6px 20px #0b6e4f4d!important}.marker-cluster{background:color-mix(in srgb,var(--primary) 22%,transparent)!important}
.place-branches{display:grid;gap:9px}.place-branch{padding:13px;border:1px solid #e1ede9;border-radius:15px;background:#fafdfc}.verified-expiry{font-size:11px;color:#5f7b73}.booking-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px;border-radius:19px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,#fff),#fff)}
.filter-check{display:flex!important;align-items:center;gap:6px;white-space:nowrap;padding:9px 12px!important;border:1px solid #dce9e5;border-radius:14px;background:#fff}.booking-shell{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:18px;align-items:start}.booking-place-card{position:sticky;top:100px;overflow:hidden;padding:18px;border-radius:24px}.booking-place-card img{width:100%;height:200px;object-fit:cover;border-radius:17px;margin-bottom:14px}.support-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:start}.ticket-thread{margin-bottom:18px}.ticket-thread>header{display:flex;align-items:center;justify-content:space-between}.ticket-messages{display:grid;gap:10px;margin:18px 0}.ticket-message{max-width:82%;padding:13px 15px;border-radius:18px 18px 6px 18px;background:#eef8f4}.ticket-message.staff{justify-self:end;border-radius:18px 18px 18px 6px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff}.ticket-message p{margin:6px 0}.ticket-message small{opacity:.7}
.emergency-hero{display:flex;align-items:center;gap:18px;padding:28px;border-radius:28px;background:linear-gradient(135deg,#a92e3c,#d65761);color:#fff;box-shadow:0 22px 55px #a92e3c35}.emergency-hero h1{margin:3px 0}.emergency-hero p{margin:0;opacity:.82}.emergency-hero .btn{margin-inline-start:auto}.emergency-pulse{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:#fff2;animation:emergencyPulse 1.8s ease-in-out infinite}.emergency-pulse .ui-icon{width:30px;height:30px}.emergency-contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:18px}.emergency-contact-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:17px;border:1px solid #fff;border-radius:20px;background:#fff;box-shadow:0 12px 34px #173b3610}.emergency-contact-card>span{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:#fff0f1;font-size:23px}.emergency-contact-card small{display:block;color:#74837f}.emergency-contact-card b{color:#b12e3a}@keyframes emergencyPulse{50%{transform:scale(1.07);box-shadow:0 0 0 11px #ffffff14}}
@media(max-width:800px){.emergency-banner{justify-content:flex-start;padding-inline:12px}.emergency-banner p{display:none}.emergency-banner b{margin-inline-start:auto}.owner-hero,.emergency-hero{align-items:flex-start;flex-direction:column;padding:24px}.emergency-hero .btn{margin:0}.emergency-contact-grid{grid-template-columns:1fr}.owner-stats,.admin-kpi-grid{grid-template-columns:repeat(2,1fr)}.owner-place-grid,.requests-grid,.owner-edit-layout,.booking-shell,.support-layout{grid-template-columns:1fr}.booking-place-card{position:static}.owner-control-grid{grid-template-columns:repeat(3,1fr)}.owner-card-cover{height:160px}.interest-grid{grid-template-columns:repeat(3,1fr)}.app-dock{backdrop-filter:blur(22px) saturate(150%)}.account-layout{padding-top:16px}}
@media(max-width:480px){.owner-stats{gap:8px}.owner-stat{padding:12px}.owner-stat strong{font-size:20px}.owner-control-grid{gap:6px}.interest-grid{grid-template-columns:repeat(2,1fr)}.notification-card{grid-template-columns:auto 1fr}.notification-card time{grid-column:2}.booking-cta{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.fab-main:after{animation:none}}
.has-emergency-banner .emergency-banner{position:fixed;inset:0 0 auto;z-index:1400;height:48px}.has-emergency-banner .site-header{top:var(--emergency-height)}body.has-emergency-banner:not(.map-page){padding-top:calc(var(--header-height) + var(--emergency-height))}.has-emergency-banner.map-page{padding-top:calc(var(--header-height) + var(--emergency-height))}.has-emergency-banner.map-page .immersive-map{height:calc(var(--app-height,100vh) - var(--header-height) - var(--emergency-height))}
.has-emergency-banner .emergency-banner{top:var(--notice-height);bottom:auto}.has-emergency-banner .site-header{top:calc(var(--notice-height) + var(--emergency-height))}body.has-emergency-banner:not(.map-page){padding-top:calc(var(--header-height) + var(--notice-height) + var(--emergency-height))}.has-emergency-banner.map-page{padding-top:calc(var(--header-height) + var(--notice-height) + var(--emergency-height))}.has-emergency-banner.map-page .immersive-map{height:calc(var(--app-height,100vh) - var(--header-height) - var(--notice-height) - var(--emergency-height))}
.filters-bar{grid-template-columns:minmax(220px,1fr) 190px 150px auto auto auto}@media(max-width:800px){.filters-bar{grid-template-columns:1fr}}
.density-compact .section{padding-block:42px}.density-compact .content-panel,.density-compact .side-card,.density-compact .form-card{padding:18px}.roundness-soft .content-panel,.roundness-soft .side-card,.roundness-soft .form-card,.roundness-soft .place-card{border-radius:30px}


/* ===== assets/css/theme-v4.css ===== */
/* Nabkna 4 — mobile-first application shell */
:root{
  --primary:#4338ca;
  --primary-2:#0ea5e9;
  --accent:#f97316;
  --app-surface:#f5f7ff;
  --ink:#111827;
  --muted:#667085;
  --line:#e5e7f2;
  --success:#079669;
  --danger:#e11d48;
  --warning:#d97706;
  --v4-card:#fff;
  --v4-glass:rgba(255,255,255,.82);
  --v4-glass-strong:rgba(255,255,255,.94);
  --v4-shadow-sm:0 8px 24px rgba(30,41,90,.08);
  --v4-shadow:0 18px 48px rgba(30,41,90,.12);
  --v4-shadow-lg:0 30px 80px rgba(30,41,90,.18);
  --v4-radius-sm:14px;
  --v4-radius:22px;
  --v4-radius-lg:30px;
  --header-height:78px;
  --dock-height:78px;
  --top-stack:calc(var(--notice-real-height,var(--notice-height,0px)) + var(--emergency-real-height,var(--emergency-height,0px)));
  --app-bottom-space:24px;
  --vvh:100dvh;
  --vvw:100vw;
}
*{box-sizing:border-box}
html.nabkna-v4{width:100%;max-width:100%;overflow-x:clip;background:var(--app-surface);scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
.v4-ui{width:100%;max-width:100%;min-height:100dvh;overflow-x:clip;color:var(--ink);background:
  radial-gradient(circle at 8% 4%,color-mix(in srgb,var(--primary-2) 12%,transparent),transparent 29rem),
  radial-gradient(circle at 96% 22%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 32rem),
  linear-gradient(180deg,color-mix(in srgb,var(--app-surface) 94%,#fff),var(--app-surface));
  font-family:"Readex Pro","Tajawal",system-ui,-apple-system,"Segoe UI",sans-serif;accent-color:var(--primary)}
.v4-ui::before{display:none}
.v4-ui *{min-width:0}
.v4-ui img,.v4-ui svg,.v4-ui video,.v4-ui canvas{max-width:100%}
.v4-ui img{display:block}
.v4-ui a,.v4-ui button{-webkit-tap-highlight-color:transparent}
.v4-ui .ui-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.v4-ui .container{width:min(calc(100% - 40px),1180px);margin-inline:auto}
.v4-ui main{isolation:isolate}
.v4-ui .section{padding:56px 0 72px}
.v4-ui .section-heading h1,.v4-ui .section-heading h2,.v4-ui .app-section-head h2{letter-spacing:-.035em;text-wrap:balance}
.v4-ui .section-heading h1{font-size:clamp(32px,5vw,54px);line-height:1.08}
.v4-ui .eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--primary);font-weight:850;letter-spacing:0}
.v4-ui .muted{color:var(--muted)}

/* Controls */
.v4-ui .btn{min-height:46px;padding:10px 17px;border:0;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:820;line-height:1.15;box-shadow:none;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.v4-ui .btn:hover{transform:translateY(-2px)}
.v4-ui .btn:active{transform:scale(.975)}
.v4-ui .btn-primary{color:#fff;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary-2) 68%,var(--primary)));box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 25%,transparent)}
.v4-ui .btn-secondary{color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,#fff);border:1px solid color-mix(in srgb,var(--primary) 15%,#fff)}
.v4-ui .btn-outline,.v4-ui .btn-ghost{color:var(--ink);background:rgba(255,255,255,.75);border:1px solid var(--line)}
.v4-ui .btn-danger{color:#fff;background:linear-gradient(135deg,#be123c,var(--danger))}
.v4-ui .btn-sm{min-height:40px;padding:8px 13px;border-radius:13px}
.v4-ui .text-link{color:var(--primary);font-weight:800}
.v4-ui :is(input,select,textarea){width:100%;max-width:100%;min-height:48px;border:1px solid #dfe3f0;border-radius:15px;background:rgba(255,255,255,.92);color:var(--ink);padding:11px 14px;outline:0;box-shadow:0 1px 0 rgba(255,255,255,.8) inset;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.v4-ui textarea{min-height:116px;resize:vertical}
.v4-ui :is(input,select,textarea):focus{border-color:color-mix(in srgb,var(--primary) 62%,#fff);background:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 11%,transparent)}
.v4-ui input[type="checkbox"],.v4-ui input[type="radio"]{width:19px;height:19px;min-height:0;padding:0;flex:0 0 auto}
.v4-ui .form-grid{gap:17px}
.v4-ui .form-grid label{gap:8px;color:#344054;font-size:13px;font-weight:780}
.v4-ui .form-card,.v4-ui .content-panel,.v4-ui .content-card,.v4-ui .side-card,.v4-ui .auth-card,.v4-ui .account-nav,.v4-ui .glass-panel{border:1px solid rgba(255,255,255,.88);background:var(--v4-glass-strong);border-radius:var(--v4-radius);box-shadow:var(--v4-shadow-sm);backdrop-filter:blur(20px) saturate(145%);-webkit-backdrop-filter:blur(20px) saturate(145%)}
.v4-ui .content-panel,.v4-ui .side-card,.v4-ui .form-card{padding:24px}
.v4-ui .alert{border:1px solid rgba(255,255,255,.86);box-shadow:var(--v4-shadow-sm);backdrop-filter:blur(18px)}
.v4-ui .empty-state{border:1px dashed color-mix(in srgb,var(--primary) 24%,#dfe3f0);border-radius:var(--v4-radius);background:rgba(255,255,255,.68);padding:34px}

/* Header */
.v4-ui .site-header{position:fixed;z-index:1200;top:var(--top-stack);right:0;left:0;height:var(--header-height);border:0;border-bottom:1px solid rgba(255,255,255,.8);background:rgba(248,250,255,.76);box-shadow:0 8px 28px rgba(30,41,90,.05);backdrop-filter:blur(24px) saturate(170%);-webkit-backdrop-filter:blur(24px) saturate(170%)}
.v4-ui .site-header.scrolled{background:rgba(255,255,255,.91);box-shadow:0 12px 35px rgba(30,41,90,.1)}
.v4-ui .header-inner{height:100%;display:flex;align-items:center;gap:22px}
.v4-ui .brand{gap:11px}
.v4-ui .brand-mark,.v4-ui .brand-logo-image{width:47px;height:47px;border-radius:16px}
.v4-ui .brand-mark{background:linear-gradient(145deg,var(--primary),var(--primary-2));box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 25%,transparent)}
.v4-ui .brand strong{font-size:18px;color:var(--ink)}
.v4-ui .brand small{color:var(--muted)}
.v4-ui .main-nav{margin-inline:auto;display:flex;align-items:center;gap:4px;padding:5px;border:1px solid rgba(255,255,255,.88);border-radius:16px;background:rgba(255,255,255,.58)}
.v4-ui .main-nav a{position:relative;padding:9px 13px;border-radius:12px;color:#586174;font-size:13px;font-weight:760}
.v4-ui .main-nav a:is(:hover,.active){color:var(--primary);background:#fff;box-shadow:0 5px 15px rgba(30,41,90,.07)}
.v4-ui .header-actions{gap:8px}
.v4-ui .icon-btn{position:relative;width:44px;height:44px;border:1px solid rgba(255,255,255,.88);border-radius:14px;background:rgba(255,255,255,.78);color:var(--primary);box-shadow:0 6px 18px rgba(30,41,90,.07)}
.v4-ui .header-notification b{position:absolute;top:-4px;left:-4px;min-width:18px;height:18px;padding:0 4px;border:2px solid #fff;border-radius:99px;display:grid;place-items:center;color:#fff;background:var(--danger);font-size:8px}
.v4-ui .account-chip{min-height:44px;padding:5px 6px 5px 11px;border:1px solid rgba(255,255,255,.88);border-radius:15px;background:rgba(255,255,255,.76)}
.v4-ui .account-chip img{width:34px;height:34px;border-radius:11px}
.mobile-app-context,.menu-backdrop,.mobile-filter-toggle{display:none}
.v4-ui:not(.map-page){padding-top:calc(var(--header-height) + var(--top-stack))}
.v4-ui .site-notice{position:fixed;z-index:1420;top:0;right:0;left:0;min-height:34px;height:auto;padding:8px 16px;background:linear-gradient(90deg,var(--primary),var(--primary-2));color:#fff;text-align:center;font-size:12px;font-weight:750}
.v4-ui .emergency-banner{z-index:1410!important;top:var(--notice-real-height,0px)!important;height:auto!important;min-height:48px;padding-block:9px;background:linear-gradient(90deg,color-mix(in srgb,var(--emergency-color) 88%,#111827),var(--emergency-color))}

/* Home */
.v4-ui .app-home{padding-bottom:36px}
.v4-ui .app-hero{min-height:410px;margin-top:28px;padding:clamp(32px,6vw,68px);border:0;border-radius:36px;background:
  radial-gradient(circle at 15% 18%,rgba(255,255,255,.22),transparent 18rem),
  linear-gradient(135deg,color-mix(in srgb,var(--primary) 94%,#0f172a),var(--primary),var(--primary-2));
  box-shadow:0 28px 70px color-mix(in srgb,var(--primary) 25%,transparent)}
.v4-ui .app-hero::before{width:380px;height:380px;border:1px solid rgba(255,255,255,.15);background:transparent}
.v4-ui .app-hero-content{max-width:760px}
.v4-ui .home-greeting{width:max-content;max-width:100%;padding:7px 10px;border:1px solid rgba(255,255,255,.2);border-radius:13px;background:rgba(255,255,255,.1);font-weight:700}
.v4-ui .app-hero h1{font-size:clamp(42px,7vw,76px);letter-spacing:-.055em;line-height:1.03;margin:18px 0 13px;max-width:800px}
.v4-ui .app-hero p{max-width:630px;font-size:17px;line-height:1.8}
.v4-ui .app-search{max-width:690px;min-height:66px;margin-top:28px;padding:7px;border:1px solid rgba(255,255,255,.92);border-radius:21px;background:rgba(255,255,255,.93);box-shadow:0 18px 45px rgba(10,20,70,.24)}
.v4-ui .app-search input{min-height:50px;font-size:16px}
.v4-ui .app-search .search-button{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,var(--accent),#fb923c);box-shadow:0 10px 23px rgba(249,115,22,.28)}
.v4-ui .hero-quick-row a{min-height:40px;display:inline-flex;align-items:center;padding:9px 13px;border-radius:13px;background:rgba(255,255,255,.13);font-weight:760}
.v4-ui .hero-live-badge{border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.14)}
.v4-ui .app-section{padding:54px 0 5px}
.v4-ui .app-section-head{margin-bottom:20px}
.v4-ui .app-section-head h2{font-size:clamp(27px,4vw,39px)}
.v4-ui .soft-action{min-height:42px;border:1px solid color-mix(in srgb,var(--primary) 12%,#fff);border-radius:14px;background:#fff;color:var(--primary);box-shadow:var(--v4-shadow-sm)}
.v4-ui .app-category-grid{gap:15px}
.v4-ui .app-category{border:1px solid rgba(255,255,255,.9);border-radius:26px;box-shadow:var(--v4-shadow-sm);min-height:154px}
.v4-ui .app-category:nth-child(1),.v4-ui .app-category:nth-child(2){min-height:205px}
.v4-ui .app-category::after{background:linear-gradient(to top,rgba(12,17,48,.88),rgba(12,17,48,.08) 74%)}
.v4-ui .app-category.no-image::after{background:linear-gradient(145deg,color-mix(in srgb,var(--cat-color) 18%,#fff),#fff)}
.v4-ui .app-category-icon{border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.9);box-shadow:0 9px 25px rgba(15,23,42,.13)}
.v4-ui .app-category strong{font-size:17px}
.v4-ui .horizontal-cards{grid-auto-columns:minmax(290px,31%);gap:16px;padding-bottom:22px}
.v4-ui .app-place-card,.v4-ui .place-card,.v4-ui .app-story-card{border:1px solid rgba(255,255,255,.9);border-radius:26px;background:#fff;box-shadow:var(--v4-shadow-sm);overflow:hidden}
.v4-ui .app-place-card .card-image{height:195px}
.v4-ui .verified-overlay,.v4-ui .verified{display:inline-flex;align-items:center;gap:4px;color:var(--primary);background:#fff;border:1px solid rgba(255,255,255,.88);box-shadow:0 5px 15px rgba(30,41,90,.1)}
.v4-ui .category-pill{background:color-mix(in srgb,var(--primary) 8%,#fff);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 10%,#fff)}
.v4-ui .distance-badge{background:color-mix(in srgb,var(--primary-2) 10%,#fff);color:#0369a1}
.v4-ui .app-story-card{background:linear-gradient(145deg,var(--primary),var(--primary-2));box-shadow:var(--v4-shadow)}
.v4-ui .app-story-card:nth-child(2n){background:linear-gradient(145deg,#7c3aed,var(--accent))}
.v4-ui .install-promo,.v4-ui .rewards-card{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 90%,#0f172a),var(--primary),var(--primary-2));box-shadow:var(--v4-shadow)}

/* Listings and content pages */
.v4-ui .heading-row{gap:16px}
.v4-ui .heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.v4-ui .filters-bar{position:relative;gap:10px;padding:12px;border:1px solid rgba(255,255,255,.88);border-radius:21px;background:rgba(255,255,255,.78);box-shadow:var(--v4-shadow-sm);backdrop-filter:blur(18px)}
.v4-ui .filter-check{min-height:48px!important;border-color:#e2e6f2;border-radius:15px;background:#fff}
.v4-ui .cards-grid{gap:20px}
.v4-ui .place-card{transition:transform .2s ease,box-shadow .2s ease}
.v4-ui .place-card:hover{transform:translateY(-4px);box-shadow:var(--v4-shadow)}
.v4-ui .place-card .card-image{height:220px}
.v4-ui .place-card .card-body{padding:19px}
.v4-ui .content-card{overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.v4-ui .content-card:hover{transform:translateY(-4px);box-shadow:var(--v4-shadow)}
.v4-ui .content-card .card-image{width:100%;height:210px;object-fit:cover;background:color-mix(in srgb,var(--primary) 8%,#fff)}
.v4-ui .content-card .card-body{padding:19px}
.v4-ui .favorite-button{top:13px;left:13px;width:44px;height:44px;border:1px solid rgba(255,255,255,.86);background:rgba(255,255,255,.9);color:#98a2b3;box-shadow:0 8px 22px rgba(30,41,90,.14)}
.v4-ui .favorite-button.active{color:var(--danger);background:#fff1f4}
.v4-ui .pagination a,.v4-ui .pagination span{min-width:42px;min-height:42px;border-radius:13px}

/* Place */
.v4-ui .place-hero{padding-top:28px}
.v4-ui .place-cover{height:min(58vh,560px);border:1px solid rgba(255,255,255,.88);border-radius:32px;box-shadow:var(--v4-shadow);overflow:hidden}
.v4-ui .place-cover::after{background:linear-gradient(180deg,rgba(10,15,45,.04),rgba(10,15,45,.88))}
.v4-ui .place-cover-copy{right:clamp(24px,5vw,52px);left:clamp(24px,5vw,52px);bottom:clamp(24px,5vw,48px)}
.v4-ui .place-cover-copy h1{font-size:clamp(34px,6vw,64px);letter-spacing:-.045em}
.v4-ui .place-layout{grid-template-columns:minmax(0,1fr) 360px;gap:22px;padding-top:24px}
.v4-ui .content-panel+.content-panel,.v4-ui .side-card+.side-card{margin-top:18px}
.v4-ui .contact-list a,.v4-ui .contact-list div{min-height:48px;border-color:#eceef6}
.v4-ui .booking-cta{background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 10%,#fff),#fff)}
.place-mobile-actions{display:none}

/* Accounts, owners, support */
.v4-ui .account-layout{grid-template-columns:270px minmax(0,1fr);gap:20px}
.v4-ui .account-nav{padding:12px;position:sticky;top:calc(var(--header-height) + var(--top-stack) + 16px)}
.v4-ui .account-nav a{display:flex;align-items:center;gap:9px;min-height:46px;border-radius:14px}
.v4-ui .account-nav a:is(:hover,.active){background:color-mix(in srgb,var(--primary) 9%,#fff);color:var(--primary)}
.v4-ui .owner-hero,.v4-ui .emergency-hero{border-radius:30px;box-shadow:var(--v4-shadow)}
.v4-ui .owner-hero{background:radial-gradient(circle at 88% 10%,rgba(255,255,255,.18),transparent 18rem),linear-gradient(135deg,color-mix(in srgb,var(--primary) 92%,#111827),var(--primary),var(--primary-2));color:#fff}
.v4-ui .owner-dashboard-card{overflow:hidden;border:1px solid rgba(255,255,255,.9);border-radius:28px;background:rgba(255,255,255,.95);box-shadow:var(--v4-shadow-sm)}
.v4-ui .owner-verified{background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 7px 20px color-mix(in srgb,var(--primary) 28%,transparent)}
.v4-ui .owner-control-grid a{min-height:82px;border-color:#e6e9f3;background:#f9faff;color:#3b4260;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.v4-ui .owner-control-grid a:hover{border-color:color-mix(in srgb,var(--primary) 25%,#e6e9f3);background:color-mix(in srgb,var(--primary) 6%,#fff)}
.v4-ui .owner-list article,.v4-ui .owner-filter-row a{border-color:#e4e7f1;background:#fff}
.v4-ui .profile-identity{border-color:rgba(255,255,255,.9);background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,#fff),rgba(255,255,255,.92));box-shadow:var(--v4-shadow-sm)}
.v4-ui .profile-avatar{box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 18%,transparent)}
.v4-ui .owner-stat,.v4-ui .owner-place,.v4-ui .request-card,.v4-ui .notification-card,.v4-ui .emergency-contact-card{border-color:rgba(255,255,255,.9);background:#fff;box-shadow:var(--v4-shadow-sm)}
.v4-ui .interest-grid label{min-height:84px;border-color:#e4e7f1;border-radius:18px}
.v4-ui .ticket-message{background:#edf2ff}
.v4-ui .ticket-message.staff{background:linear-gradient(135deg,var(--primary),var(--primary-2))}
.v4-ui .auth-shell{min-height:calc(100dvh - var(--header-height) - var(--top-stack) - 120px)}
.v4-ui .auth-card{padding:30px}
.v4-ui .code-box{background:#111827;color:#dbeafe}

/* Desktop footer */
.v4-ui .site-footer{margin-top:30px;padding-top:58px;background:linear-gradient(145deg,#111827,#172554);color:#fff}
.v4-ui .footer-grid p,.v4-ui .footer-grid>div>a,.v4-ui .brand-light small{color:#cbd5e1}
.v4-ui .site-footer .brand strong{color:#fff}
.v4-ui .app-dock,.v4-ui .fab-backdrop{display:none}
.v4-ui .install-modal{padding:18px;background:rgba(15,23,42,.48);backdrop-filter:blur(8px)}
.v4-ui .install-modal-card{border-radius:27px;background:rgba(255,255,255,.96);box-shadow:var(--v4-shadow-lg)}
.v4-ui .install-app-icon{background:linear-gradient(145deg,var(--primary),var(--primary-2));box-shadow:0 13px 30px color-mix(in srgb,var(--primary) 25%,transparent)}
.v4-ui .page-transition-layer{background:color-mix(in srgb,var(--app-surface) 70%,transparent)}
.v4-ui .app-ad-slider{border:1px solid rgba(255,255,255,.82);background:linear-gradient(145deg,var(--primary),#111827);box-shadow:0 24px 70px color-mix(in srgb,var(--primary) 22%,transparent)}
.v4-ui .app-ad-shade{background:linear-gradient(to left,rgba(10,15,45,.88),rgba(10,15,45,.48) 48%,rgba(10,15,45,.08))}
.v4-ui .app-ad-copy>small,.v4-ui .app-ad-copy>b{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.v4-ui .table-wrap,.v4-ui .code-box,.v4-ui .coupon-code{max-width:100%;overflow:auto;overflow-wrap:anywhere}

/* Map */
.v4-ui.map-page{padding-top:calc(var(--header-height) + var(--top-stack));padding-bottom:0}
.v4-ui .immersive-map{height:calc(var(--vvh) - var(--header-real-height,var(--header-height)) - var(--top-stack));min-height:520px;background:#e9edf7}
.v4-ui .immersive-map .leaflet-tile-pane{filter:saturate(.88) contrast(.98) brightness(1.03)}
.v4-ui .map-metrics,.v4-ui .map-search-panel,.v4-ui .map-floating-controls,.v4-ui .map-bottom-sheet{border:1px solid rgba(255,255,255,.9);background:rgba(255,255,255,.84);box-shadow:var(--v4-shadow);backdrop-filter:blur(22px) saturate(150%)}
.v4-ui .map-chip.active,.v4-ui .map-filter-toggle.active{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff}
.v4-ui .map-locate-button{background:linear-gradient(135deg,var(--accent),#fb923c);box-shadow:0 14px 34px rgba(249,115,22,.3)}
.v4-ui .map-action-primary{background:linear-gradient(135deg,var(--primary),var(--primary-2))}
.v4-ui .map-action-secondary{color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,#fff)}
.v4-ui .marker-cluster div{background:linear-gradient(145deg,var(--primary),var(--primary-2))!important}

/* Application dock */
.v4-ui .fab-backdrop,.v4-ui .menu-backdrop{position:fixed;z-index:1440;inset:0;border:0;background:rgba(15,23,42,.42);opacity:0;pointer-events:none;transition:opacity .22s ease;backdrop-filter:blur(4px)}
.v4-ui :is(.fab-backdrop,.menu-backdrop).show{opacity:1;pointer-events:auto}

@media(max-width:1000px){
  .v4-ui .main-nav a{padding-inline:9px}
  .v4-ui .place-layout{grid-template-columns:1fr}
  .v4-ui .place-sidebar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
  .v4-ui .side-card+.side-card{margin-top:0}
  .v4-ui .account-layout{grid-template-columns:230px minmax(0,1fr)}
}

@media(max-width:820px){
  :root{--header-height:68px;--dock-height:76px;--app-bottom-space:calc(102px + env(safe-area-inset-bottom))}
  html.nabkna-v4{scroll-padding-top:calc(var(--header-height) + var(--top-stack) + 12px)}
  .v4-ui{padding-bottom:var(--app-bottom-space);overscroll-behavior-y:auto}
  .v4-ui:not(.map-page){padding-top:calc(var(--header-height) + var(--top-stack))}
  .v4-ui .container{width:calc(100% - 24px)}
  .v4-ui .section{padding:28px 0 40px}
  .v4-ui .site-header{height:var(--header-height);padding-top:env(safe-area-inset-top);top:var(--top-stack)}
  .v4-ui.is-standalone .site-header{height:calc(var(--header-height) + env(safe-area-inset-top))}
  .v4-ui.is-standalone:not(.map-page){padding-top:calc(var(--header-height) + var(--top-stack) + env(safe-area-inset-top))}
  .v4-ui .header-inner{gap:8px;height:var(--header-height)}
  .v4-ui .brand{flex:0 0 auto}
  .v4-ui .brand>span:last-child{display:none}
  .v4-ui .brand-mark,.v4-ui .brand-logo-image{width:42px;height:42px;border-radius:14px}
  .v4-ui .mobile-app-context{display:flex;align-items:center;gap:8px;min-width:0;margin-inline-end:auto;padding:4px 7px;border-radius:13px;color:var(--ink)}
  .v4-ui .mobile-context-icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,#fff)}
  .v4-ui .mobile-app-context>span:nth-child(2){display:grid;line-height:1.15}
  .v4-ui .mobile-app-context small{font-size:9px;color:var(--muted)}
  .v4-ui .mobile-app-context strong{font-size:12px;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .v4-ui .context-chevron{width:14px;height:14px;transform:rotate(180deg);color:#98a2b3}
  .v4-ui .menu-toggle{display:grid;place-items:center;order:9;width:42px;height:42px;margin:0;border:1px solid #e7e9f3;border-radius:13px;background:#fff;color:var(--ink)}
  .v4-ui .header-actions{order:8}
  .v4-ui .header-actions>.install-header,.v4-ui .header-actions>a.icon-btn:not(.header-notification){display:none!important}
  .v4-ui .header-notification{display:grid!important;width:42px;height:42px}
  .v4-ui .account-chip{display:none}
  .v4-ui .main-nav{position:fixed;z-index:1460;top:auto;right:12px;left:12px;bottom:calc(var(--dock-height) + 20px + env(safe-area-inset-bottom));margin:0;padding:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border:1px solid rgba(255,255,255,.9);border-radius:25px;background:rgba(255,255,255,.95);box-shadow:var(--v4-shadow-lg);transform:translateY(24px) scale(.96);opacity:0;pointer-events:none;transition:.22s ease;backdrop-filter:blur(24px)}
  .v4-ui .main-nav.open{display:grid;transform:none;opacity:1;pointer-events:auto}
  .v4-ui .main-nav a{min-height:52px;padding:12px;border:1px solid #eef0f7;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#f9faff;font-size:13px}
  .v4-ui .site-notice{padding-block:7px;font-size:10px;line-height:1.4}
  .v4-ui .emergency-banner{padding:7px 11px!important;min-height:44px}
  .v4-ui .emergency-banner p{display:none}
  .v4-ui .emergency-banner strong{font-size:11px}
  .v4-ui .emergency-banner b{margin-inline-start:auto;font-size:9px}

  .v4-ui .section-heading h1{font-size:32px}
  .v4-ui .heading-row{align-items:flex-start;margin-bottom:16px}
  .v4-ui .heading-row>.btn{flex:0 0 auto}
  .v4-ui .heading-actions{width:100%;justify-content:flex-start}
  .v4-ui .heading-actions .btn{flex:1 1 auto}
  .v4-ui .app-home{padding-bottom:0}
  .v4-ui .app-hero{width:calc(100% - 16px);min-height:400px;margin-top:10px;padding:28px 21px 25px;border-radius:30px;box-shadow:0 22px 55px color-mix(in srgb,var(--primary) 25%,transparent)}
  .v4-ui .app-hero h1{font-size:43px;line-height:1.04;margin:18px 0 12px}
  .v4-ui .app-hero p{font-size:14px;line-height:1.7}
  .v4-ui .home-greeting{font-size:10px}
  .v4-ui .app-search{min-height:60px;margin-top:23px;border-radius:19px}
  .v4-ui .app-search input{font-size:16px;min-height:46px;padding-inline:10px}
  .v4-ui .app-search .search-button{width:47px;height:47px;border-radius:14px}
  .v4-ui .hero-quick-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .v4-ui .hero-quick-row a{min-height:44px;padding:7px 5px;justify-content:center;text-align:center;font-size:9px}
  .v4-ui .hero-live-badge{display:none}
  .v4-ui .app-section{padding:35px 0 0}
  .v4-ui .app-section-head{align-items:center;margin-bottom:15px}
  .v4-ui .app-section-head h2{font-size:26px}
  .v4-ui .app-section-head p{font-size:11px}
  .v4-ui .soft-action{min-height:40px;padding:8px 11px;font-size:10px}
  .v4-ui .app-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .v4-ui .app-category,.v4-ui .app-category:nth-child(1),.v4-ui .app-category:nth-child(2){grid-column:auto;min-height:154px;padding:14px;border-radius:22px}
  .v4-ui .app-category-icon{width:45px;height:45px;border-radius:14px;font-size:23px}
  .v4-ui .app-category strong{font-size:14px}
  .v4-ui .app-category small{font-size:9px}
  .v4-ui .horizontal-cards{width:calc(100% + 12px);grid-auto-columns:84%;gap:11px;margin-inline-end:0;padding-inline-end:0;padding-inline-start:12px;scroll-padding-inline:0 12px}
  .v4-ui .app-place-card{border-radius:23px}
  .v4-ui .app-place-card .card-image{height:190px}
  .v4-ui .app-content-grid{display:grid;grid-auto-flow:column;grid-auto-columns:84%;grid-template-columns:none;overflow-x:auto;gap:11px;scroll-snap-type:x mandatory;padding-bottom:15px}
  .v4-ui .app-content-grid>*{scroll-snap-align:start}
  .v4-ui .install-promo{align-items:flex-start;flex-direction:column;padding:22px;border-radius:24px}
  .v4-ui .install-promo .btn{width:100%}

  .v4-ui .filters-bar{display:none;grid-template-columns:1fr!important;padding:11px;border-radius:19px}
  .v4-ui .filters-bar.mobile-open{display:grid;animation:v4FilterIn .2s ease}
  .v4-ui .filters-bar .btn{width:100%}
  .v4-ui .mobile-filter-toggle{display:inline-flex!important}
  @keyframes v4FilterIn{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
  .v4-ui .cards-grid,.v4-ui .content-list{grid-template-columns:1fr;gap:13px}
  .v4-ui .content-card{display:grid;grid-template-columns:112px minmax(0,1fr);border-radius:22px}
  .v4-ui .content-card .card-image{width:112px;height:100%;min-height:154px}
  .v4-ui .content-card .card-body{padding:14px}
  .v4-ui .place-card{display:grid;grid-template-columns:116px minmax(0,1fr);border-radius:22px}
  .v4-ui .place-card>a:first-of-type{height:100%}
  .v4-ui .place-card .card-image{width:116px;height:100%;min-height:176px;object-fit:cover}
  .v4-ui .place-card .card-body{padding:14px 13px}
  .v4-ui .place-card h3{font-size:16px;margin:8px 0 4px}
  .v4-ui .place-card p{font-size:10px;line-height:1.55;margin:0 0 7px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
  .v4-ui .place-card .rating-line{font-size:9px}
  .v4-ui .place-card .card-actions{display:grid;grid-template-columns:1fr;margin-top:9px}
  .v4-ui .place-card .card-actions .btn{min-height:38px;font-size:10px}
  .v4-ui .place-card .card-actions .btn:last-child{display:none}
  .v4-ui .favorite-button{width:38px;height:38px;top:8px;left:auto;right:8px}

  .v4-ui .place-hero{padding-top:8px}
  .v4-ui .place-cover{height:430px;border-radius:0 0 30px 30px;margin-inline:-12px;width:calc(100% + 24px);border-inline:0;border-top:0}
  .v4-ui .place-cover-copy{right:20px;left:20px;bottom:24px}
  .v4-ui .place-cover-copy h1{font-size:34px}
  .v4-ui .place-cover-copy p{font-size:12px}
  .v4-ui .place-mobile-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(62px,1fr));gap:8px;margin:13px 0 17px}
  .v4-ui .place-mobile-actions :is(a,button){min-height:62px;padding:8px 4px;border:1px solid #e5e8f3;border-radius:17px;display:grid;place-items:center;align-content:center;gap:5px;background:#fff;color:var(--ink);box-shadow:var(--v4-shadow-sm);font-size:9px;font-weight:800;text-align:center}
  .v4-ui .place-mobile-actions a.primary{color:#fff;border-color:transparent;background:linear-gradient(145deg,var(--primary),var(--primary-2))}
  .v4-ui .place-mobile-actions .ui-icon{width:20px;height:20px}
  .v4-ui .place-layout{display:block;padding-top:0;padding-bottom:30px}
  .v4-ui .place-sidebar{display:grid;grid-template-columns:1fr;gap:13px}
  .v4-ui .place-main{display:contents}
  .v4-ui .content-panel,.v4-ui .side-card,.v4-ui .form-card{padding:18px;border-radius:22px}
  .v4-ui .content-panel+.content-panel,.v4-ui .side-card+.side-card{margin-top:13px}
  .v4-ui .place-sidebar{margin-top:13px}
  .v4-ui .review-head{align-items:flex-start}
  .v4-ui .coupon-box{grid-template-columns:92px minmax(0,1fr)}

  .v4-ui .form-grid{grid-template-columns:1fr;gap:13px}
  .v4-ui .form-grid .span-2{grid-column:1}
  .v4-ui .form-actions{grid-column:1;display:grid;grid-template-columns:1fr}
  .v4-ui :is(input,select,textarea){font-size:16px}
  .v4-ui .auth-shell{min-height:auto;padding:22px 12px 35px}
  .v4-ui .auth-card{padding:21px;border-radius:24px}
  .v4-ui .account-layout{display:block;padding:15px 0 36px}
  .v4-ui .account-nav{position:static;display:flex;gap:7px;margin-bottom:13px;padding:7px;overflow-x:auto;scrollbar-width:none;border-radius:18px}
  .v4-ui .account-nav a{flex:0 0 auto;min-height:42px;padding:8px 11px;white-space:nowrap;font-size:11px}
  .v4-ui .owner-hero,.v4-ui .emergency-hero{padding:22px;border-radius:24px}
  .v4-ui .owner-hero{align-items:flex-start;flex-direction:column}
  .v4-ui .owner-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v4-ui .owner-place-grid{grid-template-columns:1fr}
  .v4-ui .owner-control-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .v4-ui .owner-edit-layout,.v4-ui .booking-shell,.v4-ui .support-layout,.v4-ui .requests-grid{grid-template-columns:1fr}
  .v4-ui .interest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v4-ui .notification-card{grid-template-columns:44px minmax(0,1fr)}
  .v4-ui .ticket-message{max-width:94%}
  .v4-ui .emergency-contact-grid{grid-template-columns:1fr}
  .v4-ui .site-footer{display:none}
  .v4-ui .app-ad-wrap{padding-top:12px}
  .v4-ui .app-ad-slider{border-radius:24px}
  .v4-ui .app-ad-track{height:clamp(220px,62vw,310px)}

  .v4-ui .app-dock{position:fixed;z-index:1500;right:50%;bottom:max(9px,env(safe-area-inset-bottom));transform:translateX(50%);width:min(470px,calc(100% - 18px));height:var(--dock-height);padding:6px 8px;display:grid;grid-template-columns:1fr 1fr 1.08fr 1fr 1fr;align-items:center;border:1px solid rgba(255,255,255,.88);border-radius:27px;background:rgba(255,255,255,.88);box-shadow:0 18px 55px rgba(20,28,80,.2);backdrop-filter:blur(25px) saturate(180%);-webkit-backdrop-filter:blur(25px) saturate(180%);transition:transform .24s ease,opacity .2s ease}
  .v4-ui.nav-edge .app-dock{right:0;bottom:0;transform:none;width:100%;max-width:none;border-inline:0;border-bottom:0;border-radius:24px 24px 0 0;padding-bottom:max(6px,env(safe-area-inset-bottom));height:calc(var(--dock-height) + env(safe-area-inset-bottom))}
  .v4-ui .dock-edge{position:relative;min-height:58px;padding:5px 2px;display:grid;place-items:center;align-content:center;gap:3px;border-radius:17px;color:#7b8498;font-size:inherit}
  .v4-ui .dock-edge>span{position:relative;width:28px;height:27px;display:grid;place-items:center}
  .v4-ui .dock-edge .ui-icon{width:22px;height:22px;stroke-width:1.9}
  .v4-ui .dock-edge small{margin:0;font-size:8px;font-weight:750}
  .v4-ui .dock-edge.active{color:var(--primary);background:color-mix(in srgb,var(--primary) 7%,#fff)}
  .v4-ui .dock-edge.active::after{content:"";position:absolute;bottom:3px;width:5px;height:5px;border-radius:50%;background:var(--primary)}
  .v4-ui .dock-avatar{width:25px;height:25px;border-radius:9px;object-fit:cover;border:2px solid currentColor}
  .v4-ui .dock-notifications b{position:absolute;top:-3px;left:-3px;min-width:16px;height:16px;padding:0 3px;border:2px solid #fff;border-radius:99px;display:grid;place-items:center;color:#fff;background:var(--danger);font-size:7px}
  .v4-ui .fab-shell{height:100%;display:grid;place-items:center}
  .v4-ui .fab-main{position:relative;top:-17px;width:62px;height:62px;border:5px solid rgba(255,255,255,.98);border-radius:22px;background:linear-gradient(145deg,var(--accent),#fb923c);box-shadow:0 13px 28px rgba(249,115,22,.34);display:grid;place-items:center;color:#fff;transform:rotate(8deg);transition:transform .22s ease}
  .v4-ui .fab-main .fab-icon{display:grid;place-items:center;transform:rotate(-8deg)}
  .v4-ui .fab-main .ui-icon{width:26px;height:26px;stroke-width:2.2}
  .v4-ui .fab-main small{position:absolute;top:62px;color:#7b8498;font-size:8px;font-weight:750;transform:rotate(-8deg)}
  .v4-ui .fab-shell.open .fab-main{transform:rotate(53deg) scale(1.04)}
  .v4-ui .fab-actions{position:fixed;z-index:1510;right:12px;left:12px;bottom:calc(var(--dock-height) + 22px + env(safe-area-inset-bottom));min-width:0;padding:15px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;border:1px solid rgba(255,255,255,.9);border-radius:25px;background:rgba(255,255,255,.96);box-shadow:var(--v4-shadow-lg);opacity:0;pointer-events:none;transform:translateY(18px) scale(.96);transition:.22s ease;backdrop-filter:blur(24px)}
  .v4-ui .fab-shell.open .fab-actions{opacity:1;pointer-events:auto;transform:none}
  .v4-ui .fab-action{min-height:60px;padding:9px;border:1px solid #eceef6;border-radius:17px;background:#f9faff;box-shadow:none;color:var(--ink)}
  .v4-ui .fab-action span{width:38px;height:38px;border-radius:13px;color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,#fff)}
  .v4-ui .fab-action b{font-size:10px}
  .v4-ui .fab-action.support{grid-column:1/-1;color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--primary),var(--primary-2))}
  .v4-ui .fab-action.support span{color:#fff;background:rgba(255,255,255,.16)}
  .v4-ui .fab-backdrop{display:block}
  .v4-ui:is(.fab-is-open,.menu-is-open){overflow:hidden}
  .v4-ui.keyboard-open .app-dock{opacity:0;pointer-events:none;transform:translate(50%,120%)}
  .v4-ui.keyboard-open.nav-edge .app-dock{transform:translateY(120%)}
  .v4-ui.keyboard-open .fab-actions{display:none}
  .v4-ui.keyboard-open.map-page .map-bottom-sheet{opacity:0;pointer-events:none;transform:translateY(110%)}
  .v4-ui .app-toast-region{bottom:calc(var(--dock-height) + 26px + env(safe-area-inset-bottom));width:calc(100% - 24px)}
  .v4-ui .app-toast{border-radius:17px;background:rgba(17,24,39,.95)}
  .v4-ui .smart-search-results{position:fixed;z-index:1700;top:calc(var(--header-height) + var(--top-stack) + 10px);right:10px;left:10px;max-height:min(52vh,430px);border-radius:20px;background:rgba(255,255,255,.97);box-shadow:var(--v4-shadow-lg)}

  .v4-ui.map-page{padding-top:calc(var(--header-height) + var(--top-stack));padding-bottom:0}
  .v4-ui.map-page .site-footer{display:none}
  .v4-ui .immersive-map{height:calc(var(--vvh) - var(--header-real-height,var(--header-height)) - var(--top-stack));min-height:420px}
  .v4-ui .map-metrics{top:8px;width:calc(100% - 20px);border-radius:17px}
  .v4-ui .map-search-panel{top:67px;right:8px;width:calc(100% - 16px);border-radius:19px}
  .v4-ui .map-search-form{height:45px;border-radius:14px}
  .v4-ui .map-floating-controls{left:8px;top:auto;bottom:calc(var(--dock-height) + 290px + env(safe-area-inset-bottom));border-radius:15px}
  .v4-ui .map-locate-button{left:10px;bottom:calc(var(--dock-height) + 225px + env(safe-area-inset-bottom));width:54px;height:54px}
  .v4-ui .map-bottom-sheet{right:7px;left:7px;bottom:calc(var(--dock-height) + 17px + env(safe-area-inset-bottom));height:min(62vh,520px);border-radius:24px;padding:7px 11px 12px}
  .v4-ui .map-selected-card{grid-template-columns:58px minmax(0,1fr)}
  .v4-ui .map-selected-card>img{width:58px;height:58px}
  .v4-ui .selected-actions{grid-template-columns:1fr 1fr 42px}
  .v4-ui .map-results-strip{padding-bottom:4px}
  .v4-ui .map-result-pill{min-width:142px;min-height:52px}
  .v4-ui.nav-disabled{padding-bottom:24px}
  .v4-ui.nav-disabled .app-toast-region{bottom:20px}
  .v4-ui.nav-disabled .map-bottom-sheet{bottom:10px}
  .v4-ui.nav-disabled .map-locate-button{bottom:176px}
}

@media(max-width:820px){
  .v4-ui.mobile-header-brand .mobile-app-context{display:none}
  .v4-ui.mobile-header-brand .brand>span:last-child{display:grid;line-height:1.1}
  .v4-ui.mobile-header-brand .brand strong{font-size:15px}
  .v4-ui.mobile-header-brand .brand small{font-size:8px}
  .v4-ui.cards-compact .place-card{grid-template-columns:96px minmax(0,1fr)}
  .v4-ui.cards-compact .place-card .card-image{width:96px;min-height:154px}
  .v4-ui.cards-compact .place-card .card-body{padding:11px}
  .v4-ui.cards-compact .app-category,.v4-ui.cards-compact .app-category:nth-child(1),.v4-ui.cards-compact .app-category:nth-child(2){min-height:128px}
}

@media(max-width:390px){
  .v4-ui .container{width:calc(100% - 18px)}
  .v4-ui .mobile-app-context strong{max-width:86px}
  .v4-ui .app-hero{width:calc(100% - 10px);min-height:390px;padding-inline:18px}
  .v4-ui .app-hero h1{font-size:38px}
  .v4-ui .hero-quick-row a{font-size:8px}
  .v4-ui .app-category,.v4-ui .app-category:nth-child(1),.v4-ui .app-category:nth-child(2){min-height:142px}
  .v4-ui .place-card{grid-template-columns:104px minmax(0,1fr)}
  .v4-ui .place-card .card-image{width:104px}
  .v4-ui .place-cover{height:385px}
  .v4-ui .place-mobile-actions{gap:6px}
  .v4-ui .place-mobile-actions a{min-height:58px;font-size:8px}
  .v4-ui .owner-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v4-ui .coupon-box{grid-template-columns:1fr}
  .v4-ui .coupon-qr{max-width:170px;margin:auto}
  .v4-ui .app-dock{width:calc(100% - 12px);padding-inline:5px}
  .v4-ui .dock-edge small,.v4-ui .fab-main small{font-size:7px}
  .v4-ui .fab-main{width:58px;height:58px}
}

@media(max-width:820px) and (orientation:landscape) and (max-height:540px){
  :root{--header-height:58px;--dock-height:64px}
  .v4-ui .header-inner{height:58px}
  .v4-ui .brand-mark,.v4-ui .brand-logo-image,.v4-ui .header-notification,.v4-ui .menu-toggle{width:38px;height:38px}
  .v4-ui .app-dock{height:64px}
  .v4-ui .dock-edge{min-height:50px}
  .v4-ui .fab-main{top:-10px;width:54px;height:54px}
  .v4-ui .fab-main small{display:none}
  .v4-ui .map-metrics{display:none}
  .v4-ui .map-search-panel{top:8px;width:min(390px,calc(100% - 90px))}
  .v4-ui .map-floating-controls{top:74px}
  .v4-ui .map-bottom-sheet{height:min(66vh,330px)}
}

@media(prefers-reduced-motion:reduce){
  .v4-ui *{scroll-behavior:auto!important}
  .v4-ui .btn,.v4-ui .app-dock,.v4-ui .fab-actions,.v4-ui .main-nav{transition:none!important}
}

@media(forced-colors:active){
  .v4-ui .btn,.v4-ui .app-dock,.v4-ui .main-nav,.v4-ui .content-panel,.v4-ui .side-card{border:1px solid CanvasText}
}


/* ===== assets/css/app-v5.css ===== */
/* Nabkna 5: strong color, predictable touch, and a lighter phone compositor. */
.v5-ui{--v5-line:#e5e8f2;--v5-shadow:0 10px 32px rgba(22,27,65,.08);background:var(--app-surface);color:#171a2b;-webkit-tap-highlight-color:transparent}
.v5-ui :is(button,a,input,select,textarea){touch-action:manipulation}
.v5-ui .btn{transition:transform .13s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease}
.v5-ui .btn:active,.v5-ui button:active,.v5-ui a.pressable:active{transform:scale(.97)}
.v5-ui .page-transition-layer{display:none!important}
.v5-ui .progressive-image{animation:none!important;filter:none!important;opacity:1!important;background:#eef0f7;transition:none!important}
.v5-ui .notification-permission[data-push-state="active"]{display:none!important}
.v5-ui [hidden]{display:none!important}
.v5-ui .app-toast{backdrop-filter:none;background:#1c2038;animation-duration:.2s}

@media(max-width:760px){
  .v5-ui{overscroll-behavior-y:none}
  .v5-ui .site-header{background:rgba(255,255,255,.97);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 4px 18px rgba(25,29,67,.07)}
  .v5-ui .site-header.scrolled{background:#fff;box-shadow:0 6px 22px rgba(25,29,67,.09)}
  .v5-ui :is(.form-card,.content-panel,.content-card,.side-card,.auth-card,.account-nav,.glass-panel,.filters-bar){background:#fff;border-color:var(--v5-line);box-shadow:var(--v5-shadow);backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .v5-ui .app-dock{background:rgba(255,255,255,.98);border-color:#e7e9f1;box-shadow:0 12px 34px rgba(25,29,67,.16);backdrop-filter:none;-webkit-backdrop-filter:none;transition:transform .18s ease,opacity .15s ease}
  .v5-ui .fab-actions,.v5-ui .main-nav{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;transition:transform .18s ease,opacity .15s ease}
  .v5-ui .fab-backdrop,.v5-ui .menu-backdrop{backdrop-filter:none;transition:opacity .15s ease}
  .v5-ui [data-reveal]{transition-duration:.22s!important}
  .v5-ui .hero-motion-orbs,.v5-ui .card-glint{display:none!important}
  .v5-ui.motion-enabled :is(.app-category,.app-place-card,.app-story-card),.v5-ui .hero-live-badge>span,.v5-ui .app-search:after{animation:none!important}
  .v5-ui .app-ad-slide,.v5-ui .app-ad-link>img{transition-duration:.28s!important;transform:none!important}
  .v5-ui .skeleton:after{animation:none!important;display:none}
  .v5-ui img{content-visibility:auto}
  .v5-ui .place-card,.v5-ui .offer-card,.v5-ui .event-card{contain:layout paint style}
  .v5-ui .notification-permission{align-items:stretch;padding:15px}
  .v5-ui .notification-permission [data-push-status]{display:block;margin-top:4px;color:#687087;font-size:11px}
}

@media(max-width:390px){
  .v5-ui .container{padding-inline:12px}
  .v5-ui .app-dock{width:calc(100% - 10px)}
  .v5-ui .btn{min-width:0}
}

@media(prefers-reduced-motion:reduce){.v5-ui *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* ===== assets/css/app-v7.css ===== */
/* Nabkna 7 — Aurora application system */
:root{--v7-ink:#101327;--v7-muted:#667085;--v7-line:rgba(49,46,129,.1);--v7-card:rgba(255,255,255,.9);--v7-shadow:0 18px 55px rgba(39,38,91,.11);--v7-shadow-soft:0 8px 28px rgba(39,38,91,.08);--v7-radius:24px}
html.nabkna-v7{overflow-x:hidden;background:#f6f7fc;scroll-behavior:smooth}
.v7-ui{overflow-x:hidden;color:var(--v7-ink);background:radial-gradient(circle at 82% 2%,color-mix(in srgb,var(--primary-2) 13%,transparent),transparent 26rem),radial-gradient(circle at 5% 25%,color-mix(in srgb,var(--accent) 9%,transparent),transparent 23rem),var(--app-surface);-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.v7-ui *{box-sizing:border-box}
.v7-ui img{max-width:100%}
.v7-ui :focus-visible{outline:3px solid color-mix(in srgb,var(--primary-2) 55%,white);outline-offset:3px}
.v7-ui .site-header{border-bottom:1px solid rgba(255,255,255,.72);background:rgba(255,255,255,.84);box-shadow:0 5px 26px rgba(28,26,79,.06);backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%)}
.v7-ui .brand-mark{background:linear-gradient(145deg,var(--primary),color-mix(in srgb,var(--primary-2) 75%,var(--primary)));box-shadow:0 9px 24px color-mix(in srgb,var(--primary) 24%,transparent)}
.v7-ui .main-nav{padding:5px;border:1px solid var(--v7-line);border-radius:18px;background:rgba(247,248,252,.78)}
.v7-ui .main-nav a{border-radius:13px}
.v7-ui .main-nav a.active{color:#fff;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 65%,var(--primary-2)));box-shadow:0 7px 18px color-mix(in srgb,var(--primary) 22%,transparent)}
.v7-ui .btn{min-height:44px;border-radius:14px;font-weight:850;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease}
.v7-ui .btn:active,.v7-ui button:active{transform:scale(.975)}
.v7-ui .btn-primary{border-color:transparent;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 58%,var(--primary-2)));box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 22%,transparent)}
.v7-ui .btn-secondary{border-color:color-mix(in srgb,var(--primary-2) 25%,white);background:color-mix(in srgb,var(--primary-2) 10%,white);color:color-mix(in srgb,var(--primary) 78%,#101327)}
.v7-ui .glass-panel,.v7-ui .glass-card,.v7-ui .form-card,.v7-ui .content-panel,.v7-ui .side-card{border:1px solid rgba(255,255,255,.92);background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,255,255,.76));box-shadow:var(--v7-shadow-soft)}
.v7-ui .app-hero{overflow:hidden;border-radius:34px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 94%,#111827),color-mix(in srgb,var(--primary-2) 78%,var(--primary)));box-shadow:0 28px 78px color-mix(in srgb,var(--primary) 22%,transparent)}
.v7-ui .app-hero:after{content:"";position:absolute;inset:auto -12% -55% auto;width:420px;aspect-ratio:1;border-radius:50%;border:78px solid rgba(255,255,255,.08);pointer-events:none}
.v7-ui .app-search{box-shadow:0 18px 50px rgba(12,19,58,.22)}
.v7-ui .category-card,.v7-ui .app-place-card,.v7-ui .place-card{border:1px solid rgba(255,255,255,.92);background:var(--v7-card);box-shadow:var(--v7-shadow-soft);transition:transform .2s ease,box-shadow .2s ease}
@media(hover:hover){.v7-ui .category-card:hover,.v7-ui .app-place-card:hover,.v7-ui .place-card:hover{transform:translateY(-4px);box-shadow:var(--v7-shadow)}}
.v7-ui .verified,.v7-ui .verified-overlay,.v7-ui .profile-verified{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff;font-weight:900;box-shadow:0 7px 18px rgba(37,99,235,.24)}
.v7-ui .verified .ui-icon,.v7-ui .verified-overlay .ui-icon,.v7-ui .profile-verified .ui-icon{width:15px;height:15px}
.v7-ui .verified-premium{padding:8px 12px}
.v7-ui .title-verified{display:inline-grid;width:28px;height:28px;margin-inline-start:8px;place-items:center;border-radius:50%;vertical-align:middle;background:#fff;color:#2563eb;box-shadow:0 5px 15px rgba(37,99,235,.3)}
.v7-ui .title-verified .ui-icon{width:16px;height:16px}
.v7-ui .profile-verified{padding:5px 9px;font-size:12px;vertical-align:middle}
.v7-ui input,.v7-ui select,.v7-ui textarea{max-width:100%;border:1px solid #dfe3ee;border-radius:14px;background:#fbfcff;color:var(--v7-ink);box-shadow:inset 0 1px 0 #fff;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.v7-ui input:focus,.v7-ui select:focus,.v7-ui textarea:focus{border-color:color-mix(in srgb,var(--primary-2) 64%,white);background:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--primary-2) 12%,transparent)}
.v7-ui label>small{display:block;margin-top:6px;color:var(--v7-muted);line-height:1.55}
.v7-ui .switch-row{display:flex!important;align-items:center;gap:10px;min-height:48px;padding:10px 13px;border:1px solid #e4e7ef;border-radius:14px;background:#fafbff}
.v7-ui .switch-row input{width:20px;height:20px;flex:0 0 auto;accent-color:var(--primary)}
.v7-ui .check-fieldset{display:flex;flex-wrap:wrap;gap:8px 18px;padding:15px;border:1px solid #e4e7ef;border-radius:16px;background:#fafbff}
.v7-ui .check-fieldset legend{padding:0 7px;font-weight:850}
.v7-ui .check-fieldset label{display:flex;align-items:center;gap:6px;margin:0}
.v7-ui .check-fieldset input{width:18px;height:18px;accent-color:var(--primary)}
.v7-ui .picker-wrap{position:relative}
.v7-ui .picker-wrap .map-frame{min-height:390px;border:1px solid #dfe3ee;border-radius:20px;overflow:hidden}
.v7-ui .picker-locate{position:absolute;z-index:500;right:12px;bottom:12px;display:flex;align-items:center;gap:6px;box-shadow:0 10px 30px rgba(31,41,55,.18)}

/* Complete user submission flow */
.v7-submission-page{padding-top:38px}
.submission-shell{max-width:1040px}
.submission-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr);gap:30px;align-items:end;margin-bottom:28px;padding:34px;border-radius:30px;background:linear-gradient(135deg,#17173b,var(--primary));color:#fff;box-shadow:0 24px 65px color-mix(in srgb,var(--primary) 23%,transparent)}
.submission-hero h1{margin:7px 0 9px;font-size:clamp(30px,5vw,52px)}
.submission-hero p{max-width:620px;margin:0;color:rgba(255,255,255,.76);font-size:16px;line-height:1.8}
.submission-hero .eyebrow{color:#7dd3fc}
.submission-steps{display:grid;gap:8px}
.submission-steps span{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(255,255,255,.13);border-radius:14px;color:rgba(255,255,255,.67);background:rgba(255,255,255,.06)}
.submission-steps span b{display:grid;width:26px;height:26px;place-items:center;border-radius:9px;background:rgba(255,255,255,.12)}
.submission-steps span.is-active{color:#fff;border-color:rgba(125,211,252,.48);background:rgba(14,165,233,.16)}
.submission-form{gap:18px}
.submission-form .form-card{padding:26px;border-radius:24px}
.form-section-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid #eaecf2}
.form-section-head>span{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border-radius:13px;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;font-weight:900}
.form-section-head h2{margin:0 0 3px;font-size:20px}.form-section-head p{margin:0;color:var(--v7-muted)}
.file-drop{padding:17px;border:1.5px dashed color-mix(in srgb,var(--primary-2) 40%,#dfe3ee);border-radius:17px;background:color-mix(in srgb,var(--primary-2) 5%,white)}
.submission-form>.form-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-radius:20px;background:#fff;box-shadow:var(--v7-shadow-soft)}
.submission-form>.form-actions p{margin:0;color:var(--v7-muted);font-size:13px}
.submission-success{max-width:680px;margin:7vh auto;padding:50px;text-align:center;border-radius:34px}
.submission-success .success-orbit{display:grid;width:84px;height:84px;margin:0 auto 20px;place-items:center;border-radius:28px;background:linear-gradient(135deg,#06b6d4,#2563eb);color:#fff;box-shadow:0 18px 45px rgba(37,99,235,.3);animation:v7-success-in .55s cubic-bezier(.2,.9,.25,1.25)}
.submission-success .success-orbit .ui-icon{width:38px;height:38px}.submission-success h1{font-size:34px}.submission-success code{display:inline-block;margin:12px 0 22px;padding:12px 18px;border-radius:12px;background:#eff6ff;color:#1d4ed8;font-size:18px;font-weight:900;letter-spacing:.05em}
@keyframes v7-success-in{from{opacity:0;transform:scale(.6) rotate(-8deg)}to{opacity:1;transform:none}}

.v7-ui .submission-account-card code{padding:4px 7px;border-radius:8px;background:#eef2ff;color:#3730a3;font-weight:800}
.v7-ui .place-cover{border-radius:30px;box-shadow:var(--v7-shadow)}
.v7-ui .place-cover:after{background:linear-gradient(0deg,rgba(10,12,33,.88),rgba(10,12,33,.05) 75%)}
.v7-ui .place-service-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px;margin-top:20px;padding-top:18px;border-top:1px solid #e8eaf1}
.v7-ui .place-service-facts span{display:flex;flex-direction:column;gap:3px;padding:12px;border:1px solid #e8eaf1;border-radius:14px;background:#fafbff}.v7-ui .place-service-facts b{font-size:13px}.v7-ui .place-service-facts small{color:var(--v7-muted)}
.v7-ui .owner-offer-thumb{width:58px;height:58px;float:right;margin-inline-end:10px;border-radius:13px;object-fit:cover}
.v7-ui .app-dock{border-color:rgba(255,255,255,.9);background:rgba(255,255,255,.92);box-shadow:0 -8px 32px rgba(27,26,75,.1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.v7-ui .fab-main{background:linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent) 52%,var(--primary)));box-shadow:0 14px 35px color-mix(in srgb,var(--accent) 30%,transparent)}

@media(max-width:760px){
  html.nabkna-v7{scroll-behavior:auto}
  .v7-ui{background:#f6f7fc}
  .v7-ui .site-header{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff}
  .v7-ui .container{width:min(100% - 24px,1200px)}
  .v7-ui .app-hero{border-radius:26px}
  .v7-ui .btn{min-height:46px}
  .v7-ui input,.v7-ui select,.v7-ui textarea{font-size:16px!important}
  .submission-hero{grid-template-columns:1fr;padding:24px 20px;border-radius:24px}.submission-hero h1{font-size:34px}.submission-steps{grid-template-columns:repeat(3,1fr);gap:5px}.submission-steps span{display:block;padding:8px 5px;text-align:center;font-size:10px}.submission-steps span b{margin:0 auto 4px}
  .submission-form .form-card{padding:20px 15px;border-radius:20px}.form-section-head{gap:10px}.form-section-head>span{width:36px;height:36px}.form-section-head h2{font-size:18px}
  .submission-form>.form-actions{align-items:stretch;flex-direction:column}.submission-form>.form-actions .btn{width:100%}.submission-form>.form-actions p{text-align:center}
  .v7-ui .picker-wrap .map-frame{min-height:330px}.v7-ui .picker-locate{right:8px;bottom:8px}
  .submission-success{margin:3vh auto;padding:35px 20px}.submission-success h1{font-size:28px}
  .v7-ui .glass-panel,.v7-ui .glass-card,.v7-ui .form-card,.v7-ui .content-panel,.v7-ui .side-card{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff}
  .v7-ui .place-cover{border-radius:23px}
  .v7-ui .profile-verified{display:flex;width:max-content;margin-top:7px}
}
@media(max-width:520px){.submission-steps{display:none}.v7-ui .form-grid{grid-template-columns:minmax(0,1fr)}.v7-ui .form-grid>.span-2,.v7-ui .submission-form>.span-2{grid-column:1}.v7-ui .check-fieldset{display:grid;grid-template-columns:1fr 1fr}.v7-ui .days-grid .day-row{grid-template-columns:1fr 1fr}.v7-ui .submission-success .form-actions{display:grid}}
@media(prefers-reduced-motion:reduce){html.nabkna-v7{scroll-behavior:auto}.v7-ui *,.v7-ui *:before,.v7-ui *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
.place-ar-action{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,var(--primary),var(--primary-2))!important;box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 28%,transparent)}
.place-ar-action::after{content:"";position:absolute;inset:-60% -20%;z-index:-1;background:linear-gradient(100deg,transparent,rgba(255,255,255,.3),transparent);transform:translateX(80%) rotate(15deg);animation:place-ar-shine 3.4s ease-in-out infinite}
.place-ar-action small{position:absolute;top:3px;left:5px;padding:1px 4px;border-radius:5px;background:rgba(255,255,255,.18);font-size:7px;font-weight:800}
.place-ar-cube{width:17px;height:17px;display:inline-block;border:2px solid currentColor;border-radius:4px;transform:rotate(30deg) skew(-7deg);box-shadow:4px -3px 0 -1px rgba(255,255,255,.45)}
.place-ar-sidebar{background:linear-gradient(135deg,var(--primary),var(--primary-2))!important;box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 25%,transparent)}
@keyframes place-ar-shine{0%,60%{transform:translateX(90%) rotate(15deg)}85%,100%{transform:translateX(-90%) rotate(15deg)}}


/* ===== assets/css/v72-overrides.css ===== */
/* Nabkna v7.2.0 — Mobile & Map Studio stabilization layer */
:root{--v72-mobile-gutter:12px;--v72-card-radius:22px;--v72-header-solid:rgba(255,255,255,.97)}
html.nabkna-v7{min-height:100%;overflow-x:hidden;overscroll-behavior-y:auto}
body.v7-ui{min-height:100%;overflow-x:hidden}
body.v7-ui:not(.menu-is-open):not(.fab-is-open){overflow-y:auto!important}
body.v7-ui.menu-is-open,body.v7-ui.fab-is-open{overflow:hidden!important;touch-action:none}
.v7-ui .site-header{background:var(--v72-header-solid);border-bottom:1px solid rgba(67,56,202,.08);box-shadow:0 8px 30px rgba(28,26,79,.08)}
.v7-ui .app-hero.glass-panel{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 94%,#111827),color-mix(in srgb,var(--primary-2) 78%,var(--primary)))!important;color:#fff!important;border-color:rgba(255,255,255,.14)!important;box-shadow:0 26px 70px color-mix(in srgb,var(--primary) 25%,transparent)!important}
.v7-ui .app-hero.glass-panel :is(h1,p,strong,small,.home-greeting){color:inherit}
.v7-ui .app-hero.glass-panel .app-search{background:rgba(255,255,255,.95)}
.v7-ui .app-hero.glass-panel .app-search input{color:var(--ink)}
.v7-ui .app-hero.glass-panel .hero-quick-row a{color:#fff}
.v7-ui .menu-backdrop,.v7-ui .fab-backdrop{position:fixed;inset:0;opacity:0;pointer-events:none;transition:opacity .2s ease;background:rgba(15,23,42,.34);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.v7-ui .menu-backdrop{z-index:1450}.v7-ui .fab-backdrop{z-index:1490}.v7-ui :is(.menu-backdrop,.fab-backdrop).show{opacity:1;pointer-events:auto}
.v7-ui .app-category,.v7-ui .app-place-card{contain:layout paint}
.v7-ui .app-place-card,.v7-ui .app-category{transform:translateZ(0)}

@media(max-width:820px){
  :root{--header-height:66px;--dock-height:74px;--app-bottom-space:calc(var(--dock-height) + 32px + env(safe-area-inset-bottom))}
  html.nabkna-v7{scroll-padding-top:calc(var(--header-height) + var(--top-stack,0px) + env(safe-area-inset-top) + 10px)}
  body.v7-ui:not(.map-page){padding-top:calc(var(--header-height) + var(--top-stack,0px) + env(safe-area-inset-top));padding-bottom:var(--app-bottom-space)}
  .v7-ui .site-header{top:var(--top-stack,0px);height:calc(var(--header-height) + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);background:#fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .v7-ui .header-inner{height:var(--header-height);padding-inline:2px}
  .v7-ui .app-home{overflow:visible;padding-bottom:14px}
  .v7-ui .app-hero.glass-panel{min-height:0!important;margin-top:10px!important;padding:22px 18px 20px!important;border-radius:24px!important;overflow:hidden!important}
  .v7-ui .app-hero h1{font-size:clamp(31px,9vw,40px)!important;line-height:1.12;letter-spacing:-.7px;margin:10px 0 8px}
  .v7-ui .app-hero p{font-size:13px!important;line-height:1.8;max-width:92%}
  .v7-ui .app-search{margin-top:18px;border-radius:17px;padding:5px;min-height:54px}
  .v7-ui .app-search .search-button{width:44px;height:44px;border-radius:13px}
  .v7-ui .hero-quick-row{margin-top:11px;gap:7px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .v7-ui .hero-quick-row a{min-width:0;text-align:center;padding:8px 5px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .v7-ui .app-section{padding-top:26px}
  .v7-ui .app-section-head{align-items:center;margin-bottom:13px}
  .v7-ui .app-section-head h2{font-size:22px}
  .v7-ui .app-section-head p{font-size:11px}
  .v7-ui .app-category-grid{gap:9px}
  .v7-ui .app-category{border-radius:19px;min-height:132px!important;padding:13px}
  .v7-ui .horizontal-cards{grid-auto-columns:minmax(260px,84%);gap:10px;padding-bottom:12px;overscroll-behavior-inline:contain}
  .v7-ui .app-place-card{border-radius:21px}
  .v7-ui .app-place-card .card-image{height:165px}
  .v7-ui .main-nav{max-height:min(64dvh,520px);overflow:auto;overscroll-behavior:contain}
  .v7-ui .app-dock{bottom:max(7px,env(safe-area-inset-bottom));width:calc(100% - 14px);background:rgba(255,255,255,.97);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}
  .v7-ui.keyboard-open .app-dock{opacity:0;pointer-events:none;transform:translate(50%,125%)}
  .v7-ui.keyboard-open.nav-edge .app-dock{transform:translateY(125%)}
  .v7-ui .fab-actions{max-height:calc(100dvh - var(--header-height) - var(--dock-height) - 70px);overflow:auto;overscroll-behavior:contain}
}
@media(max-width:390px){
  :root{--header-height:60px;--dock-height:66px}
  .v7-ui .app-hero.glass-panel{padding:19px 15px 17px!important;border-radius:21px!important}
  .v7-ui .app-hero h1{font-size:30px!important}.v7-ui .app-hero p{font-size:12px!important}.v7-ui .hero-quick-row a{font-size:9px}
}
@media(prefers-reduced-motion:reduce){.v7-ui *{scroll-behavior:auto!important}}

/* ===== Nabkna v7.3 — Neo App Experience ===== */
:root{
  --v73-bg:#f4f6fb;--v73-surface:#ffffff;--v73-soft:#f7f8fc;--v73-ink:#101828;--v73-muted:#667085;
  --v73-line:rgba(17,24,39,.08);--v73-radius:24px;--v73-radius-sm:16px;--v73-shadow:0 18px 55px rgba(23,34,67,.09);
  --dock-height:74px;--header-height:74px;
}
html{scroll-behavior:auto!important;overflow-x:hidden;overscroll-behavior-y:auto!important;background:var(--v73-bg);}
body.v7-ui{min-height:100dvh;overflow-x:hidden;background:linear-gradient(180deg,#f8f9fc 0,var(--v73-bg) 280px,#f7f8fb 100%);color:var(--v73-ink);touch-action:pan-y pinch-zoom!important;-webkit-overflow-scrolling:touch;}
body.v7-ui:before{animation:none!important;background:radial-gradient(circle at 88% -8%,color-mix(in srgb,var(--primary-2) 10%,transparent),transparent 30rem),radial-gradient(circle at 6% 14%,color-mix(in srgb,var(--primary) 7%,transparent),transparent 28rem)!important;}
body.v7-ui:not(.menu-is-open):not(.fab-is-open){overflow-y:auto!important;touch-action:pan-y pinch-zoom!important;}
.v7-ui .container{width:min(calc(100% - 32px),1180px)}
.v7-ui .site-header{height:auto;background:rgba(255,255,255,.92)!important;border-bottom:1px solid rgba(17,24,39,.055)!important;box-shadow:0 8px 28px rgba(16,24,40,.045)!important;backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%)}
.v7-ui .header-inner{height:74px;gap:18px}.v7-ui .brand strong{color:var(--v73-ink);font-size:18px}.v7-ui .brand small{color:#8a94a6}.v7-ui .brand-logo-image{width:42px;height:42px;border-radius:14px;box-shadow:none;border:1px solid var(--v73-line)}
.v7-ui .main-nav{margin-inline:auto;padding:4px;background:#f7f8fb;border:1px solid var(--v73-line);border-radius:16px}.v7-ui .main-nav a{padding:9px 13px;border-radius:12px;color:#667085;font-size:13px}.v7-ui .main-nav a.active{color:var(--primary);background:#fff;box-shadow:0 4px 14px rgba(16,24,40,.07)}
.v7-ui .icon-btn,.v7-ui .account-chip{border-color:var(--v73-line);box-shadow:none;background:#fff}.v7-ui .icon-btn{width:40px;height:40px;border-radius:13px}.v7-ui .ui-icon{width:20px;height:20px}
.v7-ui .glass-panel{background:#fff;border:1px solid rgba(17,24,39,.06);box-shadow:var(--v73-shadow);backdrop-filter:none;-webkit-backdrop-filter:none}
.v7-ui .app-home{padding-bottom:36px}.v7-ui .app-hero{min-height:330px;margin-top:20px;border-radius:30px;padding:clamp(28px,5vw,54px);background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 88%,#111827),color-mix(in srgb,var(--primary-2) 88%,#155e75));box-shadow:0 28px 70px color-mix(in srgb,var(--primary) 20%,transparent);isolation:isolate}
.v7-ui .app-hero:before{width:360px;height:360px;top:-220px;left:-90px;background:radial-gradient(circle,rgba(255,255,255,.17),transparent 68%);animation:none}.v7-ui .app-hero:after{width:300px;height:300px;right:auto;left:35%;bottom:-210px;background:radial-gradient(circle,rgba(255,255,255,.11),transparent 68%);animation:none}
.v7-ui .hero-motion-orbs{opacity:.55}.v7-ui .hero-motion-orbs span,.v7-ui .hero-motion-orbs i{animation:none!important;backdrop-filter:none}.v7-ui .app-hero h1{font-size:clamp(38px,6vw,64px);line-height:1.08;letter-spacing:-1.5px;margin:15px 0 12px}.v7-ui .app-hero p{max-width:630px;font-size:15px;color:rgba(255,255,255,.78)}
.v7-ui .home-greeting{font-size:12px;color:rgba(255,255,255,.82)}.v7-ui .app-search{max-width:650px;margin-top:23px;padding:6px;border-radius:18px;background:#fff;border:0;box-shadow:0 16px 36px rgba(0,0,0,.13);backdrop-filter:none}.v7-ui .app-search input{min-height:46px;padding:10px 13px;color:#111827}.v7-ui .app-search .search-button{width:46px;height:46px;border-radius:14px;box-shadow:none}.v7-ui .hero-quick-row{gap:8px}.v7-ui .hero-quick-row a{padding:8px 11px;border-radius:12px;background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.18);backdrop-filter:none}
.v7-ui .hero-live-badge{border-color:rgba(255,255,255,.18);background:rgba(11,18,32,.22);box-shadow:none;backdrop-filter:blur(10px)}
.v7-ui .app-section{padding-top:38px}.v7-ui .app-section-head{align-items:center;margin-bottom:16px}.v7-ui .app-section-head h2{font-size:clamp(22px,3vw,30px);letter-spacing:-.35px;color:var(--v73-ink)}.v7-ui .app-section-head p{font-size:12px;color:var(--v73-muted)}.v7-ui .soft-action{padding:8px 12px;border:1px solid var(--v73-line);border-radius:12px;background:#fff;color:var(--primary);box-shadow:0 4px 12px rgba(16,24,40,.035)}
.v7-ui .app-category-grid{gap:12px}.v7-ui .app-category{min-height:142px;border-radius:22px;border:1px solid var(--v73-line);background:#fff;box-shadow:0 10px 30px rgba(16,24,40,.055);transition:transform .18s ease,box-shadow .18s ease}.v7-ui .app-category:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(16,24,40,.08)}.v7-ui .app-category:nth-child(1),.v7-ui .app-category:nth-child(2){min-height:176px}.v7-ui .app-category-icon{width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.95);box-shadow:0 7px 18px rgba(16,24,40,.08)}
.v7-ui .horizontal-cards,.v7-ui .recent-viewed-row,.v7-ui .map-results-strip{scroll-behavior:auto!important;scroll-snap-type:x proximity!important;touch-action:pan-x pan-y!important;overscroll-behavior-inline:auto!important;-webkit-overflow-scrolling:touch}.v7-ui .horizontal-cards>*{scroll-snap-stop:normal!important}
.v7-ui .app-place-card{border-radius:22px;border:1px solid var(--v73-line);background:#fff;box-shadow:0 10px 30px rgba(16,24,40,.055)}.v7-ui .app-place-card .card-image{height:178px}.v7-ui .app-place-card-body{padding:15px}.v7-ui .app-place-card h3{font-size:17px}.v7-ui .distance-badge{background:#f4f6fa;color:#475467}.v7-ui .category-pill{background:color-mix(in srgb,var(--primary) 7%,#fff);color:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 10%,transparent)}
.v7-ui .app-story-card{min-height:200px;border-radius:22px;box-shadow:0 14px 34px rgba(16,24,40,.09)}.v7-ui .install-promo{border-radius:24px;box-shadow:0 18px 44px color-mix(in srgb,var(--primary) 16%,transparent)}
.v7-ui .btn{border-radius:13px;box-shadow:none}.v7-ui .btn-primary{box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 18%,transparent)}
.v7-ui .app-dock{transition:transform .22s ease,opacity .22s ease}.keyboard-open .app-dock{opacity:0;pointer-events:none;transform:translateX(50%) translateY(110%)}
.v7-ui .fab-action{backdrop-filter:none;background:#fff;border-color:var(--v73-line);box-shadow:0 14px 32px rgba(16,24,40,.12)}
.v7-ui .page-transition-layer{display:none!important}.v7-ui.page-leaving{pointer-events:auto!important}

@media(max-width:760px){
  :root{--header-height:66px;--dock-height:72px}
  body.v7-ui:not(.map-page){padding-top:calc(var(--header-height) + var(--top-stack,0px));padding-bottom:calc(var(--dock-height) + max(18px,env(safe-area-inset-bottom)))}
  .v7-ui .container{width:calc(100% - 22px)}.v7-ui .header-inner{height:66px;padding-inline:0;gap:8px}.v7-ui .brand span:last-child{display:none}.v7-ui .brand-logo-image,.v7-ui .brand-mark{width:39px;height:39px;border-radius:13px}.v7-ui .menu-toggle{width:39px;height:39px;display:grid;place-items:center;border:1px solid var(--v73-line);border-radius:13px;background:#fff;padding:0}.v7-ui .mobile-app-context{flex:1;min-width:0;margin-inline:3px;padding:0 9px;height:42px;border-radius:14px;background:#f6f8fb;border:1px solid var(--v73-line)}.v7-ui .mobile-app-context small{font-size:8px}.v7-ui .mobile-app-context strong{font-size:11px}.v7-ui .header-actions{margin-inline-start:0}.v7-ui .account-chip img{width:38px;height:38px;border-radius:13px}
  .v7-ui .main-nav{top:calc(var(--header-height) + var(--top-stack,0px));right:8px;left:8px;margin:0;padding:8px;border-radius:20px;background:#fff;box-shadow:0 18px 50px rgba(16,24,40,.15)}
  .v7-ui .app-hero{min-height:270px;margin-top:10px;padding:24px 18px 22px;border-radius:24px}.v7-ui .app-hero h1{font-size:35px;letter-spacing:-1px}.v7-ui .app-hero p{font-size:13px;line-height:1.65}.v7-ui .home-greeting{font-size:11px}.v7-ui .app-search{margin-top:19px;border-radius:16px}.v7-ui .app-search input{font-size:16px}.v7-ui .hero-live-badge{display:none}.v7-ui .hero-quick-row{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:1px}.v7-ui .hero-quick-row a{flex:0 0 auto;font-size:11px}
  .v7-ui .app-section{padding-top:27px}.v7-ui .app-section-head h2{font-size:21px}.v7-ui .app-section-head p{font-size:11px}.v7-ui .soft-action{font-size:11px}
  .v7-ui .app-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v7-ui .app-category,.v7-ui .app-category:nth-child(1),.v7-ui .app-category:nth-child(2){min-height:128px;padding:13px;border-radius:18px}.v7-ui .app-category-icon{width:40px;height:40px;border-radius:12px;font-size:21px}.v7-ui .app-category strong{font-size:14px}.v7-ui .app-category small{font-size:10px}
  .v7-ui .horizontal-cards{width:calc(100% + 11px);grid-auto-columns:82%;gap:10px;margin-inline:0 -11px;padding-inline:11px 11px;padding-bottom:12px}.v7-ui .app-place-card{border-radius:19px}.v7-ui .app-place-card .card-image{height:164px}.v7-ui .app-content-grid{gap:10px}.v7-ui .app-story-card{min-height:170px;border-radius:19px;padding:16px}
  .v7-ui .app-dock{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))!important;right:8px;left:8px;bottom:max(7px,env(safe-area-inset-bottom));transform:none;width:auto;height:64px;padding:4px 5px;border-radius:21px;background:rgba(255,255,255,.97);border:1px solid rgba(17,24,39,.07);box-shadow:0 12px 36px rgba(16,24,40,.14);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
  .v7-ui .dock-edge{min-width:0;border-radius:14px;color:#7c8799}.v7-ui .dock-edge span{height:24px;display:grid;place-items:center}.v7-ui .dock-edge .ui-icon{width:21px;height:21px}.v7-ui .dock-edge small{font-size:8.5px;margin-top:3px}.v7-ui .dock-edge.active{background:color-mix(in srgb,var(--primary) 7%,white);color:var(--primary)}
  .v7-ui .fab-shell{position:relative;min-width:0}.v7-ui .fab-main{width:50px;height:50px;border:0;border-radius:17px;font-size:20px;box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 24%,transparent)}.v7-ui .fab-main small{display:none}.v7-ui .fab-main .fab-icon .ui-icon{width:22px;height:22px}.v7-ui .fab-actions{bottom:68px;right:50%;transform:translate(50%,12px) scale(.96);min-width:180px}.v7-ui .fab-shell.open .fab-actions{transform:translate(50%,0)}
  .v7-ui .fab-backdrop.show,.v7-ui .menu-backdrop.show{backdrop-filter:none}
}
@media(max-width:390px){.v7-ui .app-hero h1{font-size:31px}.v7-ui .horizontal-cards{grid-auto-columns:86%}.v7-ui .app-dock{right:6px;left:6px}}
@media(prefers-reduced-motion:reduce){.v7-ui *{scroll-behavior:auto!important}}
.v7-ui .hero-quick-row a,.v7-ui .soft-action{display:inline-flex;align-items:center;gap:6px}.v7-ui .hero-quick-row .ui-icon,.v7-ui .soft-action .ui-icon{width:16px;height:16px}.v7-ui .search-button .ui-icon{width:21px;height:21px}
