:root{--blue:#1757D1;--blue2:#1452C8;--navy:#0B3A8C;--deep:#0D3F9E;--yellow:#FFC727;--bg:#F3F6FB;--ink:#10213F;--muted:#4A5672;--line:#E3E8F2;--tint:#E7EFFD;--green:#1F9D63}
*{box-sizing:border-box}
html,body{margin:0;background:#DDE5F2;font-family:Inter,system-ui,sans-serif;color:var(--ink);-webkit-tap-highlight-color:transparent}
a{color:var(--blue);text-decoration:none}
button{font-family:inherit;cursor:pointer}
#app{min-height:100vh}
.phone{max-width:480px;margin:0 auto;min-height:100vh;background:var(--bg);display:flex;flex-direction:column;position:relative;box-shadow:0 0 40px rgba(16,33,63,.12)}
.scroll{flex:1;padding-bottom:96px}
.demo{position:fixed;bottom:86px;right:calc(50% - 232px);z-index:50;font-size:9px;font-weight:700;background:#FFE7D3;color:#7A3410;padding:3px 8px;border-radius:999px;pointer-events:none;opacity:.92}

/* HOME HERO */
.hero{position:relative;background:#0B3A8C;padding:16px 16px 0;overflow:hidden}
.hero .photo{position:absolute;right:-56px;top:0;height:290px;width:auto;filter:saturate(1.08) contrast(1.06)}
.hero .tint{position:absolute;inset:0;background:rgba(30,90,210,.32);mix-blend-mode:multiply}
.hero .ov1{position:absolute;inset:0;background:linear-gradient(90deg,#0B3A8C 0%,#0B3A8C 36%,rgba(11,58,140,.75) 46%,rgba(11,58,140,.15) 60%,rgba(11,58,140,0) 70%)}
.hero .ov2{position:absolute;left:0;right:0;top:0;height:70px;background:linear-gradient(180deg,rgba(6,24,60,.35),rgba(6,24,60,0))}
.hero .ov3{position:absolute;left:0;right:0;top:244px;bottom:0;background:linear-gradient(180deg,rgba(243,246,251,0) 0%,rgba(243,246,251,.85) 55%,#F3F6FB 100%)}
.hero>*:not(img):not(.ov){position:relative}
.toprow{display:flex;justify-content:space-between;align-items:center}
.city{display:flex;align-items:center;gap:5px;background:rgba(255,255,255,.1);color:rgba(255,255,255,.92);padding:6px 10px 6px 8px;border-radius:999px;font-size:12px;font-weight:500;backdrop-filter:blur(4px)}
.iconbtn{position:relative;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#fff;background:none;border:0}
.dot{position:absolute;top:9px;right:10px;width:8px;height:8px;border-radius:50%;background:#FF3B30}
.brand{margin-top:22px}
.brand .mt{display:block;margin:0 0 -4px 14px}
.logo{font-family:Poppins,Inter,sans-serif;font-style:italic;font-weight:800;font-size:50px;line-height:1;color:#fff;letter-spacing:-1px}
.logo b{color:var(--yellow);font-weight:800}
.swoosh{display:block;width:120px;height:4px;border-radius:2px;background:var(--yellow);margin:2px 0 0 40px}
.tag{display:block;font-size:16px;color:#fff;margin-top:8px}
.search{display:flex;align-items:center;gap:12px;background:#fff;color:#5A6680;border-radius:999px;padding:14px 18px;font-size:15px;margin:58px 0 14px;box-shadow:0 6px 18px rgba(11,58,140,.18);border:0;width:100%;text-align:left}
.search span{border-left:1px solid #DCE3F0;padding-left:12px}

.sect{padding:4px 14px 0;display:flex;flex-direction:column;gap:10px}
.banner{position:relative;min-height:142px;border-radius:20px;background:var(--blue2);padding:14px 16px;display:flex;flex-direction:column;gap:4px;overflow:hidden;color:#fff}
.banner img{position:absolute;right:0;top:0;height:100%;width:auto}
.banner .fade{position:absolute;top:0;bottom:0;right:126px;width:70px;background:linear-gradient(90deg,#1452C8,rgba(20,82,200,0))}
.banner>*:not(img):not(.fade){position:relative;z-index:1}
.banner strong{font-size:21px;line-height:1.05;font-weight:800}
.banner strong em{font-style:normal;color:var(--yellow)}
.banner p{margin:0;font-size:11px;color:#E3ECFF;line-height:1.3;width:165px}
.pill{align-self:flex-start;margin-top:4px;background:var(--yellow);color:var(--ink);font-size:12px;font-weight:800;padding:7px 13px;border-radius:999px;border:0}
.dots{display:flex;justify-content:center;gap:6px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.tile{background:#fff;border-radius:15px;padding:10px 9px;display:flex;gap:9px;align-items:center;color:var(--ink);box-shadow:0 2px 8px rgba(16,33,63,.07);border:0;text-align:left;width:100%}
.tile .ic{width:40px;height:40px;border-radius:11px;background:var(--blue);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tile strong{display:block;font-size:14px}
.tile small{display:block;font-size:10.5px;color:var(--muted);line-height:1.25}
.tile .tx{flex:1;min-width:0}
.soon{font-size:9px;font-weight:800;background:#FFF1CC;color:#7A5200;padding:1px 5px;border-radius:4px;margin-left:4px;vertical-align:middle}

/* NAV */
.nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:480px;background:#fff;border-top:1px solid var(--line);display:flex;justify-content:space-around;align-items:center;padding:8px 4px calc(12px + env(safe-area-inset-bottom));z-index:20}
.nav a{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:12px;color:#5A6680;min-width:60px}
.nav a.on{color:var(--blue);font-weight:700}
.nav .plus{width:64px;height:34px;border-radius:999px;background:var(--blue);display:flex;align-items:center;justify-content:center}
.nav a.add{color:var(--deep);font-weight:700}

/* GENERIC SCREENS */
.bar{background:#fff;padding:10px 12px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.bar h1{font-size:18px;margin:0;flex:1;text-align:center;margin-right:44px}
.bar .sub{font-size:12px;color:var(--muted);font-weight:500}
.back{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--ink);background:none;border:0}
.pad{padding:14px;display:flex;flex-direction:column;gap:12px}
.field{height:48px;border:1px solid #D5DCEA;border-radius:12px;padding:0 14px;font-size:16px;font-family:inherit;width:100%;background:#fff;color:var(--ink)}
textarea.field{height:auto;padding:12px;resize:none}
.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
.chip{min-height:38px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:600;background:#fff;color:var(--ink);border:1px solid #D5DCEA;white-space:nowrap}
.chip.on{background:var(--blue);color:#fff;border-color:var(--blue)}
.card{background:#fff;border-radius:16px;padding:14px;box-shadow:0 2px 8px rgba(16,33,63,.06)}
.label{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.4px}
.btn{height:52px;border:0;border-radius:14px;background:var(--blue);color:#fff;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;width:100%}
.btn.ghost{background:#fff;color:var(--blue);border:2px solid var(--blue)}
.row{display:flex;gap:10px;align-items:center}
.av{width:50px;height:50px;border-radius:50%;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.badge{font-size:11px;font-weight:700;padding:4px 9px;border-radius:999px;background:var(--tint);color:var(--deep)}
.badge.y{background:#FFF1CC;color:#7A5200}
.badge.g{background:#E3F6EC;color:#11713F}
.muted{color:var(--muted);font-size:13px}
.list a.item{display:flex;justify-content:space-between;align-items:center;padding:15px;color:var(--ink);border-bottom:1px solid #EEF1F6;font-size:15px}
.stat{background:#fff;border-radius:14px;padding:10px;display:flex;flex-direction:column;align-items:center}
.stat strong{font-size:18px}
.stat span{font-size:11px;color:var(--muted);text-align:center}
.ph{height:90px;border-radius:12px;display:flex;align-items:flex-end;padding:6px;font-size:10px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#3E4943;line-height:1.4}
.check input{width:20px;height:20px;margin:0;accent-color:var(--blue);flex-shrink:0}
.steps i{flex:1;height:6px;border-radius:3px;background:var(--line);display:block}
.steps i.on{background:var(--blue)}
.tl div{display:flex;gap:10px;align-items:center;font-size:14px}
.tl .b{width:12px;height:12px;border-radius:50%;background:var(--blue)}
.tl .o{width:12px;height:12px;border-radius:50%;border:2px solid #B8C9EA}

/* MAP */
.map{position:relative;height:calc(100vh - 128px);min-height:560px;background:#EEF1EC;overflow:hidden}
.map svg.bg{position:absolute;inset:0;width:100%;height:100%}
.pin{position:absolute;width:36px;height:36px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);border:3px solid #fff;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:0 3px 8px rgba(0,0,0,.25)}
.pin svg{transform:rotate(45deg)}
.pin.sel{outline:3px solid var(--yellow)}
.mapcard{position:absolute;left:14px;right:14px;bottom:100px;background:#fff;border-radius:16px;padding:12px;display:flex;gap:12px;align-items:center;color:var(--ink);box-shadow:0 8px 24px rgba(16,33,63,.18)}
.filtrar{position:absolute;left:50%;transform:translateX(-50%);bottom:30px;height:50px;padding:0 28px;border:0;border-radius:16px;background:var(--blue);color:#fff;font-size:17px;font-weight:700;display:flex;align-items:center;gap:10px;box-shadow:0 8px 20px rgba(23,87,209,.35)}

/* DASHBOARD (desktop) */
.dash{display:flex;flex-wrap:wrap;min-height:100vh;background:var(--bg)}
.side{flex:1 1 250px;background:linear-gradient(180deg,#0B3A8C,#0D2F6E);color:#fff;padding:22px 14px 20px;display:flex;flex-direction:column;gap:4px}
.side .mi{height:44px;border:0;border-radius:12px;font-size:15px;display:flex;align-items:center;gap:12px;padding:0 12px;background:transparent;color:#E3ECFF;width:100%;text-align:left}
.side .mi.on{background:var(--blue);color:#fff;font-weight:700}
.side .mi .n{margin-left:auto;min-width:22px;height:22px;border-radius:11px;background:var(--blue);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.dmain{flex:999 1 640px;min-width:0;display:flex;flex-direction:column}
.dtop{background:#fff;padding:12px 24px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--line)}
.dbody{padding:20px 24px 40px;display:flex;flex-wrap:wrap;gap:18px}
.dcol{flex:999 1 620px;min-width:0;display:flex;flex-direction:column;gap:16px}
.daside{flex:1 1 290px;min-width:0;display:flex;flex-direction:column;gap:16px}
.kgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.kpi{border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:4px}
.kpi .ki{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:4px}
.box{background:#fff;border-radius:16px;padding:18px}
.box h2{margin:0 0 10px;font-size:16px;display:flex;align-items:center;gap:8px}
.lrow{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #EEF1F6}
.seg{display:flex;border:1px solid #D5DCEA;border-radius:10px;overflow:hidden}
.seg button{height:36px;padding:0 12px;border:0;font-size:13px;background:#fff;color:var(--muted)}
.seg button.on{background:var(--tint);color:var(--deep);font-weight:700}
.mods{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.mod{background:#fff;border-radius:14px;padding:12px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);color:var(--ink)}
.cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.cand{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px}
.sbtn{height:38px;border-radius:10px;font-size:13px;font-weight:700;background:var(--tint);color:var(--deep);border:1px solid #C9DAF8}
.sbtn.done{background:#E3F6EC;color:#11713F;border-color:#BFE6CF}
.qa{height:44px;border:1px solid #D5DCEA;border-radius:10px;background:#fff;font-size:14px;text-align:left;padding:0 14px;display:flex;align-items:center;gap:10px;color:var(--ink);width:100%}
#toast{position:fixed;left:50%;bottom:110px;transform:translateX(-50%) translateY(20px);background:#10213F;color:#fff;padding:12px 18px;border-radius:12px;font-size:14px;opacity:0;transition:.25s;pointer-events:none;z-index:60;max-width:90vw;text-align:center}
#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media (max-width:700px){.dbody{padding:14px}.dtop{padding:10px 14px}}
@media (max-width:480px){.demo{right:8px}}
.nav .btn{color:#fff;flex-direction:row}.nav .btn.ghost{color:var(--blue)}
.kgrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}

.ticker{display:flex;align-items:center;gap:8px;margin:2px 14px 10px;background:#fff;border-radius:12px;height:34px;overflow:hidden;box-shadow:0 2px 8px rgba(16,33,63,.06)}
.ticker b{display:flex;align-items:center;gap:4px;background:var(--blue);color:#fff;font-size:10px;letter-spacing:.5px;height:100%;padding:0 10px;flex-shrink:0}
.tkwrap{overflow:hidden;flex:1;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.tk{display:inline-flex;gap:12px;white-space:nowrap;font-size:12.5px;color:var(--ink);animation:tk 38s linear infinite}
.tk i{color:var(--yellow);font-style:normal}
@keyframes tk{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:20px;scrollbar-width:none}
.carousel::-webkit-scrollbar{display:none}
.slide{position:relative;flex:0 0 100%;scroll-snap-align:start;min-height:142px;background:var(--blue2);padding:14px 16px;display:flex;overflow:hidden;color:#fff}
.slide.s1{background:linear-gradient(110deg,#0B3A8C,#1757D1)}
.slide.s2{background:linear-gradient(110deg,#0D3F9E,#2A6AE0)}
.slide img{position:absolute;right:0;top:0;height:100%;width:auto}
.slide .fade{position:absolute;top:0;bottom:0;right:126px;width:70px;background:linear-gradient(90deg,#1452C8,rgba(20,82,200,0))}
.stxt{position:relative;z-index:1;display:flex;flex-direction:column;gap:4px;width:62%}
.slide strong{font-size:21px;line-height:1.05;font-weight:800}
.slide strong em{font-style:normal;color:var(--yellow)}
.slide p{margin:0;font-size:11px;color:#E3ECFF;line-height:1.3}
.sart{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:104px;height:104px;border-radius:28px;background:rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2)}
.dots button{width:8px;height:8px;border-radius:4px;background:#C5D3EE;border:0;padding:0;transition:width .25s}
.dots button.on{background:var(--blue);width:22px}
.quick{display:flex;gap:12px;overflow-x:auto;padding:2px 2px 4px;scrollbar-width:none}
.quick::-webkit-scrollbar{display:none}
.quick button{flex:0 0 auto;width:64px;display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:0;font-size:11px;font-weight:600;color:var(--ink)}
.quick span{width:54px;height:54px;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 10px rgba(23,87,209,.12);border:1px solid #E6ECF7}
.tile{border:1px solid #EDF1F8}
.tile .ic{background:linear-gradient(145deg,#2A6AE0,#1452C8);box-shadow:0 4px 10px rgba(23,87,209,.25)}
.shead{display:flex;justify-content:space-between;align-items:center;margin-top:6px}
.shead strong{font-size:16px}
.shead button,.shead a{background:none;border:0;color:var(--blue);font-size:13px;font-weight:700}
.hscroll{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.hscroll::-webkit-scrollbar{display:none}
.ccard{flex:0 0 150px;background:#fff;border-radius:14px;padding:0 0 10px;border:1px solid #EDF1F8;text-align:left;display:flex;flex-direction:column;gap:3px;overflow:hidden;color:var(--ink)}
.ccard .cimg{height:84px;display:flex;align-items:flex-end;padding:6px 8px;color:#fff;font-size:10px;font-weight:700;margin-bottom:4px}
.ccard strong{font-size:13px;padding:0 10px}
.ccard>span:last-child{font-size:13px;font-weight:700;color:var(--blue);padding:0 10px}
.tile{padding:10px 7px 10px 9px;gap:8px}.tile .ic{width:38px;height:38px}.tile small{font-size:10px;line-height:1.2}.tile strong{font-size:14px}

.util{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.ucard{display:flex;align-items:center;gap:9px;padding:11px 10px;border-radius:16px;color:var(--ink);min-height:74px}
.ucard.farm{background:linear-gradient(140deg,#E3F6EC,#CDEFDC);border:1px solid #B4E2C8}
.ucard.taxi{background:linear-gradient(140deg,#FFF6D6,#FFE9A3);border:1px solid #F5DC8A}
.uic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.farm .uic{background:#0F7A4A;box-shadow:0 4px 10px rgba(15,122,74,.3)}
.taxi .uic{background:#FFC727;box-shadow:0 4px 10px rgba(200,150,0,.3)}
.utx{flex:1;min-width:0;display:flex;flex-direction:column}
.utx small{font-size:9.5px;font-weight:800;letter-spacing:.4px}
.farm .utx small{color:#0F7A4A}.taxi .utx small{color:#7A5200}
.utx strong{font-size:14px;line-height:1.2}
.utx em{font-style:normal;font-size:10.5px;color:var(--muted)}
.fhero{background:#fff;border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:10px;border:1px solid #CDEFDC;box-shadow:0 4px 16px rgba(15,122,74,.1)}
.fmap{position:relative;height:120px;border-radius:12px;overflow:hidden}
.fmap svg{width:100%;height:100%}
.fpin{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;background:#0F7A4A;border:3px solid #fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px rgba(0,0,0,.25)}

/* v4 polish */
.hero{padding-top:calc(14px + env(safe-area-inset-top))}
.glass{background:rgba(255,255,255,.14);border-radius:14px;backdrop-filter:blur(6px);width:40px;height:40px}
.glass .dot{top:7px;right:8px}
.hi{display:block;font-size:13px;color:rgba(255,255,255,.85);font-weight:500;margin-bottom:2px}
.search{position:relative}
.search .mic{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;background:linear-gradient(145deg,#2A6AE0,#0B3A8C);display:flex;align-items:center;justify-content:center;border:0;padding:0}
.sect{gap:12px}
.ticker{margin:0}
.ticker b{gap:6px}
.live{width:7px;height:7px;border-radius:50%;background:#FF5A5A;display:inline-block;animation:pulse 1.4s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,90,90,.7)}70%{box-shadow:0 0 0 7px rgba(255,90,90,0)}100%{box-shadow:0 0 0 0 rgba(255,90,90,0)}}
.ucard{min-height:68px}
.bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:78px;gap:9px}
.bt{position:relative;border:0;border-radius:18px;background:#fff;text-align:left;padding:10px;display:flex;flex-direction:column;justify-content:flex-end;gap:2px;color:var(--ink);box-shadow:0 2px 10px rgba(16,33,63,.06);overflow:hidden;transition:transform .15s}
.bt:active,.ucard:active,.ccard:active,.jcard:active,.quick button:active,.tile:active{transform:scale(.97)}
.bt strong{font-size:13px;line-height:1.15}
.bt small{font-size:11px;color:var(--muted);line-height:1.25}
.bt .bic{position:absolute;top:10px;left:10px;width:36px;height:36px;border-radius:11px;background:var(--tint);display:flex;align-items:center;justify-content:center}
.bt.big{grid-column:span 2;grid-row:span 2;background:linear-gradient(150deg,#2A6AE0 0%,#0B3A8C 100%);color:#fff;padding:14px}
.bt.big::after{content:"";position:absolute;right:-30px;top:-30px;width:130px;height:130px;border-radius:50%;background:rgba(255,255,255,.08)}
.bt.big .bic{width:48px;height:48px;border-radius:14px;background:rgba(255,255,255,.16);top:14px;left:14px}
.bt.big strong{font-size:18px}.bt.big small{color:#D6E3FA}
.bt.big .bn{align-self:flex-start;margin-top:6px;font-size:11px;font-weight:700;background:var(--yellow);color:var(--ink);padding:3px 8px;border-radius:999px}
.bt.wide{grid-column:span 2;padding-left:56px;justify-content:center}
.bt.wide .bic{top:50%;transform:translateY(-50%)}
.barrow{position:absolute;right:10px;bottom:10px}
.bt.wide .barrow{top:50%;transform:translateY(-50%);bottom:auto}
.bt.sq{padding-top:50px}
.bt.sq.y .bic{background:#FFF1CC}
.bt.mini{grid-row:span 1;align-items:center;justify-content:center;text-align:center;padding:6px 4px;gap:4px}
.bt.mini .bic{position:static;width:34px;height:34px}
.bt.mini strong{font-size:11px}
.bento .mini{min-height:0}
.quick span{width:50px;height:50px;border-radius:16px}
.jcard{flex:0 0 200px;background:#fff;border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:4px;color:var(--ink);border:1px solid #EDF1F8;transition:transform .15s}
.jcard strong{font-size:14px;margin-top:4px}
.jcard b{color:var(--blue);font-size:13px;margin-top:2px}
.cta{display:flex;align-items:center;gap:10px;justify-content:space-between;background:linear-gradient(120deg,#0B3A8C,#1757D1);color:#fff;border-radius:18px;padding:16px;margin-top:6px}
.cta strong{display:block;font-size:15px}.cta small{display:block;font-size:12px;color:#D6E3FA;margin-top:2px}
.cta .pill{margin:0;flex-shrink:0}
.sect>*{animation:rise .45s ease both}
.sect>*:nth-child(2){animation-delay:.04s}.sect>*:nth-child(3){animation-delay:.08s}.sect>*:nth-child(5){animation-delay:.12s}.sect>*:nth-child(7){animation-delay:.16s}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.sect>*,.tk,.live{animation:none}}

/* v5 */
.nav button.add{background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:12px;color:var(--deep);font-weight:700;min-width:60px;padding:0}
.catgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 6px;background:#fff;border-radius:20px;padding:16px 8px 14px;box-shadow:0 2px 12px rgba(16,33,63,.06)}
.catgrid button{background:none;border:0;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:11.5px;font-weight:600;color:var(--ink);padding:0;transition:transform .15s}
.catgrid button:active{transform:scale(.94)}
.catgrid span{width:52px;height:52px;border-radius:17px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 14px rgba(16,33,63,.14);position:relative;overflow:hidden}
.catgrid span::after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(255,255,255,.28),rgba(255,255,255,0) 55%)}
.shead span small{display:block;font-size:12px;color:var(--muted);font-weight:500}
.pcard{background:#fff;border-radius:16px;padding:13px;display:flex;flex-direction:column;gap:8px;border:1px solid #EDF1F8;box-shadow:0 2px 8px rgba(16,33,63,.05)}
.pcard p{margin:0;font-size:14px;line-height:1.4}
.ptag{font-size:10.5px;font-weight:800;letter-spacing:.3px;padding:4px 8px;border-radius:6px}
.ptag.need{background:#FDE7EF;color:#A0204F}.ptag.offer{background:#E3F6EC;color:#11713F}
.minibtn{height:34px;padding:0 12px;border:0;border-radius:10px;background:var(--blue);color:#fff;font-size:12.5px;font-weight:700;display:inline-flex;align-items:center;gap:6px}
.minibtn.ghost{background:var(--tint);color:var(--blue)}
.ecard{flex:0 0 170px;background:#fff;border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:6px;color:var(--ink);border:1px solid #EDF1F8}
.ecard strong{font-size:13.5px;line-height:1.25}
.edate{width:46px;height:50px;border-radius:12px;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:10px;font-weight:700;letter-spacing:.5px;flex-shrink:0}
.edate b{font-size:19px;line-height:1}
.edate.big{width:58px;height:auto;min-height:64px}
.sheetbg{position:fixed;inset:0;background:rgba(10,20,40,.45);z-index:40;animation:fade .2s}
.sheet{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:100%;max-width:480px;background:#fff;border-radius:24px 24px 0 0;padding:10px 16px calc(22px + env(safe-area-inset-bottom));z-index:41;display:flex;flex-direction:column;gap:6px;animation:up .25s ease}
.grab{width:40px;height:5px;border-radius:3px;background:#D5DCEA;align-self:center;margin-bottom:8px}
.sopt{display:flex;align-items:center;gap:12px;padding:12px 4px;color:var(--ink);border-bottom:1px solid #F0F3F8}
@keyframes up{from{transform:translate(-50%,100%)}to{transform:translate(-50%,0)}}
@keyframes fade{from{opacity:0}to{opacity:1}}
.seg3{display:grid;grid-template-columns:repeat(3,1fr);border-radius:12px}
.seg3 button{height:42px;font-size:14px}
.mrow{display:flex;align-items:center;gap:12px;width:100%;background:none;border:0;padding:12px 14px;font-size:15px;color:var(--ink);border-bottom:1px solid #F0F3F8}
.mrow:last-child{border-bottom:0}
.mic2{width:34px;height:34px;border-radius:10px;background:var(--tint);display:flex;align-items:center;justify-content:center}
/* v6 */
.hero2{position:relative;background:#0B3A8C;min-height:360px;padding:calc(12px + env(safe-area-inset-top)) 16px 0;overflow:hidden;display:flex;flex-direction:column}
.hero2 .photo{position:absolute;right:-30px;top:0;height:330px;width:auto;object-fit:cover}
.hv1{position:absolute;inset:0;background:linear-gradient(90deg,#0B3A8C 0%,rgba(11,58,140,.92) 30%,rgba(11,58,140,.35) 55%,rgba(11,58,140,0) 72%)}
.hv2{position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(180deg,rgba(243,246,251,0),rgba(243,246,251,.9) 65%,#F3F6FB)}
.hero2>*:not(img):not(.hv1):not(.hv2){position:relative}
.hbar{display:flex;justify-content:space-between;align-items:center}
.hlogo{font-family:Poppins,Inter,sans-serif;font-style:italic;font-weight:800;font-size:26px;color:#fff;letter-spacing:-.5px;line-height:1}
.hlogo b{color:var(--yellow);font-weight:800}
.glassy{margin:12px 0 0;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:none;border:1px solid rgba(255,255,255,.18);height:32px}
.glassy .tk{color:#fff}.glassy b{background:rgba(255,255,255,.18)}
.htxt{margin-top:26px;color:#fff;max-width:62%;display:flex;flex-direction:column;gap:4px}
.htxt span{font-size:14px;color:rgba(255,255,255,.85)}
.htxt strong{font-size:25px;line-height:1.15;font-weight:800;text-shadow:0 2px 12px rgba(0,0,0,.25)}
.hero2 .search{margin:auto 0 16px;margin-top:34px}
.topics{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 0 4px}
.topics::-webkit-scrollbar{display:none}
.topics button{flex:0 0 auto;display:flex;align-items:center;gap:7px;background:#fff;border:1px solid #E6ECF5;border-radius:999px;padding:6px 14px 6px 6px;font-size:13px;font-weight:700;color:var(--ink);box-shadow:0 2px 6px rgba(16,33,63,.05)}
.topics span{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.xgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.xcard{position:relative;border:0;border-radius:20px;min-height:104px;padding:14px;color:#fff;text-align:left;display:flex;flex-direction:column;justify-content:flex-end;gap:2px;overflow:hidden;box-shadow:0 8px 20px rgba(16,33,63,.16);transition:transform .15s}
.xcard:active{transform:scale(.97)}
.xcard .xbg{position:absolute;right:-14px;top:-12px;transform:rotate(-12deg)}
.xcard .xic{position:absolute;top:12px;left:12px;width:36px;height:36px;border-radius:12px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center}
.xcard strong{font-size:16px}.xcard small{font-size:11.5px;opacity:.9}
.xcard:nth-child(1){grid-row:span 2;min-height:218px}
.xcard:nth-child(1) strong{font-size:20px}
.evc{flex:0 0 220px;background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;color:var(--ink);border:1px solid #EDF1F8;box-shadow:0 4px 14px rgba(16,33,63,.07)}
.evc.wide{flex:none;width:100%}
.evimg{position:relative;height:104px;display:flex;align-items:center;justify-content:center}
.evc.wide .evimg{height:130px}
.evdate{position:absolute;left:10px;top:10px;background:#fff;border-radius:12px;width:46px;height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:var(--ink)}
.evdate b{font-size:19px;line-height:1}
.evg{position:absolute;right:10px;top:10px;background:rgba(0,0,0,.28);color:#fff;font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px}
.evg.big{position:static;font-size:13px;margin-top:-10px}
.evb{padding:11px 12px;display:flex;flex-direction:column;gap:4px}
.evb strong{font-size:15px}.evb small{font-size:12px;color:var(--muted)}
.evb b{font-size:13px;color:var(--ink)}.evb b.free{color:#11713F}
.age{font-size:11px;font-weight:700;border:1px solid #D5DCEA;border-radius:6px;padding:1px 6px;color:var(--muted)}
.evhero{position:relative;height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}
.glassbtn{position:absolute;left:14px;top:14px;background:rgba(255,255,255,.18);border-radius:12px;color:#fff}
.evrow{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #EEF1F6}
.evrow:last-child{border-bottom:0}
.evrow small{display:block;font-size:11px;color:var(--muted)}.evrow strong{font-size:14px}
.cvcta{display:flex;align-items:center;gap:12px;background:linear-gradient(120deg,#0E8FA8,#0B6E8A);color:#fff;border-radius:18px;padding:14px}
.cvcta strong{display:block;font-size:15px}.cvcta small{display:block;font-size:12px;opacity:.9}
.sgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:62vh;overflow:auto}
.sopt2{background:#F6F8FC;border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:6px;color:var(--ink);border:1px solid #EDF1F8}
.sopt2 strong{font-size:14px;line-height:1.2}.sopt2 small{font-size:11.5px;color:var(--muted);line-height:1.3}
.fl{display:flex;flex-direction:column;gap:6px;flex:1}
.fl>span{font-weight:700;font-size:14px}
.hint{font-size:12px;color:var(--muted)}
.tip{display:flex;gap:8px;align-items:flex-start;background:#FFF6D6;border:1px solid #F5DC8A;border-radius:14px;padding:10px 12px;font-size:13px;color:#5B4300;line-height:1.4}
.phgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.phit{position:relative;aspect-ratio:1;border-radius:12px;background-size:cover;background-position:center}
.phit button{position:absolute;right:4px;top:4px;width:22px;height:22px;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;font-size:14px;line-height:1;padding:0}
.phadd{aspect-ratio:1;border-radius:12px;border:2px dashed #B8C9EA;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--blue);cursor:pointer}
.phadd small{font-size:10px;font-weight:700}
.phrow{display:flex;gap:6px}.phrow span{width:64px;height:64px;border-radius:10px;background-size:cover;background-position:center}
.okbig{width:72px;height:72px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(23,87,209,.3)}
.lhero{background:linear-gradient(150deg,#1757D1,#0B3A8C);border-radius:22px;padding:30px 20px;display:flex;flex-direction:column;align-items:center;gap:6px;color:#D6E3FA;font-size:14px}
.btn.soc{background:#fff;color:var(--ink);border:1px solid #D5DCEA;gap:10px}
.gdot{width:24px;height:24px;border-radius:50%;background:conic-gradient(#EA4335 0 25%,#FBBC05 0 50%,#34A853 0 75%,#4285F4 0);color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.or{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}
.or::before,.or::after{content:"";flex:1;height:1px;background:#DDE3EE}
.field.code{text-align:center;font-size:28px;letter-spacing:12px;height:64px;font-weight:700}
.cvprev{background:#fff;border-radius:18px;padding:16px;border:1px solid #DDE7F5;display:flex;flex-direction:column;gap:12px}
.cvsec small{font-size:11px;font-weight:800;color:#0E8FA8;letter-spacing:.5px}.cvsec p{margin:4px 0 0;font-size:14px;line-height:1.45}
.plan{position:relative;width:100%;text-align:left;background:#fff;border:2px solid #E3E8F2;border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:6px;color:var(--ink)}
.plan.on{border-color:var(--blue);box-shadow:0 8px 20px rgba(23,87,209,.15)}
.plan strong{font-size:17px}.plan b{font-size:20px}.plan b small{font-size:12px;color:var(--muted)}
.pli{display:flex;gap:8px;align-items:center;font-size:13px;color:#3E4943}
.pbest{position:absolute;right:14px;top:-10px;background:var(--yellow);color:var(--ink);font-size:10px;font-weight:800;padding:3px 8px;border-radius:999px}
.phone>.pad{padding-bottom:110px}
.hero2 .photo{right:-124px}.htxt{max-width:56%}.htxt strong{font-size:24px}.hv1{background:linear-gradient(90deg,#0B3A8C 0%,rgba(11,58,140,.9) 28%,rgba(11,58,140,.3) 48%,rgba(11,58,140,0) 62%)}.xcard:last-child{grid-column:span 2;min-height:84px}

/* v7 */
.live2{background:#fff;border-radius:18px;padding:12px 14px;box-shadow:0 2px 12px rgba(16,33,63,.06);border:1px solid #EDF1F8}
.lhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.lhead span{display:flex;align-items:center;gap:8px;font-weight:800;font-size:14px}
.lhead a{font-size:12px;font-weight:700}
.lroll{height:132px;overflow:hidden;mask-image:linear-gradient(180deg,transparent,#000 12%,#000 88%,transparent)}
.ltrack{display:flex;flex-direction:column;animation:roll 18s linear infinite}
.lroll:hover .ltrack{animation-play-state:paused}
@keyframes roll{from{transform:translateY(0)}to{transform:translateY(-50%)}}
.litem{display:flex;align-items:center;gap:10px;height:44px;color:var(--ink)}
.lic{width:30px;height:30px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ltx{flex:1;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.litem small{font-size:11px;color:var(--muted);flex-shrink:0}
.bizc{flex:0 0 200px;background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;color:var(--ink);border:1px solid #EDF1F8;box-shadow:0 4px 14px rgba(16,33,63,.07)}
.bizimg{position:relative;height:88px;display:flex;align-items:flex-end;padding:0 12px}
.bizlogo{width:52px;height:52px;border-radius:16px;background:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;margin-bottom:-18px;box-shadow:0 6px 14px rgba(0,0,0,.15)}
.spon{position:absolute;right:8px;top:8px;font-size:10px;font-weight:700;background:rgba(0,0,0,.3);color:#fff;padding:3px 8px;border-radius:999px}
.bizc .evb{padding-top:24px}
.offer{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:#B4531A;background:#FFF1E5;border-radius:8px;padding:5px 8px;align-self:flex-start}
#lmap{position:absolute;inset:0;z-index:1}
.map .mapcard{z-index:500}
.mapnote{position:absolute;left:10px;top:10px;z-index:500;font-size:11px;font-weight:600;background:rgba(255,255,255,.92);padding:4px 8px;border-radius:8px;color:#3E4943}
.lpin{width:34px;height:34px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);border:3px solid #fff;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px rgba(0,0,0,.3)}
.lpin svg{transform:rotate(45deg)}.lpin.sel{outline:3px solid var(--yellow)}
.topics button{padding:8px 15px 8px 8px}

/* v8 */
.hello{color:#fff;font-size:15px;font-weight:500;text-shadow:0 1px 8px rgba(0,0,0,.3)}
.hello b{font-weight:800}
.brand{margin-top:30px}
.blogo{position:relative;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(0,0,0,.18);font-weight:800;flex-shrink:0;overflow:hidden}
.blogo svg{position:absolute;opacity:.14;transform:scale(2.4)}
.blogo b{position:relative;letter-spacing:-.5px}
.bizimg{position:relative;height:96px;display:block;padding:0}
.bizlog{position:absolute;left:12px;bottom:-20px}
.bizimg svg{border-radius:0}
.evimg svg{position:absolute;inset:0}
.evimg>span{z-index:1}
.evhero svg{position:absolute;inset:0}
.evhero>*{z-index:1}
.ccard{padding:0 0 10px;gap:2px}
.cimg2{position:relative;height:96px;display:block;margin-bottom:6px}
.ccat{position:absolute;left:8px;bottom:8px;font-size:10px;font-weight:700;background:rgba(0,0,0,.35);color:#fff;padding:3px 8px;border-radius:999px}
.ccard small{font-size:11px;color:var(--muted);padding:0 10px}
.ccard>span:nth-of-type(2){font-size:14px;font-weight:800;color:var(--blue);padding:0 10px}
.bizrow{background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;color:var(--ink);border:1px solid #EDF1F8;box-shadow:0 4px 14px rgba(16,33,63,.06)}
.bzimg{height:110px;display:block}
.bzinfo{display:flex;gap:12px;align-items:flex-end;padding:0 12px 8px;margin-top:-22px;position:relative}
.bzinfo strong{display:flex;align-items:center;gap:4px;font-size:16px}
.bzinfo small{display:block;font-size:12px;color:var(--muted)}
.open{color:#11713F!important;font-weight:700}.closed{color:#A0204F!important;font-weight:700}
.lcover{position:relative;height:200px}
.lcover svg{position:absolute;inset:0}
.lhead2{display:flex;gap:14px;align-items:center;padding:14px}
.lhead2 h1{margin:0;font-size:20px;display:flex;align-items:center;gap:6px}
.qbtns{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.qbtns>*{background:#fff;border:1px solid #EDF1F8;border-radius:16px;padding:10px 4px;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:var(--ink)}
.qbtns span{width:40px;height:40px;border-radius:13px;display:flex;align-items:center;justify-content:center}
.ofbig{display:flex;align-items:center;gap:12px;border-radius:18px;padding:14px;color:#fff}
.ofbig>span{width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ofbig div{flex:1}.ofbig small{font-size:10px;font-weight:800;opacity:.85;letter-spacing:.4px}.ofbig strong{display:block;font-size:15px}
.prod{flex:0 0 150px;background:#fff;border-radius:16px;overflow:hidden;border:1px solid #EDF1F8;display:flex;flex-direction:column;gap:2px;padding-bottom:10px}
.pimg{height:90px;display:block;margin-bottom:6px}
.prod strong{font-size:13px;padding:0 10px}.prod b{font-size:14px;color:var(--blue);padding:0 10px}
.adgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.adgrid .ccard{flex:none;width:auto}
.bzinfo>span{padding-top:28px}.evimg{overflow:hidden}

/* v9 fotos */
.artimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.bizimg,.evimg,.lcover,.cimg2,.pimg,.bzimg,.evhero{position:relative;overflow:hidden}
.bizimg::after,.cimg2::after,.bzimg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,0) 40%,rgba(0,0,0,.25))}
.evimg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,0) 45%)}
.lcover::after,.evhero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,0) 35%,rgba(0,0,0,.15))}
.spon,.ccat,.evdate,.evg,.bizlog,.glassbtn,.lcover a,.lcover button{z-index:2}
.bzinfo{z-index:2}
.sphoto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sfade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,58,140,.95) 0%,rgba(11,58,140,.75) 45%,rgba(11,58,140,0) 80%)}
.slide>.stxt{z-index:1}
.evhero .evg.big{position:absolute;bottom:40px}
.evhero .evg.big{left:16px;right:auto;top:auto;bottom:44px}.glassbtn{background:rgba(0,0,0,.35)!important}
