:root{
 --purple:#143B54;--ink:#102A3A;--gold:#24B176;--gold-soft:#EAF7F1;
 --paper:#F6F8F8;--surface:#fff;--line:#E6EBEC;--line2:#D3DCDE;--muted:#6B7C85;
 --green:#178F5A;--red:#B3261E;--dx:28px;
 --fs:'Alexandria','Readex Pro',system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif;
}
[dir=rtl]{--dx:-28px}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{font-family:var(--fs);background:#DDE5E3;color:var(--ink);overflow:hidden;-webkit-font-smoothing:antialiased}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
input,textarea,select{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--purple);outline-offset:2px}
.i{width:22px;height:22px;flex:none;display:block}
[dir=rtl] .flip{transform:scaleX(-1)}
.pe{pointer-events:auto}
.and-only{display:none!important}
.p-android .and-only{display:inline-flex!important}
.p-android .ios-only{display:none!important}
#app{height:100%}

/* prototype chrome */
.chrome{height:58px;display:flex;align-items:center;gap:12px;padding:0 20px;color:#143B54;border-bottom:1px solid rgba(16,42,58,.08);background:#F7F9F8}
.ch-brand{display:flex;align-items:center;gap:10px;margin-inline-end:auto;font-size:15px;font-weight:500;white-space:nowrap}
.ch-brand .logo{width:26px;height:26px}
.ch-brand small{color:#6B7C85;font-weight:400;font-size:12.5px}
.ch-seg{display:flex;background:#E3EAE9;border-radius:10px;padding:3px;gap:2px}
.ch-seg button{height:30px;padding:0 12px;border-radius:7px;font-size:13px;color:#4D6166;white-space:nowrap}
.ch-seg button.on{background:#FFFFFF;color:#143B54;font-weight:500;box-shadow:0 1px 3px rgba(16,42,58,.14)}
.ch-sel{height:36px;border-radius:10px;background:#E3EAE9;border:0;color:#143B54;padding:0 10px;font-size:13px;max-width:190px}
.ch-sel option{color:#222}
.showcase{height:calc(100% - 58px);display:flex;align-items:center;justify-content:center;padding:18px;background:radial-gradient(ellipse at 50% 35%,#F3F6F5 0%,#DCE4E2 75%)}
.p-web .showcase{padding:12px}

/* device */
.device{position:relative;overflow:hidden;background:var(--paper);display:flex;flex-direction:column;isolation:isolate}
.p-ios .device{height:min(844px,100%);aspect-ratio:390/844;border-radius:54px;box-shadow:0 0 0 10px #1C2A2E,0 0 0 12px #8FA3A6,0 36px 80px rgba(16,42,58,.28)}
.p-android .device{height:min(860px,100%);aspect-ratio:400/860;border-radius:36px;box-shadow:0 0 0 9px #1C2A2E,0 0 0 11px #8FA3A6,0 36px 80px rgba(16,42,58,.28)}
.p-android{--paper:#F6F8F8}
.p-web .device{width:100%;height:100%;border-radius:14px;box-shadow:0 24px 60px rgba(16,42,58,.16),0 0 0 1px rgba(16,42,58,.06)}
.wide .device{flex-direction:row}
.main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;position:relative}
.stage{flex:1;min-height:0;position:relative;overflow:hidden}

/* status bar */
.statusbar{display:none}
.p-ios .statusbar,.p-android .statusbar{display:flex;flex:none;align-items:center;justify-content:space-between;position:relative;z-index:40;background:var(--paper)}
.p-ios .statusbar{height:50px;padding:4px 32px 0;font-size:15px;font-weight:600}
.p-android .statusbar{height:38px;padding:0 22px;font-size:13px;font-weight:500}
.on-map .statusbar,.dark-ov .statusbar{position:absolute;top:0;left:0;right:0}
.on-map .statusbar{background:linear-gradient(rgba(239,242,241,.96),rgba(239,242,241,0))}
.dark-ov .statusbar{background:none;color:#fff;z-index:70}
.island{position:absolute;left:50%;transform:translateX(-50%)}
.p-ios .island{top:11px;width:118px;height:34px;background:#000;border-radius:20px}
.p-android .island{top:12px;width:13px;height:13px;border-radius:50%;background:#000}
.sb-ic{display:flex;align-items:center;gap:6px;direction:ltr}
.sb-ic svg{fill:currentColor}
.homeind{display:none}
.p-ios .homeind,.p-android .homeind{display:block;position:absolute;left:50%;transform:translateX(-50%);border-radius:3px;background:#102A3A;z-index:90;pointer-events:none}
.p-ios .homeind{bottom:8px;width:134px;height:5px}
.p-android .homeind{bottom:7px;width:100px;height:4px;opacity:.65}
.dark-ov .homeind{background:#fff}
.ai{--lg1:#24B176;--lg2:#143B54}

/* tab bar */
.tabbar{flex:none;display:flex;justify-content:space-around;position:relative;z-index:20;background:rgba(255,255,255,.94);border-top:1px solid rgba(16,42,58,.1)}
.tabbar[hidden],.wide .tabbar{display:none!important}
.p-web .tabbar{height:64px;padding:6px 6px 8px}
.p-ios .tabbar{height:84px;padding:7px 8px 28px;backdrop-filter:blur(20px)}
.tb{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10.5px;color:#7A8B8F}
.tb .ic{position:relative;display:grid;place-items:center}
.tb .i{width:25px;height:25px}
.tb.on{color:var(--purple);font-weight:500}
.tb-ai .ic{width:34px;height:30px;border-radius:11px;background:var(--gold);color:var(--purple)}
.tb-ai .i{width:19px;height:19px}
.p-android .tabbar{height:82px;padding:12px 0 20px;background:#E6EEED;border:0}
.p-android .tb{font-size:12px;gap:4px;color:#3F5559}
.p-android .tb .ic{width:64px;height:32px;border-radius:16px;transition:background .2s}
.p-android .tb .i{width:23px;height:23px}
.p-android .tb.on{color:var(--ink);font-weight:600}
.p-android .tb.on .ic{background:#CFE6EA}
.nbadge{position:absolute;top:-4px;inset-inline-end:-9px;min-width:17px;height:17px;border-radius:9px;background:var(--red);color:#fff;font-size:10px;font-style:normal;display:grid;place-items:center;padding:0 4px;border:2px solid #fff;font-weight:600}
.p-android .nbadge{top:0;inset-inline-end:10px}

/* sidebar (wide web) */
.sidebar{display:none}
.wide .sidebar{display:flex;flex-direction:column;gap:18px;width:280px;flex:none;background:var(--surface);color:var(--ink);border-inline-end:1px solid var(--line);padding:20px 14px 14px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#BFD0CF transparent}
.sb-logo{display:flex;align-items:center;gap:10px;padding:0 8px;font-size:21px;font-weight:600;color:var(--purple)}
.sb-logo .logo{width:30px;height:30px}
.sb-nav{display:flex;flex-direction:column;gap:2px}
.sb-nav button{display:flex;align-items:center;gap:12px;height:42px;padding:0 12px;border-radius:12px;font-size:14.5px;color:#4D6166;text-align:start}
.sb-nav button:hover{background:#F1F5F4}
.sb-nav button.on{background:#E6EBEC;color:var(--purple);font-weight:500}
.sb-nav .bdg{margin-inline-start:auto}
.sb-sec{border-top:1px solid var(--line);padding-top:16px;display:flex;flex-direction:column;gap:10px}
.sb-cap{font-size:12.5px;color:var(--muted);padding:0 8px}
.tree{display:flex;flex-direction:column;gap:1px}
.tr-h{display:flex;align-items:center;gap:10px;width:100%;height:42px;padding:0 8px;border-radius:10px;font-size:14px;text-align:start;color:var(--ink)}
.tr-h:hover{background:#F1F5F4}
.tr-h>span:nth-child(2){flex:1}
.tr-ic{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--bg);color:var(--fg)}
.tr-ic .i{width:16px;height:16px}
.tr-ch{width:16px!important;height:16px!important;opacity:.55;transition:transform .2s}
.tr.open .tr-ch{transform:rotate(180deg)}
.tr-items{display:none;padding:0 0 8px;padding-inline-start:46px;flex-direction:column}
.tr.open .tr-items{display:flex}
.tr-items button{text-align:start;min-height:34px;font-size:13.5px;color:var(--muted);border-radius:8px;padding:0 10px}
.tr-items button:hover{color:var(--purple);background:#F1F5F4}
.tr-items button.on{color:var(--green);font-weight:500}
.sb-me{margin-top:auto;display:flex;align-items:center;gap:10px;padding:10px;border-radius:14px;background:#F1F5F4}
.sb-me b{display:block;font-size:14px;font-weight:500;color:var(--ink)}
.sb-me small{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);margin-top:2px}
.beta{background:#E6EBEC;border-radius:6px;padding:0 6px}

/* topbar (wide web) */
.topbar{display:none}
.wide .topbar{display:flex;align-items:center;gap:14px;height:66px;flex:none;padding:0 22px;background:var(--surface);border-bottom:1px solid var(--line)}
.tb-search{flex:1;max-width:560px}
.tb-field{display:flex;align-items:center;gap:10px;width:100%;height:44px;border-radius:14px;background:var(--paper);padding:0 14px;color:var(--muted);font-size:14px;text-align:start}
.tb-field span{flex:1}
kbd{font-family:inherit;font-size:12px;border:1px solid var(--line2);border-radius:6px;padding:1px 7px;color:var(--muted);background:#fff}
.tb-end{display:flex;align-items:center;gap:8px;margin-inline-start:auto}
.tb-btn{display:flex;align-items:center;gap:6px;height:40px;padding:0 12px;border-radius:10px;font-size:14px}
.tb-icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;position:relative}
.tb-btn:hover,.tb-icon:hover{background:var(--paper)}
.nd{position:absolute;top:9px;inset-inline-end:10px;width:9px;height:9px;border-radius:50%;background:var(--red);border:2px solid #fff}

/* map */
.mapwrap{position:absolute;inset:0;z-index:0;background:#E6ECEA}
.stage:not(.is-map) .mapwrap{visibility:hidden}
#map{position:absolute;inset:0;direction:ltr}
.leaflet-container{font-family:var(--fs)!important;background:#E6ECEA!important}
.leaflet-tile-pane{filter:saturate(.55) contrast(.97)}
.leaflet-control-attribution{font-size:9px!important;background:rgba(255,255,255,.75)!important}
.leaflet-top{top:108px}
.p-ios .leaflet-top{top:150px}
.p-android .leaflet-top{top:140px}
.wide .leaflet-top{top:auto}
.fbmap{position:absolute;inset:0;display:none}
.fallback .fbmap{display:block}
.fallback #map{display:none}
.fbmap svg{position:absolute;inset:0;width:100%;height:100%}
.fb-pins{position:absolute;inset:0}
.fbp{position:absolute;transform:translate(-50%,calc(-50% - 25px))}
.fbme{position:absolute;transform:translate(-50%,-50%)}
.mk{width:36px;height:36px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--fg);border:2.5px solid #fff;box-shadow:0 4px 10px rgba(16,42,58,.35);display:grid;place-items:center;cursor:pointer;transition:box-shadow .2s}
.mk span{transform:rotate(45deg);color:#fff;display:grid}
.mk .i{width:16px;height:16px;stroke-width:2.2}
.mk.sel{box-shadow:0 0 0 6px color-mix(in srgb,var(--fg) 28%,transparent),0 6px 14px rgba(16,42,58,.4)}
.me-dot{width:24px;height:24px;border-radius:50%;background:rgba(16,42,58,.18);display:grid;place-items:center;animation:pulse 2.6s ease-in-out infinite}
.me-dot i{width:13px;height:13px;border-radius:50%;background:var(--purple);border:2.5px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.3)}
@keyframes pulse{50%{box-shadow:0 0 0 10px rgba(16,42,58,.08)}}
/* screen container */
#screen{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column}
#screen.map-mode{pointer-events:none}
#screen.solid{background:var(--paper)}
.scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#BFD0CF transparent}
.pad{padding:4px 16px 30px}
.wide .pad{max-width:1160px;margin:0 auto;padding:6px 36px 48px}
#screen.nav-push{animation:navIn .3s cubic-bezier(.2,.8,.2,1)}
.p-android #screen.nav-push{animation:navUp .28s cubic-bezier(.2,.8,.2,1)}
#screen.nav-pop,#screen.nav-tab,.wide #screen.nav-push{animation:fade .2s}
@keyframes navIn{from{opacity:.3;transform:translateX(var(--dx))}to{opacity:1;transform:none}}
@keyframes navUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes fade{from{opacity:0}}
@keyframes up{from{transform:translateY(100%)}}
@keyframes popin{from{transform:scale(.4);opacity:0}}

/* headers */
.hdr{flex:none}
.nb{height:46px;display:flex;align-items:center;padding:0 10px;gap:6px;position:relative}
.hdr.root .nb{height:34px}
.nb-back{display:inline-flex;align-items:center;color:var(--purple);font-size:16px;height:40px;padding-inline-end:6px;position:relative;z-index:2}
.nb-back .ios-only{display:inline-flex;align-items:center;gap:1px}
.nb-back .i{width:24px;height:24px}
.nb-title{position:absolute;left:0;right:0;text-align:center;font-weight:600;font-size:16px;pointer-events:none;padding:0 96px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hdr.root .nb-title{opacity:0}
.nb-act{margin-inline-start:auto;display:flex;align-items:center;gap:4px;position:relative;z-index:2}
.lt{font-size:31px;font-weight:700;padding:0 18px 8px;letter-spacing:-.01em;line-height:1.2}
.hdr.sub .lt{display:none}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:0 18px 8px;font-size:12.5px;color:var(--muted)}
.cr{display:inline-flex;align-items:center;gap:4px}
.crumbs button{color:var(--purple)}
.crumbs .i{width:12px;height:12px;opacity:.6}
.cr.cur{display:none}
.nb-btn{height:36px;padding:0 8px;color:var(--purple);font-size:15px;display:inline-flex;align-items:center;gap:6px;border-radius:10px;font-weight:500}
.nb-btn.add span{display:none}
.p-android .nb{height:64px;padding:0 4px}
.p-android .nb-title{position:static;text-align:start;flex:1;font-size:22px;font-weight:500;opacity:1!important;padding:0 12px}
.p-android .hdr.sub .nb-title{padding:0 4px}
.p-android .lt{display:none}
.p-android .nb-back{width:48px;height:48px;border-radius:50%;justify-content:center;padding:0;color:var(--ink)}
.p-android .nb-act{margin:0}
.p-android .nb-btn.add{display:none}
.p-android .crumbs{padding:0 16px 8px}
.wide .hdr{display:grid;grid-template-columns:1fr auto;grid-template-areas:"cr act" "lt act";align-items:end;column-gap:16px;padding:26px 36px 12px;max-width:1160px;width:100%;margin:0 auto}
.wide .nb{display:contents}
.wide .nb-back,.wide .nb-title{display:none}
.wide .nb-act{grid-area:act;align-self:center}
.wide .crumbs{grid-area:cr;padding:0;margin-bottom:6px}
.wide .cr.cur{display:inline-flex;color:var(--ink)}
.wide .lt,.wide .hdr.sub .lt{grid-area:lt;display:block;padding:0;font-size:28px}
.wide .nb-btn.add{background:var(--purple);color:#fff;padding:0 16px;height:42px}
.wide .nb-btn.add span{display:inline}

/* shared components */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 18px;border-radius:14px;font-weight:500;font-size:15px;white-space:nowrap}
.btn .i{width:19px;height:19px}
.btn.pri{background:var(--purple);color:#fff}
.btn.gold{background:var(--gold);color:var(--purple)}
.btn.ghost{background:#E6EBEC;color:var(--purple)}
.btn.sm{height:34px;padding:0 12px;font-size:13px;border-radius:10px}
.p-android .btn{border-radius:24px;height:46px}
.p-android .btn.sm{height:34px}
.wide .btn{height:42px;border-radius:10px}
.wfull{width:100%;margin-top:12px}
.grow{flex:1}
.link{color:var(--purple);font-size:13.5px;font-weight:500}
.icbtn{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex:none;color:var(--muted)}
.icbtn.light{background:rgba(255,255,255,.1);color:#fff}
.bdg{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--gold);color:var(--purple);font-size:11.5px;font-weight:600;font-style:normal;flex:none}
.aud-tag{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:11px;background:#EAF7F1;color:var(--purple);font-size:11.5px;font-weight:500;white-space:nowrap}
.aud-tag.light{background:rgba(36,177,118,.18);color:#CFE8EC}
.gt{font-size:13.5px;color:var(--muted);margin:22px 4px 0;font-weight:500}
.lead{color:var(--muted);font-size:14px;line-height:1.7;margin:2px 2px 12px;max-width:62ch}
.count{font-size:13px;color:var(--muted);margin:14px 4px 0}
.hint{font-size:12.5px;color:var(--muted);margin-top:7px;line-height:1.5}
.hint:empty{display:none}
.hint.err{color:var(--red)}
.ferr{display:flex;align-items:center;gap:6px;color:var(--red);font-size:13px;margin-top:8px}
.ferr .i{width:16px;height:16px}
.av{width:38px;height:38px;border-radius:12px;background:var(--gold);color:var(--purple);display:grid;place-items:center;font-weight:600;font-size:14px;flex:none}
.logo{display:block}
.contours{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}

.seg{display:flex;background:#E3EAE9;border-radius:12px;padding:3px;gap:2px}
.seg button{flex:1;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:14px;font-weight:500;color:#4D6166;transition:background .2s,color .2s}
.seg .i{width:18px;height:18px}
.seg button.on{background:#fff;color:var(--ink);box-shadow:0 2px 6px rgba(16,42,58,.12)}
.sg-ic{display:inline-flex}.sg-ck{display:none}
.p-android .seg:not(.dark){background:none;padding:0;gap:0;border:1px solid #6E8084;border-radius:20px;overflow:hidden}
.p-android .seg:not(.dark) button{border-radius:0;height:40px;color:var(--ink);box-shadow:none}
.p-android .seg:not(.dark) button+button{border-inline-start:1px solid #6E8084}
.p-android .seg:not(.dark) button.on{background:#CFE6EA}
.p-android .seg .sg-ic{display:none}
.p-android .seg button.on .sg-ck{display:inline-flex}




.chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 12px 6px;margin:0 -12px}
.chips::-webkit-scrollbar,.qs::-webkit-scrollbar,.quick::-webkit-scrollbar{display:none}
.chip{flex:none;display:flex;align-items:center;gap:6px;height:34px;padding:0 13px;border-radius:17px;background:#fff;font-size:13px;box-shadow:0 2px 8px rgba(16,42,58,.12);white-space:nowrap}
.chip .i{width:16px;height:16px}
.chip .dot{width:8px;height:8px;border-radius:50%;display:block}
.chip.on{background:var(--gold);color:var(--purple);font-weight:500}
.ck-and{display:none}
.p-android .chip{border-radius:8px;height:32px;box-shadow:0 1px 3px rgba(0,0,0,.08);border:1px solid #B8CCCC}
.p-android .chip.on{background:#CFE6EA;color:var(--ink);border-color:transparent}
.p-android .chip.on .ck-and{display:inline-flex}
.p-android .chip.on .dot{display:none}
.chips.flat{margin:0 -16px;padding:2px 16px 6px}
.chips.flat .chip{box-shadow:none;border:1px solid var(--line2)}
.chips.flat .chip.on{border-color:var(--gold)}
.wide .chips.flat{flex-wrap:wrap;margin:0;padding:0}

.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 14px;border-radius:19px;border:1px solid var(--line2);background:#fff;font-size:14px}
.opt .i{width:16px;height:16px;stroke-width:2.4}
.opt .ck{display:none}
.opt.on{background:#EAF7F1;border-color:var(--gold);color:var(--purple);font-weight:500}
.opt.on .ck{display:inline-flex}
.p-android .opt{border-radius:8px;min-height:34px}
.p-android .opt.on{background:#CFE6EA;color:var(--ink);border-color:transparent}

.search{display:flex;align-items:center;gap:10px;height:44px;border-radius:12px;background:#E3EAE9;padding:0 12px;margin-top:12px;color:var(--muted)}
.search .i{width:19px;height:19px}
.search input{flex:1;border:0;background:none;outline:none;font-size:15px;color:var(--ink);min-width:0}
.search input::placeholder{color:#7C8D90}
.p-android .search{border-radius:28px;height:52px;background:#E6ECEB;padding:0 18px}
.wide .search{background:var(--surface);border:1px solid var(--line2);max-width:560px}

.group{background:var(--surface);border-radius:16px;overflow:hidden;margin-top:12px}
.row{display:flex;align-items:center;gap:12px;width:100%;padding:11px 14px;text-align:start;min-height:58px;position:relative}
.row+.row::before{content:'';position:absolute;top:0;inset-inline-start:62px;inset-inline-end:0;height:1px;background:var(--line)}
.row:active{background:#EEF4F3}
.wide .row:hover{background:#F6F9F8}
.ri{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--bg,#E6EBEC);color:var(--fg,var(--purple));flex:none}
.ri .i{width:20px;height:20px}
.ri.lg{width:46px;height:46px;border-radius:14px}.ri.lg .i{width:24px;height:24px}
.ri.xl{width:58px;height:58px;border-radius:18px;background:var(--fg);color:#fff}.ri.xl .i{width:29px;height:29px}
.rt{flex:1;min-width:0}
.rt b{display:block;font-weight:500;font-size:15px;line-height:1.4}
.rt small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px;line-height:1.45}
.chev{width:18px!important;height:18px!important;color:#A7B8B8}
.row.danger b{color:var(--red)}
.row.danger .ri{background:#F8E4E2;color:var(--red)}
.rs{font-size:11.5px;padding:3px 8px;border-radius:8px;background:var(--gold-soft);color:#143B54;flex:none}
.amt{font-size:13px;font-weight:600;flex:none}
.p-android .group{background:transparent;border-radius:0;margin-top:6px}
.p-android .row+.row::before{display:none}
.p-android .row{padding:12px 4px}
.p-android .ri{border-radius:50%}
.p-android .ri.xl{border-radius:20px}

.sw{width:51px;height:31px;border-radius:16px;background:#D3DEDC;position:relative;flex:none;transition:background .2s}
.sw::after{content:'';position:absolute;top:2px;inset-inline-start:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:inset-inline-start .2s}
.sw.on{background:#178F5A}
.sw.on::after{inset-inline-start:22px}
.p-android .sw{width:52px;height:32px;background:#E3EAE9;border:2px solid #6E8084}
.p-android .sw::after{width:16px;height:16px;top:6px;inset-inline-start:6px;background:#6E8084;box-shadow:none;transition:all .2s}
.p-android .sw.on{background:var(--purple);border-color:var(--purple)}
.p-android .sw.on::after{width:24px;height:24px;top:2px;inset-inline-start:22px;background:#fff}
.p-web .sw.on{background:var(--purple)}
.mini-seg{display:inline-flex;background:#E6EBEC;border-radius:9px;padding:2px;flex:none}
.mini-seg button{height:30px;padding:0 10px;border-radius:7px;font-size:13px;color:var(--muted)}
.mini-seg button.on{background:#fff;color:var(--purple);font-weight:500}
.radio{width:22px;height:22px;border-radius:50%;border:2px solid var(--line2);flex:none;position:relative}
.radio.on{border-color:var(--purple)}
.radio.on::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--purple)}
.empty{text-align:center;padding:36px 20px;color:var(--muted)}
.empty>.i{width:36px;height:36px;margin:0 auto 10px;color:#A7B8B8}
.empty b{display:block;color:var(--ink);font-weight:500;font-size:15px}
.empty p{font-size:13.5px;margin:6px auto 14px;max-width:32ch;line-height:1.6}

/* explore */
.ex{position:absolute;inset:0}
.ex-top{position:absolute;top:0;left:0;right:0;padding:10px 12px 0;display:flex;flex-direction:column;gap:10px}
.p-ios .on-map .ex-top{padding-top:54px}
.p-android .on-map .ex-top{padding-top:44px}
.searchbar{display:flex;align-items:center;gap:8px;background:#fff;border-radius:18px;padding:6px;box-shadow:0 8px 26px rgba(16,42,58,.16),0 0 0 1px rgba(16,42,58,.05)}
.p-android .searchbar{border-radius:28px;background:#EAF1F0;padding:6px 8px}
.avatar{width:38px;height:38px;border-radius:12px;background:var(--purple);color:#fff;font-weight:600;font-size:14px;flex:none}
.p-android .avatar{border-radius:50%}
.sb-field{flex:1;min-width:0;text-align:start;color:var(--muted);font-size:14px;display:flex;gap:8px;align-items:center;height:38px;padding-inline:4px}
.sb-field span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-field .i{width:19px;height:19px}
.sb-mic{width:38px;height:38px;border-radius:12px;background:var(--gold-soft);color:#143B54;display:grid;place-items:center;flex:none}
.p-android .sb-mic{border-radius:50%}
.locate{position:absolute;bottom:274px;inset-inline-end:12px;width:46px;height:46px;border-radius:14px;background:#fff;color:var(--purple);display:grid;place-items:center;box-shadow:0 4px 14px rgba(16,42,58,.18);transition:bottom .35s cubic-bezier(.2,.8,.2,1)}
.p-android .locate{inset-inline-end:auto;inset-inline-start:12px;border-radius:50%}
.ex.pv .locate{bottom:300px}
.ex.exp .locate,.ex.exp .fab-ext{opacity:0;pointer-events:none}
.fab-ext{position:absolute;bottom:274px;inset-inline-end:14px;height:54px;padding:0 18px;border-radius:16px;background:#CBE5EA;color:var(--ink);display:flex;align-items:center;gap:10px;font-weight:500;font-size:15px;box-shadow:0 6px 16px rgba(16,42,58,.22)}
.fab-ext .i{width:20px;height:20px}
.ex-sheet{position:absolute;left:0;right:0;bottom:0;height:262px;background:var(--surface);border-radius:28px 28px 0 0;box-shadow:0 -8px 30px rgba(16,42,58,.14);display:flex;flex-direction:column;transition:height .35s cubic-bezier(.2,.8,.2,1)}
.ex.exp .ex-sheet{height:calc(100% - 120px)}
.p-ios .on-map .ex.exp .ex-sheet{height:calc(100% - 160px)}
.ex.pv .ex-sheet{height:290px}
.p-android .ex-sheet{background:#F9FBFA}
.grab{height:26px;flex:none;display:grid;place-items:center;cursor:grab;touch-action:none;width:100%}
.grab i{width:38px;height:5px;border-radius:3px;background:#C2D3D2}
.sheet-body{flex:1;min-height:0;overflow:hidden;padding:0 16px 16px}
.ex.exp .sheet-body,.ex.pv .sheet-body{overflow-y:auto}
.qs{display:flex;gap:6px;overflow-x:auto;margin:14px -16px 0;padding:4px 16px 4px;scrollbar-width:none}
.qt{flex:none;width:78px;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:12px;text-align:center;line-height:1.3}
.qt .sq{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;position:relative;background:var(--bg,#E6EBEC);color:var(--fg,var(--purple))}
.qt .sq .i{width:25px;height:25px}
.qt .sq.all{background:var(--purple);color:#fff}
.qt .bdg{position:absolute;top:-5px;inset-inline-end:-6px;border:2px solid #fff;height:22px}
.qt:active .sq{transform:scale(.95)}
.p-android .qt .sq{border-radius:16px}
.lh{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:10px}
.lh h3{font-size:16px;font-weight:600}
.pl{display:flex;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line);text-align:start;width:100%}
.pl:last-child{border:0}
.wide .pl:hover{background:#F6F9F8}
.pl .ico{width:44px;height:44px;border-radius:14px;background:var(--bg);color:var(--fg);display:grid;place-items:center;flex:none}
.pt{flex:1;min-width:0}
.pt b{display:block;font-size:14.5px;font-weight:500}
.pt small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pd{font-size:12px;color:var(--muted);flex:none}
.pv-head{display:flex;gap:12px;align-items:flex-start;margin-top:2px}
.pv-head .ico{width:50px;height:50px;border-radius:16px;background:var(--bg);color:var(--fg);display:grid;place-items:center;flex:none}
.pv-head h3{font-size:18px;font-weight:600;line-height:1.35}
.meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:6px;font-size:13px;color:var(--muted)}
.meta>span{display:inline-flex;align-items:center;gap:4px}
.meta .i{width:14px;height:14px}
.meta .st{color:#3E8C9A}
.catc{height:22px;padding:0 8px;border-radius:7px;background:var(--bg);color:var(--fg);font-weight:500;font-size:12px}
.pv-hl{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;border-radius:12px;background:var(--gold-soft);color:#143B54;font-size:14px;font-weight:500}
.pv-hl .i{width:18px;height:18px}
.pv-open{font-size:13px;color:var(--green);margin-top:10px;display:flex;align-items:center;gap:6px}
.pv-open i{width:7px;height:7px;border-radius:50%;background:currentColor}
.pv-acts{display:flex;gap:8px;margin-top:14px}
.pv-acts .btn{flex:1}
.rnd{width:48px;height:48px;border-radius:14px;background:#E6EBEC;color:var(--purple);display:grid;place-items:center;flex:none}
.rnd.on{background:var(--purple);color:#fff}
.p-android .rnd{border-radius:50%}
.wide .ex-top{top:14px;left:auto;right:auto;inset-inline-start:422px;inset-inline-end:14px;padding:0}
.wide .searchbar{display:none}
.wide .chips{margin:0;padding:0;flex-wrap:wrap}
.wide .ex-sheet{top:14px;bottom:14px;left:auto;right:auto;inset-inline-start:14px;width:394px;height:auto!important;border-radius:22px}
.wide .grab,.wide .see-all{display:none}
.wide .sheet-body{overflow-y:auto!important;padding-top:16px}
.wide .qs{flex-wrap:wrap;overflow:visible;margin:14px 0 0;padding:4px 0;row-gap:12px}
.wide .qt{width:calc(25% - 5px)}
.wide .locate{bottom:auto;top:62px;inset-inline-end:14px;inset-inline-start:auto}

/* sectors */
.quick{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:8px -16px 0;padding:2px 16px}
.wide .quick{margin:8px 0 0;padding:0;flex-wrap:wrap}
.qk{flex:none;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 12px;padding-inline-start:6px;border-radius:12px;background:var(--surface);font-size:13.5px;white-space:nowrap}
.qk .ri{width:28px;height:28px;border-radius:9px}
.qk .ri .i{width:15px;height:15px}
.sec-grid{display:grid;gap:12px;margin-top:14px}
.wide .sec-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}
.sc{background:var(--surface);border-radius:20px;padding:6px 6px 14px}
.sc-head{display:flex;align-items:center;gap:12px;width:100%;padding:10px;text-align:start;border-radius:14px}
.sc-head .rt b{display:flex;align-items:center;gap:8px;font-size:16px}
.sc-items{display:flex;flex-wrap:wrap;gap:6px;padding:2px 14px 0}
.pill{min-height:32px;padding:4px 12px;border-radius:10px;background:var(--bg);color:var(--fg);font-size:13px;font-weight:500}
.p-android .sc{border-radius:16px;background:#EEF2F2}
.p-android .pill{border-radius:8px;background:#fff;border:1px solid #C3D6D6;color:var(--ink)}
.sec-hero{display:flex;gap:14px;align-items:center;background:var(--bg);border-radius:22px;padding:16px;margin-top:4px}
.sec-hero p{color:var(--fg);font-size:14.5px;line-height:1.6;font-weight:500}
.sec-hero .aud-tag{margin-top:8px;background:rgba(255,255,255,.65)}
.wide .sector-wrap{max-width:760px}

/* company */
.co-hero{position:relative;overflow:hidden;background:var(--purple);color:#fff;border-radius:24px;padding:16px 18px 18px}
.co-hero>*:not(.contours){position:relative}
.co-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.co-logo{width:52px;height:52px;border-radius:16px;background:var(--gold);color:var(--purple);display:grid;place-items:center;font-size:22px;font-weight:700;flex:none}
.co-logo.sm{width:40px;height:40px;border-radius:12px;font-size:17px}
.co-sw{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:17px;background:rgba(255,255,255,.1);font-size:13px}
.co-sw .i{width:16px;height:16px}
.co-hero h2{font-size:21px;font-weight:600;margin-top:14px;line-height:1.35}
.co-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.co-tags span{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 10px;border-radius:13px;background:rgba(255,255,255,.1);font-size:12px}
.co-tags .vt{background:rgba(36,177,118,.2);color:#CDEBDF}
.co-tags .i{width:14px;height:14px}
.co-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:18px;border-top:1px solid rgba(255,255,255,.12);padding-top:14px}
.co-stats div+div{border-inline-start:1px solid rgba(255,255,255,.12);padding-inline-start:12px}
.co-stats b{font-size:20px;font-weight:600;display:block}
.co-stats small{font-size:11.5px;color:#BFD6DC;line-height:1.35;display:block;margin-top:2px}
.card{background:var(--surface);border-radius:20px;padding:16px;margin-top:12px}
.p-android .card{background:#EEF2F2}
.prog-h{display:flex;justify-content:space-between;align-items:center;font-size:15px;gap:10px}
.prog-h span{font-weight:600;color:var(--purple)}
.bar{height:8px;border-radius:4px;background:#E6EBEC;margin-top:10px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--green);border-radius:4px;transition:width .4s}
.tasks{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.task{display:flex;align-items:center;gap:8px;font-size:13px;text-align:start;padding:9px;border-radius:12px;background:var(--paper)}
.task.done{color:var(--muted)}
.cb{width:20px;height:20px;border-radius:6px;border:1.5px solid #B3C8C8;display:grid;place-items:center;flex:none;background:#fff;color:transparent}
.cb .i{width:14px;height:14px;stroke-width:2.8}
.task.done .cb,.cb.on{background:var(--green);border-color:var(--green);color:#fff}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.tile{background:var(--surface);border-radius:18px;padding:14px;text-align:start;display:flex;flex-direction:column;gap:10px;min-height:118px;border:1px solid transparent}
.tile b{font-weight:500;font-size:14.5px;line-height:1.35}
.stl{margin-top:auto;font-size:12px;display:flex;align-items:center;gap:6px}
.stl i{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.st-active .stl{color:var(--green)}
.st-sub{background:#F2F9FA;border-color:#24B176}
.st-sub .stl{color:#143B54}
.st-off .stl{color:var(--muted)}
.st-off .stl i{background:none;border:1.5px solid currentColor}
.st-review .stl{color:#3D6E86}
.p-android .tile{border-radius:12px;background:#EEF2F2}
.p-android .st-sub{background:#E4F2F4}
.wide .tile:hover{border-color:var(--line2)}
.wide .co-layout{display:grid;grid-template-columns:minmax(320px,390px) 1fr;gap:28px;align-items:start}
.wide .co-main>.gt:first-child{margin-top:0}
.wide .tiles{grid-template-columns:repeat(3,1fr)}

/* services */
.svc{position:relative;background:var(--surface);border-radius:18px;padding:14px 16px;margin-top:10px}
.p-android .svc{background:#EEF2F2;border-radius:12px}
.svc-h{display:flex;align-items:flex-start;gap:10px}
.svc-h b{font-size:16px;font-weight:600;flex:1;padding-top:8px}
.svc p{color:var(--muted);font-size:13.5px;margin-top:2px;line-height:1.65}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.tag{font-size:12px;padding:4px 10px;border-radius:8px;background:#E3F1F3;color:var(--purple)}
.warn{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:#143B54;background:#E3F1F3;border-radius:7px;padding:3px 8px;margin-top:10px}
.warn .i{width:13px;height:13px}
.pop{position:absolute;top:48px;inset-inline-end:10px;background:#fff;border-radius:14px;box-shadow:0 12px 32px rgba(16,42,58,.2),0 0 0 1px rgba(16,42,58,.06);min-width:170px;padding:6px;z-index:10;animation:fade .15s}
.pop button{display:flex;align-items:center;gap:10px;width:100%;height:42px;padding:0 10px;border-radius:9px;font-size:14.5px;text-align:start}
.pop button:hover{background:var(--paper)}
.pop .i{width:18px;height:18px}
.pop .dg{color:var(--red)}
.wide .svc-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px;margin-top:12px}
.wide .svc{margin-top:0}
.fab{position:absolute;bottom:18px;inset-inline-end:16px;width:58px;height:58px;border-radius:16px;background:#CFE6EA;color:var(--ink);place-items:center;box-shadow:0 6px 16px rgba(16,42,58,.28);z-index:6;justify-content:center;align-items:center}
.fab .i{width:24px;height:24px}

/* forms & wizard */
.field{display:block;margin-top:20px}
.flabel{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;font-weight:500;margin-bottom:8px}
.flabel small{font-weight:400;color:var(--muted);font-size:12.5px}
.req{color:var(--red)}
.inp{width:100%;height:50px;border:1px solid var(--line2);border-radius:12px;background:#fff;padding:0 14px;font-size:15px;outline:none;transition:border-color .15s,box-shadow .15s}
.inp:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(16,42,58,.14)}
textarea.inp{height:120px;padding:12px 14px;resize:vertical;line-height:1.7}
.has-err .inp{border-color:var(--red)}
.p-android .inp{border-radius:6px 6px 0 0;border:0;border-bottom:1px solid #6E8084;background:#E6EEED}
.p-android .inp:focus{border-bottom:2px solid var(--purple);box-shadow:none}
.p-android .has-err .inp{border-bottom-color:var(--red)}
.ltabs{display:inline-flex;background:#E6EBEC;border-radius:9px;padding:2px;flex:none}
.ltabs button{height:28px;min-width:48px;padding:0 9px;border-radius:7px;font-size:12.5px;font-weight:500;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:6px}
.ltabs button.on{background:#fff;color:var(--purple);box-shadow:0 1px 3px rgba(16,42,58,.12)}
.ld{width:7px;height:7px;border-radius:50%;border:1.5px solid currentColor;display:block}
.ld.ok{background:var(--green);border-color:var(--green)}
.stepper{flex:none;padding:2px 16px 12px}
.bars{display:flex;gap:6px}
.stb{flex:1;display:flex;flex-direction:column;gap:7px;text-align:start}
.stb i{height:5px;border-radius:3px;background:#D9E4E3;display:block;width:100%}
.stb.done i{background:var(--green)}
.stb.cur i{background:var(--purple)}
.stb span{display:none;font-size:12.5px;color:var(--muted)}
.stb.cur span{color:var(--ink);font-weight:500}
.stb:disabled{cursor:default}
.st-now{font-size:13px;color:var(--muted);margin-top:10px}
.st-now b{color:var(--ink);font-weight:500}
.wide .stepper{max-width:760px;margin:0 auto;width:100%;padding:0 36px 8px}
.wide .stb span{display:block}
.wide .st-now{display:none}
.wide .wz{max-width:760px}
.wz-t{font-size:21px;font-weight:600;line-height:1.45;margin-top:8px;max-width:28ch}
.saved{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--green);opacity:0;transition:opacity .3s;padding:0 6px;white-space:nowrap}
.saved.on{opacity:1}
.saved .i{width:14px;height:14px}
.actbar{flex:none;display:flex;gap:10px;padding:12px 16px 32px;background:var(--surface);border-top:1px solid var(--line)}
.p-android .actbar{padding-bottom:24px;background:#F9FBFA}
.p-web .actbar{padding-bottom:14px}
.wide .actbar{justify-content:center}
.wide .actbar .btn{min-width:170px;flex:none}
.demo-fill{margin-top:22px;width:100%;height:42px;border:1.5px dashed #9EC5CC;border-radius:12px;color:var(--muted);font-size:13px}
.money{position:relative}
.money .inp{padding-inline-end:70px}
.money .inp:disabled{background:#F6F8F8;color:var(--muted)}
.money .cur{position:absolute;inset-inline-end:14px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px}
.checkrow{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:14px;text-align:start;line-height:1.5}
.drop{display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px;border:1.5px dashed var(--line2);border-radius:16px;background:var(--surface);cursor:pointer;text-align:center;color:var(--muted);font-size:12.5px}
.drop b{color:var(--ink);font-weight:500;font-size:14px}
.drop .i{width:28px;height:28px;color:var(--purple)}
.drop.over{border-color:var(--purple);background:#EAF5F7}
.file{display:flex;align-items:center;gap:10px;background:var(--surface);border-radius:12px;padding:8px 8px 8px 12px;margin-top:8px;font-size:13.5px}
.file>.i{color:var(--purple)}
.file span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.file small{color:var(--muted);direction:ltr}
.rv{background:var(--surface);border-radius:16px;padding:14px 16px;margin-top:10px}
.p-android .rv{background:#EEF2F2}
.rv-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.rv-h b{font-size:13px;color:var(--muted);font-weight:500}
.rv p{font-size:14.5px;line-height:1.65}
.rv p+p{margin-top:4px}
.rv .muted{color:var(--muted);font-size:13.5px}
.success{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 28px}
.ok-badge{width:88px;height:88px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;animation:popin .5s cubic-bezier(.2,1.4,.4,1)}
.ok-badge .i{width:44px;height:44px;stroke-width:2.4}
.success h2{font-size:24px;margin-top:22px}
.success p{color:var(--muted);margin-top:10px;line-height:1.7;max-width:34ch}
.succ-acts{display:flex;flex-direction:column;gap:10px;margin-top:26px;width:100%;max-width:320px}

/* account & chat */
.prof{position:relative;overflow:hidden;background:var(--purple);color:#fff;border-radius:24px;padding:18px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}
.prof>*:not(.contours){position:relative}
.prof .av{width:60px;height:60px;border-radius:20px;font-size:20px}
.prof h2{font-size:19px;font-weight:600}
.prof p{color:#BFD6DC;font-size:13.5px;margin-top:2px}
.trial{grid-column:1/-1;display:flex;align-items:center;gap:10px;background:rgba(36,177,118,.14);border-radius:14px;padding:8px;padding-inline-start:12px;font-size:13px;color:#CFE8EC}
.trial span{flex:1}
.trial .i{width:18px;height:18px}
.ver{text-align:center;color:var(--muted);font-size:12.5px;margin-top:22px}
.wide .acc,.wide .chatw{max-width:760px}
.chatrow .av{border-radius:50%;background:var(--bg);color:var(--fg);width:46px;height:46px;font-size:16px}
.cm{display:flex;flex-direction:column;align-items:flex-end;gap:5px;font-size:12px;color:var(--muted);flex:none}
.chatrow+.chatrow::before{inset-inline-start:72px}

/* overlay: AI, sheets, dialogs, toast */
#overlay{position:absolute;inset:0;z-index:60;pointer-events:none}
#overlay.still .scrim,#overlay.still .msheet,#overlay.still .dlg,#overlay.still .ai{animation:none!important}
.scrim{position:absolute;inset:0;background:rgba(9,38,48,.45);pointer-events:auto;animation:fade .2s}
.ai{position:absolute;inset:0;background:var(--purple);color:#fff;display:flex;flex-direction:column;padding:58px 18px 34px;overflow:hidden;pointer-events:auto;animation:fade .25s}
.p-android .ai{padding:46px 16px 28px}
.p-web .ai{padding:16px 16px 18px}
.wide .ai{inset:auto;left:50%;top:50%;width:560px;height:min(640px,90%);transform:translate(-50%,-50%);border-radius:28px;padding:22px;box-shadow:0 40px 100px rgba(0,0,0,.5)}
.ai>*:not(.contours){position:relative}
.ai-top{display:flex;align-items:center;gap:10px}
.ai-name{display:flex;align-items:center;gap:8px;font-weight:500;margin-inline-end:auto}
.ai-name .logo{width:22px;height:22px}
.ai-mid{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:0;overflow-y:auto}
.ai-orb{width:136px;height:136px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#1B6A83,#143B54 65%);display:flex;align-items:center;justify-content:center;gap:5px;box-shadow:0 0 0 16px rgba(36,177,118,.1),0 0 0 34px rgba(36,177,118,.05);flex:none}
.ai-orb i{width:5px;height:14px;border-radius:3px;background:var(--gold);animation:wave 1.1s ease-in-out infinite}
.ai-orb i:nth-child(2){animation-delay:.1s}.ai-orb i:nth-child(3){animation-delay:.25s}.ai-orb i:nth-child(4){animation-delay:.05s}.ai-orb i:nth-child(5){animation-delay:.3s}.ai-orb i:nth-child(6){animation-delay:.15s}.ai-orb i:nth-child(7){animation-delay:.2s}
@keyframes wave{0%,100%{transform:scaleY(1)}50%{transform:scaleY(3.3)}}
.ai-st{margin-top:40px;color:#C6DCE1;text-align:center;font-size:15px;max-width:30ch;line-height:1.7}
.ai-conv{width:100%;display:flex;flex-direction:column;gap:10px}
.bub{max-width:86%;padding:12px 14px;border-radius:18px;font-size:15px;line-height:1.7}
.bub.me{align-self:flex-end;background:var(--gold);color:var(--purple);border-end-end-radius:6px}
.bub.bot{align-self:flex-start;background:rgba(255,255,255,.09);border-end-start-radius:6px}
.bub.bot .btn{margin-top:12px;width:100%}
.typing{display:flex;gap:5px;padding:17px 16px}
.typing i{width:7px;height:7px;border-radius:50%;background:#C6DCE1;animation:blink 1s infinite}
.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
@keyframes blink{50%{opacity:.25}}
.ai-sugs{display:flex;gap:8px;overflow-x:auto;padding:4px 0 14px;scrollbar-width:none;flex:none}
.wide .ai-sugs{flex-wrap:wrap}
.ai-chip{flex:none;min-height:38px;padding:0 14px;border-radius:19px;border:1px solid rgba(255,255,255,.2);font-size:13.5px;white-space:nowrap;color:#E8F2F4}
.ai-chip:hover{background:rgba(255,255,255,.06)}
.ai-in{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.09);border-radius:26px;padding:5px;padding-inline-start:16px;flex:none}
.ai-in input{flex:1;background:none;border:0;outline:none;color:#fff;font-size:15px;min-width:0}
.ai-in input::placeholder{color:#95B3BB}
.ai-send,.ai-mic{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;flex:none}
.ai-send{background:rgba(255,255,255,.1)}
.ai-mic{background:var(--gold);color:var(--purple)}
.msheet{position:absolute;left:0;right:0;bottom:0;max-height:90%;background:var(--paper);border-radius:26px 26px 0 0;display:flex;flex-direction:column;pointer-events:auto;animation:up .3s cubic-bezier(.2,.8,.2,1)}
.p-android .msheet{border-radius:28px 28px 0 0}
.wide .msheet{left:50%;top:50%;bottom:auto;right:auto;width:580px;max-height:86%;border-radius:22px;transform:translate(-50%,-50%);animation:fade .2s}
.grab-s{height:20px;display:grid;place-items:center;flex:none}
.grab-s i{width:36px;height:5px;border-radius:3px;background:#C2D3D2}
.wide .grab-s{display:none}
.ms-h{display:flex;align-items:center;gap:8px;padding:2px 10px 8px;flex:none}
.ms-h b{flex:1;text-align:center;font-size:16px;font-weight:600}
.ms-x,.ms-save{height:40px;padding:0 10px;color:var(--purple);font-size:15px;border-radius:10px}
.ms-save{font-weight:600}
.p-android .ms-h b{text-align:start}
.wide .ms-h{padding:18px 20px 6px}
.wide .ms-h b{text-align:start;font-size:18px;order:-1}
.wide .ms-save{background:var(--purple);color:#fff;padding:0 18px}
.ms-body{overflow-y:auto;padding:0 16px 34px}
.ms-body>.field:first-child{margin-top:8px}
.wide .ms-body{padding:0 20px 24px}
.addact{display:flex;gap:8px;margin-top:12px}
.addact .inp{height:46px}
.addact .btn{height:46px;flex:none}
.dlg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(290px,84%);background:rgba(255,255,255,.98);border-radius:16px;text-align:center;overflow:hidden;pointer-events:auto;animation:dlg .22s}
@keyframes dlg{from{opacity:0;transform:translate(-50%,-50%) scale(1.08)}}
.dlg-b{padding:20px 18px 16px}
.dlg h3{font-size:17px;font-weight:600;line-height:1.4}
.dlg p{font-size:13.5px;color:#455A5F;margin-top:6px;line-height:1.65}
.dlg-a{display:flex;border-top:1px solid #D3DFDE}
.dlg-a button{flex:1;height:46px;font-size:16px;color:var(--purple)}
.dlg-a button+button{border-inline-start:1px solid #D3DFDE;font-weight:600}
.dlg-a .dg{color:var(--red)}
.p-android .dlg{width:min(320px,86%);border-radius:28px;text-align:start;background:#EDF3F2;padding:24px 22px 16px}
.p-android .dlg-b{padding:0}
.p-android .dlg h3{font-size:22px;font-weight:400}
.p-android .dlg-a{border:0;justify-content:flex-end;gap:6px;margin-top:22px}
.p-android .dlg-a button{flex:none;height:40px;padding:0 12px;border:0!important;font-size:14px;font-weight:500;border-radius:20px}
.p-web .dlg{width:min(440px,90%);border-radius:18px;text-align:start;padding:22px}
.p-web .dlg-b{padding:0}
.p-web .dlg h3{font-size:19px}
.p-web .dlg-a{border:0;justify-content:flex-end;gap:10px;margin-top:20px}
.p-web .dlg-a button{flex:none;height:42px;padding:0 18px;border-radius:10px;font-size:14.5px;border:0!important;background:#E6EBEC;color:var(--ink);font-weight:500}
.p-web .dlg-a .pr{background:var(--purple);color:#fff}
.p-web .dlg-a .dg{background:var(--red);color:#fff}
#toastbox{position:absolute;left:0;right:0;bottom:0;z-index:80;pointer-events:none}
.toast{position:absolute;left:14px;right:14px;bottom:100px;background:var(--purple);color:#fff;border-radius:16px;padding:12px 14px;display:flex;align-items:center;gap:10px;font-size:14px;line-height:1.5;pointer-events:auto;animation:tin .28s cubic-bezier(.2,.8,.2,1);box-shadow:0 12px 30px rgba(9,38,48,.35)}
@keyframes tin{from{opacity:0;transform:translateY(16px)}}
.toast .i{width:20px;height:20px;color:var(--gold)}
.toast span{flex:1}
.toast button{color:var(--gold);font-weight:600;font-size:14px;padding:4px 6px}
.p-android .toast{border-radius:6px;bottom:96px;background:#1F3338}
.p-web .toast{bottom:78px}
.wide .toast{left:auto;right:auto;inset-inline-start:24px;bottom:24px;width:420px}

@media (max-width:760px){.ch-brand small{display:none}.chrome{gap:6px;padding:0 10px}.ch-seg button{padding:0 8px;font-size:12px}.ch-sel{max-width:96px}}
@media (max-width:560px){
 .showcase{padding:0}
 .ch-brand span{display:none}
 .p-ios .device,.p-android .device{width:100%;height:100%;aspect-ratio:auto;border-radius:0;box-shadow:none}
 .p-ios .statusbar,.p-android .statusbar,.homeind{display:none!important}
 .p-ios .on-map .ex-top,.p-android .on-map .ex-top{padding-top:10px}
 .p-ios .leaflet-top,.p-android .leaflet-top{top:108px}
 .p-ios .ai,.p-android .ai{padding-top:16px}
 .p-ios .on-map .ex.exp .ex-sheet{height:calc(100% - 120px)}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
#app{width:100%;overflow:hidden}
.chrome{overflow-x:auto;scrollbar-width:none;min-width:0}
.chrome::-webkit-scrollbar{display:none}
.showcase{min-width:0;width:100%}
@media (max-width:560px){.ch-brand{display:none}.chrome{height:52px;justify-content:space-between}.showcase{height:calc(100% - 52px)}.ch-sel{max-width:88px}}
/* store, offers, products, orders */
.row:disabled{opacity:.5;cursor:default}
.sm-head{display:flex;align-items:center;gap:12px;padding:2px 16px 10px}
.sm-head>div{flex:1;min-width:0}
.sm-head b{display:block;font-size:17px;font-weight:600;color:var(--purple)}
.sm-head small{color:var(--muted);font-size:13px}
.ph-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.wide .ph-grid{grid-template-columns:repeat(6,1fr)}
.ph{position:relative;aspect-ratio:1;border-radius:14px;overflow:hidden;background:#E6EBEC}
.ph img{width:100%;height:100%;object-fit:cover;display:block}
.ph .cover{position:absolute;bottom:6px;inset-inline-start:6px;background:var(--purple);color:#fff;font-size:11px;padding:2px 8px;border-radius:8px}
.ph-cv{position:absolute;left:0;right:0;bottom:0;padding:5px 4px;background:rgba(16,42,58,.72);color:#fff;font-size:11px;opacity:0;transition:opacity .15s}
.ph:hover .ph-cv,.ph-cv:focus-visible{opacity:1}
@media (hover:none){.ph-cv{opacity:1}}
.ph-x{position:absolute;top:6px;inset-inline-end:6px;width:28px;height:28px;border-radius:50%;background:rgba(16,42,58,.75);color:#fff;display:grid;place-items:center}
.ph-x .i{width:15px;height:15px}
.ph.add{border:1.5px dashed var(--line2);background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--purple);font-size:12.5px;cursor:pointer;text-align:center;padding:6px}
.ph.add .i{width:26px;height:26px}
.has-err .ph.add{border-color:var(--red)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.two .money{display:block}
.sublabel{font-size:12.5px;color:var(--muted);margin-bottom:6px;display:block}
.disc{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:12px;background:#DDEBE5;color:var(--green);font-size:12.5px;font-weight:600;white-space:nowrap}
.of-card{display:flex;gap:12px;background:var(--surface);border-radius:18px;padding:10px;margin-top:10px;position:relative;align-items:flex-start}
.p-android .of-card,.p-android .prod,.p-android .ord{background:#EEF2F2}
.of-card>img{width:78px;height:78px;border-radius:12px;object-fit:cover;flex:none;background:#E6EBEC}
.of-card>img.ghost{opacity:.35}
.of-card.prev{border:1px dashed var(--line2);margin-top:0}
.of-b{flex:1;min-width:0;padding-top:2px}
.of-b b{display:block;font-weight:500;font-size:14.5px;line-height:1.45}
.ph-t{color:var(--muted);font-weight:400}
.prices{display:flex;align-items:center;gap:8px;margin-top:4px;flex-wrap:wrap}
.prices strong{font-size:15px;color:var(--purple)}
.prices s{color:var(--muted);font-size:12.5px}
.of-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:12px;color:var(--muted)}
.of-meta span{display:inline-flex;align-items:center;gap:4px}
.of-meta .i{width:14px;height:14px}
.of-meta .today{color:var(--red);font-weight:500}
.of-card.expired>img{filter:grayscale(1);opacity:.6}
.of-card.expired .prices strong{color:var(--muted)}
.of-card .pop{top:46px}
.notice{display:flex;align-items:center;gap:12px;background:#F8E4E2;border-radius:16px;padding:12px 14px;margin:4px 0 12px}
.notice>.i{color:var(--red)}
.notice>div{flex:1;min-width:0}
.notice b{display:block;font-size:14px;font-weight:600;color:var(--ink)}
.notice small{color:#6E5552;font-size:12.5px;line-height:1.5;display:block;margin-top:2px}
.btn.dangerg{background:#fff;color:var(--red);border:1px solid #E6BDB8}
.wide .of-list,.wide .ord-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:12px;margin-top:12px}
.wide .of-list .of-card,.wide .ord-list .ord{margin-top:0}
.prod-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.wide .prod-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.prod{background:var(--surface);border-radius:18px;padding:8px 8px 10px;display:flex;flex-direction:column;min-width:0}
.prod>img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;background:#E6EBEC;display:block}
.prod>b{font-size:13.5px;font-weight:500;margin:8px 4px 0;line-height:1.4}
.pp{margin:2px 4px 0;font-weight:600;color:var(--purple);font-size:14px}
.stock{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:10px 4px 0;flex-wrap:wrap}
.sp{font-size:11px;padding:3px 7px;border-radius:8px;background:#DDEBE5;color:var(--green);white-space:nowrap}
.sp.low{background:#EAF7F1;color:var(--purple)}
.sp.out{background:#F8E4E2;color:var(--red)}
.stp{display:inline-flex;align-items:center;border:1px solid var(--line2);border-radius:10px;overflow:hidden;background:#fff}
.stp button{width:28px;height:28px;display:grid;place-items:center;color:var(--purple)}
.stp button:disabled{opacity:.35}
.stp .i{width:14px;height:14px}
.stp span{min-width:22px;text-align:center;font-size:13px;font-weight:500}
.prod-of{display:flex;align-items:center;gap:5px;margin:10px 4px 0;text-align:start;font-size:12.5px}
.prod-of .i{width:15px;height:15px}
.ord{background:var(--surface);border-radius:18px;padding:14px;margin-top:10px}
.ord-h{display:flex;align-items:center;justify-content:space-between;gap:8px}
.ord-h b{font-size:15px;font-weight:600;color:var(--purple)}
.ord-r{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap;margin-top:8px;font-size:13px;color:var(--muted)}
.ord-r span{display:inline-flex;align-items:center;gap:5px}
.ord-r .i{width:15px;height:15px}
.ord-f{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.ord-t{display:flex;flex-direction:column}
.ord-t small{color:var(--muted);font-size:12px}
.ord-t strong{font-size:16px;color:var(--purple)}
.os{font-size:12px;padding:3px 10px;border-radius:10px;font-weight:500;white-space:nowrap}
.os-new{background:#EAF7F1;color:var(--purple)}
.os-prep{background:#E4EBEA;color:#3F5559}
.os-ready{background:#DDEBE5;color:var(--green)}
.os-done{background:#F6F8F8;color:#7A8B8F}
.lead .inl{display:inline-block;width:16px;height:16px;vertical-align:-3px;margin-inline-end:6px}
.seg .bdg{height:18px;min-width:18px;font-size:11px}
/* v4: media, offers, products, real estate */
.ph-open{position:absolute;inset:0;display:block}
.ph.add small{font-size:10.5px;color:var(--muted)}
[data-drop].over .ph-grid{outline:2px dashed var(--gold);outline-offset:4px;border-radius:14px}
.up-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.up-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 10px;border:1.5px dashed var(--line2);border-radius:16px;background:var(--surface);cursor:pointer;text-align:center;color:var(--purple)}
.up-btn:hover{border-color:var(--gold);background:#F5FAFB}
.up-btn .i{width:28px;height:28px}
.up-btn b{font-size:14px;font-weight:600;color:var(--ink)}
.up-btn small{font-size:12px;color:var(--muted)}
.lib-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.wide .lib-grid{grid-template-columns:repeat(4,1fr)}
.lib{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;border:2px solid transparent;padding:0}
.lib img{width:100%;height:100%;object-fit:cover;display:block}
.lib.on{border-color:var(--purple)}
.lib-ck{position:absolute;top:6px;inset-inline-end:6px;width:24px;height:24px;border-radius:50%;border:2px solid #fff;background:rgba(16,42,58,.25);color:#fff;font-size:12px;font-weight:600;display:grid;place-items:center}
.lib.on .lib-ck{background:var(--purple)}
.ms-save:disabled{opacity:.4}
.gal{position:relative;border-radius:20px;overflow:hidden;background:#E6EBEC}
.gal-main{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:4/3}
.gal-main::-webkit-scrollbar{display:none}
.gal-sl{flex:0 0 100%;scroll-snap-align:center;padding:0;display:block}
.gal-sl img{width:100%;height:100%;object-fit:cover;display:block}
.gal-n{position:absolute;bottom:10px;inset-inline-start:10px;display:inline-flex;align-items:center;gap:5px;background:rgba(16,42,58,.72);color:#fff;font-size:12px;padding:4px 10px;border-radius:12px;pointer-events:none}
.gal-n .i{width:14px;height:14px}
.gal-arr{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.9);color:var(--purple);display:grid;place-items:center;box-shadow:0 2px 8px rgba(16,42,58,.2)}
.gal-arr.prev{inset-inline-start:10px}.gal-arr.next{inset-inline-end:10px}
.gal-arr .i{width:20px;height:20px}
.gal-th{display:flex;gap:8px;overflow-x:auto;padding:10px 0 2px;scrollbar-width:none}
.gal-th button{flex:none;width:64px;height:48px;border-radius:10px;overflow:hidden;border:2px solid transparent;padding:0;opacity:.7}
.gal-th button.on{border-color:var(--purple);opacity:1}
.gal-th img{width:100%;height:100%;object-fit:cover;display:block}
.empty-gal{aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--muted)}
.lbx{position:absolute;inset:0;background:rgba(4,28,38,.94);display:flex;flex-direction:column;pointer-events:auto;z-index:5;animation:fade .2s;color:#fff}
.lbx-top{display:flex;align-items:center;justify-content:space-between;padding:54px 14px 8px;font-size:14px}
.p-android .lbx-top{padding-top:42px}.p-web .lbx-top{padding-top:12px}
.lbx-stage{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;padding:0 8px}
.lbx-stage img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}
.lbx-arr{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;display:grid;place-items:center}
.lbx-arr.prev{inset-inline-start:12px}.lbx-arr.next{inset-inline-end:12px}
.lbx-th{display:flex;gap:8px;overflow-x:auto;padding:12px 14px 30px;justify-content:center;scrollbar-width:none}
.lbx-th button{flex:none;width:56px;height:42px;border-radius:8px;overflow:hidden;border:2px solid transparent;opacity:.55;padding:0}
.lbx-th button.on{border-color:var(--gold);opacity:1}
.lbx-th img{width:100%;height:100%;object-fit:cover;display:block}
.ex.pv .ex-sheet{height:min(500px,calc(100% - 140px))}
.ex.pv .locate{bottom:calc(min(500px,100% - 140px) + 12px)}
.pv-ph{display:flex;gap:8px;overflow-x:auto;margin:12px -16px 0;padding:0 16px;scrollbar-width:none}
.pv-ph button{flex:none;width:132px;height:96px;border-radius:12px;overflow:hidden;padding:0}
.pv-ph img{width:100%;height:100%;object-fit:cover;display:block}
.pv-sub{font-size:13.5px;color:var(--muted);margin-top:10px;line-height:1.6}
.mini{display:flex;align-items:center;gap:12px;width:100%;text-align:start;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:8px;margin-top:8px}
.mini img{width:58px;height:46px;border-radius:9px;object-fit:cover;flex:none}
.mini>span{flex:1;min-width:0}
.mini b{display:block;font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.mini small.today{color:var(--red)}
.oc-list{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px}
.wide .oc-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.oc{position:relative;background:var(--surface);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.p-android .oc{background:#EEF2F2}
.oc-img{position:relative;display:block;aspect-ratio:16/10;padding:0;background:#E6EBEC}
.oc-img img{width:100%;height:100%;object-fit:cover;display:block}
.oc-img img.ghost{opacity:.35}
.oc-disc{position:absolute;top:10px;inset-inline-start:10px;background:var(--green);color:#fff;font-size:13px;font-weight:600;padding:3px 10px;border-radius:10px}
.oc-n{position:absolute;bottom:10px;inset-inline-start:10px;display:inline-flex;align-items:center;gap:4px;background:rgba(16,42,58,.72);color:#fff;font-size:11.5px;padding:3px 8px;border-radius:10px}
.oc-n .i{width:13px;height:13px}
.oc-b{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px}
.oc-sec{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--fg);font-weight:500;align-self:flex-start;background:var(--bg);padding:3px 9px;border-radius:9px}
.oc-sec .i{width:14px;height:14px}
.oc-t{text-align:start;font-size:15.5px;font-weight:600;line-height:1.45;color:var(--ink);margin-top:2px}
.oc.expired .oc-img img{filter:grayscale(1);opacity:.65}
.oc.prev{border:1px dashed var(--line2)}
.card-menu{position:absolute;top:8px;inset-inline-end:8px;background:rgba(255,255,255,.92);color:var(--purple);box-shadow:0 2px 8px rgba(16,42,58,.18)}
.card-menu.on{background:var(--purple);color:#fff}
.oc .pop{top:52px}
.secchips{margin-top:6px!important}
.secchips .chip .i{width:15px;height:15px}
.det{display:block}
.wide .det{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;align-items:start}
.wide .det-media{position:sticky;top:0}
.det-info{padding-top:14px}
.wide .det-info{padding-top:0}
.det-t{font-size:22px;font-weight:700;line-height:1.4;margin-top:10px;color:var(--ink)}
.det-price{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:8px}
.det-price strong{font-size:24px;color:var(--purple);font-weight:700}
.det-price s{color:var(--muted);font-size:15px}
.det-status{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px;font-size:14px;color:var(--green);font-weight:500}
.det-status .i{width:17px;height:17px}
.det-status span{color:var(--muted);font-weight:400}
.det-status.today{color:var(--red)}.det-status.exp{color:var(--muted)}
.det-p{font-size:14.5px;line-height:1.8;color:#2B464D;margin-top:6px;background:var(--surface);border-radius:14px;padding:12px 14px}
.det-loc{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:14px;margin-top:4px}
.det-loc .i{width:16px;height:16px}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.facts-3{grid-template-columns:repeat(3,1fr);margin:8px 0 6px}
.fact{display:flex;align-items:center;gap:10px;background:var(--surface);border-radius:14px;padding:10px 12px}
.fact>.i{width:22px;height:22px;color:var(--purple);flex:none}
.fact small{display:block;font-size:11.5px;color:var(--muted)}
.fact b{display:block;font-size:15px;font-weight:600;color:var(--ink)}
.facts-3 .fact{flex-direction:column;align-items:flex-start;gap:4px}
.p-android .fact,.p-android .det-p,.p-android .mini{background:#EEF2F2}
.tags .tag{display:inline-flex;align-items:center;gap:4px}
.tags .tag .i{width:13px;height:13px}
.tag-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.stock-line{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;background:var(--surface);border-radius:14px;padding:8px 12px;font-size:14px}
.tools-row{display:flex;gap:10px;align-items:center;margin-top:12px}
.tools-row .search{flex:1;margin-top:0}
.tools-row .btn{height:44px;flex:none}
.p-android .tools-row .btn{height:48px}
.prod-img{position:relative;display:block;padding:0;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:#E6EBEC}
.prod-img img{width:100%;height:100%;object-fit:cover;display:block}
.prod-t{text-align:start;font-size:13.5px;font-weight:500;margin:8px 4px 0;line-height:1.4;color:var(--ink)}
.ord-items{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.oi{display:flex;align-items:center;gap:10px;text-align:start;padding:0}
.oi img{width:46px;height:36px;border-radius:8px;object-fit:cover;flex:none}
.oi b{display:block;font-size:13px;font-weight:500}
.oi small{display:block;font-size:12px;color:var(--muted)}
.rc-price{font-size:17px;font-weight:700;color:var(--purple)}
.rc-pur{position:absolute;top:10px;inset-inline-start:10px;font-size:12.5px;font-weight:600;padding:3px 10px;border-radius:10px;color:#fff;background:var(--purple)}
.rc-pur.rent{background:var(--green)}
.rc-pur.static,.rc-done.static{position:static}
.rc-done{position:absolute;top:10px;inset-inline-start:84px;font-size:12.5px;font-weight:600;padding:3px 10px;border-radius:10px;background:#fff;color:var(--ink)}
.rc-done.static{background:#E4EBEA}
.rc-facts{display:flex;gap:14px;margin-top:6px;font-size:13px;color:var(--ink)}
.rc-facts span{display:inline-flex;align-items:center;gap:5px}
.rc-facts .i{width:16px;height:16px;color:var(--muted)}
.minimap{position:relative;display:block;width:100%;height:150px;border-radius:16px;overflow:hidden;padding:0;margin-top:8px}
.mm-bg{width:100%;height:100%;object-fit:cover;filter:saturate(.3) opacity(.55)}
.mm-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-70%)}
.mm-cap{position:absolute;bottom:10px;inset-inline-start:10px;display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--purple);font-size:13px;font-weight:500;padding:6px 12px;border-radius:10px}
.mm-cap .i{width:16px;height:16px}
.owner{display:flex;align-items:center;gap:12px;margin-top:18px;background:var(--surface);border-radius:14px;padding:12px}
.owner b{display:block;font-size:14.5px;font-weight:600}
.owner small{color:var(--green);font-size:12.5px}
.counters{display:grid;grid-template-columns:1fr;gap:8px}
.counter{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--surface);border-radius:12px;padding:8px 12px;font-size:14px}
.counter>span:first-child{display:inline-flex;align-items:center;gap:8px}
.counter .i{width:18px;height:18px;color:var(--purple)}
.inp.sm{width:80px;height:36px;text-align:center}
.dlg-p{font-size:13.5px;color:#455A5F;margin-top:6px;line-height:1.65}
.dlg-rich{width:min(360px,92%)}
.dlg-rich .dlg-b{text-align:start}
.dlg-list{list-style:none;display:flex;flex-direction:column;gap:8px;margin-top:12px;max-height:240px;overflow:auto}
.dlg-list li{display:flex;gap:10px;align-items:flex-start;background:var(--bg);border-radius:12px;padding:8px 10px}
.dl-ic{width:28px;height:28px;border-radius:8px;background:#fff;color:var(--fg);display:grid;place-items:center;flex:none}
.dl-ic .i{width:16px;height:16px}
.dlg-list b{display:block;font-size:13.5px;color:var(--ink)}
.dlg-list small{display:block;font-size:12px;color:#455A5F;line-height:1.5}
.nb-btn.on{color:var(--green)}
.tools-row .search{min-width:0}
#app:not(.wide) .tools-row .btn span,#app:not(.wide) .tools-row .btn{padding:0 12px}
.selwrap{position:relative}
.sel{appearance:none;-webkit-appearance:none;padding-inline-end:42px;cursor:pointer}
.sel:invalid,.sel option[value=""]{color:#7C8D90}
.selwrap .sel-ic{position:absolute;inset-inline-end:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--purple);pointer-events:none}
.add-prop{margin:12px 0 0;height:52px;font-size:16px}
.tag-row .tag{display:inline-flex;align-items:center;gap:4px}
.tag-row .tag .i{width:13px;height:13px}
/* v6: compact explore panel */
.ex:not(.pv) .ex-sheet{height:auto}
.ex:not(.pv) .sheet-body{padding-bottom:18px}
.ex:not(.pv) .locate,.ex:not(.pv) .fab-ext{bottom:206px}
.wide .ex:not(.pv) .ex-sheet{bottom:auto}
.wide .ex:not(.pv) .locate{bottom:auto}
/* v7: place card, offers window, store window */
.btn.green{background:var(--green);color:#fff}
.btn.navy{background:var(--purple);color:#fff}
.btn.outline{background:#fff;color:var(--ink);border:1px solid var(--line2)}
a.btn,a.rnd{text-decoration:none}
.btn:disabled{opacity:.45;cursor:not-allowed}
.pin{position:relative;width:36px;height:36px}
.pin-b{position:absolute;top:-7px;right:-9px;width:19px;height:19px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;border:2px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.pin-b .i{width:10px;height:10px;stroke-width:2.6}
.pin-l{position:absolute;top:50px;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--purple);color:#fff;font-size:12px;font-weight:500;padding:4px 10px;border-radius:8px;box-shadow:0 4px 12px rgba(16,42,58,.3);pointer-events:none;font-family:var(--fs)}
.pin-l em{font-style:normal;color:var(--gold);margin-inline-end:5px}
.ex.pv .ex-sheet{height:auto;max-height:calc(100% - 128px)}
.ex.pv .sheet-body{overflow-y:auto}
.ex.pv .locate{display:none}
.pin-card{position:absolute;bottom:16px;inset-inline-end:16px;width:410px;max-height:calc(100% - 32px);overflow-y:auto;background:var(--surface);border-radius:22px;border:1px solid #CFE3E7;box-shadow:0 18px 50px rgba(16,42,58,.22);padding:16px;animation:pcin .25s cubic-bezier(.2,.8,.2,1);scrollbar-width:thin}
@keyframes pcin{from{opacity:0;transform:translateY(12px)}}
.wide .ex .pin-card~.locate{display:none}
.pc-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pc-chips{display:flex;gap:6px;flex-wrap:wrap}
.pc-store,.pc-of{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 9px;border-radius:12px;font-size:12px;font-weight:500}
.pc-store{background:#DDEBE5;color:var(--green)}
.pc-of{background:#EAF7F1;color:var(--purple)}
.pc-store .i,.pc-of .i{width:13px;height:13px}
.pc-head{display:flex;gap:12px;margin-top:10px;align-items:flex-start}
.pc-img{position:relative;width:86px;height:86px;border-radius:16px;overflow:hidden;flex:none;padding:0;background:#E6EBEC}
.pc-img img{width:100%;height:100%;object-fit:cover;display:block}
.pc-img span{position:absolute;bottom:5px;inset-inline-start:5px;display:inline-flex;align-items:center;gap:3px;background:rgba(16,42,58,.78);color:#fff;font-size:10.5px;padding:1px 6px;border-radius:7px}
.pc-img span .i{width:11px;height:11px}
.pc-ht{flex:1;min-width:0}
.pc-head h3{font-size:17px;font-weight:600;line-height:1.4}
.pc-addr{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--muted);margin-top:4px;line-height:1.5}
.pc-addr .i{width:15px;height:15px;flex:none}
.pc-meta{display:flex;gap:12px;font-size:12.5px;color:var(--muted);margin-top:4px}
.pc-meta span{display:inline-flex;align-items:center;gap:3px}
.pc-meta .i{width:13px;height:13px}
.pc-meta .st{color:#3E8C9A}
.pc-desc{margin-top:12px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:13.5px;line-height:1.7;color:#2B464D}
.pc-acts{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.pc-acts .btn{flex:1 1 150px;height:44px;font-size:14px;padding:0 10px}
.pc-contact{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.pc-live{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:500;gap:8px}
.pc-live span{display:inline-flex;align-items:center;gap:7px}
.pc-live small{color:var(--muted);font-weight:400;font-size:12px}
.dot-live{width:8px;height:8px;border-radius:50%;background:#2F9E63;box-shadow:0 0 0 3px rgba(47,158,99,.2)}
.pc-cbtns{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
.pc-cbtns .btn{height:44px;padding:0 6px;font-size:14px;gap:6px}
.pc-cbtns .i,.pc-acts .i{width:18px;height:18px}
.btn.dirs{width:100%;margin-top:8px;height:44px;background:#E6EBEC;color:var(--purple);font-size:14px}
.btn.dirs small{color:var(--muted);font-weight:400;margin-inline-start:4px}
.p-android .pc-desc{background:#EEF3F2}
.msheet.ms-poffers,.msheet.ms-pstore{background:var(--surface);overflow:hidden;height:92%;max-height:92%}
.wide .msheet.ms-poffers{width:640px;height:auto;max-height:90%}
.wide .msheet.ms-pstore{width:880px;height:auto;max-height:92%}
.mh{display:flex;align-items:center;gap:12px;padding:16px 18px;background:linear-gradient(135deg,#143B54,#0D5A73);color:#fff;flex:none}
.p-ios .mh,.p-android .mh{padding-top:18px}
.mh-ic{width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,.12);display:grid;place-items:center;flex:none}
.mh>div{flex:1;min-width:0}
.mh b{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:17px;font-weight:600;line-height:1.4}
.mh small{display:block;color:#BFD6DC;font-size:13px;margin-top:2px}
.mh .icbtn{background:rgba(255,255,255,.12);color:#fff}
.vbadge{font-size:11px;font-weight:600;font-style:normal;background:var(--gold);color:var(--purple);padding:2px 8px;border-radius:8px}
.mbanner{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 18px;background:#E9F3F4;color:var(--ink);font-size:13px;flex:none;border-bottom:1px solid var(--line)}
.mbanner>.i{width:18px;height:18px;color:var(--green)}
.mbanner span{flex:1;min-width:180px}
.mbanner .link{display:inline-flex;align-items:center;gap:4px}
.mbanner .link .i{width:15px;height:15px}
.mb{flex:1;min-height:0;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px;background:var(--paper)}
.mb.store-grid{display:grid;grid-template-columns:1fr;align-content:start}
.wide .mb.store-grid{grid-template-columns:1fr 1fr}
.mf{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px 30px;border-top:1px solid var(--line);background:var(--surface);flex:none;flex-wrap:wrap}
.wide .mf,.p-web .mf{padding-bottom:14px}
.mf>span{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px 8px;font-size:13px;color:var(--muted)}
.mf>span>.i{width:16px;height:16px;color:var(--green)}
.tel-pill{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--line2);border-radius:10px;color:var(--ink);font-weight:600;text-decoration:none;background:#fff}
.tel-pill .i{width:15px;height:15px;color:var(--purple)}
.car{position:relative;background:#E6EBEC;overflow:hidden}
.car-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;aspect-ratio:16/10}
.car-track::-webkit-scrollbar{display:none}
.car-sl{flex:0 0 100%;scroll-snap-align:center;padding:0;display:block}
.car-sl img{width:100%;height:100%;object-fit:cover;display:block}
.car-tl{position:absolute;top:10px;inset-inline-start:10px;display:flex;gap:6px;pointer-events:none}
.car-tl .oc-disc{position:static}
.car-tr{position:absolute;top:10px;inset-inline-end:10px;pointer-events:none}
.car-bl{position:absolute;bottom:10px;inset-inline-start:10px;pointer-events:none}
.car-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:5px;pointer-events:none}
.car-dots i{width:7px;height:7px;border-radius:4px;background:rgba(255,255,255,.65);transition:width .2s}
.car-dots i.on{background:#fff;width:18px}
.car-n{position:absolute;bottom:10px;inset-inline-end:10px;background:rgba(16,42,58,.72);color:#fff;font-size:11.5px;padding:2px 8px;border-radius:9px;pointer-events:none}
.car-arr{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--purple);display:grid;place-items:center;box-shadow:0 2px 6px rgba(16,42,58,.2);opacity:0;transition:opacity .15s}
.car:hover .car-arr,.car:focus-within .car-arr{opacity:1}
@media (hover:none){.car-arr{opacity:1}}
.p-ios .car-arr,.p-android .car-arr{opacity:1}
.car-arr.prev{inset-inline-start:8px}.car-arr.next{inset-inline-end:8px}
.car-arr .i{width:18px;height:18px}
.chip-l{display:inline-block;background:rgba(255,255,255,.94);color:var(--ink);font-size:12px;font-weight:500;padding:3px 10px;border-radius:10px}
.st-b{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;padding:3px 10px;border-radius:10px;color:#fff;background:var(--green)}
.st-b .i{width:13px;height:13px}
.st-b.low{background:#3D6E86}.st-b.out{background:var(--red)}
.moc{background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;flex:none}
.moc-b{padding:12px 14px 14px}
.moc h4{font-size:16px;font-weight:600;line-height:1.5;display:flex;gap:8px;align-items:flex-start}
.pct{flex:none;background:var(--green);color:#fff;font-size:12.5px;font-weight:700;padding:1px 8px;border-radius:9px;margin-top:3px}
.moc p{font-size:13.5px;color:#455A5F;line-height:1.7;margin-top:4px}
.moc-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}
.cpn{display:inline-flex;align-items:center;gap:6px;border:1.5px dashed var(--gold);background:#F2F9FA;color:var(--purple);font-weight:700;font-size:13px;letter-spacing:.04em;padding:4px 10px;border-radius:9px}
.cpn .i{width:14px;height:14px}
.moc-until{margin-inline-start:auto;display:inline-flex;align-items:center;gap:4px}
.moc-until .i{width:14px;height:14px}
.moc-acts{display:flex;gap:8px;margin-top:12px}
.moc-acts .btn{height:44px;font-size:14px}
.spc{background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.spc-b{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px;flex:1}
.spc-b b{font-size:15.5px;font-weight:600;line-height:1.45}
.spc-b p{font-size:13px;color:var(--muted);line-height:1.6}
.spc-price{font-size:18px;font-weight:700;color:var(--green);margin:4px 0 8px}
.spc-b .btn{margin-top:auto;height:44px}
.qo{display:flex;gap:12px;align-items:center;background:var(--paper);border-radius:12px;padding:8px;margin:10px 0}
.qo img{width:64px;height:50px;border-radius:9px;object-fit:cover}
.qo b{display:block;font-size:14px;color:var(--ink)}
.qo small{display:block;font-size:12px;color:var(--muted)}
.qo strong{display:block;color:var(--green);font-size:14px}
.mb.store-grid{grid-auto-rows:max-content}
.spc{min-height:max-content}
.wide .moc .car-track{aspect-ratio:2/1}
.mf>span{flex:1 1 260px;min-width:0}
/* v8: sector map icons */
.pin{position:relative;width:44px;height:44px}
.mp{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:13px;background:linear-gradient(145deg,var(--p1),var(--p2));border:3px solid var(--ring,#fff);box-shadow:0 4px 12px rgba(5,40,54,.32);display:grid;place-items:center;color:#fff;transition:transform .2s,box-shadow .2s;cursor:pointer}
.mp-in{display:grid}
.mp .mp-in .i{width:20px;height:20px;stroke-width:2.1}
.mp.sel{transform:scale(1.22);box-shadow:0 0 0 6px color-mix(in srgb,var(--p2) 24%,transparent),0 0 0 14px color-mix(in srgb,var(--p2) 10%,transparent),0 8px 18px rgba(5,40,54,.35)}
.mp-stores{width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:15px;box-shadow:0 0 0 5px rgba(240,138,0,.16),0 5px 14px rgba(160,90,0,.35)}
.mp-stores .mp-in .i{width:22px;height:22px}
.mp-bd{position:absolute;top:-9px;left:-9px;width:20px;height:20px;border-radius:6px;background:linear-gradient(145deg,#4A8FE0,#2A62B8);border:2px solid #fff;display:grid;place-items:center;color:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.mp-bd .i{width:11px;height:11px;stroke-width:2.4}
.pin-b{top:-6px;right:-6px}
.pin-l{top:56px}
.em-store{color:#FFBE3D!important}
.fbp{transform:translate(-50%,-50%)}
.mm-pin{transform:translate(-50%,-50%)}
.chip-pin{width:20px;height:20px;border-radius:7px;background:linear-gradient(145deg,var(--p1),var(--p2));color:#fff;display:grid;place-items:center;flex:none}
.chip .chip-pin .i{width:12px;height:12px;stroke-width:2.4}
.p-android .chip.on .chip-pin{display:none}
.pin-b{top:-11px;right:-12px;z-index:2}
/* v9: sign-in and company registration */
.auth-mode .sidebar,.auth-mode .topbar{display:none!important}
.auth{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--surface)}
.auth-side{display:none}
.wide .auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(500px,660px);height:100%}
.wide .auth-side{display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:linear-gradient(160deg,#23B07A 0%,#0B5470 100%);color:#fff;padding:44px 52px;--lg1:#24B176;--lg2:#143B54}
.auth-side>*:not(.contours){position:relative}
.as-top{display:flex;align-items:center;gap:10px;font-size:22px}
.as-top .logo{width:36px;height:36px}
.as-mid h2{font-size:38px;line-height:1.35;font-weight:700}
.as-mid p{color:#BFD6DC;font-size:16px;line-height:1.8;margin-top:14px;max-width:42ch}
.as-mid ul{list-style:none;margin-top:30px;display:flex;flex-direction:column;gap:14px}
.as-mid li{display:flex;align-items:center;gap:12px;font-size:15px}
.as-mid li .i{width:38px;height:38px;padding:9px;border-radius:12px;background:rgba(36,177,118,.16);color:#24B176}
.auth-side small{color:#95B3BB;font-size:13px}
.auth-main{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;padding:8px 20px 32px}
.wide .auth-main{padding:18px 40px 40px}
.auth-bar{width:100%;display:flex;justify-content:flex-end;max-width:560px}
.auth-card{width:100%;max-width:440px;display:flex;flex-direction:column}
.auth-card.wide-form{max-width:580px}
.wide .auth-card{margin:auto 0}
.auth-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;margin:4px auto 0}
.auth-logo .logo{width:40px;height:40px}
.auth-logo span{color:var(--purple);font-size:13px;font-weight:600}
.auth h1{font-size:27px;font-weight:700;text-align:center;color:var(--purple);margin-top:18px;line-height:1.35}
.auth-sub{text-align:center;color:var(--muted);font-size:14.5px;margin-top:6px;line-height:1.6}
.auth-tabs{margin-top:22px}
.auth .field{margin-top:18px}
.auth .inp{background:#F4F7F6}
.p-android .auth .inp{background:#EAF0EF}
[dir=rtl] .ltr-in{text-align:right}
.pw{position:relative}
.pw .inp{padding-inline-end:50px}
.pw-eye{position:absolute;inset-inline-end:6px;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:10px;display:grid;place-items:center;color:var(--muted)}
.pw-eye .i{width:20px;height:20px}
.pw-meter{display:flex;gap:4px;margin-top:8px}
.pw-meter i{flex:1;height:4px;border-radius:2px;background:#DCE5E3}
.pw-meter.s1 i:nth-child(1){background:var(--red)}
.pw-meter.s2 i:nth-child(-n+2){background:#3D6E86}
.pw-meter.s3 i{background:var(--green)}
.auth-btn{height:52px;font-size:16px;margin-top:22px;width:100%;box-shadow:0 8px 18px rgba(16,42,58,.18)}
.auth-link{display:flex;align-items:center;gap:4px;margin:14px auto 0;color:var(--purple);font-weight:500;font-size:14px}
.auth-link .inl{width:16px;height:16px}
.auth-or{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px;margin:20px 0 14px}
.auth-or::before,.auth-or::after{content:'';flex:1;height:1px;background:var(--line2)}
.btn.google{height:52px;width:100%;background:#fff;border:1px solid var(--line2);border-radius:14px;color:var(--ink);font-weight:500}
.btn.google .i{width:20px;height:20px;color:var(--purple);stroke-width:2.6}
.guest{margin-top:26px;height:52px;width:100%;border:1.5px dashed #B9CCCB;border-radius:14px;color:var(--muted);font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px}
.guest .i{width:19px;height:19px}
.auth-foot{text-align:center;margin-top:16px;font-size:14px;color:var(--muted)}
.auth-foot button{color:var(--purple);font-weight:600}
.spin{width:18px;height:18px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block;flex:none}
.google .spin{border-color:rgba(16,42,58,.2);border-top-color:var(--purple)}
@keyframes spin{to{transform:rotate(360deg)}}
.check{display:flex;gap:10px;align-items:flex-start;text-align:start;font-size:13.5px;line-height:1.6;width:100%}
.check .cb{margin-top:2px}
.check a{color:var(--purple);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.sent-box{text-align:center;background:var(--paper);border-radius:16px;padding:22px 18px;margin-top:22px;display:flex;flex-direction:column;align-items:center;gap:8px}
.sent-box>.i{width:40px;height:40px;color:var(--green)}
.sent-box b{font-size:17px}
.sent-box p{color:var(--muted);font-size:14px;line-height:1.7}
.reg-switch{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;margin-top:14px;font-size:13.5px;color:var(--muted);background:var(--paper);border-radius:12px;padding:10px}
.reg-switch .i{width:17px;height:17px;color:var(--purple)}
.reg-switch button{color:var(--purple);font-weight:600}
.rsteps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:18px}
.rstep{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;font-size:12.5px;color:var(--muted);line-height:1.35}
.rstep i{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#E3EAE9;color:var(--muted);font-style:normal;font-weight:600;font-size:14px;transition:background .2s}
.rstep.cur i{background:var(--purple);color:#fff;box-shadow:0 0 0 4px rgba(16,42,58,.14)}
.rstep.done i{background:var(--green);color:#fff}
.rstep .i{width:16px;height:16px;stroke-width:2.8}
.rstep.cur span{color:var(--ink);font-weight:600}
.rstep:disabled{cursor:default}
.reg-sec{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:16px;margin-top:14px}
.reg-sec h3{display:flex;align-items:center;gap:8px;font-size:15.5px;font-weight:600;color:var(--purple)}
.reg-sec h3 .i{width:20px;height:20px}
.reg-sec .hint{margin-top:6px}
.reg-sec .field{margin-top:14px}
.reg-sec .inp{background:#fff}
.p-android .reg-sec .inp{background:#fff;border:1px solid var(--line2);border-radius:10px}
.auth .two{gap:0 12px}
#app:not(.wide) .auth .two{grid-template-columns:1fr}
.logo-up{display:flex;align-items:center;gap:12px;margin-top:12px}
.lu-img{width:64px;height:64px;border-radius:16px;background:#fff;border:1.5px dashed var(--line2);display:grid;place-items:center;overflow:hidden;color:var(--muted);flex:none}
.lu-img img{width:100%;height:100%;object-fit:cover}
.logo-up b{display:block;font-size:14px}
.logo-up small{display:block;color:var(--muted);font-size:12px;margin-top:2px;line-height:1.5}
.logo-up .link{cursor:pointer;display:inline-flex;margin-top:4px}
.dg-link{color:var(--red)!important}
[data-docdrop].over .docs,[data-docdrop].over .lu-img{outline:2px dashed var(--gold);outline-offset:4px;border-radius:12px}
.docs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
.doc{position:relative;aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:#fff;border:1px solid var(--line2)}
.doc img{width:100%;height:100%;object-fit:cover;display:block}
.doc .cover{position:absolute;bottom:6px;inset-inline-start:6px;background:var(--purple);color:#fff;font-size:11px;padding:2px 8px;border-radius:8px}
.doc.pdf{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px;text-align:center}
.doc.pdf>.i{width:32px;height:32px;color:var(--red)}
.doc.pdf b{font-size:13px}
.doc.pdf small{font-size:10.5px;color:var(--muted);word-break:break-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.doc.add{border:1.5px dashed var(--line2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--purple);cursor:pointer;text-align:center;padding:8px}
.doc.add .i{width:26px;height:26px}
.doc.add b{font-size:12.5px;font-weight:600;line-height:1.35}
.doc.add small{font-size:11px;color:var(--muted)}
.has-err .doc.add{border-color:var(--red)}
.reg-sec .demo-fill{margin-top:12px}
.reg-sum{display:flex;align-items:center;gap:12px;background:#E9F3F4;border-radius:14px;padding:12px 14px;margin-top:14px}
.reg-sum>.i{width:24px;height:24px;color:var(--purple);flex:none}
.reg-sum>div{flex:1;min-width:0}
.reg-sum b{display:block;font-size:14.5px}
.reg-sum small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
.reg-nav{display:flex;gap:10px;margin-top:18px}
.reg-nav .btn{height:52px}
.reg-done{display:flex;flex-direction:column;align-items:center;text-align:center;margin-top:10px}
.reg-done .ok-badge{margin-top:8px}
.rd-p{color:var(--muted);font-size:14.5px;line-height:1.8;margin-top:16px}
.rd-list{display:flex;flex-direction:column;gap:8px;margin:18px 0 0;text-align:start;width:100%}
.rd-list div{display:flex;align-items:center;gap:10px;background:var(--paper);border-radius:12px;padding:11px 12px;font-size:14px}
.rd-list .i{width:18px;height:18px;flex:none}
.rd-list span{flex:1}
.rd-list em{font-style:normal;font-size:12px;font-weight:600;padding:2px 9px;border-radius:8px;white-space:nowrap}
.rd-list .ok .i{color:var(--green)}.rd-list .ok em{background:#DDEBE5;color:var(--green)}
.rd-list .wait .i{color:#3D6E86}.rd-list .wait em{background:#EAF7F1;color:var(--purple)}
.rd-list .next .i{color:var(--muted)}.rd-list .next em{background:#F6F8F8;color:var(--muted)}
.co-tags .vt.pend{background:rgba(36,177,118,.22);color:#CFE8EC}

.auth-ok{margin:10px auto 0}
/* v10: jobs */
.msheet.ms-pjobs,.msheet.ms-pjob,.msheet.ms-japply{background:var(--surface);overflow:hidden;height:92%;max-height:92%}
.wide .msheet.ms-pjobs{width:680px;height:auto;max-height:90%}
.wide .msheet.ms-pjob{width:760px;height:auto;max-height:92%}
.wide .msheet.ms-japply{width:560px;height:auto;max-height:90%}
.jlogo{width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg,var(--p1),var(--p2));color:#fff;display:grid;place-items:center;font-weight:700;font-size:18px;flex:none}
.mh .jlogo{border:2px solid rgba(255,255,255,.35)}
.jfilter{display:flex;gap:8px;padding:12px 16px;background:var(--surface);border-bottom:1px solid var(--line);flex:none;overflow-x:auto;scrollbar-width:none}
.jfilter .chip{box-shadow:none;border:1px solid var(--line2)}
.jfilter .chip .i{width:15px;height:15px}
.jc{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px;flex:none}
.jc-top{display:flex;gap:12px;align-items:flex-start}
.jc-top>div{flex:1;min-width:0}
.jc-title{display:block;text-align:start;font-size:16px;font-weight:600;line-height:1.4;color:var(--ink)}
.jc-top small{display:block;font-size:13px;color:var(--muted);margin-top:2px}
.on-save{color:var(--green)}
.jtags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.jtag{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;padding:3px 9px;border-radius:9px;background:#E6EBEC;color:var(--purple)}
.jtag.type{background:#DDEBE5;color:var(--green)}
.jtag .i{width:13px;height:13px}
.jmeta{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:12.5px;color:var(--muted)}
.jmeta span{display:inline-flex;align-items:center;gap:5px}
.jmeta .i{width:15px;height:15px}
.jmeta .sal{color:var(--ink);font-weight:600}
.jc-acts{display:flex;gap:8px;margin-top:12px}
.jc-acts .btn{flex:1;height:44px;font-size:14px;padding:0 8px}
.btn.applied{background:#DDEBE5;color:var(--green);opacity:1}
.jbody{padding:16px;overflow-y:auto;flex:1;min-height:0;background:var(--paper)}
.jbody .car{border-radius:18px}
.jcard{background:var(--surface);border-radius:16px;padding:14px;margin-top:12px}
.jfacts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.wide .jfacts{grid-template-columns:repeat(3,1fr)}
.jfacts .fact b{font-size:13.5px;line-height:1.4}
.jsec h4,.jh{font-size:15px;font-weight:600;color:var(--purple);display:flex;align-items:center;gap:6px;margin-bottom:8px}
.jsec h4 .i,.jh .i{width:18px;height:18px}
.jp{font-size:14.5px;line-height:1.8;color:#2B464D}
.jlist{list-style:none;display:flex;flex-direction:column;gap:7px}
.jlist li{display:flex;gap:8px;font-size:14px;line-height:1.65;color:#2B464D}
.jlist li .i{width:16px;height:16px;color:var(--green);flex:none;margin-top:4px}
.jsec .tags .tag{display:inline-flex;align-items:center;gap:4px}
.jsec .tags .tag .i{width:13px;height:13px}
.jemp{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.jemp b{display:block;font-size:14.5px}
.jemp small{display:block;color:var(--muted);font-size:12.5px}
.jfoot{gap:8px;flex-wrap:nowrap}
.jfoot .btn{height:48px}
.mh .icbtn+.jlogo{margin-inline-start:-4px}
.cv-opt{display:flex;align-items:center;gap:12px;width:100%;text-align:start;background:var(--surface);border:1.5px solid var(--line2);border-radius:14px;padding:12px;margin-top:8px;cursor:pointer}
.cv-opt.on{border-color:var(--purple);background:#F2F9FA}
.cv-opt>.i{width:26px;height:26px;color:var(--purple);flex:none}
.cv-opt b{display:block;font-size:14px;word-break:break-all}
.cv-opt small{display:block;font-size:12px;color:var(--muted)}
.ms-japply .jcard .field{margin-top:12px}
.ms-japply textarea.inp{height:96px}
.wide .ms-pjob .car-track{aspect-ratio:21/9}
/* v11: no panel over map */
.ex:not(.pv) .locate,.ex:not(.pv) .fab-ext{bottom:16px}
/* onboarding + company registration */
.auth-note{display:flex;gap:8px;align-items:flex-start;background:#E9F3F4;border-radius:12px;padding:10px 12px;margin-top:16px;font-size:13px;line-height:1.6;color:#2B464D}
.auth-note .i{width:18px;height:18px;color:var(--purple);flex:none;margin-top:1px}
.coreg{max-width:640px;margin:0 auto}
.wide .pad.coreg{max-width:700px}
.coreg .field{margin-top:14px}
#app:not(.wide) .coreg .two{grid-template-columns:1fr}
.coreg .two{gap:0 12px}
.coreg .reg-sec .inp{background:#fff}
.onb-top{padding:4px 0 6px;text-align:center;--lg1:#143B54;--lg2:#24B176}
.onb-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.onb-brand{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--purple);font-size:18px}
.onb-brand .logo{width:28px;height:28px}
.onb-bar .link{display:inline-flex;align-items:center;gap:4px}
.onb-bar .link .i{width:16px;height:16px}
.onb-top h1{font-size:25px;font-weight:700;color:var(--purple);line-height:1.35}
.onb-top p{color:var(--muted);font-size:14px;line-height:1.7;margin-top:6px}
.coreg-bar{padding-bottom:22px}
.pick{position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line2)}
.pickmap{height:300px;background:#E6ECEA;position:relative}
.wide .pickmap{height:360px}
.pickmap.fb{cursor:crosshair}
.pickmap.fb svg{position:absolute;inset:0;width:100%;height:100%}
.pk-fb{position:absolute;inset:0}
.pk-pin{position:absolute;transform:translate(-50%,-50%);pointer-events:none;width:44px;height:44px}
.pk-pin .mp{position:absolute}
.pk-tip{position:absolute;top:10px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:6px;background:rgba(16,42,58,.88);color:#fff;font-size:12.5px;padding:6px 12px;border-radius:12px;white-space:nowrap;max-width:92%;overflow:hidden;text-overflow:ellipsis;z-index:500;pointer-events:none}
.pk-tip .i{width:15px;height:15px}
.pk-tip.hide{display:none}
.pk-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:10px}
.pk-coord{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--muted)}
.pk-coord .i{width:15px;height:15px;color:var(--green)}
/* digital attestations */
.att-wrap .lead{margin-bottom:4px}
.atc-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.wide .atc-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr))}
.atc{background:var(--surface);border-radius:16px}
.p-android .atc{background:#EEF2F2}
.atc-main{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;text-align:start}
.atc-ic{width:48px;height:58px;border-radius:10px;background:#FBE9E7;color:var(--red);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:none}
.atc-ic .i{width:22px;height:22px}
.atc-ic b{font-size:10px;font-weight:700}
.atc-b{flex:1;min-width:0}
.atc-b>b{display:block;font-size:15px;font-weight:600;line-height:1.4}
.atc-b>small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.atc-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:6px;font-size:12px;color:var(--muted)}
.atc-code{font-weight:600;color:var(--purple);letter-spacing:.03em}
.ast{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:11px;font-size:12px;font-weight:600}
.ast-done{background:#DDEBE5;color:var(--green)}
.ast-pay{background:#EAF7F1;color:var(--purple)}
.ast-draft{background:#F6F8F8;color:#6E8084}
.att-layout{display:block}
.wide .att-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start;max-width:1160px}
.att-side{position:sticky;top:0}
.att-prev-card{background:var(--surface);border-radius:16px;padding:14px;margin-top:14px}
.wide .att-side .att-prev-card{margin-top:14px}
.att-prev-card .hint{margin-top:10px}
.att-page{position:relative;aspect-ratio:595/842;width:100%;max-width:340px;margin:0 auto;background:#fff;border-radius:6px;box-shadow:0 4px 18px rgba(16,42,58,.16),0 0 0 1px rgba(16,42,58,.06);overflow:hidden;touch-action:none;direction:ltr}
.det .att-page{max-width:420px}
.att-pg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.att-margin{position:absolute;left:0;right:0;height:0;border-top:1.5px dashed rgba(194,59,46,.55)}
.att-margin span{position:absolute;right:6px;top:2px;font-size:9px;color:rgba(194,59,46,.8);background:rgba(255,255,255,.85);padding:0 4px;border-radius:4px}
.att-stamp{position:absolute;display:grid;place-items:center}
.att-stamp img{width:100%;height:100%;object-fit:contain;pointer-events:none}
.att-page.edit .att-stamp{cursor:grab;outline:1.5px dashed var(--purple);outline-offset:2px;border-radius:4px}
.att-stamp.dragging{cursor:grabbing;outline-style:solid}
.att-rs{position:absolute;top:-7px;right:-7px;width:14px;height:14px;border-radius:50%;background:var(--purple);border:2px solid #fff;cursor:nesw-resize;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.att-mv{position:absolute;top:-10px;left:-10px;width:22px;height:22px;border-radius:50%;background:#fff;color:var(--purple);display:grid;place-items:center;box-shadow:0 1px 4px rgba(0,0,0,.25);pointer-events:none}
.att-mv .i{width:13px;height:13px}
.att-pno{position:absolute;bottom:6px;left:50%;transform:translateX(-50%);font-size:10px;background:rgba(16,42,58,.75);color:#fff;padding:1px 8px;border-radius:8px;white-space:nowrap}
.att-nostamp{position:absolute;left:8%;right:8%;bottom:9%;display:flex;align-items:center;gap:6px;justify-content:center;background:rgba(220,238,241,.95);color:var(--purple);font-size:10.5px;padding:6px;border-radius:8px}
.att-nostamp .i{width:16px;height:16px}
.pdrop{display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px;border:1.5px dashed var(--line2);border-radius:16px;background:#fff;cursor:pointer;text-align:center;color:var(--muted);font-size:12.5px}
.pdrop .i{width:28px;height:28px;color:var(--purple)}
.pdrop b{color:var(--ink);font-size:14px;font-weight:600}
.pdrop.over{border-color:var(--purple);background:#F2F9FA}
.has-err .pdrop{border-color:var(--red)}
.pdf-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line2);border-radius:14px;padding:10px 12px}
.pdf-card>.i{width:30px;height:30px;color:var(--red);flex:none}
.pdf-card>div{flex:1;min-width:0}
.pdf-card b{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pdf-card small{display:block;font-size:12px;color:var(--muted)}
.pdf-card .link{cursor:pointer}
.page-row{display:flex;gap:8px;align-items:center}
.page-row .money{flex:1}
.page-row .btn{height:48px;flex:none}
.stamp-up{display:flex;align-items:center;gap:12px}
.su-img{width:70px;height:70px;border-radius:14px;background:#fff;border:1px solid var(--line2);display:grid;place-items:center;overflow:hidden;flex:none;padding:6px}
.su-img img{width:100%;height:100%;object-fit:contain}
.stamp-up b{display:block;font-size:14px}
.stamp-up small{display:block;font-size:12px;color:var(--muted);margin-top:2px;line-height:1.5}
.stamp-up .link{cursor:pointer;display:inline-flex;margin-top:4px}
.quick-pos{margin-top:12px}
.quick-pos .opt{min-height:34px;font-size:13px}
.verify{display:flex;gap:14px;align-items:center;background:#EAF5EF;border:1px solid #C9E2D3;border-radius:16px;padding:12px;margin-top:12px}
.verify .qr{width:96px;height:96px;flex:none;border-radius:8px;background:#fff}
.verify small{display:block;font-size:12px;color:var(--muted)}
.verify b{display:block;font-size:18px;color:var(--green);letter-spacing:.05em;margin-top:2px}
.verify>div>span{display:block;font-size:12.5px;color:#2B464D;line-height:1.6;margin-top:4px}
.verify-acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.msheet.ms-attplan{background:var(--surface);overflow:hidden;height:auto;max-height:92%}
.wide .msheet.ms-attplan{width:560px}
.plan{display:flex;align-items:center;gap:12px;width:100%;text-align:start;background:var(--surface);border:1.5px solid var(--line2);border-radius:16px;padding:14px;margin-top:10px}
.plan:first-child{margin-top:0}
.plan.on{border-color:var(--purple);background:#F2F9FA}
.plan-b{flex:1;min-width:0}
.plan-b b{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:15px}
.plan-b small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.plan-p{text-align:end;flex:none}
.plan-p strong{display:block;font-size:16px;color:var(--purple)}
.plan-p small{font-size:11px;color:var(--muted)}
.jcard.sum div{display:flex;justify-content:space-between;font-size:14px;padding:4px 0;color:#455A5F}
.jcard.sum .tot{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-weight:700;color:var(--ink);font-size:16px}
.pk-tip{white-space:normal;text-align:center;line-height:1.5}
/* v12: couriers */
.cf-hero{display:flex;gap:12px;align-items:center;background:linear-gradient(135deg,#143B54,#0D5A73);color:#fff;border-radius:18px;padding:16px;margin-top:4px}
.cf-hero>.i{width:44px;height:44px;padding:10px;border-radius:14px;background:rgba(36,177,118,.18);color:#24B176;flex:none}
.cf-hero b{display:block;font-size:16px}
.cf-hero span{display:block;font-size:13px;color:#CFE8EC;line-height:1.6;margin-top:2px}
.veh-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
#app:not(.wide) .veh-grid{grid-template-columns:repeat(2,1fr)}
.veh{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;border:1.5px solid var(--line2);border-radius:14px;background:#fff;font-size:13px;font-weight:500;color:var(--ink)}
.veh .i{width:28px;height:28px;color:var(--purple)}
.veh.on{border-color:var(--purple);background:#F2F9FA;box-shadow:0 0 0 3px rgba(16,42,58,.1)}
.has-err .veh{border-color:#E6BDB8}
.plate-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.plate-in{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex:1;min-width:200px}
.plate{display:grid;grid-template-columns:1fr 1fr 30px;align-items:center;width:190px;height:54px;border:2.5px solid #1D2A2E;border-radius:8px;background:#fff;overflow:hidden;direction:ltr;flex:none}
.plate span{display:grid;place-items:center;height:100%;font-family:Arial,sans-serif;font-weight:700;letter-spacing:.06em;color:#1D2A2E}
.pl-n{font-size:18px;border-inline-end:2px solid #1D2A2E}
.pl-l{font-size:17px}
.pl-k{font-size:9px;background:#1F6B45;color:#fff!important;writing-mode:vertical-rl;letter-spacing:.1em}
.cfdocs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}
#app:not(.wide) .cfdocs{grid-template-columns:repeat(2,1fr)}
.cfdoc{display:flex;flex-direction:column;gap:6px;position:relative}
.cfd-prev,.cfd-add{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#fff;border:1px solid var(--line2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0;width:100%}
.cfd-prev img{width:100%;height:100%;object-fit:cover;display:block}
.cfd-prev.pdf{padding:8px;text-align:center}
.cfd-prev.pdf .i{width:28px;height:28px;color:var(--red)}
.cfd-prev.pdf small{font-size:10.5px;color:var(--muted);word-break:break-all}
.cfd-add{border-style:dashed;border-width:1.5px;color:var(--purple);cursor:pointer}
.cfd-add .i{width:24px;height:24px}
.cfd-add small{font-size:11.5px}
.cfdoc.has-err .cfd-add{border-color:var(--red)}
.cfdoc .ph-x{top:6px}
.cfd-l{font-size:12.5px;font-weight:500;text-align:center;line-height:1.4}
.cf-sum{display:flex;gap:12px;align-items:center;background:var(--paper);border-radius:14px;padding:12px;margin-top:14px;width:100%;text-align:start}
.cf-sum>.i{width:30px;height:30px;color:var(--purple);flex:none}
.cf-sum b{display:block;font-size:14.5px}
.cf-sum small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.add-courier{margin-top:12px;height:50px}
.kc-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.wide .kc-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}
.kc{display:flex;align-items:center;gap:12px;background:var(--surface);border-radius:16px;padding:12px 14px}
.p-android .kc{background:#EEF2F2}
.kc-av{width:48px;height:48px;border-radius:50%;background:linear-gradient(145deg,#4F8F73,#285B48);color:#fff;display:grid;place-items:center;font-weight:700;font-size:18px;flex:none}
.kc-b{flex:1;min-width:0}
.kc-b>b{display:block;font-size:15px;font-weight:600}
.kc-b>small{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--muted);margin-top:3px}
.kc-b>small .i{width:15px;height:15px;flex:none}
.kc-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:6px;font-size:12px;color:var(--muted)}
.kc-meta>span{display:inline-flex;align-items:center;gap:4px}
.kc-meta .i{width:13px;height:13px;color:#3E8C9A}
.kst-on{background:#DDEBE5;color:var(--green)}
.kst-busy{background:#EAF7F1;color:var(--purple)}
.kst-off{background:#F6F8F8;color:#6E8084}
/* v13: conversation */
.conv-head{display:flex;align-items:center;gap:10px;padding:8px 16px 12px;flex:none}
.conv-head .av{width:42px;height:42px;border-radius:50%;background:var(--bg);color:var(--fg);font-size:16px}
.conv-head b{display:block;font-size:15px;font-weight:600}
.conv-head small{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--green);margin-top:2px}
.conv{background:var(--paper)}
.conv-pad{display:flex;flex-direction:column;gap:10px;padding-top:12px}
.wide .conv-pad{max-width:820px}
.conv-day{align-self:center;font-size:12px;color:var(--muted);background:var(--surface);border-radius:12px;padding:4px 12px;margin-bottom:4px}
.msg{max-width:78%;border-radius:18px;padding:10px 13px;position:relative}
.msg p{font-size:14.5px;line-height:1.7}
.msg.them{align-self:flex-start;background:var(--surface);border-end-start-radius:6px;box-shadow:0 1px 3px rgba(16,42,58,.07)}
.msg.me{align-self:flex-end;background:#EAF7F1;border-end-end-radius:6px}
.msg-t{display:flex;align-items:center;justify-content:flex-end;gap:4px;font-size:11px;color:var(--muted);margin-top:4px}
.msg-t .rd{width:15px;height:15px;color:var(--green)}
.msg-file{display:flex;align-items:center;gap:10px;background:rgba(16,42,58,.06);border-radius:12px;padding:8px 10px;margin-bottom:8px}
.msg-file>.i{width:22px;height:22px;color:var(--red);flex:none}
.msg-file>span{flex:1;min-width:0}
.msg-file b{display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.msg-file small{display:block;font-size:11.5px;color:var(--muted)}
.msg-file>.i:last-child{color:var(--purple);width:18px;height:18px}
.conv-bar{flex:none;background:var(--surface);border-top:1px solid var(--line);padding:10px 12px 14px}
.p-ios .conv-bar{padding-bottom:26px}
.p-android .conv-bar{background:#FBF8FE}
.wide .conv-bar{padding-bottom:14px}
.quick-reps{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:10px}
.quick-reps::-webkit-scrollbar{display:none}
.quick-reps .chip{box-shadow:none;border:1px solid var(--line2);flex:none}
.conv-in{display:flex;align-items:center;gap:6px;background:var(--paper);border-radius:26px;padding:4px 6px}
.conv-in input{flex:1;min-width:0;border:0;background:none;outline:none;font-size:15px;color:var(--ink);height:40px;padding:0 6px}
.conv-send{width:42px;height:42px;border-radius:50%;background:var(--purple);color:#fff;display:grid;place-items:center;flex:none}
.conv-send .i{width:19px;height:19px}
/* v14: e-store toggle, incoming requests, dashboard tiles */
.estore{border:1.5px solid var(--line2)}
.estore.on{border-color:#9FCBD3;background:#F2F9FA}
.es-row{display:flex;align-items:center;gap:12px}
.es-ic{width:44px;height:44px;border-radius:14px;background:#EAF7F1;color:var(--purple);display:grid;place-items:center;flex:none}
.es-row>div{flex:1;min-width:0}
.es-row b{display:block;font-size:15px}
.es-row small{display:block;font-size:12.5px;color:var(--muted);line-height:1.55;margin-top:2px}
.es-note{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:12.5px;color:var(--green)}
.es-note.off{color:var(--muted)}
.es-note .i{width:15px;height:15px}
.rq-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.wide .rq-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr))}
.rq{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px}
.p-android .rq{background:#EEF2F2}
.rq.new{border-inline-start:4px solid var(--purple)}
.rq-h{display:flex;align-items:flex-start;gap:10px}
.rq-h>div{flex:1;min-width:0}
.rq-h b{display:block;font-size:15.5px;font-weight:600;line-height:1.4}
.rq-h small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.rq-ic{width:38px;height:38px;border-radius:12px;background:var(--bg);color:var(--fg);display:grid;place-items:center;flex:none}
.rq-note{font-size:13.5px;color:#455A5F;line-height:1.7;margin-top:10px}
.rq-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:12.5px;color:var(--muted)}
.rq-meta span{display:inline-flex;align-items:center;gap:5px}
.rq-meta .i{width:15px;height:15px}
.rq-val{color:var(--purple);font-weight:700}
.rq-acts{display:flex;gap:8px;margin-top:12px}
.rq-acts .btn{height:44px;font-size:14px;padding:0 10px}
.dash-alert{display:flex;align-items:center;gap:10px;background:#EAF7F1;border-radius:14px;padding:11px 14px;font-size:14px;color:var(--purple);font-weight:500;margin-bottom:12px}
.dash-alert .i{width:20px;height:20px;flex:none}
.dash{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wide .dash{grid-template-columns:repeat(2,1fr)}
@media (min-width:1250px){.wide .dash{grid-template-columns:repeat(3,1fr)}}
.dtile{position:relative;display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid transparent;border-radius:16px;padding:14px;text-align:start;min-height:74px}
.p-android .dtile{background:#F0EAF6}
.dtile .ri{width:38px;height:38px;border-radius:12px;background:var(--bg);color:var(--fg);display:grid;place-items:center;flex:none}
.dtile b{font-size:14.5px;font-weight:600;line-height:1.4}
.wide .dtile:hover{border-color:var(--line2)}
.dbadge{position:absolute;top:8px;inset-inline-start:8px;min-width:22px;height:22px;padding:0 7px;border-radius:11px;background:var(--red);color:#fff;font-size:12px;font-weight:700;font-style:normal;display:grid;place-items:center}
.quick .qk .bdg{margin-inline-start:2px}
/* v15: solo main entries */
.tr-h.solo{margin-bottom:1px}
.tr-h.solo.on{background:rgba(16,42,58,.08);color:var(--purple);font-weight:600}
.sc.solo .sc-head{padding-bottom:14px}
.co-swwrap{display:inline-flex;align-items:center;gap:6px}
.co-add{width:34px;height:34px;border-radius:17px;background:rgba(255,255,255,.14);color:#fff;display:grid;place-items:center;flex:none}
.co-add:hover{background:rgba(255,255,255,.24)}
.co-add .i{width:18px;height:18px;stroke-width:2.4}
/* v16: services, notifications, support */
.svc-about{font-size:14.5px;line-height:1.8;color:#2B464D;background:var(--paper);border-radius:14px;padding:12px 14px}
.svc-feats{margin-top:12px}
.svc-note{display:flex;gap:8px;align-items:flex-start;background:#E9F3F4;border-radius:12px;padding:10px 12px;margin-top:12px;font-size:12.5px;line-height:1.6;color:#2B464D}
.svc-note .i{width:17px;height:17px;color:var(--purple);flex:none;margin-top:1px}
.ms-body .btn.wfull{margin-top:16px;height:50px}
.dtile.locked{opacity:.72;background:#F6F8F8}
.dtile.locked .ri{background:#E0E7E5;color:#6E8084}
.dlock{position:absolute;top:8px;inset-inline-start:8px;font-style:normal;font-size:11px;font-weight:600;padding:2px 8px;border-radius:9px;background:#E0E7E5;color:#6B7C85}
.lock-b{display:inline-grid;place-items:center;width:18px;height:18px;margin-inline-start:6px;color:var(--muted)}
.lock-b .i{width:14px;height:14px}
.set-card .set-h{display:flex;align-items:center;gap:8px;font-size:15.5px;font-weight:600;color:var(--purple);margin-bottom:4px}
.set-card .set-h .i{width:19px;height:19px}
.set-card .group{background:transparent;margin-top:0}
.set-card .row{padding-inline:0}
.set-card .row+.row::before{inset-inline-start:48px}
.nf-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.nf{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:start;background:var(--surface);border-radius:16px;padding:13px 14px;position:relative}
.p-android .nf{background:#EEF2F2}
.nf.new{box-shadow:inset 3px 0 0 var(--purple)}
[dir=rtl] .nf.new{box-shadow:inset -3px 0 0 var(--purple)}
.nf-ic{width:42px;height:42px;border-radius:13px;background:var(--bg);color:var(--fg);display:grid;place-items:center;flex:none}
.nf-b{flex:1;min-width:0}
.nf-b b{display:block;font-size:15px;font-weight:600;line-height:1.4}
.nf-b small{display:block;font-size:13px;color:var(--muted);line-height:1.6;margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nf-b em{display:block;font-style:normal;font-size:11.5px;color:#8A9A9D;margin-top:6px}
.nf-dot{width:9px;height:9px;border-radius:50%;background:var(--purple);flex:none;margin-top:6px}
.nf-head{display:flex;align-items:center;gap:12px;margin-top:4px}
.nf-head b{display:block;font-size:17px;font-weight:600;line-height:1.4}
.nf-head small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.nf-head+.det-p{margin-top:14px}
.sup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
#app:not(.wide) .sup-grid{grid-template-columns:1fr}
.sup{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;background:var(--surface);border:1px solid var(--line2);border-radius:18px;padding:18px 12px;text-decoration:none;color:var(--ink)}
#app:not(.wide) .sup{flex-direction:row;justify-content:flex-start;text-align:start;gap:12px;padding:14px}
.sup .i{width:28px;height:28px;color:var(--purple);flex:none}
.sup.wa .i{color:var(--green)}
.sup b{font-size:15px}
.sup small{font-size:12.5px;color:var(--muted);line-height:1.5}
#app:not(.wide) .sup>div{flex:1}
/* v17: ads and property request */
.adslot{display:flex;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line2);border-radius:18px;padding:10px;margin-top:14px;position:relative;overflow:hidden}
.p-android .adslot{background:#EEF2F2}
.ad-tag{position:absolute;top:8px;inset-inline-start:8px;background:rgba(16,42,58,.75);color:#fff;font-size:10.5px;padding:2px 8px;border-radius:8px;z-index:2}
.ad-media{width:130px;height:90px;border-radius:12px;overflow:hidden;flex:none;background:#E6EBEC}
#app:not(.wide) .ad-media{width:110px;height:80px}
.ad-media img,.ad-media video{width:100%;height:100%;object-fit:cover;display:block}
.ad-b{flex:1;min-width:0}
.ad-b b{display:block;font-size:14.5px;font-weight:600;line-height:1.4}
.ad-b small{display:block;font-size:12.5px;color:var(--muted);line-height:1.6;margin-top:3px}
.ad-b .btn{margin-top:8px}
.ph video{width:100%;height:100%;object-fit:cover;display:block}
.ad-vid{position:absolute;bottom:6px;inset-inline-start:6px;background:rgba(16,42,58,.75);color:#fff;border-radius:8px;padding:2px 6px;display:grid;place-items:center}
.ad-vid .i{width:14px;height:14px}
/* v18: developer projects */
.dv-steps{grid-template-columns:repeat(6,1fr)}
#app:not(.wide) .dv-steps{grid-template-columns:repeat(3,1fr);row-gap:12px}
.dv-state{grid-template-columns:repeat(3,1fr)}
#app:not(.wide) .dv-state{grid-template-columns:1fr}
.ut-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.ut{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line2);border-radius:14px;padding:10px 12px}
.ut>div{flex:1;min-width:0}
.ut b{display:block;font-size:14.5px}
.ut small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.ut-p{display:block;font-size:13px;color:var(--purple);font-weight:600;margin-top:3px}
.ut-form{background:#fff;border:1px dashed var(--line2);border-radius:16px;padding:12px;margin-top:12px}
.ut-form .field{margin-top:10px}
.ut-form .btn{margin-top:12px}
/* v19: ask fab for companies on android */
.ask-fab{position:absolute;bottom:18px;inset-inline-end:16px;z-index:8;display:flex;align-items:center;gap:8px;height:52px;padding:0 18px;border-radius:26px;background:var(--gold);color:var(--purple);font-weight:600;font-size:15px;box-shadow:0 8px 20px rgba(16,42,58,.28)}
.ask-fab .i{width:20px;height:20px}
.wide .ask-fab{display:none}
/* v20: property search, fee note */
.ps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}
#app:not(.wide) .ps-grid{grid-template-columns:repeat(2,1fr)}
.ps-t{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:14px 8px;border:1.5px solid var(--line2);border-radius:16px;background:var(--surface);font-size:13.5px;font-weight:500;color:var(--ink);text-align:center}
.ps-t .i{width:26px;height:26px;color:var(--purple)}
.ps-t.on{border-color:var(--purple);background:#F2F9FA;box-shadow:0 0 0 3px rgba(16,42,58,.1)}
.fee-note{display:flex;gap:8px;align-items:flex-start;background:#FFF6E4;border:1px solid #EBD9B4;border-radius:12px;padding:10px 12px;margin-top:12px;font-size:13px;line-height:1.6;color:#6B5411}
.fee-note .i{width:17px;height:17px;color:#9A7B1A;flex:none;margin-top:1px}
.svc-cta{margin-top:14px;height:48px}
.svc-cta{margin-top:16px;height:52px;font-size:15px;box-shadow:0 6px 16px rgba(36,177,118,.35)}
/* v21: activity picker, brokerages */
.act-picker{margin-top:12px}
.act-picker .search{width:100%}
.act-sel{margin-top:10px}
.act-sel .tag.on{background:var(--purple);color:#fff;gap:6px}
.act-sel .tag .i{width:13px;height:13px}
.act-list{margin-top:10px;background:var(--surface);border:1px solid var(--line2);border-radius:14px;max-height:280px;overflow-y:auto}
.act-row{display:flex;align-items:center;gap:10px;width:100%;text-align:start;padding:12px 14px;font-size:14.5px;color:var(--ink);border-bottom:1px solid var(--line)}
.act-row:last-child{border-bottom:0}
.act-row.on{background:#F2F9FA;font-weight:600}
.br-area{display:flex;align-items:center;gap:8px;background:#E9F3F4;border-radius:12px;padding:10px 12px;font-size:13.5px;color:var(--purple);margin-bottom:10px}
.br-area .i{width:17px;height:17px}
.br-list{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.br{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px}
.p-android .br{background:#EEF2F2}
.br-av{width:44px;height:44px;border-radius:14px;background:linear-gradient(145deg,#1F7391,#143B54);color:#fff;display:grid;place-items:center;font-weight:700;font-size:17px;flex:none}
.br-b{flex:1;min-width:0}
.br-b b{display:block;font-size:15px;font-weight:600}
.br-b small{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--muted);margin-top:3px}
.br-b small .i{width:14px;height:14px}
.br-meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px;font-size:12px;color:var(--muted)}
.br-meta span{display:inline-flex;align-items:center;gap:4px}
.br-meta .i{width:13px;height:13px;color:#3E8C9A}
.br-acts{display:flex;flex-direction:column;gap:6px;align-items:stretch;flex:none}
#app:not(.wide) .br{flex-wrap:wrap}
#app:not(.wide) .br-acts{flex-direction:row;width:100%;margin-top:4px}
.br-acts .btn{height:36px;font-size:13px;padding:0 10px}
.br-acts .rnd{width:36px;height:36px}
.wz-sec{margin-top:18px}
.wz-h{display:flex;align-items:center;gap:8px;font-size:15.5px;font-weight:600;color:var(--purple);margin-bottom:10px}
.wz-h .i{width:19px;height:19px}
/* v22: shopping cart */
.spc-acts{display:flex;gap:8px}
.spc-acts .btn{height:44px;font-size:14px;padding:0 10px}
.cart-step{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#EAF3F4;border-radius:14px;padding:6px 8px;height:48px}
.cart-step .rnd{width:36px;height:36px;background:#fff;color:var(--purple)}
.cart-step .rnd:disabled{opacity:.4}
.cart-step>span{display:flex;flex-direction:column;align-items:center;line-height:1.2}
.cart-step>span b{font-size:16px;color:var(--purple)}
.cart-step>span small{font-size:11px;color:var(--muted)}
.cart-step.sm{height:38px;width:126px;margin-top:8px;padding:4px 6px}
.cart-step.sm .rnd{width:30px;height:30px}
.cart-step.sm>b{font-size:15px;color:var(--purple)}
.cart-bar{display:flex;align-items:center;gap:12px;background:#143B54;color:#fff;padding:12px 16px;flex:none}
.cart-bar>div{flex:1;min-width:0}
.cart-bar b{display:block;font-size:14.5px}
.cart-bar small{display:block;font-size:12.5px;color:#BFD6DC;margin-top:2px}
.cart-bar .btn{height:42px;background:var(--gold);color:var(--purple)}
.cart-ic{position:relative;width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.14);display:grid;place-items:center;flex:none}
.cart-ic .i{width:21px;height:21px}
.cart-ic em{position:absolute;top:-5px;inset-inline-end:-5px;min-width:20px;height:20px;border-radius:10px;background:var(--gold);color:var(--purple);font-style:normal;font-size:11.5px;font-weight:700;display:grid;place-items:center;padding:0 5px}
.cart-list{display:flex;flex-direction:column;gap:10px}
.cl{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:10px}
.cl img{width:72px;height:72px;border-radius:12px;object-fit:cover;flex:none}
.cl-b{flex:1;min-width:0}
.cl-b b{display:block;font-size:14.5px;font-weight:600}
.cl-b small{display:block;font-size:12.5px;color:var(--muted);margin-top:3px}
.cl-e{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:8px;flex:none}
.cl-e strong{font-size:15px;color:var(--purple)}
.cart-mini{margin-bottom:10px;height:46px}
.addprop-m{margin:12px 0 4px;height:50px}
/* v23: quantity picker */
.qty-row{display:flex;gap:8px;align-items:stretch}
.cart-step.qty{width:130px;flex:none;height:46px}
.qty-row .btn{height:46px;font-size:14px}
.spc-b .btn.outline.wfull{margin-top:8px;height:42px;font-size:13.5px}


/* The real site: no prototype chrome, no device frame. The app fills the browser window. */
body{background:var(--paper)}
.chrome,.statusbar,.homeind{display:none!important}
.showcase{height:100%!important;padding:0!important;background:none!important;display:block}
.p-web .device{width:100%;height:100%;border-radius:0;box-shadow:none}
/* while a saved session is being restored, don't flash the sign-in page */
html.booting #app{visibility:hidden}
/* prototype-only helpers (sample data buttons) are not part of the product */
.demo-fill{display:none!important}
/* the prototype's sample photo library is not offered in the product: people upload their own photos */
.ms-photos .lib-grid,.ms-photos .ms-body>.flabel,.ms-photos .ms-save{display:none!important}
/* product options (colour, size...): one row per combination */
.sw-dot{display:inline-block;width:14px;height:14px;border-radius:50%;border:1px solid var(--line2);margin-inline-end:6px;vertical-align:-2px}
.var-head,.var-row{display:grid;grid-template-columns:minmax(90px,1.4fr) 1fr .8fr auto;gap:8px;align-items:center}
.var-head{font-size:12px;color:var(--muted);padding:0 4px 6px}
.var-list{display:flex;flex-direction:column;gap:8px}
.var-row{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:8px 10px}
.var-row b{font-size:13.5px;font-weight:500}
.var-row .inp{height:40px}
.var-row.off{opacity:.55}
.svc-form{margin:14px 0 4px}
.spc-opts{display:flex;flex-direction:column;gap:6px;margin:8px 0}
.spc-opts .opts{gap:6px}
.spc-opts .opt{min-height:34px;padding:0 10px;font-size:13px}
/* earlier ad requests */
.rq-minis{display:grid;gap:8px}
.rq-mini{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--bg,#F2F5F4)}
.rq-mini b{font-size:14px}.rq-mini small{grid-column:1;color:var(--muted,#6E8084);font-size:12px}
.rq-mini .ast{grid-row:1/3;grid-column:2}
/* file fields in a service activation form: a wide drop row, not a photo tile */
.svc-form .doc.add{aspect-ratio:auto;min-height:72px;flex-direction:row;gap:10px;padding:12px 14px}
.svc-form .doc.add small{color:var(--muted)}
.df-files{display:grid;gap:8px}
.df-file{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line2);border-radius:12px;background:#fff}
.df-file>.i{width:22px;height:22px;color:var(--purple);flex:none}
.df-file span{flex:1;min-width:0;display:flex;flex-direction:column}
.df-file b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.df-file small{font-size:11.5px;color:var(--muted)}
/* Ask Nearbit window */
.ai2 .ai-in{margin-top:14px}
.ai2 .ai-mid{justify-content:flex-start;padding-top:18px}
.ai2 .ai-mic.on{background:#fff;box-shadow:0 0 0 6px rgba(36,177,118,.35)}
.ai-hello{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}
.ai-big{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:var(--gold)}
.ai-big .i{width:38px;height:38px}
.ai-hello .ai-st{margin-top:22px}
.ai-cards{display:grid;gap:8px;width:100%}
.ai-card{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:14px;background:#fff;color:var(--ink);text-align:start}
.ai-card:hover{background:#F1F7F8}
.ai-ci{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#E6EBEC;color:var(--purple);flex:none}
.ai-cb{flex:1;min-width:0;display:flex;flex-direction:column}
.ai-cb b{font-size:14.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ai-cb small{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ai-card em{font-style:normal;font-size:12px;color:var(--muted);flex:none}
.ai-fb{display:grid;grid-template-columns:auto 1fr;gap:10px 12px;align-items:start;width:100%;padding:14px;border-radius:16px;background:rgba(255,255,255,.1);border:1px dashed rgba(36,177,118,.6)}
.ai-fb>.i{width:28px;height:28px;color:var(--gold)}
.ai-fb b{display:block;font-size:15px}
.ai-fb span{display:block;font-size:13.5px;color:#C6DCE1;line-height:1.6}
.ai-fb .btn{grid-column:1/-1}
/* job openings in the place card */
.pc-jobs{margin:12px 0;padding:12px;border-radius:14px;background:#EEF6F3;border:1px solid #CFE6DD}
.pc-jobs h4{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:14.5px;font-weight:700;color:var(--ink)}
.pc-jobs h4 .i{width:18px;height:18px;color:#1E8A63}
.pc-job{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:10px 12px;margin-top:6px;border-radius:12px;background:#fff;text-align:start}
.pc-job b{display:block;font-size:14px;font-weight:600}
.pc-job small{display:block;font-size:12.5px;color:var(--muted)}
.pc-job-go{display:flex;align-items:center;gap:4px;font-size:13px;color:#1E8A63;font-weight:600;flex:none}
.pc-job-go .i{width:14px;height:14px}
.pc-jobs .btn{margin-top:8px}
/* My companies: reorder */
.cos-hint{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:13px;color:var(--muted)}
.cos-hint .i{width:16px;height:16px;flex:none}
.cos-row{display:flex;align-items:center;gap:4px;border-radius:14px}
.cos-row>.row{flex:1;min-width:0}
.cos-row.dragging{opacity:.45}
.cos-row.over{box-shadow:inset 0 0 0 2px var(--teal,#1F7391)}
.cos-grip{cursor:grab;color:var(--muted);display:grid;place-items:center;width:22px;flex:none}
.cos-grip .i{width:18px;height:18px}
.cos-mv{display:flex;flex-direction:column;gap:2px;flex:none}
.cos-mv .icbtn{width:30px;height:26px}
.cos-mv .icbtn:disabled{opacity:.3}
/* ad request: steps, priced durations, total */
.ad-steps{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0;list-style:none;counter-reset:ads}
.ad-steps li{counter-increment:ads;display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#EEF4F5;font-size:12.5px;color:var(--ink)}
.ad-steps li::before{content:counter(ads);display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--navy,#143B54);color:#fff;font-size:11px}
.ad-plans{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-bottom:14px}
.ad-plan{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;border-radius:14px;border:1.5px solid var(--line,#DDE7E9);background:#fff;text-align:start}
.ad-plan b{font-size:15px}
.ad-plan .num{font-size:17px;font-weight:700;color:var(--navy,#143B54)}
.ad-plan small{color:var(--muted);font-size:12px}
.ad-plan.on{border-color:var(--navy,#143B54);box-shadow:0 0 0 3px rgba(16,42,58,.12);background:#F4F9FA}
.ad-allrow{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:13px}
.ad-allrow small{color:var(--muted)}
.ad-total{margin-top:14px;padding:14px;border-radius:14px;background:#F4F9FA;border:1px solid #DDE7E9}
.ad-total>div{display:flex;justify-content:space-between;padding:4px 0;font-size:14px}
.ad-total>div.sum{border-top:1px dashed #C9D8DB;margin-top:6px;padding-top:10px;font-size:16px}
.ad-total p{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;font-size:12.5px;color:var(--muted);line-height:1.6}
.ad-total p .i{width:16px;height:16px;flex:none;margin-top:2px}
/* a project offered to a brokerage */
.dvin{display:flex;flex-direction:column;gap:12px}
.dvin-imgs{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px}
.dvin-imgs img{width:100%;height:90px;object-fit:cover;border-radius:10px}
.dvin-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:0}
.dvin-facts dt{font-size:12px;color:var(--muted)}
.dvin-facts dd{margin:0;font-weight:600}
.dvin-desc{margin:0;line-height:1.7;color:var(--ink);font-size:14px}
.dvin-units{display:flex;flex-wrap:wrap;gap:6px}
.dvin-units span{padding:5px 10px;border-radius:999px;background:#EEF4F5;font-size:12.5px}
.dvin-dev,.dvin-bank,.dvin-lic{padding:12px;border-radius:14px;background:#F4F9FA;border:1px solid #DDE7E9;display:flex;flex-direction:column;gap:8px}
.dvin-dev h4,.dvin-bank h4,.dvin-lic h4{display:flex;align-items:center;gap:8px;margin:0;font-size:14.5px}
.dvin-dev h4 .i,.dvin-bank h4 .i,.dvin-lic h4 .i{width:18px;height:18px}
.dvin-co{display:flex;gap:10px;align-items:center}
.dvin-co img{width:44px;height:44px;border-radius:12px;object-fit:cover}
.dvin-co small{display:block;color:var(--muted);font-size:12.5px}
.dvin-bank p{margin:0;font-size:13.5px;line-height:1.7}
.dvin-st{display:flex;gap:8px;align-items:center;padding:10px 12px;border-radius:12px;background:#FFF6E5;font-size:13.5px}
.dvin-st.st-active{background:#E6F4EC}
.dvin-st.st-rejected{background:#FCE9E7}
.dvin-st .i{width:18px;height:18px;flex:none}
.dvin-acts{margin-top:4px}
.vchip{display:inline-flex;align-items:center;gap:3px;font-size:11.5px;color:#1E8A63;font-weight:600}
.vchip .i{width:14px;height:14px}
.pub-fee{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:12px;border-radius:12px;background:#FFF6E5;font-size:13.5px;line-height:1.7}
.pub-fee.free{background:#E6F4EC}
.pub-fee .i{width:20px;height:20px;flex:none;margin-top:2px}
.pub-fee b{display:block;font-size:14.5px}
/* CV form, incoming jobs, my properties */
.cv-import{padding:16px;border-radius:16px;background:linear-gradient(135deg,#F1F7F8,#E8F3EE);border:1px solid #D5E7E3;margin-bottom:14px}
.cv-import h3{display:flex;gap:8px;align-items:center;margin:0 0 6px;font-size:16px}
.cv-import-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.cv-filled{display:flex;gap:8px;align-items:center;margin-top:10px;padding:10px 12px;border-radius:12px;background:#E6F4EC;font-size:13.5px}
.cv-filled .i{width:18px;height:18px;color:#1E8A63;flex:none}
.cv-item{padding:12px;border:1px solid #E1EAEC;border-radius:14px;margin-bottom:10px;background:#fff}
.cv-item-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.chipbox{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px;border:1px solid var(--line,#DDE7E9);border-radius:12px;background:#fff}
.cchip{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border-radius:999px;background:#EEF4F5;font-size:13px}
.cchip button{display:grid;place-items:center;width:18px;height:18px;border-radius:50%}
.cchip .i{width:12px;height:12px}
.chip-in{border:0;flex:1;min-width:140px;padding:6px;height:auto;background:transparent}
.cv-build{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border-radius:14px;background:#F1F7F8;border:1px solid #D5E7E3;text-align:start;margin-bottom:12px}
.cv-build>span{flex:1}.cv-build b{display:block}.cv-build small{color:var(--muted);font-size:12.5px}
.li-steps{margin:0 0 14px;padding-inline-start:20px;line-height:1.9;font-size:14px}
.jm-list,.mp-list{display:grid;gap:10px}
.jm{padding:14px;border-radius:14px;background:#fff;border:1px solid #E1EAEC}
.jm-h b{display:block;font-size:15.5px}.jm-h small{color:var(--muted)}
.jm-why{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.jm-why span{padding:4px 10px;border-radius:999px;background:#E6F4EC;color:#1E6B4F;font-size:12px}
.jm-f{display:flex;justify-content:space-between;align-items:center;font-size:13.5px}
.mp-card{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:14px;background:#fff;border:1px solid #E1EAEC}
.mp-main{display:flex;align-items:center;gap:12px;text-align:start;width:100%}
.mp-main img,.mp-ph{width:72px;height:60px;border-radius:10px;object-fit:cover;flex:none;display:grid;place-items:center;background:#EEF4F5}
.mp-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.mp-b b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mp-b small{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:12.5px}
.mp-b small .i{width:14px;height:14px}
.app-cv{display:flex;flex-direction:column;gap:2px;margin:8px 0;padding:10px 12px;border-radius:12px;background:#F4F9FA;font-size:13px}
.app-cv small{color:var(--muted)}
/* distinct map pins */
.pin2 .pin-j{right:auto;left:-9px;background:#47565F}
.pin2 .pin-p{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);padding:0 5px;border-radius:6px;background:#fff;color:#143B54;font-size:9.5px;font-weight:700;line-height:14px;box-shadow:0 1px 3px rgba(0,0,0,.25);white-space:nowrap}
.logo-img{object-fit:contain;border-radius:8px}
.soc-row{display:flex;flex-wrap:wrap;gap:8px}
.soc{padding:8px 14px;border-radius:999px;background:#fff;border:1px solid #DDE7E9;font-weight:600;font-size:13.5px}
/* CV management */
.cvm{display:grid;gap:14px}
.cvm-card{padding:16px;border-radius:18px;background:#fff;border:1px solid #E1EAEC}
.cvm-h{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.cvm-h b{display:block;font-size:16px}.cvm-h small{color:var(--muted);font-size:12.5px}
.cvm-ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#E6EBEC;color:var(--purple,#143B54);flex:none}
.cvm-body{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:14px;background:#F6FAFA;margin-bottom:10px}
.cvm-name{font-size:17px}
.cvm-chips{display:flex;flex-wrap:wrap;gap:6px}.cvm-chips span{padding:4px 10px;border-radius:999px;background:#fff;border:1px solid #DDE7E9;font-size:12.5px}
.cvm-stats{display:flex;flex-wrap:wrap;gap:12px;font-size:12.5px;color:var(--muted)}.cvm-stats span{display:flex;gap:4px;align-items:center}.cvm-stats .i{width:14px;height:14px}
.cvm-acts{display:flex;flex-wrap:wrap;gap:8px}
.cvm-apps{display:grid;gap:8px}
.cvm-app{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:#F6FAFA}
.cvm-app b{display:block;font-size:14px}.cvm-app small{color:var(--muted);font-size:12px}
/* couriers at work */
.cour{display:grid;gap:14px}
.cour-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-radius:18px;background:#fff;border:1px solid #E1EAEC}
.cour-switch.on{background:#E9F6EF;border-color:#BFE3CF}
.cour-switch b{display:block;font-size:16px}.cour-switch small{color:var(--muted);font-size:12.5px}
.cour-tg{display:flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border-radius:999px;background:#E1E7E9;font-weight:700;font-size:13px;flex:none}
.cour-tg i{width:30px;height:30px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.cour-switch.on .cour-tg{background:#1E8A63;color:#fff;flex-direction:row-reverse;padding:6px 6px 6px 12px}
.cour-card{padding:16px;border-radius:18px;background:#fff;border:1px solid #E1EAEC;display:flex;flex-direction:column;gap:12px}
.cour-card.pay{flex-direction:row;align-items:flex-start;background:#FFF6E5;border-color:#F3DDB0}
.cour-card.pay>.i{width:28px;height:28px;flex:none}.cour-card.pay p{margin:6px 0 10px;line-height:1.7;font-size:14px}
.cour-card.offer{border:2px solid #F08A00;box-shadow:0 0 0 4px rgba(240,138,0,.12)}
.cour-h{display:flex;justify-content:space-between;align-items:center;gap:8px}.cour-h b{display:flex;gap:8px;align-items:center;font-size:15.5px}.cour-h small{color:var(--muted)}
.cour-timer{min-width:46px;text-align:center;padding:4px 10px;border-radius:999px;background:#F08A00;color:#fff;font-weight:700}
.cour-route{display:grid;gap:8px}.cour-route>span{display:grid;grid-template-columns:22px 1fr;column-gap:8px}.cour-route small{grid-column:2;color:var(--muted);font-size:12.5px}
.cour-money b{font-size:22px;color:#1E8A63}.cour-money small{display:block;color:var(--muted);font-size:12.5px}
.cour-map{height:240px;border-radius:14px;overflow:hidden;background:#E8EEF0}
.cour-stops{display:grid;gap:10px}.cour-stop{display:flex;gap:10px;padding:10px;border-radius:12px;background:#F6FAFA;opacity:.75}.cour-stop.cur{opacity:1;box-shadow:inset 0 0 0 2px #143B54}
.cour-stop .n{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#143B54;color:#fff;font-weight:700;flex:none}
.cour-stop small{display:block;color:var(--muted);font-size:12.5px}.cour-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.cour-code{display:grid;gap:8px}.cour-code input{font-size:24px;letter-spacing:.5em;text-align:center}
.cour-wait{display:flex;gap:8px;align-items:center;justify-content:center;padding:18px;border-radius:14px;background:#F6FAFA;color:var(--muted)}
.cour-hist{display:grid;gap:6px}.cour-hist>div{display:flex;justify-content:space-between;font-size:13.5px;padding:8px 10px;border-radius:10px;background:#F6FAFA}.cour-hist b{color:#1E8A63}
.ord-del{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;background:#EEF6F3;margin:8px 0}
.ord-del>div{flex:1}.ord-del small{display:block;color:var(--muted);font-size:12.5px}
.ord-code{text-align:center;padding:6px 12px;border-radius:10px;background:#143B54;color:#fff}.ord-code small{display:block;font-size:11px;color:#BFD6DC}.ord-code b{font-size:20px;letter-spacing:.2em}
/* store kinds and the company card's service tabs */
.skel{border-radius:12px;background:linear-gradient(90deg,#F6F8F8 25%,#F7F9F9 50%,#F6F8F8 75%);background-size:200% 100%;animation:skel 1.2s infinite linear}
@keyframes skel{to{background-position:-200% 0}}
.pc-kind,.sw-kind{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 2px}
.sw-kind{margin:0;padding:10px 16px;border-bottom:1px solid var(--line);flex:none}
.kb{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:99px;background:var(--ink);color:#fff;font-size:12.5px;font-weight:600}
.kb .i{width:15px;height:15px}
.kf,.ks{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:3px 10px;border-radius:99px;background:#EEF6F3;color:#1F5A47;font-size:12.5px;line-height:1.4}
.kf .i{width:14px;height:14px}.kf small,.ks small{color:var(--muted)}
.ks{background:#F3F5F5;color:var(--ink)}
.ks-row{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.pc-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 8px}
.pc-tabs button{flex:1 1 calc(50% - 6px);min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;padding:0 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface);font-size:13.5px;font-weight:600;color:#4D6166;white-space:nowrap}
.pc-tabs button .i{width:17px;height:17px}
.pc-tabs button em{font-style:normal;min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:#E3EAE9;font-size:11.5px;display:inline-grid;place-items:center}
.pc-tabs button.on{background:var(--ink);border-color:var(--ink);color:#fff}
.pc-tabs button.on em{background:rgba(255,255,255,.2)}
.pc-tabs button .pc-more{display:inline-grid;margin-inline-start:2px;opacity:.85}.pc-tabs button .pc-more .i{width:14px;height:14px}
.pc-panel{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.pc-panel>.btn{margin-top:4px;height:42px;font-size:14px}
.pt-row{display:flex;align-items:center;gap:10px;width:100%;padding:7px;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-align:start}
.pt-row:hover{border-color:#B9CBC9}
.pt-img{width:52px;height:52px;flex:none;border-radius:10px;overflow:hidden;background:#F6F8F8;display:grid;place-items:center;color:var(--muted)}
.pt-img img{width:100%;height:100%;object-fit:cover}
.pt-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.pt-t b{font-size:14px;font-weight:600;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pt-t small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pt-p{display:flex;flex-direction:column;align-items:flex-end;gap:1px;flex:none}
.pt-p strong{font-size:14px;color:var(--green);font-weight:700}
.pt-p s,.pt-p small{font-size:11.5px;color:var(--muted)}
.pt-p small.err{color:#B4372F}
.pt-d{font-style:normal;font-size:11px;font-weight:700;color:#B4372F}
.pt-sec{margin:6px 2px 0;font-size:12.5px;font-weight:700;color:var(--muted)}
.sw-nav{flex:none;display:flex;gap:6px;overflow-x:auto;padding:10px 16px;border-bottom:1px solid var(--line);scrollbar-width:none}
.sw-nav .chip{flex:none}
.sw-nav .chip small{color:var(--muted);margin-inline-start:2px}
.mb.store-grid .sw-sec{grid-column:1/-1;margin:6px 2px -4px;font-size:15px;font-weight:700;color:var(--ink)}
.mb.store-grid .sw-sec:first-child{margin-top:0}
.ad-box{display:flex;flex-direction:column;gap:10px;margin:6px 0 2px;padding:10px;border-radius:12px;background:#F6F8F8}
.ad-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px}
.ad-h b{font-size:13.5px}.ad-h small{font-size:12px;color:var(--muted)}
.ad-box .opt small{color:var(--green);font-weight:600}
.msheet.ms-pitem{background:var(--surface);overflow:hidden;height:auto;max-height:92%}
.wide .msheet.ms-pitem{width:460px}
.kind-bar{display:flex;align-items:center;gap:10px;width:100%;margin:10px 0 14px;padding:10px 12px;border:1px dashed #B9CBC9;border-radius:14px;background:#F6FAF9;text-align:start}
.kind-bar>.i{width:24px;height:24px;color:var(--ink)}
.kind-bar span{flex:1;display:flex;flex-direction:column;gap:2px}
.kind-bar small{font-size:12px;color:var(--muted)}.kind-bar b{font-size:14px;line-height:1.5}
.kind-bar em{font-style:normal;font-size:13px;font-weight:700;color:var(--green)}
.kind-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:14px 0}
.kind-c{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border:1.5px solid var(--line);border-radius:14px;background:var(--surface);text-align:start}
.kind-c .i{width:26px;height:26px;color:var(--ink)}
.kind-c b{font-size:14.5px}.kind-c small{font-size:12px;color:var(--muted);line-height:1.5}
.kind-c.on{border-color:var(--ink);background:#EEF4F6;box-shadow:0 0 0 2px rgba(16,42,58,.12)}
.ad-ed{display:flex;flex-direction:column;gap:8px;padding:10px;margin-bottom:10px;border:1px solid var(--line);border-radius:14px}
.ad-ed-h,.ad-ed-i{display:flex;gap:6px;align-items:center}
.ad-ed-h .inp,.ad-ed-i>.inp{flex:1}
.ad-ed-i .money{width:120px;flex:none}
.ad-ed-o{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ad-max{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}
.ad-max .inp{width:64px}
.ad-ed .btn.sm{align-self:flex-start}
/* Ask Nearbit speaking and listening */
.bub.bot{position:relative}
.bub.bot.old{opacity:.8}
.ai-rep{float:inline-end;margin:-4px -4px 2px 8px;width:30px;height:30px;border-radius:50%;display:inline-grid;place-items:center;background:rgba(255,255,255,.12);color:#fff}
.ai-rep .i{width:16px;height:16px}
.ai-talk{display:flex;align-items:center;justify-content:center;gap:10px;margin:8px 16px 0;padding:8px 12px;border-radius:14px;background:rgba(255,255,255,.08);color:#fff;font-size:14px;position:relative;z-index:1}
.ai-talk.on{background:rgba(212,175,95,.18)}
.ai-talk.idle{background:none;padding:0}
.ai-talk .btn.sm{height:34px;padding:0 14px;font-size:13px}
.ai-wave{display:inline-flex;align-items:center;gap:3px;height:18px}
.ai-wave i{width:3px;height:5px;border-radius:2px;background:var(--gold);animation:wave 1s ease-in-out infinite}
.ai-wave i:nth-child(2){animation-delay:.15s}.ai-wave i:nth-child(3){animation-delay:.3s}.ai-wave i:nth-child(4){animation-delay:.1s}.ai-wave i:nth-child(5){animation-delay:.25s}
/* Ask Nearbit results on the map */
.ai-filter{display:flex;align-items:center;gap:10px;margin:8px 0 6px;margin-inline-end:56px;padding:8px 10px 8px 12px;border-radius:14px;background:var(--ink);color:#fff;box-shadow:0 6px 18px rgba(16,42,58,.25);max-width:520px}
.ai-filter>.i{width:20px;height:20px;color:var(--gold);flex:none}
.ai-filter span{flex:1;min-width:0;display:flex;flex-direction:column}
.ai-filter b{font-size:13.5px}.ai-filter small{font-size:12px;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ai-filter .icbtn{color:#fff;background:rgba(255,255,255,.12)}
.ai-onmap{display:flex;justify-content:center;margin:8px 16px 0;position:relative;z-index:1}
.ai-onmap .btn{height:36px;padding:0 14px;font-size:13px;background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.2)}
.ai-onmap .btn .i{width:16px;height:16px}
.ai-vlang{flex:none;max-width:118px;height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);color:#fff;font:inherit;font-size:13px;padding:0 8px}
.ai-vlang option{color:#143B54;background:#fff}
/* job search subscription */
.msheet.ms-jlock{background:var(--surface);overflow:hidden;height:auto;max-height:92%}
.wide .msheet.ms-jlock{width:440px}
.jl-body{display:flex;flex-direction:column;gap:12px;padding:18px}
.jl-n{display:flex;align-items:baseline;gap:8px}.jl-n b{font-size:34px;color:var(--ink)}.jl-n span{color:var(--muted)}
.jl-price{font-weight:700;color:var(--green);font-size:16px}
.jl-why{margin:0;color:var(--muted);font-size:13.5px}
.jl-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.jl-plan{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px;border-radius:14px;border:1.5px solid #D5E0DF;background:#fff;text-align:start;cursor:pointer;font:inherit;color:var(--ink)}
.jl-plan.on{border-color:var(--green);background:#F1F8F5;box-shadow:0 0 0 2px rgba(44,97,81,.15)}
.jl-plan b{font-size:14px}.jl-plan .jl-amt{font-size:20px;font-weight:700;color:var(--green)}.jl-plan small{font-size:12px;color:var(--muted)}
.jl-plan em{position:absolute;top:8px;inset-inline-end:8px;font-style:normal;font-size:11px;font-weight:700;color:#fff;background:var(--green);border-radius:999px;padding:2px 7px}
.jl-card{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#F6F8F8;border:1px dashed #B9CBC9}
.jl-card>.i{width:22px;height:22px;color:var(--ink)}
.jl-card span{display:flex;flex-direction:column;gap:2px}.jl-card b{font-size:14px}.jl-card small{font-size:12.5px;color:var(--muted)}

/* ---------- checkout in steps ---------- */
.co-cartbtn{position:relative}
.co-badge{position:absolute;top:2px;inset-inline-end:0;min-width:18px;height:18px;border-radius:9px;background:var(--red);color:#fff;font-size:10.5px;font-style:normal;font-weight:600;display:grid;place-items:center;padding:0 4px;border:2px solid #fff;line-height:1}
.co-steps{display:flex;gap:6px;list-style:none;margin:0 0 4px;padding:0}
.co-steps li{flex:1;min-width:0}
.co-steps button{width:100%;display:flex;align-items:center;gap:8px;padding:8px 6px;border-bottom:3px solid var(--line);color:var(--muted);text-align:start}
.co-steps button span{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--paper);font-size:13px;font-weight:600}
.co-steps button span .i{width:15px;height:15px;stroke-width:2.6}
.co-steps b{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.co-steps .on button{border-color:var(--purple);color:var(--purple)}
.co-steps .on button span{background:var(--purple);color:#fff}
.co-steps .done button{border-color:var(--gold);color:var(--ink);cursor:pointer}
.co-steps .done button span{background:var(--gold-soft);color:var(--green)}
#app:not(.wide) .co-steps b{font-size:11.5px}
.co .reg-sec h3 small.co-n{margin-inline-start:auto;font-size:12.5px;color:var(--muted);font-weight:400}
.co-opts{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.co-opts.has-err .co-opt{border-color:var(--red)}
.co-opt{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:1.5px solid var(--line2);border-radius:14px;background:#fff;text-align:start;color:var(--ink)}
.co-opt>.i,.co-pick>.i{flex:none;width:22px;height:22px;color:var(--purple)}
.co-opt span,.co-pick span{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.co-opt b,.co-pick b{font-size:14.5px;font-weight:600}
.co-opt small,.co-pick small{font-size:12.5px;color:var(--muted);line-height:1.5}
.co-opt.on{border-color:var(--purple);background:#F3F9FA}
.co-opt:disabled{opacity:.55;cursor:not-allowed}
.co-radio{flex:none;width:20px;height:20px;border-radius:50%;border:2px solid var(--line2);position:relative}
.co-opt.on .co-radio{border-color:var(--purple)}
.co-opt.on .co-radio::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--purple)}
div.co-opt{padding:0;gap:0}
.co-pick{flex:1;display:flex;align-items:center;gap:12px;padding:12px 14px;text-align:start;min-width:0}
div.co-opt .icbtn{margin-inline-end:4px}
.co-tag{font-style:normal;font-size:11px;font-weight:500;background:var(--gold-soft);color:var(--purple);border-radius:8px;padding:1px 7px;margin-inline-start:4px}
.co .pk-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.co .pick{border-radius:14px;overflow:hidden;position:relative}
.co .pickmap{height:240px}
.co-items>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px dashed var(--line);font-size:14px}
.co-items>div:last-child{border-bottom:0}
.co-items small{color:var(--muted)}
.co-add{display:block;font-size:12px}
.co-items b{white-space:nowrap;font-weight:600}
.co-line{display:flex;align-items:flex-start;gap:8px;font-size:14px;margin-top:8px;line-height:1.6}
.co-line .i{flex:none;width:18px;height:18px;color:var(--muted);margin-top:2px}
.co-edit{margin-inline-start:auto;font-size:13px;font-weight:500}
.co-code{display:flex;gap:8px;margin-top:10px}
.co-code .inp{flex:1;text-transform:uppercase;letter-spacing:.5px}
.co-code.has-err .inp{border-color:var(--red)}
.co-code-on{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;border-radius:12px;background:#E7F3EE;color:var(--green)}
.co-code-on>.i{width:20px;height:20px;stroke-width:2.6}
.co-code-on span{flex:1;display:flex;flex-direction:column}
.co-code-on small{color:var(--ink);font-size:12.5px}
.co-sum{margin-top:14px}
.co-sum small{color:var(--muted);font-weight:400}
.co-off{color:var(--green)!important;font-weight:600}
.co-done{text-align:center;padding:24px 4px}
.co-ok{width:72px;height:72px;border-radius:50%;background:#E7F3EE;color:var(--green);display:grid;place-items:center;margin:0 auto 14px}
.co-ok .i{width:38px;height:38px;stroke-width:2.6}
.co-done h2{font-size:21px;color:var(--purple)}
.co-done p{color:var(--muted);margin-top:6px;font-size:14px}
.co-orders{margin:18px auto 0;max-width:420px;text-align:start;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.co-orders>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}
.co-orders>div:last-child{border-bottom:0}
.co-orders span{display:flex;flex-direction:column}
.co-orders small{color:var(--muted);font-size:12.5px}
.co-done-acts{display:flex;gap:10px;justify-content:center;margin-top:20px;flex-wrap:wrap}
.co-fb{position:absolute;inset:0}
.co-pin{display:grid;place-items:center;width:44px;height:44px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--purple);border:3px solid #fff;box-shadow:0 6px 16px rgba(16,42,58,.35)}
.co-pin .i{transform:rotate(45deg);width:20px;height:20px;color:#fff}
.pk-pin .co-pin{margin-top:-22px}
.ord-contact{flex-wrap:wrap}.ord-contact a{display:inline-flex;align-items:center;gap:6px;color:var(--purple);font-weight:500}.ord-note{color:var(--ink)!important}
/* the big sparkle in the middle of Ask Nearbit starts talking too */
button.ai-big{position:relative;cursor:pointer;width:104px;height:104px;flex-direction:column;gap:4px;border:1px solid rgba(255,255,255,.14);transition:transform .15s,background .15s}
button.ai-big small{font-size:11.5px;font-weight:500;color:rgba(255,255,255,.75)}
button.ai-big:hover{background:rgba(255,255,255,.14);transform:scale(1.04)}
button.ai-big:active{transform:scale(.96)}
button.ai-big:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
button.ai-big::after{content:'';position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(36,177,118,.35);animation:aiBigPulse 2.4s ease-out infinite}
@keyframes aiBigPulse{0%{transform:scale(.92);opacity:.9}100%{transform:scale(1.18);opacity:0}}
@media (prefers-reduced-motion:reduce){button.ai-big::after{animation:none}}
.ord-hi{box-shadow:0 0 0 2px var(--gold),0 8px 24px rgba(16,42,58,.14);animation:ordHi 1.2s ease-out 2}@keyframes ordHi{50%{box-shadow:0 0 0 5px var(--gold-soft),0 8px 24px rgba(16,42,58,.14)}}
/* a delivery request rings like an incoming call, on any page */
#cour-call{position:fixed;inset:0;z-index:9000;display:grid;place-items:center;background:rgba(3,30,40,.55);padding:16px}
#cour-call .cc-card{width:min(360px,100%);background:#143B54;color:#fff;border-radius:28px;padding:26px 22px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;box-shadow:0 24px 60px rgba(0,0,0,.35)}
#cour-call .cc-ring{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#143B54;margin-bottom:8px;animation:ccRing 1.3s ease-in-out infinite}
#cour-call .cc-ring .i{width:40px;height:40px}
#cour-call b{font-size:20px}
#cour-call p{opacity:.85;font-size:14px;display:flex;align-items:center;gap:6px}
#cour-call strong{font-size:26px;margin-top:4px}
#cour-call .cc-left{opacity:.7;font-size:12.5px}
#cour-call .cc-acts{display:flex;justify-content:space-around;width:100%;margin-top:16px}
#cour-call .cc-acts button{display:flex;flex-direction:column;align-items:center;gap:6px;color:#fff;font-weight:600;font-size:14px}
#cour-call .cc-acts .i{width:30px;height:30px;stroke-width:2.6}
#cour-call .cc-no .i,#cour-call .cc-yes .i{box-sizing:content-box;padding:18px;border-radius:50%}
#cour-call .cc-no .i{background:#C0392B}
#cour-call .cc-yes .i{background:#2E9E5B;animation:ccPulse 1.3s ease-out infinite}
#cour-call .cc-open{color:#BFE3EA;margin-top:12px;font-size:13px}
@keyframes ccRing{0%,100%{transform:rotate(0)}10%,30%{transform:rotate(-14deg)}20%,40%{transform:rotate(14deg)}50%{transform:rotate(0)}}
@keyframes ccPulse{0%{box-shadow:0 0 0 0 rgba(46,158,91,.6)}100%{box-shadow:0 0 0 18px rgba(46,158,91,0)}}
@media (prefers-reduced-motion:reduce){#cour-call .cc-ring,#cour-call .cc-yes .i{animation:none}}
/* map groups */
.mgrp{display:grid;place-items:center;border-radius:16px;background:#E8F2F0;border:2.5px solid #fff;box-shadow:0 4px 14px rgba(16,42,58,.28),0 0 0 4px rgba(36,177,118,.35);color:#102A3A;cursor:pointer;transition:transform .15s}
.mgrp b{font-size:16px;font-weight:700}
.mgrp:hover{transform:scale(1.08)}
.btn.danger-btn{background:var(--red);color:#fff;border:0}
/* property ad details: three tabs (ad information, more information, location) */
.lstbox{margin:6px 0 4px}
.eho{display:flex;gap:8px;align-items:flex-start;margin:10px 0 0;padding:10px 12px;border:1px solid var(--line,#E3E6E8);border-radius:12px;font-size:12.5px;line-height:1.5;color:var(--muted,#5B6870)}.eho svg{flex:none;width:18px;height:18px;margin-top:1px}.eho b{color:var(--ink,#1F2629)}
.lsttabs{display:flex;gap:0;overflow-x:auto;scrollbar-width:none}
.lsttabs::-webkit-scrollbar{display:none}
.lsttabs button{flex:1 0 auto;padding:11px 16px;font-size:14px;font-weight:600;color:var(--muted);background:#E9EEEE;border:1px solid var(--line);border-bottom:0;white-space:nowrap}
.lsttabs button:first-child{border-start-start-radius:12px}
.lsttabs button:last-child{border-start-end-radius:12px}
.lsttabs button.on{background:var(--surface);color:var(--ink)}
.lstgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));column-gap:28px;margin:0;background:var(--surface);border:1px solid var(--line);border-radius:0 0 12px 12px;padding:10px 16px}
.lstgrid.tab-more{grid-template-columns:1fr}
.lstrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px dashed var(--line);min-height:40px}
.lstrow:last-child{border-bottom:0}
.lstrow.wide{grid-column:1/-1;justify-content:flex-start}
.lstrow .lstk{color:var(--muted);font-size:14px}
.lstrow .lstv{margin:0;font-weight:600;color:var(--ink);font-size:14.5px;text-align:end;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.lstcopy{display:inline-flex;align-items:center;gap:4px;font-size:13px}
.lstcopy svg{width:16px;height:16px}
.det-meta{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px}
.views-tag{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--muted);background:var(--paper);border-radius:999px;padding:3px 10px}
.views-tag svg{width:15px;height:15px}
.lstform h3{display:flex;align-items:center;gap:8px}
.lstform h3 small{font-weight:400;color:var(--muted);font-size:12px}
.lstform-grid{display:grid;grid-template-columns:1fr;gap:0 14px}
@media(min-width:620px){.lstform-grid{grid-template-columns:1fr 1fr}.lstform-grid .field.wide{grid-column:1/-1}}
.pc-views,.prod-views{display:inline-flex;align-items:center;gap:4px;color:var(--muted)}
.pc-views svg,.prod-views svg{width:14px;height:14px}
.prod-views{font-size:12px}
/* Ask Nearbit: a light, friendly talk button: soft frosted glass, a sparkle and a gentle pulse that says "tap to talk" */
button.ai-big{width:108px;height:108px;margin:6px 0 4px;gap:5px;padding:0;border:1px solid rgba(255,255,255,.28);color:#fff;
 background:linear-gradient(160deg,rgba(255,255,255,.2),rgba(36,177,118,.16) 55%,rgba(36,177,118,.08));
 box-shadow:0 8px 22px rgba(0,25,38,.22),inset 0 1px 0 rgba(255,255,255,.35);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
 transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
button.ai-big .i{width:30px;height:30px;color:#BFE6EC;stroke-width:1.8;animation:aiTwinkle 2.6s ease-in-out infinite}
button.ai-big small{font-size:13px;font-weight:600;color:#fff;opacity:.95}
button.ai-big::before{content:'';position:absolute;inset:-8px;border-radius:50%;background:radial-gradient(circle,rgba(36,177,118,.28),rgba(36,177,118,0) 70%);z-index:-1;animation:aiSoft 2.6s ease-in-out infinite}
button.ai-big::after{inset:-6px;border:1.5px solid rgba(191,230,236,.55);animation:aiBigPulse 2.6s ease-out infinite}
button.ai-big:hover{transform:translateY(-2px);background:linear-gradient(160deg,rgba(255,255,255,.28),rgba(36,177,118,.22) 55%,rgba(36,177,118,.12));box-shadow:0 12px 26px rgba(0,25,38,.28),inset 0 1px 0 rgba(255,255,255,.4)}
button.ai-big:active{transform:scale(.96)}
@keyframes aiSoft{0%,100%{opacity:.35;transform:scale(.96)}50%{opacity:1;transform:scale(1.08)}}
@keyframes aiTwinkle{0%,100%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}
@media (prefers-reduced-motion:reduce){button.ai-big .i,button.ai-big::before,button.ai-big::after{animation:none}}
.ai-hello .ai-st{margin-top:26px}
/* brokerages a property reaches */
.bro-box{margin-top:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:12px 14px}
.bro-box.none{background:#FFF8EC;border-color:#F1DDB5}
.bro-h{display:flex;align-items:flex-start;gap:8px;margin:0 0 8px;font-weight:600;color:var(--ink);font-size:14px}
.bro-h svg{width:18px;height:18px;flex:none;margin-top:2px;color:var(--purple)}
.bro-list{display:grid;gap:6px}
.bro{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px dashed var(--line)}
.bro:first-child{border-top:0}
.bro-logo{width:36px;height:36px;border-radius:10px;background:var(--paper);display:grid;place-items:center;overflow:hidden;flex:none;color:var(--purple)}
.bro-logo img{width:100%;height:100%;object-fit:cover}
.bro-t{flex:1;min-width:0;display:flex;flex-direction:column}
.bro-t b{font-size:14px}.bro-t small{color:var(--muted);font-size:12px}
.bro em{font-style:normal;font-size:12px;color:var(--muted);display:inline-flex;align-items:center;gap:3px}
.bro em svg{width:13px;height:13px;color:#E3A008}
.bro-acts{margin-top:10px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
/* US amounts: the dollar sign sits before the number, and amounts read left to right in every language */
.money .inp{direction:ltr;text-align:left;padding-left:30px;padding-right:14px}
.money .cur{left:14px;right:auto;inset-inline-end:auto;font-weight:600;color:var(--ink)}
/* units other than the dollar sign (sq ft, %, $ / month) sit after the number */
.money:has(.cur.u) .inp{padding-left:14px;padding-right:96px}
.money .cur.u{left:auto;right:14px;font-weight:500;color:var(--muted)}
/* a text in each language, one box under the other */
.tri-f{display:grid;gap:8px;margin-bottom:12px}
.tri-l{display:grid;gap:4px}
.tri-l small{color:var(--muted);font-size:12px}
/* my subscriptions */
.sub-list{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}
.sub-card{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:16px;background:#fff;border:1px solid #DCE5E4}
.sub-card.off{background:#F6F8F8}
.sub-h{display:flex;align-items:center;gap:10px}.sub-h .ri{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#EEF4F2;color:var(--green);flex:none}
.sub-h .ri .i{width:20px;height:20px}.sub-h .rt{display:flex;flex-direction:column;flex:1;min-width:0}.sub-h .rt b{font-size:15px}.sub-h .rt small{font-size:12.5px;color:var(--muted)}
.sub-st{font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;background:#E6F2EC;color:var(--green);white-space:nowrap}
.sub-card.off .sub-st{background:#EEE;color:#6B7678}
.sub-m{margin:0;font-size:13px;color:#4A5F64}
.sub-card .btn.danger{align-self:flex-start;color:#A8322D;border-color:#E3B9B6}

/* likes, dislikes and report */
.vbar{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.vbar .vb{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px solid var(--line2);border-radius:999px;background:var(--surface);color:var(--ink);font-size:14px}
.vbar .vb svg{width:18px;height:18px}
.vbar .vb.on{background:var(--gold-soft);border-color:var(--purple);color:var(--purple)}
.vbar .vb.dn.on{background:#FBE9E7;border-color:var(--red);color:var(--red)}
.vbar .vb.rep{margin-inline-start:auto;color:var(--muted)}
.vbar.sm{margin:8px 0 0}
.vbar.sm .vb{height:30px;padding:0 10px;font-size:13px}
.vbar.sm .vb svg{width:16px;height:16px}
.link-btn.rp-acc{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;margin:0 0 8px;text-decoration:underline}
.link-btn.rp-acc svg{width:16px;height:16px}
.rp-list{display:flex;flex-direction:column;gap:8px}
.rp-opt{display:flex;align-items:center;gap:12px;text-align:start;padding:12px 14px;border:1px solid var(--line2);border-radius:12px;background:var(--surface);font-size:15px}
.rp-opt .rp-dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--line2);flex:none}
.rp-opt.on{border-color:var(--purple);background:var(--gold-soft)}
.rp-opt.on .rp-dot{border:6px solid var(--purple)}
.rp-list textarea{width:100%;min-height:84px}
.rp-list .hint{display:flex;gap:6px;align-items:flex-start;color:var(--muted);font-size:13px}
.rp-list .hint svg{width:16px;height:16px;flex:none;margin-top:2px}
/* stars and reviews */
.stars{display:inline-flex;gap:1px;color:#C9D6D8;vertical-align:middle}
.stars i{display:inline-flex}
.stars i.on{color:#E0A100}
.stars svg{width:18px;height:18px;fill:currentColor;stroke:none}
.stars.sm svg{width:14px;height:14px}
.pc-rate{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:8px}
.pc-rate:hover{background:var(--gold-soft)}
.rv-sum{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.rv-sum strong{font-size:32px;color:var(--purple)}
.rv-sum small{color:var(--muted)}
.rv-form{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;margin-bottom:14px;background:var(--surface)}
.rv-pick{display:flex;gap:4px}
.rv-pick button{color:#C9D6D8;padding:2px}
.rv-pick button svg{width:30px;height:30px;fill:currentColor;stroke:none}
.rv-pick button.on{color:#E0A100}
.rv-form textarea{width:100%}
.rv-form .btn{align-self:flex-start}
.rv-list{display:flex;flex-direction:column;gap:10px}
.rv-item{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.rv-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rv-h small{color:var(--muted);font-size:12px}
.rv-h .icbtn{margin-inline-start:auto;width:30px;height:30px;color:var(--muted)}
.rv-h .icbtn svg{width:16px;height:16px}
.rv-item p{margin-top:6px;font-size:14px;line-height:1.6}
.rv-reply{color:var(--muted)}
/* a company's numbers */
.ins-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}
.ins-tile{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.ins-tile svg{width:20px;height:20px;color:var(--purple)}
.ins-tile b{font-size:24px;color:var(--purple)}
.ins-tile small{color:var(--muted);font-size:13px}
.ins-table-wrap{overflow-x:auto;margin:10px 0 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.ins-table{width:100%;border-collapse:collapse;font-size:14px}
.ins-table th,.ins-table td{padding:10px 12px;text-align:start;border-bottom:1px solid var(--line)}
.ins-table th svg{width:16px;height:16px;color:var(--muted);display:inline-block;vertical-align:middle}
.ins-table td.num,.ins-table th:not(:first-child){text-align:end;white-space:nowrap}
.ins-table tr:last-child td{border-bottom:0}
.ins-table tr.off td{color:var(--muted)}
.ins-rm{display:block;color:var(--red);font-size:12px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* conversations with the Nearbit team */
.sup-list{margin-bottom:6px}
.sup-co{display:flex;align-items:center;gap:4px;color:var(--purple)!important}
.sup-co svg{width:13px;height:13px}
.msg-by{display:block;font-size:12px;color:var(--purple);margin-bottom:2px}
.sup-closed{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px}
.sup-closed svg{width:18px;height:18px;flex:none}
.sup-add{cursor:pointer;color:var(--purple)}
.sup-pics{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}
.sup-pic{position:relative;flex:none;width:64px;height:64px;border-radius:10px;overflow:hidden;border:1px solid var(--line)}
.sup-pic img{width:100%;height:100%;object-fit:cover;display:block}
.sup-pic button{position:absolute;top:2px;inset-inline-end:2px;width:22px;height:22px;border-radius:50%;background:rgba(14,43,51,.75);color:#fff;display:grid;place-items:center}
.sup-pic button svg{width:13px;height:13px}
.msg-pics{display:grid;gap:4px;margin:4px 0 6px;border-radius:12px;overflow:hidden;width:min(100%,320px)}
.msg-pics.n1{grid-template-columns:1fr}
.msg-pics.n2{grid-template-columns:1fr 1fr}
.msg-pics.n3{grid-template-columns:1fr 1fr 1fr}
.msg-pics button{display:block;padding:0;aspect-ratio:1;background:var(--line)}
.msg-pics.n1 button{aspect-ratio:4/3;max-width:280px}
.msg-pics img{width:100%;height:100%;object-fit:cover;display:block}

/* the uploaded logo alone, in the full space (no "Nearbit" word next to it) */
.has-logo .sb-logo>span,.has-logo .auth-logo>span,.has-logo .as-top>b,.has-logo .ch-brand>span{display:none}
.has-logo .onb-brand{font-size:0}
.has-logo .sb-logo{padding:0 8px}
.has-logo .sb-logo .logo-img{width:100%;height:auto;max-height:84px;object-fit:contain;object-position:center;border-radius:0}
.has-logo .ch-brand .logo-img{width:auto;height:30px;max-width:160px;border-radius:0}
.has-logo .as-top .logo-img{width:100%;max-width:260px;height:auto;max-height:64px;object-fit:contain;border-radius:0}
.has-logo .onb-brand .logo-img{width:auto;height:34px;max-width:180px;border-radius:0}
.has-logo .auth-logo{width:100%}
.has-logo .auth-logo .logo-img{width:100%;max-width:320px;height:auto;max-height:120px;object-fit:contain;border-radius:0}

/* the team's preview while the site is under construction */
#uc-bar{position:fixed;inset-inline:0;bottom:0;z-index:9999;background:#E8A33D;color:#fff;font-weight:700;font-size:13px;text-align:center;padding:6px 12px;pointer-events:none}
/* the attestation balance */
.att-bal{display:flex;align-items:center;gap:12px;margin:0 0 14px}
.att-bal>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.att-bal small{color:var(--muted)}
/* a service's own location in the activation sheet */
.svc-loc{margin:14px 0 6px;display:flex;flex-direction:column;gap:8px}
.svc-loc .hint{margin:0;color:var(--muted);font-size:13.5px}
.svcmap{height:220px;border-radius:12px;border:1px solid var(--line);overflow:hidden;background:var(--surface)}
.svc-loc-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
@media (max-width:600px){.svc-loc-grid{grid-template-columns:1fr}}
/* editing a service's own details */
.svc-prof{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.svc-prof .field:last-child{grid-column:1/-1}
@media (max-width:600px){.svc-prof{grid-template-columns:1fr}}
.fee-note.bad{background:#FDECEA;border-color:#F3C5C0;color:#8A2A1F}

/* ============ Nearbit design: tokens, base components ============ */
:root{
 --navy:#143B54;--ink:#102A3A;--green-n:#24B176;--green-d:#178F5A;--green-ink:#0B7046;--mint:#EAF7F1;
 --bg:#F6F8F8;--sub:#3F5562;--bad:#B42318;--bad-bg:#FDECEA;--warn:#A15C07;--warn-bg:#FEF3E2;
 --r:14px;--r2:20px;
 --sh:0 1px 2px rgba(16,42,58,.05),0 4px 16px -6px rgba(16,42,58,.10);
 --sh2:0 18px 48px -18px rgba(16,42,58,.35);
 --purple:#143B54;--gold:#24B176;--gold-soft:#EAF7F1;--paper:#F6F8F8;--line:#E6EBEC;--line2:#D3DCDE;--muted:#6B7C85;--green:#178F5A;--red:#B42318;
}
body{background:var(--bg);font-size:14.5px}
:focus-visible{outline-color:var(--green-n)}
.p-web .showcase{padding:0;height:100%;background:var(--bg)}
.p-web .device{border-radius:0;box-shadow:none;background:var(--bg)}
.wm{display:block;height:24px;width:auto;flex:none}

/* buttons */
.btn{height:44px;border-radius:12px;font-weight:600;font-size:14px;transition:background .15s,border-color .15s}
.btn .i{width:18px;height:18px}
.btn.pri{background:var(--green-n);color:#fff}
.btn.pri:hover{background:var(--green-d)}
.btn.gold{background:var(--navy);color:#fff}
.btn.gold .i{color:var(--green-n)}
.btn.gold:hover{background:var(--ink)}
.btn.ghost{background:var(--surface);border:1px solid var(--line2);color:var(--ink)}
.btn.ghost:hover{background:var(--bg)}
.btn.sm{height:36px;border-radius:10px;font-size:13px;padding:0 13px}
.btn.dark{background:var(--navy);color:#fff}
.btn:disabled{opacity:.5}
.wide .btn,.pw .btn{height:44px;border-radius:12px}
.wide .btn.sm,.pw .btn.sm{height:36px;border-radius:10px}
.p-android .btn{border-radius:12px;height:44px}
.link{color:var(--green-ink);font-weight:600}
.icbtn{border-radius:12px;color:var(--sub)}
.icbtn:hover{background:var(--bg)}
.bdg{background:var(--green-n);color:#fff;font-weight:600}
.aud-tag{background:var(--mint);color:var(--green-ink);font-weight:600;border-radius:999px}
.av{background:var(--navy);color:#fff;border-radius:50%}

/* chips, options, segments */
.chip{height:34px;border-radius:999px;border:1px solid transparent;color:var(--sub);box-shadow:var(--sh);font-size:13px}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink);font-weight:500}
.chip.on .dot{box-shadow:0 0 0 2px #fff}
.chips.flat .chip{border:1px solid var(--line2);box-shadow:none}
.chips.flat .chip.on{border-color:var(--ink)}
.p-android .chip{border-radius:999px;border-color:transparent}
.p-android .chip.on{background:var(--ink);color:#fff}
.opt{border-radius:10px;border:1.5px solid var(--line2);min-height:38px;font-size:13.5px}
.opt.on{border-color:var(--green-n);background:var(--mint);color:var(--green-ink);font-weight:600}
.p-android .opt{border-radius:10px}
.p-android .opt.on{background:var(--mint);color:var(--green-ink);border-color:var(--green-n)}
.seg{background:var(--bg);border-radius:12px;padding:3px;gap:3px}
.seg button{border-radius:10px;font-size:13.5px;color:var(--sub)}
.seg button.on{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 3px rgba(16,42,58,.12)}
.p-android .seg:not(.dark){background:var(--bg);padding:3px;gap:3px;border:0;border-radius:12px}
.p-android .seg:not(.dark) button{border-radius:10px}
.p-android .seg:not(.dark) button+button{border:0}
.p-android .seg:not(.dark) button.on{background:var(--surface)}
.mini-seg{background:var(--bg);border-radius:10px}
.mini-seg button.on{color:var(--ink);font-weight:600;box-shadow:0 1px 3px rgba(16,42,58,.12)}
.sw{width:42px;height:24px;border-radius:12px;background:var(--line2)}
.sw::after{top:3px;inset-inline-start:3px;width:18px;height:18px;box-shadow:0 1px 2px rgba(0,0,0,.2)}
.sw.on,.p-web .sw.on{background:var(--green-n)}
.sw.on::after{inset-inline-start:21px}
.p-android .sw{width:42px;height:24px;border:0;background:var(--line2)}
.p-android .sw::after{width:18px;height:18px;top:3px;inset-inline-start:3px;background:#fff}
.p-android .sw.on{background:var(--green-n)}
.p-android .sw.on::after{width:18px;height:18px;top:3px;inset-inline-start:21px}
.radio.on{border-color:var(--green-n)}
.radio.on::after{background:var(--green-n)}

/* fields */
.field{margin-top:18px}
.flabel{font-size:13px;font-weight:600;color:var(--sub)}
.inp{height:46px;border:1.5px solid var(--line2);border-radius:12px;font-size:14.5px}
.inp:focus{border-color:var(--green-n);box-shadow:none}
textarea.inp{line-height:1.7}
.search{background:var(--bg);border:1.5px solid transparent;border-radius:14px;height:46px}
.search:focus-within{border-color:var(--green-n);background:var(--surface)}
.wide .search{background:var(--bg);border-color:transparent}
.p-android .search{border-radius:14px;height:46px;background:var(--bg)}

/* lists and cards */
.group{border-radius:var(--r);border:1px solid var(--line);margin-top:12px}
.row{min-height:60px;gap:12px}
.row:hover,.wide .row:hover{background:var(--bg)}
.row+.row::before{inset-inline-start:0}
.rt b{font-weight:600;font-size:14.5px}
.ri{border-radius:12px;width:40px;height:40px;background:color-mix(in srgb,var(--fg,var(--navy)) 10%,white);color:var(--fg,var(--navy))}
.ri.lg{border-radius:14px}
.ri.xl{border-radius:16px}
.p-android .group{background:var(--surface);border-radius:var(--r);margin-top:12px}
.p-android .row{padding:11px 14px}
.p-android .ri{border-radius:12px}
.card{border-radius:var(--r);border:1px solid var(--line);box-shadow:none}
.gt{font-size:13px;font-weight:600;color:var(--muted)}
.lt{color:var(--navy)}
.empty>.i{color:var(--line2)}

/* headers */
.hdr{background:var(--surface);border-bottom:1px solid var(--line)}
.hdr.root{border-bottom:0;background:transparent}
.nb-back{color:var(--ink);width:40px;height:40px;border-radius:12px;justify-content:center;padding:0}
.nb-back:hover{background:var(--bg)}
.nb-back .ios-only>span{display:none}
.nb-title{font-weight:600;font-size:15px;color:var(--ink)}
.p-android .nb-back{border-radius:12px}
.p-android .nb-title{font-size:17px;font-weight:600}
.crumbs button{color:var(--green-ink)}
.wide .hdr{background:transparent;border:0;padding:32px 32px 8px;max-width:1080px}
.wide .lt,.wide .hdr.sub .lt{font-size:26px;font-weight:700;color:var(--navy)}
.wide .nb-btn.add{background:var(--green-n);border-radius:12px;height:44px;font-weight:600}
.wide .pad{max-width:1080px;padding:8px 32px 56px}

/* tab bar (phones) */
.tabbar{background:rgba(255,255,255,.96);border-top:1px solid var(--line)}
.tb{color:var(--muted)}
.tb.on{color:var(--green-ink);font-weight:600}
.tb-ai .ic{background:var(--navy);color:var(--green-n);border-radius:12px}
.p-android .tabbar{background:var(--surface);border-top:1px solid var(--line)}
.p-android .tb.on{color:var(--green-ink)}
.p-android .tb.on .ic{background:var(--mint)}
.nbadge{background:var(--green-n)}

/* sheets, dialogs, toast */
.scrim{background:rgba(16,42,58,.4)}
.msheet{background:var(--surface);border-radius:22px 22px 0 0;box-shadow:0 -10px 30px -12px rgba(16,42,58,.3)}
.wide .msheet{border-radius:var(--r2);box-shadow:var(--sh2)}
.ms-h b{font-weight:700;color:var(--navy);font-size:17px}
.wide .ms-save{background:var(--green-n);border-radius:12px}
.toast{background:var(--ink);border-radius:12px;box-shadow:var(--sh2)}
.toast .i,.toast button{color:var(--green-n)}

/* map */
.mapwrap,.leaflet-container{background:#EEF2F0!important}
.leaflet-tile-pane{filter:saturate(.35) brightness(1.03) contrast(.95)}
.pin .mp,.pin .mp-stores{width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:50%;background:var(--surface);color:var(--p2);border:2px solid var(--surface);box-shadow:0 2px 8px rgba(16,42,58,.22);transition:transform .15s}
.pin .mp .mp-in .i{width:17px;height:17px;stroke-width:2}
.pin:hover .mp{transform:scale(1.08)}
.pin .mp.sel{background:var(--p2);color:#fff;transform:scale(1.15);box-shadow:0 0 0 6px color-mix(in srgb,var(--p2) 18%,transparent),0 4px 12px rgba(16,42,58,.3)}
.pin .mp-bd{display:none}
.pin .pin-b{top:1px;right:1px;width:12px;height:12px;border:2px solid #fff;background:var(--green-n);box-shadow:none}
.pin .pin-b .i{display:none}
.pin .pin-b.pin-j{background:#B45309;right:auto;left:1px}
.pin .pin-l{background:var(--ink);font-weight:600;border-radius:8px;box-shadow:var(--sh)}
.pin .pin-l em{color:var(--green-n)}
.chip-pin{border-radius:50%;background:none;color:var(--p2)}
.chip-pin .i{stroke-width:2!important}
.locate{border-radius:12px;box-shadow:var(--sh);color:var(--sub)}

/* explore on phones: floating search and sheet like the design */
.searchbar{border-radius:14px;box-shadow:var(--sh);height:50px}
.searchbar .avatar{background:var(--navy);color:#fff;border-radius:50%}
.ex-sheet{border-radius:22px 22px 0 0;box-shadow:0 -10px 30px -12px rgba(16,42,58,.3)}
.grab i{background:var(--line2)}
.qt .sq{border-radius:14px;background:color-mix(in srgb,var(--fg,var(--navy)) 10%,white);color:var(--fg,var(--navy))}
.qt .sq.all{background:var(--navy);color:#fff}

/* ============ AI window: light, centred ============ */
.ai{background:var(--surface);color:var(--ink);padding:18px 18px 22px}
.ai .contours{display:none}
.wide .ai,.pw .ai{width:min(760px,calc(100% - 48px));height:min(780px,calc(100% - 48px));border-radius:26px;box-shadow:0 40px 90px -30px rgba(16,42,58,.6);padding:0}
.ai-top{padding:14px 16px;border-bottom:1px solid var(--line);flex:none}
.ai-top .icbtn.light{background:var(--bg);color:var(--sub);order:2}
.ai-name{font-weight:600;font-size:15px;color:var(--ink)}
.ai-name .logo{display:none}
.ai-name::before{content:"";width:34px;height:34px;border-radius:50%;flex:none;background:radial-gradient(circle at 30% 25%,#24597A,var(--navy) 55%,var(--ink))}
.ai .aud-tag.light{background:var(--mint);color:var(--green-ink)}
.ai-in{background:var(--surface);border:1.5px solid var(--line2);border-radius:18px;margin:14px 18px 0;padding:6px;padding-inline-start:14px}
.ai-in:focus-within{border-color:var(--green-n);box-shadow:0 0 0 4px rgba(36,177,118,.12)}
.ai-in input{color:var(--ink)}
.ai-in input::placeholder{color:#8C9AA2}
.ai-send,.ai-mic{border-radius:13px}
.ai-send{background:var(--green-n);color:#fff}
.ai-mic{background:var(--bg);color:var(--navy)}
.ai2 .ai-mic.on{background:var(--green-n);color:#fff;box-shadow:0 0 0 6px rgba(36,177,118,.2)}
.ai-mid{padding:0 18px}
.ai-st{color:var(--muted)}
.ai-big{background:radial-gradient(circle at 30% 25%,#24597A,var(--navy) 55%,var(--ink));color:var(--green-n);box-shadow:0 0 0 10px rgba(36,177,118,.10),0 0 0 22px rgba(36,177,118,.05)}
.ai-sugs{padding:10px 18px 0}
.ai-chip{border:1px solid var(--line);color:var(--sub);border-radius:14px;background:var(--surface)}
.ai-chip:hover{border-color:var(--green-n);color:var(--ink);background:var(--surface)}
.ai .bub{border-radius:18px;line-height:1.75}
.ai .bub.me{background:var(--navy);color:#fff}
.ai .bub.bot{background:var(--bg);color:var(--ink)}
.ai-card{border:1px solid var(--line)}
.ai-card:hover{border-color:var(--green-n);background:var(--surface)}
.ai-fb{background:var(--mint);border-color:#9ED8BC;color:var(--ink)}
.ai-fb span{color:var(--sub)}
.ai-orb{background:radial-gradient(circle at 30% 25%,#24597A,var(--navy) 55%,var(--ink))}
.ai-orb i{background:var(--green-n)}

/* ============ individuals on a wide screen: full map and one floating panel ============ */
.pw .device{flex-direction:row}
.pw .stage .mapwrap{visibility:visible!important}
.pw #screen,.pw #screen.map-mode,.pw #screen.solid{position:absolute;inset:auto;top:16px;bottom:16px;inset-inline-start:16px;width:420px;background:var(--surface);border-radius:var(--r2);box-shadow:var(--sh2);overflow:hidden;pointer-events:auto;display:flex;flex-direction:column;z-index:10}
.pw #screen>.scroll,.pw #screen .scroll{scrollbar-width:thin;scrollbar-color:var(--line2) transparent}
.pw #screen.pw-form{top:50%;left:50%;right:auto;bottom:auto;inset-inline-start:auto;transform:translate(-50%,-50%);width:min(640px,calc(100% - 48px));height:min(860px,calc(100% - 48px));z-index:12}
[dir=rtl] .pw #screen.pw-form{left:auto;right:50%;transform:translate(50%,-50%)}
.pw .stage.pw-dim::after{content:"";position:absolute;inset:0;background:rgba(16,42,58,.4);z-index:11;animation:fade .2s}
.pw #screen .hdr.root{display:none}
.pw #screen .hdr{position:sticky;top:0;z-index:3}
.pw #screen .lt{display:none}
.pw #screen .crumbs{display:none}

.p-top{padding:18px 18px 12px;display:flex;flex-direction:column;gap:12px;border-bottom:1px solid var(--line);flex:none;background:var(--surface)}
.p-brand{display:flex;align-items:center;justify-content:space-between;gap:10px}
.p-brand>button:first-child{display:flex}
.p-brand .p-ic{display:flex;gap:4px}
.srch{display:flex;align-items:center;gap:8px;height:48px;border-radius:14px;background:var(--bg);padding:0 6px;padding-inline-start:14px;border:1.5px solid transparent;width:100%;color:#8C9AA2;font-size:14.5px;text-align:start}
.srch:hover{border-color:var(--line2)}
.srch>.i{color:var(--muted);width:18px;height:18px}
.srch>span:not(.ai-btn){flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ai-btn{height:36px;padding:0 12px;border-radius:10px;background:var(--navy);color:#fff;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;flex:none}
.ai-btn .i{width:16px;height:16px;color:var(--green-n)}
.p-body{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line2) transparent}
.ask-row{display:flex;align-items:center;gap:12px;margin:12px 18px 4px;padding:12px 14px;border-radius:14px;background:var(--bg);width:calc(100% - 36px);text-align:start}
.ask-row:hover{background:var(--mint)}
.ask-row .s{width:36px;height:36px;border-radius:10px;background:var(--navy);color:var(--green-n);display:grid;place-items:center;flex:none}
.ask-row .s .i{width:18px;height:18px}
.ask-row b{display:block;font-size:13.5px;font-weight:600}
.ask-row small{color:var(--muted);font-size:12.5px}
.p-secs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px 18px 4px}
.p-secs button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-radius:14px;font-size:12px;color:var(--sub);text-align:center;line-height:1.35;position:relative}
.p-secs button:hover{background:var(--bg)}
.p-secs .sq{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--fg,var(--navy)) 10%,white);color:var(--fg,var(--navy))}
.p-secs .sq .i{width:20px;height:20px}
.p-secs .bdg{position:absolute;top:4px;inset-inline-end:10px;min-width:18px;height:18px;font-size:10.5px}
.lh{display:flex;justify-content:space-between;align-items:center;padding:14px 18px 6px;font-size:13px;color:var(--muted)}
.lh b{font-weight:600;color:var(--ink)}
.res{display:flex;align-items:center;gap:12px;width:100%;padding:12px 18px;border-bottom:1px solid var(--line);text-align:start}
.res:hover{background:var(--bg)}
.res.on{background:var(--mint)}
.res-i{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex:none;background:color-mix(in srgb,var(--pc) 10%,white);color:var(--pc)}
.res-b{flex:1;min-width:0}
.res-b b{display:block;font-weight:600;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.res-b small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.res-e{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex:none;font-size:12px;color:var(--muted)}
.tag{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;font-style:normal}
.tag.g{background:var(--mint);color:var(--green-ink)}
.tag.n{background:#EEF2F3;color:var(--sub)}
.d-head{display:flex;align-items:center;gap:6px;padding:10px;padding-inline-end:18px;border-bottom:1px solid var(--line);flex:none}
.d-head b{flex:1;font-weight:600;font-size:14px}
.ib{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;flex:none;color:var(--sub)}
.ib:hover{background:var(--bg)}
.p-pin{padding:16px 18px}
.p-pin .pin-card{position:static;width:auto;max-height:none;box-shadow:none;border:0;padding:0;animation:none}
.pw .ai-filter{margin:12px 18px 0}

.pw-chrome{position:absolute;inset:0;z-index:8;pointer-events:none}
.pw-chrome>*{pointer-events:auto}
.map-chips{position:absolute;top:16px;inset-inline-start:468px;inset-inline-end:76px;display:flex}
.map-chips .chips{background:var(--surface);border-radius:999px;padding:5px;box-shadow:var(--sh);gap:4px;max-width:100%;margin:0;flex-wrap:nowrap}
.map-chips .chip{border:0;height:36px;padding:0 15px;box-shadow:none}
.map-chips .chip.on{background:var(--ink)}
.acct{position:absolute;top:16px;inset-inline-end:16px}
.ava{width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:600;font-size:14px;box-shadow:var(--sh);flex:none;position:relative}
.ava em{position:absolute;top:-2px;inset-inline-end:-2px;width:12px;height:12px;border-radius:50%;background:var(--green-n);border:2px solid #fff}
.map-ctl{position:absolute;display:flex;flex-direction:column;gap:8px;bottom:24px;inset-inline-end:16px}
.map-ctl button{width:44px;height:44px;border-radius:12px;background:var(--surface);box-shadow:var(--sh);display:grid;place-items:center;color:var(--sub);position:relative}
.map-ctl em{position:absolute;top:-5px;inset-inline-end:-5px;min-width:18px;height:18px;border-radius:9px;background:var(--green-n);color:#fff;font-size:10.5px;font-style:normal;font-weight:600;display:grid;place-items:center;padding:0 4px}
.clickaway{position:absolute;inset:0}
.menu{position:absolute;top:64px;inset-inline-end:16px;width:270px;background:var(--surface);border-radius:var(--r2);box-shadow:var(--sh2);padding:8px;display:flex;flex-direction:column;animation:fade .15s;max-height:calc(100% - 80px);overflow-y:auto}
.menu-h{padding:10px 10px 12px;border-bottom:1px solid var(--line);margin-bottom:6px}
.menu-h b{display:block;font-weight:600}
.menu-h small{color:var(--muted);font-size:12.5px}
.menu button{display:flex;align-items:center;gap:10px;height:42px;padding:0 10px;border-radius:10px;font-size:14px;width:100%;text-align:start;flex:none}
.menu button:hover{background:var(--bg)}
.menu button .i{width:18px;height:18px;color:var(--muted)}
.menu button em{margin-inline-start:auto;font-style:normal;font-size:11.5px;font-weight:600;background:var(--green-n);color:#fff;min-width:20px;height:20px;border-radius:10px;display:grid;place-items:center;padding:0 6px}
.menu hr{border:0;border-top:1px solid var(--line);margin:6px 0}
.menu .dg,.menu .dg .i{color:var(--bad)}
.menu .m-langs{display:flex;gap:4px;padding:4px 6px}
.menu .m-langs button{flex:1;justify-content:center;height:34px;border:1px solid var(--line2);font-size:13px}
.menu .m-langs button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.pw .leaflet-control-attribution{margin-inline:452px!important}

/* overlays on the personal map */
.pw .msheet{left:50%;top:50%;bottom:auto;right:auto;width:580px;max-height:86%;border-radius:var(--r2);transform:translate(-50%,-50%);animation:fade .2s;box-shadow:var(--sh2)}
.pw .grab-s{display:none}
.pw .ms-h{padding:18px 20px 6px}
.pw .ms-h b{text-align:start;font-size:18px;order:-1}
.pw .ms-save{background:var(--green-n);color:#fff;padding:0 18px;border-radius:12px}
.pw .ms-body{padding:0 20px 24px}
.pw .msheet.ms-poffers{width:640px;height:auto;max-height:90%}
.pw .msheet.ms-pstore{width:880px;height:auto;max-height:92%}
.pw .mb.store-grid{grid-template-columns:1fr 1fr}
.pw .mf{padding-bottom:14px}
.pw .msheet.ms-pjobs{width:680px;height:auto;max-height:90%}
.pw .msheet.ms-pjob{width:760px;height:auto;max-height:92%}
.pw .msheet.ms-japply{width:560px;height:auto;max-height:90%}
.pw .msheet.ms-attplan{width:560px}
.pw .ai{inset:auto;left:50%;top:50%;transform:translate(-50%,-50%)}
.pw .toast{left:50%;right:auto;bottom:24px;transform:translateX(-50%);width:auto;min-width:320px;max-width:520px}
.pw .dlg{max-width:440px}

/* ============ companies on a wide screen: quiet sidebar, no top bar ============ */
.bw .topbar{display:none!important}
.bw .sidebar{width:260px;gap:20px;padding:20px 14px 14px;background:var(--surface);border-inline-end:1px solid var(--line)}
.bw .stage,.bw #screen.solid{background:var(--bg)}
.side-wm{display:flex;align-items:center;justify-content:space-between;padding:0 8px}
.side-wm .wm{height:26px}
.side-co{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;background:var(--bg);width:100%;text-align:start}
.side-co:hover{background:var(--mint)}
.side-co .av{width:36px;height:36px;border-radius:10px;font-size:13px;overflow:hidden}
.side-co .av img{width:100%;height:100%;object-fit:cover}
.side-co b{display:block;font-size:13px;font-weight:600;line-height:1.4;color:var(--ink)}
.side-co small{color:var(--muted);font-size:11.5px}
.side-ask{display:flex;align-items:center;gap:8px;height:42px;border-radius:12px;background:var(--bg);padding:0 12px;color:#8C9AA2;font-size:13.5px;width:100%;text-align:start}
.side-ask span{flex:1}
.side-ask:hover{background:var(--mint)}
.side-ask .i{width:17px;height:17px}
.side-ask .s{color:var(--green-n)}
.bw .sb-nav,.bw .tree{gap:2px}
.bw .sb-nav button,.bw .tr-h{height:42px;padding:0 12px;border-radius:10px;color:var(--sub);font-size:14px;gap:11px}
.bw .sb-nav button:hover,.bw .tr-h:hover{background:var(--bg)}
.bw .sb-nav button.on,.bw .tr-h.on,.bw .tr.open>.tr-h{background:var(--mint);color:var(--green-ink);font-weight:600}
.bw .sb-nav .i,.bw .tr-ic .i{width:19px;height:19px;color:var(--muted)}
.bw .sb-nav button.on .i,.bw .tr-h.on .i,.bw .tr.open>.tr-h .tr-ic .i{color:var(--green-ink)}
.bw .tr-ic{width:auto;height:auto;background:none!important;color:inherit}
.bw .sb-nav .bdg,.bw .tr-h .bdg{background:var(--green-n);color:#fff;font-size:11.5px;height:20px;min-width:20px}
.bw .sb-sec{border-top:0;padding-top:0;gap:2px}
.bw .tr-items{padding-inline-start:42px;padding-block:2px 6px}
.bw .tr-items button{min-height:36px;color:var(--muted);font-size:13.5px}
.bw .tr-items button:hover{background:var(--bg);color:var(--ink)}
.bw .tr-items button.on{color:var(--green-ink);font-weight:600}
.snav-cap{font-size:11.5px;color:var(--muted);padding:0 12px;margin-top:6px}
.side-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:12px;display:flex;flex-direction:column;gap:2px}
.side-foot button{display:flex;align-items:center;gap:11px;height:42px;padding:0 12px;border-radius:10px;color:var(--sub);font-size:14px;width:100%;text-align:start}
.side-foot button:hover{background:var(--bg)}
.side-foot button .i{width:19px;height:19px;color:var(--muted)}
.side-foot button em{margin-inline-start:auto;font-style:normal;font-size:11.5px;font-weight:600;background:var(--green-n);color:#fff;min-width:20px;height:20px;border-radius:10px;display:grid;place-items:center;padding:0 6px}
.side-foot .dg,.side-foot .dg .i{color:var(--bad)}
.side-foot .f-langs{display:flex;gap:4px;padding:2px 8px 6px}
.side-foot .f-langs button{flex:1;justify-content:center;height:32px;border:1px solid var(--line2);font-size:12.5px;padding:0}
.side-foot .f-langs button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.bw .sb-me{display:none}
.bw .hdr{padding:32px 32px 12px}
.bw .dtile,.bw .tile{border:1px solid var(--line);border-radius:var(--r);box-shadow:none}
.bw .dtile:hover,.bw .tile:hover{border-color:var(--green-n)}

/* ============ landing ============ */
.land{height:100%;overflow-y:auto;display:flex;flex-direction:column;background:var(--bg);width:100%}
.land-top{display:flex;align-items:center;justify-content:space-between;padding:20px 24px}
.land-top .wm{height:28px}
.land-langs{display:flex;gap:6px}
.lang{height:38px;padding:0 14px;border-radius:10px;border:1px solid var(--line2);font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:6px;background:var(--surface);color:var(--sub)}
.lang.on{background:var(--ink);border-color:var(--ink);color:#fff}
.land-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 20px 48px;gap:28px}
.land h1{font-size:34px;font-weight:700;text-align:center;line-height:1.3;color:var(--navy);text-wrap:balance}
.land h1 i{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--green-n);margin-inline-start:4px}
.land .lead{color:var(--muted);text-align:center;max-width:44ch;line-height:1.8;margin:-14px auto 0;font-size:14.5px}
.choices{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;max-width:760px}
.choice{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r2);padding:24px;display:flex;flex-direction:column;gap:14px;text-align:start;transition:border-color .15s,box-shadow .15s}
.choice:hover{border-color:var(--green-n);box-shadow:var(--sh)}
.choice .ci{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:var(--mint);color:var(--green-ink)}
.choice.biz .ci{background:#E6F0F5;color:var(--navy)}
.choice .ci .i{width:26px;height:26px}
.choice>b{font-size:20px;font-weight:700;color:var(--navy)}
.choice p{color:var(--muted);line-height:1.7;font-size:14px}
.choice ul{list-style:none;display:flex;flex-direction:column;gap:8px;font-size:13.5px;color:var(--sub)}
.choice li{display:flex;gap:8px;align-items:center}
.choice li .i{width:16px;height:16px;color:var(--green-n)}
.choice .go{margin-top:auto;display:flex;align-items:center;gap:6px;font-weight:600;color:var(--green-ink);font-size:14px}
.choice .go .i{width:16px;height:16px}
.land-foot{text-align:center;color:var(--muted);font-size:12px;padding:0 0 20px}
@media (max-width:640px){.choices{grid-template-columns:1fr}.land h1{font-size:26px}.land-top{padding:16px}}

/* ============ sign in ============ */
.wide .auth{grid-template-columns:minmax(0,1fr)!important;background:var(--bg)}
.wide .auth-side{display:none!important}
.auth{background:var(--bg)}
.auth-main{display:flex;flex-direction:column;align-items:center}
.wide .auth-main{padding:18px 24px 40px}
.auth-bar{width:100%;max-width:480px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.auth-back{display:inline-flex;align-items:center;gap:4px;height:38px;padding:0 12px;border-radius:10px;color:var(--sub);font-size:13.5px;font-weight:600}
.auth-back:hover{background:var(--surface)}
.auth-back .i{width:16px;height:16px}
.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r2);padding:28px;width:100%;max-width:480px;box-shadow:var(--sh)}
.auth-card h1{color:var(--navy)}
.auth-logo .wm{height:30px;margin:0 auto 6px}
.auth-btn{width:100%}
.auth-link{color:var(--green-ink)}
.auth-foot button{color:var(--green-ink)}

/* ============ company dashboard: white cards like the design ============ */
.co-hero{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--r2)}
.co-hero .contours{display:none}
.co-hero h2{color:var(--navy);font-weight:700}
.co-logo{background:var(--navy);color:#fff;border-radius:14px}
.co-sw{background:var(--bg);color:var(--ink);border:1px solid var(--line2)}
.co-add{background:var(--green-n);color:#fff}
.co-add:hover{background:var(--green-d)}
.co-tags span{background:var(--bg);color:var(--sub)}
.co-tags .vt,.co-tags .vt.pend{background:var(--mint);color:var(--green-ink);font-weight:600}
.co-stats{border-top:1px solid var(--line)}
.co-stats div+div{border-inline-start:1px solid var(--line)}
.co-stats b{color:var(--navy);font-size:24px;font-weight:700}
.co-stats small{color:var(--muted)}
.svc-cta.btn.gold{background:var(--surface);color:var(--green-ink);border:1.5px dashed #9ED8BC;box-shadow:none}
.svc-cta.btn.gold:hover{background:var(--mint)}
.card .group{border:0;margin-top:6px}
.set-h{color:var(--navy)}
.dtile{border-radius:var(--r);border:1px solid var(--line)}
.dash-alert{background:var(--mint);color:var(--green-ink);border-radius:12px}

/* ============ phones: list sheet over the map like the design ============ */
.m-sheet{position:absolute;inset-inline:0;bottom:0;height:44%;background:var(--surface);border-radius:22px 22px 0 0;box-shadow:0 -10px 30px -12px rgba(16,42,58,.3);display:flex;flex-direction:column;transition:height .3s cubic-bezier(.2,.8,.2,1);z-index:3}
.m-sheet.full{height:calc(100% - 112px)}
.handle{flex:none;height:22px;display:grid;place-items:center;width:100%}
.handle i{width:40px;height:5px;border-radius:3px;background:var(--line2)}
.ex.has-ms .locate{bottom:calc(44% + 12px)}
.ex.has-ms.ms-full .locate{display:none}
.m-sheet .p-secs{grid-template-columns:repeat(4,1fr)}
.searchbar .ai-btn{margin-inline-end:2px}
button.ai-big,button.ai-big:hover{background:radial-gradient(circle at 30% 25%,#24597A,var(--navy) 55%,var(--ink))!important;border:0;box-shadow:0 0 0 10px rgba(36,177,118,.10),0 0 0 22px rgba(36,177,118,.05)}
button.ai-big .i{color:var(--green-n)}
button.ai-big small{color:#fff}
button.ai-big::after{border-color:rgba(36,177,118,.4)}
.ai-talk{background:var(--mint);color:var(--green-ink)}
.ai-talk.idle{background:none}
.ai .ai-st{color:var(--sub)}

/* window headers and profile card: light like the design */
.mh{background:var(--surface);color:var(--ink);border-bottom:1px solid var(--line)}
.mh-ic{background:var(--mint);color:var(--green-ink)}
.mh b{color:var(--navy);font-weight:700}
.mh small{color:var(--muted)}
.mh .icbtn{background:var(--bg);color:var(--sub)}
.mh .jlogo{border-color:var(--line)}
.vbadge{background:var(--mint);color:var(--green-ink);border-radius:999px}
.mbanner{background:var(--bg);color:var(--sub)}
.prof{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--r2)}
.prof .contours{display:none}
.prof h2{color:var(--navy);font-weight:700}
.prof p{color:var(--muted)}
.prof .icbtn.light{background:var(--bg);color:var(--sub)}
.sec-hero{border-radius:var(--r2)}
/* phones: sectors scroll sideways inside the list sheet */
.m-sheet .p-secs{display:flex;overflow-x:auto;scrollbar-width:none;gap:4px;padding:10px 12px 2px}
.m-sheet .p-secs::-webkit-scrollbar{display:none}
.m-sheet .p-secs button{flex:none;width:76px}
.sc{border:1px solid var(--line);border-radius:var(--r);box-shadow:none}
.sc:hover{border-color:var(--line2)}
.pill{background:var(--mint);color:var(--green-ink);border-radius:999px;font-weight:500}
.qk{border:1px solid var(--line);border-radius:12px}
