/* Safarnama member experience. Existing route, payment and account logic is retained. */
:root{--bg:#f0f8ff;--surface:#fff;--text:#03045e;--muted:#4a6fa5;--faint:#6688ad;--saffron:#0077b6;--saffron-deep:#005f8f;--saffron-tint:#caf0f8;--green:#0077b6;--green-tint:#e1f6fb;--navy:#03045e;--border:#bcddeb;--border-soft:#dceef5;--shadow:0 4px 20px #03045e0b;--shadow-lg:0 18px 52px #03045e1a;--radius:16px;--gold:#a87931}
:root[data-theme=dark]{--bg:#0b1230;--surface:#141b3d;--text:#e8ecf5;--muted:#90e0ef;--faint:#8fadd1;--saffron:#00b4d8;--saffron-deep:#48cae4;--saffron-tint:#102c4d;--green:#00b4d8;--green-tint:#102c4d;--navy:#90e0ef;--border:#294c71;--border-soft:#213d61;--gold:#e4c37f}
body{font-size:15px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,[tabindex]{touch-action:manipulation}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}button{cursor:pointer}[hidden]{display:none!important}.sidebar{width:230px;padding:32px 18px;background:var(--surface)}.sidebar .s-brand{padding:5px 4px 24px}.sidebar .s-brand .wordmark{font-size:22px}.s-ava,.topava{background:var(--saffron-tint);color:var(--text)}.side-nav{flex:0;gap:7px;margin:14px 0 25px}.side-link{border:0;border-radius:10px;padding:13px 12px;font-size:13px}.side-link.active{border:0;box-shadow:inset 3px 0 var(--saffron)}.side-series{margin-top:10px}.side-out{margin-top:auto}.s-founding{background:var(--saffron-tint)!important;color:var(--saffron-deep)!important;border-radius:30px;font-size:9px}.main{max-width:1500px;padding:42px 42px 90px}.main.dash-grid{max-width:1500px;grid-template-columns:minmax(0,1fr) 290px;gap:28px}.view-title{font-size:38px!important;letter-spacing:-1px}.page-head h1{font-size:34px;font-weight:500}.label,.ui-eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:600;color:var(--saffron-deep)}.ui-eyebrow{display:block;margin-bottom:12px}.ui-subtitle{color:var(--muted);max-width:580px;margin-top:12px;line-height:1.8}.btn{background:var(--saffron);color:var(--surface);border-color:var(--saffron);border-radius:10px;padding:13px 18px}.btn.ghost,.btn-ghost{background:transparent;color:var(--saffron-deep)}.btn:hover{filter:brightness(.94);transform:none}.fg input,.fg select,.fg textarea{border-radius:10px;min-height:46px}.card,.logcard,.mapcard,.pace-box,.prof-card{border-radius:16px;box-shadow:none}.walking-strip{background:transparent;border:0;border-bottom:1px solid var(--border);padding:0 0 16px;border-radius:0;letter-spacing:.2px}.dash-cover{height:210px!important;border-radius:18px;background-size:cover!important;background-color:var(--saffron-tint);background-repeat:no-repeat;background-position:center}.dash-cover-credit{background:#142426d9!important;color:#fff!important}.page-head{margin:22px 0}.logcard{background:var(--surface);border:1px solid var(--border);margin:24px 0}.log-mode-btn{border-radius:10px!important}.log-mode-btn.active{background:var(--saffron-tint)!important;color:var(--text)!important}.upload-zone{border-radius:12px;background:var(--bg)}.stats{gap:1px;background:var(--border);border:1px solid var(--border);border-radius:14px;overflow:hidden;margin:25px 0}.stat{background:var(--surface);padding:19px 10px!important;border:0!important;border-radius:0!important}.stat-n{font-family:var(--serif);font-weight:500;font-size:29px}.prog-wrap{padding:20px 0 0}.routebar{height:8px!important;background:var(--border)}.pace-box{background:var(--saffron-tint);border:0}.dash-aside{padding:0 0 12px}.monument-item{border-radius:12px!important}.ui-reward{display:flex;gap:22px;align-items:center;padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:16px;margin:24px 0}.ui-reward img{width:110px;height:110px;object-fit:contain;filter:drop-shadow(0 6px 5px #31251220)}.ui-reward h3{font-size:24px;margin:4px 0 8px}.ui-reward p{font-size:12px;color:var(--muted)}.ui-text-button{border:0;background:none;color:var(--saffron-deep);font-size:12px;font-weight:600;padding:12px 0 0;text-align:left}.ui-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:25px 0}.ui-search{flex:1;min-width:180px;max-width:370px;background:var(--surface);border:1px solid var(--border);color:var(--text);padding:12px 16px;border-radius:10px}.ui-select{max-width:100%;background:var(--surface);border:1px solid var(--border);color:var(--text);padding:11px;border-radius:10px}.ui-chip{border:1px solid var(--border);color:var(--muted);background:var(--surface);padding:9px 15px;border-radius:30px;font-size:12px;white-space:nowrap}.ui-chip[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--surface)}.ui-empty{padding:45px 20px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:16px;margin:20px 0}.coll-body,.prof-body{max-width:none}.coll-intro h1{font-size:38px!important}.coll-trail-head{padding:20px 0!important;border-bottom:1px solid var(--border);margin-top:26px}.coll-cities{gap:18px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}.coll-city{border-radius:14px!important;background:var(--surface);box-shadow:none;overflow:hidden;transition:transform .2s,box-shadow .2s}.coll-city:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.coll-city.locked{opacity:1!important}.cc-photo{height:auto!important;aspect-ratio:1.45;background:var(--saffron-tint);position:relative}.cc-photo img{width:100%;height:100%;object-fit:contain!important}.cc-credit{font-size:8px!important;line-height:1.35!important;color:white!important;background:#142426d9!important;padding:5px 8px!important}.cc-body{padding:18px!important}.cc-name{font-family:var(--serif);font-size:23px!important}.cc-detail{font-size:11px!important;line-height:1.8!important;min-height:42px}.cc-walk{border-radius:8px!important;background:var(--saffron)!important;color:var(--surface)!important}.cc-tag{border-radius:20px!important}.coll-badges-row{background:var(--surface);padding:17px;border:1px solid var(--border);border-radius:14px;margin-top:25px}.coll-badge-strip .bt-art img{width:50px;height:50px;object-fit:contain}.prof-grid{gap:22px!important}.hist-item{padding:17px 0!important;border-bottom:1px solid var(--border-soft)}.prof-ava{border:4px solid var(--surface);box-shadow:0 0 0 1px var(--border);background:var(--saffron-tint)!important;color:var(--text)!important}.prof-danger{border:1px solid var(--border);padding:20px;border-radius:14px}.ui-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:30px}.ui-heading h1{font-size:43px;font-weight:500;letter-spacing:-1px}.ui-heading .ui-flourish{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:17px;max-width:150px;text-align:right;padding-top:30px}.ui-ach-hero{display:grid;grid-template-columns:1fr 1fr;gap:28px;background:var(--saffron-tint);border:1px solid var(--border);border-radius:18px;padding:28px 32px;margin-bottom:30px}.ui-ach-hero h2{font-size:27px;font-weight:500;margin-bottom:10px}.ui-ach-hero p{font-size:12px;line-height:1.9;color:var(--muted)}.ui-ach-numbers{display:flex;gap:28px;margin-top:23px}.ui-ach-numbers strong{display:block;font-family:var(--serif);font-size:31px;font-weight:500}.ui-ach-numbers span{font-size:10px;color:var(--muted)}.ui-featured{display:flex;gap:24px;align-items:center;border-left:1px solid var(--border);padding-left:26px}.ui-featured img{width:130px;height:130px;object-fit:contain}.ui-featured h3{font-size:23px;margin:7px 0}.ui-ach-section{margin:38px 0}.ui-section-head{display:flex;gap:14px;align-items:baseline;margin-bottom:23px;border-bottom:1px solid var(--border);padding-bottom:14px}.ui-section-head h2{font-size:25px;font-weight:500}.ui-section-head span{margin-left:auto;color:var(--muted);font-size:11px}.ui-badge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.ui-badge{border:1px solid var(--border-soft);background:var(--surface);color:var(--text);padding:18px 12px 20px;border-radius:14px;text-align:center;display:flex;flex-direction:column;align-items:center;transition:transform .2s,box-shadow .2s;min-width:0}.ui-badge:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--gold)}.ui-badge-art{width:100%;height:165px;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.ui-badge-art>img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 5px #332b2220)}.ui-badge h3{font-size:17px;line-height:1.4;font-weight:500}.ui-badge p{font-size:10px;color:var(--muted);margin:8px 0;line-height:1.7}.ui-badge-state{font-size:9px;font-weight:600;letter-spacing:.4px;padding:4px 10px;background:var(--saffron-tint);color:var(--saffron-deep);border-radius:20px;margin-top:auto}.ui-badge[data-earned=false] .ui-badge-state{background:var(--bg);color:var(--muted)}.ui-badge[data-earned=false] .ui-badge-art{opacity:.78}.ui-postcard{width:100%;background:#f2ead6;padding:10px;border:3px dotted #a59270;box-shadow:0 4px 8px #25332615;color:#234b4e}.ui-postcard img{height:95px;width:100%;object-fit:contain}.ui-postcard strong{display:block;font-family:var(--serif);font-size:15px;letter-spacing:2px;text-transform:uppercase}.ui-postcard small{display:block;font-size:7px;line-height:1.25;margin-top:4px}.ui-detail{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:22px;margin:auto;padding:32px;width:min(520px,calc(100% - 30px));max-height:90vh;overflow:auto;box-shadow:0 30px 100px #0003}.ui-detail::backdrop{background:#112829b8;backdrop-filter:blur(5px)}.ui-detail .ui-badge-art{height:260px;margin:5px auto 15px;max-width:330px}.ui-detail h2{text-align:center;font-size:30px}.ui-detail p{text-align:center;color:var(--muted);font-size:13px;line-height:1.8;margin:14px 0}.ui-close{display:block;margin-left:auto;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:50%;width:36px;height:36px;font-size:22px;line-height:1}.ui-detail-actions{display:flex;gap:10px;margin-top:20px}.ui-detail-actions .btn{flex:1;font-size:12px}.badge-cel-art img{width:100%;height:100%;object-fit:contain}.overlay{background:#112829b8!important;backdrop-filter:blur(5px)}.overlay>div:not(.confetti){border-radius:20px!important}.article-card,.paysheet-card,.celebrate-card,.badge-cel-card{background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--border);box-shadow:0 25px 100px #0003}.article-card h2,.paysheet-card h2{font-size:30px}.article-img{object-fit:contain!important;background:var(--bg)}.auth-card{border-radius:20px;box-shadow:var(--shadow-lg);padding:32px;max-width:440px}.auth-brand .wordmark{font-size:46px}.screen.auth.active{background:radial-gradient(ellipse at 20% 25%,var(--saffron-tint),transparent 65%),var(--bg);padding:60px 24px}.ui-auth-art{display:flex;justify-content:center;align-items:center;gap:10px;margin:0 auto 22px}.ui-auth-art img{width:85px;height:85px;object-fit:contain}.ui-auth-art img:nth-child(2){width:115px;height:115px}.admin-body{background:var(--bg);color:var(--text)}.admin-tbl{background:var(--surface);border-radius:12px}.shop-cartbar{background:var(--surface)!important;border-top:1px solid var(--border)!important}.nav{background:var(--surface)!important;border-color:var(--border)!important}.nav button.active{color:var(--saffron-deep)!important}.ui-skip{position:fixed;top:-100px;left:15px;z-index:99999;background:var(--surface);padding:14px}.ui-skip:focus{top:12px}
.ui-section-head>span{margin-left:0}.ui-section-head>span:last-child{margin-left:auto}.ui-ach-numbers small{font-size:18px}.ui-ach-numbers strong{line-height:1.5}.ui-ach-numbers>div{min-width:0}#coll-badge-strip{display:flex;gap:10px;flex:1;min-width:0;flex-wrap:wrap}#coll-badge-strip .ui-text-button{padding:0;width:56px;height:56px;flex:none}#coll-badge-strip .bt-art{display:block;width:56px;height:56px}#coll-badge-strip img{width:56px!important;height:56px!important}.m-card{border-radius:12px;padding:12px}.m-card.done{border-color:var(--border)}.m-card.locked{opacity:.8}.m-desc{line-height:1.5}.dash-cover:after{background:linear-gradient(0deg,#102d2dc9,transparent 60%)!important}.coll-city.locked .cc-photo img{filter:none!important}.hist-item{padding:17px!important}.hist-km{white-space:nowrap;margin-left:10px}.ui-profile-summary{padding:20px 0 26px;border-bottom:1px solid var(--border);margin-bottom:25px}.ui-profile-summary h2{font-size:28px;font-weight:500}.ui-route-photo{background:var(--saffron-tint);border-radius:12px;overflow:hidden;margin:15px 0 22px}.ui-route-photo img{width:100%;height:190px;object-fit:contain}.ui-route-photo figcaption{padding:8px 12px;font-size:9px;line-height:1.5;color:var(--muted)}.ui-route-stats{display:flex;gap:15px;flex-wrap:wrap;padding:13px 0;margin-bottom:20px;border-bottom:1px solid var(--border);font-size:12px;color:var(--saffron-deep)}.art-title{font-family:var(--serif);font-weight:500!important;font-size:31px!important}.art-dist{font-size:12px}.art-close{min-width:36px;min-height:36px}.prevm-row{padding:14px 0!important}.prevm-row.locked{opacity:.8!important}.ui-show-more{display:block;margin:20px auto}.ui-ach-footer{text-align:center;margin:30px 0;color:var(--muted);font-size:12px}.routebar-fill,.map-cbar-fill{background:var(--saffron)!important}.admin-tabs{gap:8px;flex-wrap:wrap}.admin-tab{border-radius:8px}.btn-out{background:transparent;color:var(--saffron-deep)}
@media(min-width:1500px){.main{margin:0 auto}.ui-badge-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1150px){.sidebar{width:205px;padding:25px 12px}.main{padding:32px 25px 90px}.main.dash-grid{grid-template-columns:minmax(0,1fr)}.dash-aside{position:static;max-height:none;overflow:visible}.ui-badge-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.coll-cities{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ui-ach-hero{padding:24px}.ui-featured{gap:15px;padding-left:20px}.ui-featured img{width:100px;height:100px}}
@media(max-width:760px){.sidebar{display:none}.main,.main.dash-grid{padding:75px 20px 100px;width:100%;max-width:100%}.ui-heading h1{font-size:34px}.ui-heading .ui-flourish{display:none}.ui-ach-hero{grid-template-columns:1fr;gap:20px;padding:23px}.ui-featured{border-left:0;border-top:1px solid var(--border);padding:18px 0 0}.ui-ach-numbers{justify-content:space-between}.ui-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ui-badge{padding:14px 9px}.ui-badge-art{height:140px}.ui-badge h3{font-size:16px}.ui-heading{margin-bottom:22px}.ui-section-head h2{font-size:23px}.ui-section-head span{font-size:9px}.ui-toolbar{gap:8px}.ui-search{max-width:none;width:100%;flex-basis:100%}.ui-chip{padding:9px 11px;font-size:11px}.ui-reward{padding:16px;gap:14px}.ui-reward img{width:90px;height:90px}.ui-reward h3{font-size:21px}.dash-cover{height:190px!important}.coll-intro h1{font-size:32px!important}.cc-body{padding:13px!important}.cc-name{font-size:20px!important}.cc-photo{aspect-ratio:1.1}.cc-credit{position:static!important;display:block!important}.coll-cities{gap:12px!important}.nav{display:flex!important}.nav button{flex:1}.ui-detail{padding:24px}.ui-detail .ui-badge-art{height:210px}.ui-detail-actions{flex-wrap:wrap}.ui-postcard img{height:80px}.ui-postcard strong{font-size:12px}.tophome{background:var(--surface)!important}.ui-auth-art{margin-top:10px}}
@media(max-width:390px){.main,.main.dash-grid{padding-left:14px;padding-right:14px}.ui-badge-art{height:125px}.coll-cities{grid-template-columns:1fr!important}.ui-ach-numbers{gap:14px}.ui-detail-actions .btn{flex-basis:100%}}
.ui-featured>div{min-width:0}.ui-badge h3,.ui-postcard strong{overflow-wrap:anywhere}.ui-badge-art,.ui-postcard{min-width:0;max-width:100%}.ui-ach-hero>*{min-width:0}.ui-toolbar select{min-width:0}.ui-section-head{flex-wrap:wrap}.toast{white-space:normal;text-align:center}.coll-trail-head{padding:18px!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Digital Safarnama passport */
.ui-stamp{position:relative;display:block;width:100%;height:100%}.ui-stamp img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 6px #372b1c25)}.ui-stamp-name{position:absolute;left:13%;right:13%;bottom:7%;z-index:2;padding:3px 5px;background:#f4ead4e8;border-top:1px solid #183d64;color:#173c63;font-family:var(--serif);font-size:clamp(9px,1vw,14px);font-weight:700;letter-spacing:1.5px;line-height:1.2;text-align:center;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-passport{margin:32px 0 55px;border:1px solid #b79a61;border-radius:22px;background:#eee4cd;box-shadow:0 24px 65px #263d3324;overflow:hidden}.ui-passport-cover{display:flex;justify-content:space-between;gap:25px;align-items:end;padding:30px 34px;color:#f9eed5;background:#123f48 radial-gradient(circle at 16% 30%,#ffffff12 0 2px,transparent 3px);border-bottom:3px double #ba9751}.ui-passport-cover h2{font-family:var(--serif);font-size:42px;letter-spacing:8px;font-weight:500}.ui-passport-cover p{color:#dfe7de;margin-top:6px}.ui-passport-cover .ui-eyebrow{color:#e4c37f}.ui-passport-id{text-align:right;display:grid;gap:3px}.ui-passport-id strong{font-family:monospace;letter-spacing:2px}.ui-passport-id small{color:#dfe7de}.ui-passport-tabs{display:flex;overflow:auto;padding:0 18px;background:#f7f0df;border-bottom:1px solid #c6ad78}.ui-passport-tabs button{flex:1;min-width:125px;border:0;border-right:1px solid #d8c59e;background:transparent;color:#5e635c;padding:14px 10px;font-family:var(--serif);font-size:12px}.ui-passport-tabs button span,.ui-passport-tabs button small{display:block;font-family:sans-serif;font-size:8px;letter-spacing:1px}.ui-passport-tabs button[aria-current=page]{background:#173f48;color:#fff}.ui-passport-spread{display:grid;grid-template-columns:.9fr 1.1fr;background:linear-gradient(90deg,#f5eddc 0 49.8%,#c5ac7955 50%,#f8f1e3 50.4%);min-height:620px}.ui-passport-page{padding:34px;position:relative}.ui-passport-page h2{font-size:31px}.ui-passport-page>p{color:#6c7069;line-height:1.8}.ui-passport-progress{height:6px;background:#d9ccb0;margin:20px 0 25px}.ui-passport-progress i{display:block;height:100%;background:#ae7930}.ui-trail-visa{display:grid;grid-template-columns:160px 1fr;gap:18px;align-items:center;border:1px dashed #b49459;padding:14px;background:#fffaf0}.ui-trail-visa>.ui-stamp{height:110px}.ui-trail-visa[data-earned=false] .ui-stamp{filter:grayscale(.65);opacity:.65}.ui-trail-visa h3{font-size:20px}.ui-trail-visa p{font-size:11px;color:#6c7069}.ui-next-journey{margin-top:22px;padding:18px;border-left:3px solid #b77b31;background:#fffaf0}.ui-next-journey h3{font-size:22px}.ui-next-journey p{font-size:11px;color:#6c7069;margin:6px 0 13px}.ui-passport-stamps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px;margin-top:22px}.ui-passport-stamp{border:0;background:transparent;color:#214248;padding:0}.ui-passport-stamp .ui-stamp{height:165px}.ui-passport-stamp>span:last-child{display:block;margin-top:5px;font-size:9px;letter-spacing:1px;text-transform:uppercase}.ui-passport-stamp[data-earned=false] .ui-stamp{filter:grayscale(.8);opacity:.55}.ui-passport-stamp[data-earned=false] .ui-stamp:after{content:'NEXT';position:absolute;inset:43% auto auto 50%;transform:translate(-50%,-50%) rotate(-7deg);border:2px solid #7a463a;color:#7a463a;padding:5px 12px;border-radius:50%;font:700 10px sans-serif;letter-spacing:2px}.ui-passport-motto{text-align:center!important;font-family:var(--serif);font-style:italic;border-top:1px solid #d0bc91;margin-top:27px;padding-top:16px}.ui-badge-art .ui-stamp{height:100%}.ui-detail .ui-stamp-name{font-size:15px}.ui-featured .ui-stamp{height:130px}
@media(max-width:900px){.ui-passport-spread{grid-template-columns:1fr;background:#f8f1e3}.ui-passport-page+ .ui-passport-page{border-top:3px double #c6ad78}.ui-passport-cover{align-items:start}.ui-passport-stamps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.ui-passport-cover{display:block;padding:24px}.ui-passport-cover h2{font-size:29px;letter-spacing:5px}.ui-passport-id{text-align:left;margin-top:18px}.ui-passport-page{padding:22px 16px}.ui-trail-visa{grid-template-columns:120px 1fr}.ui-passport-stamp .ui-stamp{height:125px}.ui-stamp-name{font-size:8px;letter-spacing:.7px}.ui-passport-tabs{padding:0}.ui-passport-tabs button{min-width:105px}}

/* Ocean system and richer member pages */
.btn.ghost,.btn-ghost,#ui-share{background:var(--surface)!important;color:var(--saffron-deep)!important;border:1px solid var(--saffron-deep)!important}.routebar{height:52px!important;background:transparent!important}.sidebar{background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--saffron-tint) 32%,var(--surface)));border-right-color:var(--border)}.side-link.active{background:var(--saffron-tint);color:var(--navy);box-shadow:inset 3px 0 var(--saffron)}.wordmark .n{color:#00b4d8}.ui-dashboard-page,.ui-collection-page,.ui-profile-page{background-image:radial-gradient(circle at 92% 2%,#00b4d80c,transparent 28%)}.ui-dashboard-page .walking-strip{padding:13px 16px;background:linear-gradient(90deg,var(--saffron-tint),transparent);border-radius:12px;border:0}.ui-dashboard-page .dash-cover{border:1px solid var(--border);box-shadow:var(--shadow-lg)}.ui-dashboard-page .stats,.ui-dashboard-page .mapcard,.ui-dashboard-page .card{box-shadow:var(--shadow);border-color:var(--border)}.ui-dashboard-page .pace-box{background:linear-gradient(125deg,var(--saffron-tint),color-mix(in srgb,var(--surface) 68%,var(--saffron-tint)));border:1px solid var(--border)}.coll-intro{padding:32px;border-radius:20px;background:linear-gradient(135deg,#03045e,#0077b6 72%,#00b4d8);color:white;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.coll-intro:after{content:'≈';position:absolute;right:28px;bottom:-45px;color:#ffffff1c;font:150px Georgia}.coll-intro .label,.coll-intro p{color:#caf0f8}.coll-intro h1{color:white;font-size:42px!important}.coll-badges-row{border-color:var(--border);box-shadow:var(--shadow)}.coll-trail-head{margin-top:22px!important;padding:20px 22px!important;border:1px solid var(--border)!important;border-radius:14px;background:linear-gradient(90deg,var(--surface),var(--saffron-tint));box-shadow:var(--shadow)}.coll-trail-head:hover{border-color:var(--saffron)!important}.coll-city{border:1px solid var(--border)!important;box-shadow:var(--shadow)!important}.coll-city:hover{border-color:var(--saffron)!important;box-shadow:var(--shadow-lg)!important}.cc-photo{background:linear-gradient(145deg,var(--saffron-tint),var(--surface))}.cc-tag.on{background:var(--saffron-tint)!important;color:var(--saffron-deep)!important}.tp-card{border:1px solid var(--border);background:linear-gradient(135deg,var(--surface),var(--saffron-tint));box-shadow:var(--shadow)}.ui-profile-page>h1{font-size:42px;margin-bottom:0}.ui-profile-page>.ui-eyebrow{display:inline-block;padding:7px 11px;border-radius:30px;background:var(--saffron-tint)}.prof-grid .card{border:1px solid var(--border);box-shadow:var(--shadow);background:linear-gradient(160deg,var(--surface) 80%,var(--saffron-tint))}.prof-col-l .card:first-child{border-top:4px solid #00b4d8}.prof-col-l .card:nth-child(2){border-top:4px solid #0077b6}.prof-recent-hd{padding:17px 18px;background:#03045e;border-radius:14px 14px 0 0}.prof-recent-hd .label,.prof-recent-hd .ptype-meta{color:#caf0f8!important}.hist-item{background:var(--surface);border-inline:1px solid var(--border);padding-inline:18px!important}.hist-item:last-of-type{border-radius:0 0 14px 14px;border-bottom:1px solid var(--border-soft)}.ui-passport-cover{background:linear-gradient(135deg,#03045e,#0077b6 68%,#00b4d8)}.ui-passport-export{align-self:center;border:1px solid #90e0ef;background:#caf0f8;color:#03045e;border-radius:10px;padding:12px 16px;font-size:11px;font-weight:700;white-space:nowrap}.ui-photo-picker{display:block;border:1px dashed var(--saffron);border-radius:14px;padding:18px;margin:20px 0;text-align:left;background:var(--saffron-tint)}.ui-photo-picker strong,.ui-photo-picker span{display:block}.ui-photo-picker span,.ui-photo-picker small,.ui-export-note{font-size:11px;color:var(--muted);line-height:1.6}.ui-photo-picker input{margin-top:13px;max-width:100%}.ui-export-dialog h2{text-align:left}.ui-export-dialog>p{text-align:left}.ui-export-note{text-align:left!important}.ui-passport{border-color:#8abbd0}.ui-passport-tabs button[aria-current=page]{background:#03045e}.ui-passport-progress i{background:linear-gradient(90deg,#0077b6,#00b4d8)}
@media(max-width:760px){.coll-intro{padding:24px}.coll-intro h1{font-size:31px!important}.ui-passport-export{width:100%;margin-top:18px}.ui-profile-page>h1{font-size:34px}}

/* Compact trail browser */
.ui-original-trail-head,.ui-original-trail-stat{display:none!important}.ui-trail-browser{margin:20px 0 16px}.ui-trail-browser-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:14px}.ui-trail-browser-head h2{font-size:25px;font-weight:500}.ui-trail-browser-head>span{font:italic 14px var(--serif);color:var(--muted)}.ui-trail-tabs{display:grid;grid-template-columns:repeat(8,minmax(105px,1fr));border:1px solid var(--border);border-radius:16px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}.ui-trail-tabs button{min-width:0;border:0;border-right:1px solid var(--border-soft);background:var(--surface);color:var(--muted);padding:14px 9px;text-align:left}.ui-trail-tabs button:last-child{border-right:0}.ui-trail-tabs button span,.ui-trail-tabs button small{display:block;font-size:8px;letter-spacing:.7px}.ui-trail-tabs button strong{display:block;margin:5px 0;font:600 12px/1.25 var(--serif);color:var(--text)}.ui-trail-tabs button[aria-pressed=true]{background:linear-gradient(145deg,#03045e,#0077b6);color:#caf0f8}.ui-trail-tabs button[aria-pressed=true] strong{color:white}.ui-trail-tabs button:hover{background:var(--saffron-tint)}.ui-trail-tabs button[aria-pressed=true]:hover{background:linear-gradient(145deg,#03045e,#0077b6)}#ui-trail-summary{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:18px 20px;margin-top:10px;border-left:3px solid #00b4d8;background:color-mix(in srgb,var(--saffron-tint) 55%,var(--surface))}#ui-trail-summary .ui-eyebrow{margin-bottom:4px}#ui-trail-summary h3{font-size:21px}#ui-trail-summary p{font-size:11px;color:var(--muted)}.ui-trail-browser.is-searching #ui-trail-summary{display:none}.ui-trail-browser.is-searching:after{content:'Showing matches across every trail';display:block;padding:13px 16px;background:var(--saffron-tint);color:var(--saffron-deep);font-size:11px;font-weight:600}.ui-collection-page .coll-cities{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}.ui-collection-page .coll-city{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:150px}.ui-collection-page .cc-photo{height:100%!important;min-height:150px;aspect-ratio:auto!important}.ui-collection-page .cc-photo img{object-fit:cover!important}.ui-collection-page .cc-body{padding:15px 16px!important;display:flex;flex-direction:column;align-items:flex-start}.ui-collection-page .cc-name{font-size:20px!important}.ui-collection-page .cc-detail{min-height:0!important;margin:4px 0 8px}.ui-collection-page .cc-walk,.ui-collection-page .cc-cert{margin-top:auto}.ui-collection-page .tp-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:17px 20px;margin-top:14px}.ui-collection-page .tp-card h3,.ui-collection-page .tp-card p{margin:0}.ui-collection-page .tp-card .series-dots{grid-column:3}.ui-collection-page .tp-card .cc-cert{grid-column:1/-1}.ui-collection-page #coll-content{margin-top:0}
@media(max-width:1100px){.ui-trail-tabs{display:flex;overflow-x:auto}.ui-trail-tabs button{flex:0 0 135px}.ui-collection-page .coll-city{grid-template-columns:120px minmax(0,1fr)}}
@media(max-width:760px){.ui-trail-browser-head>span{display:none}.ui-trail-tabs{border-radius:12px}.ui-trail-tabs button{flex-basis:128px}.ui-collection-page .coll-cities{grid-template-columns:1fr!important}.ui-collection-page .coll-city{grid-template-columns:105px minmax(0,1fr);min-height:135px}.ui-collection-page .cc-photo{min-height:135px}.ui-collection-page .cc-credit{display:none!important}#ui-trail-summary{display:block}#ui-trail-summary p{margin-top:8px}.ui-collection-page .tp-card{grid-template-columns:auto 1fr}.ui-collection-page .tp-card .series-dots{grid-column:1/-1}}

.ui-photo-credit{font-size:8px;line-height:1.35;color:var(--d-mute,var(--faint));margin:0 0 9px;max-width:100%;overflow-wrap:anywhere}.ui-memory-crop{display:grid;grid-template-columns:180px 1fr;gap:16px;padding:14px 0;border-top:1px solid var(--border)}.ui-crop-preview{width:180px;aspect-ratio:4/3;overflow:hidden;border-radius:10px;background:var(--bg);border:1px solid var(--border)}.ui-crop-preview img{width:100%;height:100%;object-fit:cover;transform-origin:center}.ui-memory-crop strong,.ui-memory-crop small{display:block}.ui-memory-crop small{font-size:9px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.ui-memory-crop label{display:grid;grid-template-columns:105px 1fr;align-items:center;gap:8px;margin-top:7px;font-size:10px;color:var(--muted)}.ui-memory-crop input[type=range]{width:100%;accent-color:var(--saffron)}.ui-export-dialog{width:min(660px,calc(100% - 30px))}
@media(max-width:560px){.ui-memory-crop{grid-template-columns:1fr}.ui-crop-preview{width:100%}.ui-memory-crop small{max-width:100%}}

/* Memory photo framing (drag to reposition, replace, remove) */
.ui-crop-preview canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none}.ui-crop-preview canvas:active{cursor:grabbing}.ui-pick-btn{display:inline-block;margin-top:13px;cursor:pointer}.ui-memory-actions{display:flex;gap:8px;margin-top:10px}.ui-memory-crop .ui-memory-actions label{display:inline-block;margin:0;color:var(--muted);cursor:pointer}.ui-memory-actions .ui-chip{font-size:11px;padding:7px 13px}.ui-detail-actions .btn:disabled{opacity:.5;cursor:not-allowed}
.ui-export-dialog{padding:0;overflow:hidden;max-height:90dvh}.ui-export-dialog[open]{display:flex;flex-direction:column}.ui-export-body{padding:24px;overflow:auto;min-height:0;overscroll-behavior:contain}.ui-export-footer{flex-shrink:0;padding:12px 24px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface)}.ui-export-footer .ui-detail-actions{margin-top:0;flex-wrap:nowrap}.ui-export-footer .ui-detail-actions .btn{flex-basis:auto;min-height:44px}.ui-export-footer .ui-export-note{margin:8px 0 0;font-size:11px;line-height:1.5;text-align:left}.ui-export-footer #ui-export-status:empty{display:none}.ui-export-footer #ui-export-status:not(:empty){margin:0 0 10px;color:var(--text)}
.ui-explore-roads{margin:18px 0 24px}.ui-explore-roads h2{font-size:23px;line-height:1.3}.ui-explore-roads>p{font-size:12px;line-height:1.6;color:var(--muted);margin:7px 0 14px}.ui-road-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ui-road-card{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.ui-road-card>img{width:72px;height:72px;object-fit:contain}.ui-road-card h3{font-size:16px;line-height:1.4}.ui-road-card p{font-size:11px;color:var(--muted);line-height:1.5;margin:5px 0}.ui-road-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.ui-road-actions .ui-chip{font-size:11px;min-height:44px;white-space:normal;text-align:left}.ui-road-actions .ui-text-button{font-size:11px;min-height:44px;display:inline-flex;align-items:center}@media(max-width:768px){.ui-road-grid{grid-template-columns:1fr}.ui-road-card{padding:14px;grid-template-columns:60px minmax(0,1fr)}.ui-road-card>img{width:60px;height:60px}}

/* Credits sit beneath artwork, never over it */
.dash-cover{overflow:visible!important;margin-bottom:30px}.dash-cover .dash-cover-credit{position:absolute!important;top:calc(100% + 7px);right:4px;bottom:auto!important;left:auto;max-width:100%;background:none!important;color:var(--faint)!important;text-shadow:none!important;font-size:9px;padding:0!important}

/* Shop clarity and full-bleed route covers */
.shop-cartbar button{color:#fff!important}
:root[data-theme=dark] .shop-cartbar button{color:#03045e!important}
.ui-trail-buy{margin-left:auto;display:flex;align-items:center;gap:10px;min-height:44px;padding:9px 14px;border:1px solid var(--saffron);border-radius:10px;background:var(--surface);color:var(--text);text-align:left}
.ui-trail-buy:hover{background:var(--saffron-tint)}
.ui-trail-buy .cc-select{position:static;flex:none}
.ui-trail-buy span:not(.cc-select){font-size:11px;font-weight:700}
.ui-trail-buy strong{font-size:12px;color:var(--saffron-deep);white-space:nowrap}
@media(max-width:760px){.ui-trail-buy{width:100%;margin:12px 0 0}.ui-trail-buy strong{margin-left:auto}}

/* Purchase UX: selected cards, reward preview, cart review */
.coll-city.is-selected{border:2px solid var(--saffron)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 55%,transparent),var(--shadow)!important;background:color-mix(in srgb,var(--saffron-tint) 55%,var(--surface))!important}
.coll-city.is-selected .cc-body{background:transparent}
.cc-selected-label{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;margin:3px 0 4px;padding:3px 9px;border-radius:20px;background:var(--saffron);color:#fff;font-size:10px;font-weight:700;letter-spacing:.3px}
.coll-city[data-selected=included] .cc-selected-label{background:transparent;color:var(--saffron-deep);border:1px solid color-mix(in srgb,var(--gold) 70%,var(--saffron))}
:root[data-theme=dark] .cc-selected-label{color:#03045e}
:root[data-theme=dark] .coll-city[data-selected=included] .cc-selected-label{color:var(--saffron-deep)}
#ui-trail-summary{flex-wrap:wrap}
.ui-trail-offer{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:6px;padding-top:12px;border-top:1px dashed var(--border)}
.ui-trail-save{display:block;flex-basis:100%;font-size:11px;font-weight:600;color:var(--green,#1B6B3A);letter-spacing:.02em;margin-top:2px;padding-left:2px}
.ui-trail-offer.is-selected .ui-trail-buy{background:var(--saffron-tint);box-shadow:0 0 0 2px color-mix(in srgb,var(--gold) 55%,transparent)}
.ui-trail-reward{display:flex;align-items:center;gap:12px;min-width:0;flex:1}
.ui-reward-art{display:flex;align-items:center;flex:none}
.ui-reward-art img{object-fit:contain;filter:drop-shadow(0 2px 2px #03045e22)}
.ui-reward-medal{width:46px;height:46px;margin-right:4px}
.ui-reward-stamp{width:42px;height:30px;margin-left:-6px}
.ui-reward-more{font-size:10px;font-weight:700;color:var(--saffron-deep);margin-left:4px}
.ui-trail-reward p{font-size:11px!important;line-height:1.5;color:var(--muted);margin:0!important;min-width:0}
.shop-cartbar-actions{display:flex;gap:8px;flex:none}
.shop-cartbar{color:var(--text)}.shop-cartbar b{color:var(--text)}.shop-cartbar span{color:var(--muted);opacity:1}
.shop-cartbar .shop-review-btn{background:transparent!important;color:var(--saffron-deep)!important;border:1px solid var(--saffron-deep)!important}
:root[data-theme=dark] .shop-cartbar .shop-review-btn{color:#caf0f8!important;border-color:#90e0ef99!important}
.ui-cart-review{width:min(560px,calc(100% - 30px))}
.ui-cart-review h2{text-align:left!important;font-size:26px}
.ui-review-list{list-style:none;margin:16px 0 0;padding:0;border-top:1px solid var(--border)}
.ui-review-item{display:flex;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--border-soft)}
.ui-review-main{display:flex;flex-direction:column;gap:3px;min-width:0}
.ui-review-main strong{font-family:var(--serif);font-size:17px;font-weight:600}
.ui-review-kind{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;color:var(--saffron-deep)}
.ui-review-sub{font-size:11px;color:var(--muted);line-height:1.6}
.ui-review-sub em{font-style:normal;color:var(--faint)}
.ui-review-note{font-size:11px;color:var(--saffron-deep);line-height:1.5}
.ui-review-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:none}
.ui-review-side strong{font-size:15px;white-space:nowrap}
.ui-review-remove{border:0;background:none;color:var(--muted);font-size:11px;text-decoration:underline;padding:4px 0;min-height:24px}
.ui-review-remove:hover{color:var(--text)}
.ui-review-totals{margin:14px 0 0}
.ui-review-totals div{display:flex;justify-content:space-between;padding:4px 0;font-size:13px;color:var(--muted)}
.ui-review-totals dd{margin:0}
.ui-review-saving dd{color:var(--saffron-deep);font-weight:700}
.ui-review-total{border-top:1px solid var(--border);margin-top:6px;padding-top:10px!important;color:var(--text)!important;font-size:17px!important;font-weight:700}
.ui-cart-review .ui-review-fine{text-align:left!important;font-size:11px!important;margin:12px 0 0!important}
.ui-cart-review .ui-detail-actions .btn{font-size:14px}
.ui-trail-offer--rewards{flex-wrap:wrap}
.ui-trail-hint{flex-basis:100%;font-size:11px!important;line-height:1.55;color:var(--saffron-deep)!important;margin:0!important}
@media(max-width:760px){.ui-trail-offer{flex-wrap:wrap}.ui-trail-offer .ui-trail-buy{margin:0}}
@media(max-width:560px){.ui-cart-review{width:100%;max-width:100%;margin:auto 0 0;border-radius:20px 20px 0 0;max-height:88vh;padding:22px 18px calc(18px + env(safe-area-inset-bottom))}.ui-cart-review h2{font-size:23px}.shop-cartbar{gap:10px}.shop-cartbar button{padding:10px 14px}}
.ui-trail-full{flex-basis:100%;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ui-trail-full .ui-trail-buy--secondary{margin:0;min-height:40px;padding:8px 14px;background:transparent;border:1px solid var(--saffron-deep);color:var(--saffron-deep);font-size:12px;font-weight:700}
.ui-trail-offer.is-selected .ui-trail-buy--secondary{background:var(--saffron-tint)}
.ui-trail-full span{font-size:11px;color:var(--muted);line-height:1.5;flex:1;min-width:180px}
.ui-trail-hint strong{color:var(--text)}
.plan.plan-secondary{border-style:dashed}
@media(max-width:760px){.ui-trail-full .ui-trail-buy--secondary{width:100%;justify-content:center}}

/* Subtle collection-screen animations */
@keyframes smFadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes smBreath{0%,100%{box-shadow:var(--shadow),0 0 0 0 rgba(0,119,182,.18)}60%{box-shadow:var(--shadow),0 0 0 6px rgba(0,119,182,0)}}

/* City cards fade in staggered when the collection loads */
.coll-city{animation:smFadeUp .32s ease both}
.coll-city:nth-child(2){animation-delay:.05s}
.coll-city:nth-child(3){animation-delay:.10s}
.coll-city:nth-child(4){animation-delay:.14s}
.coll-city:nth-child(5){animation-delay:.17s}
.coll-city:nth-child(n+6){animation-delay:.20s}

/* Active city card gets a slow breath pulse on its border */
.coll-city:has(.cc-cert){animation:smFadeUp .32s ease both,smBreath 3.2s ease-in-out 1s infinite}

/* "Open My Safarnama", make it look like a real button, not a text link */
.ui-collection-page .cc-cert,.coll-city .cc-cert{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-top:auto;
  padding:7px 14px;
  background:var(--saffron);
  color:var(--d-btn-fg,#fff);
  border-radius:8px;
  font-size:11.5px;
  font-weight:700;
  text-decoration:none;
  transition:filter .15s;
}
.ui-collection-page .cc-cert:hover,.coll-city .cc-cert:hover{filter:brightness(.9);text-decoration:none}

/* Trail summary area fades in when switching trails */
#ui-trail-summary{animation:smFadeUp .22s ease both}

/* Keep stamp names readable at card and phone sizes, including long city names. */
.ui-stamp{display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:center}
.ui-stamp img{min-height:0}
.ui-stamp-name{position:static;display:block;margin:0 7%;padding:6px 5px;background:#f4ead4;border-top:1px solid #183d64;color:#173c63;font-size:14px;letter-spacing:.8px;line-height:1.3;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
@media(max-width:600px){.ui-stamp-name{font-size:12px;letter-spacing:.4px;padding:5px 3px;margin:0 3%}}

/* Passport alignment: spine sits between the two pages, stamps and their name strips are sized to the artwork */
@media(min-width:901px){.ui-passport-spread{background:linear-gradient(90deg,#f5eddc 0 44.8%,#c5ac7955 45%,#f8f1e3 45.4%)}}
.ui-passport-stamp{text-align:center}
.ui-passport-stamp .ui-stamp{width:min(100%,190px);margin-inline:auto}
@media(max-width:560px){.ui-passport-stamp .ui-stamp{width:min(100%,128px)}}
.ui-trail-visa>.ui-stamp{width:100%;max-width:132px;justify-self:center}
.ui-trail-visa .ui-stamp-name{font-size:10px;letter-spacing:.8px;padding:4px 3px;margin:0 4%}
/* Passport, compact: fits one screen on a laptop */
.ui-passport{margin:24px 0 40px}
.ui-passport-cover{padding:20px 30px}
.ui-passport-cover h2{font-size:32px;letter-spacing:6px}
.ui-passport-tabs button{padding:10px 8px}
.ui-passport-spread{min-height:0}
.ui-passport-page{padding:26px 30px}
.ui-passport-page>p{line-height:1.6;margin-top:4px}
.ui-passport-progress{margin:14px 0 18px}
.ui-trail-visa{grid-template-columns:132px 1fr;padding:10px 14px;gap:14px}
.ui-trail-visa>.ui-stamp{height:96px}
.ui-next-journey{margin-top:14px;padding:14px 16px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 16px}
.ui-next-journey>*{grid-column:1}
.ui-next-journey p{margin:2px 0 0}
.ui-next-journey>.btn{grid-column:2;grid-row:1/span 3;white-space:nowrap}
.ui-passport-stamps{gap:18px 12px;margin-top:16px}
.ui-passport-stamp .ui-stamp{height:150px;width:min(100%,176px)}
@media(min-width:1101px){.ui-passport-stamps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ui-passport-motto{margin-top:18px;padding-top:12px}
@media(max-width:560px){.ui-passport-stamp .ui-stamp{height:125px;width:min(100%,128px)}.ui-next-journey{grid-template-columns:1fr}.ui-next-journey>.btn{grid-column:1;grid-row:auto;margin-top:8px}}
.ui-passport-stamp .ui-stamp{width:min(100%,150px)}
.ui-passport-stamp .ui-stamp-name{margin:0}
@media(max-width:560px){.ui-passport-stamp .ui-stamp{width:min(100%,120px)}}

/* STAMPS, ONE FORMAT EVERYWHERE (final word; overrides the earlier passes above).
   Every *-stamp.webp shares one 1100x733 canvas with the artwork scaled into the same box on the same
   bottom line, so the name band sits on the stamp's lower edge at the same place on all of them. */
span.ui-stamp{position:relative!important;display:block!important;container-type:inline-size;aspect-ratio:1100/733;width:100%;height:auto!important;margin-inline:auto}
span.ui-stamp img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:contain}
span.ui-stamp .ui-stamp-name{position:absolute!important;left:12%;right:12%;bottom:9%;z-index:2;display:block;margin:0!important;padding:.3em .4em!important;background:#f4ead4;border-top:1px solid #183d64;color:#173c63;font-family:var(--serif);font-weight:700;font-size:clamp(8px,5.2cqw,14px)!important;line-height:1.2;letter-spacing:.06em!important;text-transform:uppercase;text-align:center;white-space:nowrap;overflow:visible;text-overflow:clip}
.ui-passport-stamp .ui-stamp{width:min(100%,210px)!important}
.ui-trail-visa>.ui-stamp{width:132px!important;max-width:none}
.ui-featured .ui-stamp{width:min(100%,220px)!important}
.ui-badge-art .ui-stamp{width:min(100%,420px)!important}
.ui-passport-stamp>span:last-child{white-space:nowrap;font-size:8.5px;letter-spacing:.5px}
@media(max-width:560px){.ui-passport-stamp .ui-stamp{width:min(100%,150px)!important}}

/* Gift a city */
.ui-gift-form{display:grid;gap:12px;margin-top:6px;text-align:left}
.ui-gift-form label{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--text)}
.ui-gift-form input,.ui-gift-form textarea{font:inherit;font-size:15px;font-weight:400;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);width:100%;box-sizing:border-box}
.ui-gift-err{margin:0;min-height:0;font-size:13px;color:var(--red,#c0392b)}
.ui-gift-err:empty{display:none}
.ui-gift-line{text-align:center;margin:10px 0 0}
.ui-linkbtn{background:none;border:0;padding:4px;font:inherit;font-size:14px;font-weight:600;color:var(--saffron-deep);text-decoration:underline;text-underline-offset:2px;cursor:pointer}

/* Phones: hide the native scroll indicator on the right edge (3 Oct 2026). */
@media (max-width: 640px) { html { scrollbar-width: none; } html::-webkit-scrollbar, body::-webkit-scrollbar { display: none; width: 0; height: 0; } }
/* Passport photo framing (6 Oct 2026): drag, pinch or scroll to zoom; shape chips; caption */
.ui-crop-preview{position:relative;width:100%;max-width:340px;aspect-ratio:4/3}
.ui-crop-preview canvas{outline:none}.ui-crop-preview canvas:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.ui-crop-hint{position:absolute;left:8px;bottom:8px;font-size:10px;font-weight:600;color:#fff;background:rgba(10,20,40,.55);padding:3px 8px;border-radius:99px;pointer-events:none}
.ui-memory-crop{grid-template-columns:minmax(0,340px) 1fr!important;align-items:start}
.ui-crop-side{min-width:0}
.ui-shape-chips{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
.ui-shape-chips .ui-chip[aria-pressed="true"]{background:var(--saffron);color:#fff;border-color:var(--saffron)}
.ui-caption{display:block;margin-top:10px;font-size:11px;color:var(--muted)}
.ui-caption input{display:block;width:100%;margin-top:4px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:13px}
@media(max-width:768px){.ui-memory-crop{grid-template-columns:1fr!important}.ui-crop-preview{max-width:none}}
