/* PIN-only cinematic city scene, inspired by the approved mock-up. */
.pronto-pin-backdrop.pin-city-theme{
 --pin-green:#0acb94;position:fixed;inset:0;isolation:isolate;display:flex;flex-direction:column;
 align-items:center;justify-content:flex-start;box-sizing:border-box;min-height:100dvh;height:100dvh;padding:38px 18px 14px;
 background:radial-gradient(circle at 72% 32%,#287b80 0%,#183b55 31%,#052f36 65%,#061e2e 100%);
 overflow:auto;color:#f6fff9;
}
.pin-city-landscape{position:fixed;inset:-14px;z-index:-3;pointer-events:none;
 background:linear-gradient(85deg,rgba(0,40,42,.5),rgba(1,22,30,.34) 49%,rgba(4,32,36,.22)),
  url('/pin-city-bg.webp') center 53%/cover no-repeat;
 filter:blur(7px) saturate(1.07);
 animation:pin-city-pan 36s ease-in-out infinite alternate;
}
.pin-city-stars{position:absolute;inset:0;opacity:.25;
 background-image:radial-gradient(1.5px 1.5px at 17% 22%,#9fffe3 100%,transparent),
 radial-gradient(2px 2px at 78% 19%,#fff9d7 100%,transparent),
 radial-gradient(2px 2px at 59% 71%,#32efab 100%,transparent),
 radial-gradient(2px 2px at 31% 87%,#a9ffce 100%,transparent);
 animation:pin-stars-pulse 4s ease-in-out infinite alternate;
}
.pronto-pin-backdrop.pin-city-theme::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(160deg,rgba(0,39,48,.45),rgba(0,16,20,.25) 50%,rgba(2,42,40,.57));}
.pin-city-layout{position:fixed;inset:0;display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr);pointer-events:none;z-index:-1;align-items:center;gap:36%;padding:26px clamp(20px,2.5vw,50px) 75px;box-sizing:border-box;}
.pin-city-stats{display:grid;gap:24px;align-content:center;min-width:0;}
.pin-city-float{border:1px solid rgba(105,247,198,.28);border-radius:17px;padding:22px 20px;
 background:linear-gradient(145deg,rgba(6,55,56,.29),rgba(5,33,42,.44));
 backdrop-filter:blur(17px);-webkit-backdrop-filter:blur(17px);
 box-shadow:0 10px 32px rgba(2,22,29,.15),inset 0 0 25px rgba(73,193,170,.05);
 display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;
 animation:pin-card-float 7s ease-in-out infinite;
}
.pin-city-stats-right .pin-city-float:nth-child(even){animation-delay:-2s}
.pin-city-float small{color:#dfefe8;font-size:clamp(12px,1.1vw,15px);font-weight:650;letter-spacing:.03em}
.pin-city-float strong{font-size:clamp(19px,2.5vw,34px);font-variant-numeric:tabular-nums;line-height:1.18;font-weight:800;color:#f4fff8;overflow-wrap:anywhere;}
.pin-city-float p,.pin-city-float span{margin:0;color:#a4ebcd;font-size:12px}
.pin-city-ambient-line{display:block;width:min(130px,80%);height:3px;border-radius:99px;background:linear-gradient(90deg,#15ce9d,rgba(21,206,157,0));animation:pin-city-signal 3s ease-in-out infinite alternate}
.pin-city-map{flex-direction:row;align-items:center;gap:18px;padding:17px 18px}
.pin-city-map svg{width:clamp(76px,8vw,119px);height:auto;flex:none;filter:drop-shadow(0 0 9px #00c98b88)}
.pin-city-map>div{display:flex;flex-direction:column;gap:10px}
.pin-city-map strong{font-size:clamp(17px,1.6vw,22px)}
.pin-city-map span{font-size:12px;color:#d9f4e7}
.pin-city-map .pin-city-green{color:#4dffc4;font-weight:750}
.pin-city-metric-rule{height:4px;width:min(130px,85%);display:block;border-radius:9px;background:linear-gradient(90deg,#31deac,#1f8479,#186c6d);opacity:.62;animation:pin-city-signal 4.5s ease-in-out infinite alternate}
.pin-city-message strong{font-size:clamp(18px,2.2vw,27px);font-weight:550;line-height:1.4}
.pin-city-message-rule{display:block!important;width:64px;height:3px;background:#20d59b;margin-top:7px}
.pin-city-transactions-month{align-self:end;max-width:220px;opacity:.92}
.pronto-pin-backdrop.pin-city-theme .pronto-pin-panel{
 width:min(480px,100%);box-sizing:border-box;flex:none;position:relative;z-index:2;
 padding:27px 38px 25px;gap:12px;border:1px solid rgba(108,255,208,.72);
 background:linear-gradient(140deg,rgba(10,58,60,.80),rgba(2,47,42,.85) 78%);
 box-shadow:0 25px 90px rgba(0,12,20,.45),inset 0 0 24px rgba(76,235,177,.05);
 backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px);border-radius:27px;
 color:#fff;min-width:0;margin:auto 0;
}
.pin-city-theme .pronto-pin-brand{gap:11px;color:#fff}
.pin-city-theme .pronto-pin-brand img{height:44px;width:44px;filter:drop-shadow(0 0 8px #18d79e55)}
.pin-city-theme .pronto-pin-brand strong{font-size:clamp(23px,3vw,32px);font-weight:860;letter-spacing:-.7px;color:#fff}
.pin-city-theme .pronto-pin-brand .pin-pos-green{color:#24d99c}
.pin-city-theme .pronto-pin-lock-icon{display:none}
.pin-city-theme .pronto-pin-panel h2{font-size:clamp(23px,2.8vw,31px);color:#f5fff8;margin:16px 0 0;font-weight:820}
.pin-city-theme .pronto-pin-intro{color:#c0d8d0;font-size:14px;line-height:1.45}
.pin-city-theme .pronto-pin-account{color:#b5d4c5;font-size:11px;font-weight:550;margin:0}
.pin-city-theme #pronto-pin-form{gap:12px;margin-top:3px}
.pin-city-theme .pronto-pin-dots{gap:14px;margin:8px auto 5px}
.pin-city-theme .pronto-pin-dots span{width:17px;height:17px;border-color:#60e9b6;background:transparent}
.pin-city-theme .pronto-pin-dots span.entered{background:#24e9a7;box-shadow:0 0 9px #14d795aa}
.pin-city-theme .pronto-pin-keypad{grid-template-columns:repeat(3,75px);gap:9px 25px;justify-content:center;margin:0 auto 7px}
.pin-city-theme .pronto-pin-keypad button{background:rgba(6,36,40,.29);
 color:#fff;border-radius:50%;border:1px solid rgba(180,255,235,.36);width:75px;height:75px;min-height:75px;
 display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
 font-size:29px;font-weight:550;line-height:1.08;box-shadow:inset 0 0 18px #ffffff05;
 transition:border-color .15s,background .15s,transform .15s}
.pin-city-theme .pronto-pin-keypad button:hover{background:rgba(26,169,127,.27);border-color:#77fac9}
.pin-city-theme .pronto-pin-keypad button:active{transform:scale(.94);background:#0ca17a}
.pin-city-theme .pronto-pin-keypad button span{font:inherit}
.pin-city-theme .pronto-pin-keypad button small{font-size:9px;color:#c8eae0;text-decoration:none;line-height:1}
.pin-city-theme .pronto-pin-keypad button[data-pin-key="Limpar"] span{font-size:13px}
.pin-city-theme .pronto-pin-keypad button[data-pin-key="⌫"] span{font-size:24px}
.pin-city-theme .pronto-pin-primary{margin-top:8px;min-height:53px;border-radius:26px;
 background:linear-gradient(110deg,#08dba3,#04a67b);font-size:17px;color:#fff;
 box-shadow:0 12px 28px rgba(3,155,108,.2);}
.pin-city-theme .pronto-pin-primary:hover{filter:brightness(1.09)}
.pin-city-theme .pronto-pin-message{font-size:12px;color:#ffc0b6;min-height:0}
.pin-city-theme .pronto-pin-exit{color:#e4fff0;text-decoration:none;
 border-top:1px solid rgba(209,255,238,.14);padding:12px 5px;display:inline-flex;align-items:center;justify-content:center;}
.pin-city-theme .pin-city-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid #9bdfc266;padding-top:10px}
.pin-city-theme .pin-city-actions .pronto-pin-exit{border:0;min-width:0;font-size:12px}
.pin-city-theme .pin-city-actions .pronto-pin-exit:hover{color:#31ffc1}
.pin-city-theme #pronto-pin-form label:not(.pronto-pin-input-label){color:#bfead8}
.pin-city-theme #pronto-pin-form input:not(#pronto-pin-entry){letter-spacing:3px;background:rgba(3,24,29,.42);color:#fff;border:1px solid #60bd9c}
.pin-city-theme #pronto-pin-form input:not(#pronto-pin-entry):focus-visible{outline-color:#26eea8}
.pin-city-theme .pronto-pin-panel>small{color:#c3dace;font-size:10px;opacity:.85}
.pin-city-mobile-kpis{display:none}
@media(max-width:550px){
 .pin-city-theme .pin-city-mobile-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:5px}
 .pin-city-theme .pin-city-mobile-kpis>div{min-width:0;text-align:left;padding:8px 10px;border-radius:11px;
  border:1px solid #74e9bd66;background:rgba(19,119,91,.2)}
 .pin-city-theme .pin-city-mobile-kpis span{display:block;color:#cef6df;font-size:10px}
 .pin-city-theme .pin-city-mobile-kpis strong{display:block;color:#7ff7c8;font-size:13px;margin-top:4px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
}
.pin-city-footer{position:relative;flex:none;z-index:3;max-width:860px;margin:30px auto 0;padding:0 12px max(8px,env(safe-area-inset-bottom));text-align:center;font-size:12px;line-height:1.55;color:#e2f5eb;letter-spacing:.03em;text-shadow:0 2px 12px #061921}
.pin-city-footer strong{color:#2bf0ac;font-weight:800}
@keyframes pin-city-pan{0%{transform:scale(1) translate(-.8%,-.6%)}100%{transform:scale(1.075) translate(.8%,.4%)}}
@keyframes pin-stars-pulse{to{opacity:.58}}
@keyframes pin-card-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes pin-city-signal{to{opacity:.4}}
@media(max-width:1050px){.pin-city-layout{gap:47%}.pin-city-float{padding:15px 12px}.pin-city-map svg{width:70px}.pin-city-map{gap:7px}.pin-city-map span{display:none}}
@media(max-width:820px){.pronto-pin-backdrop.pin-city-theme{padding:24px 12px 14px}
 .pin-city-layout{inset:0;gap:0;display:flex;align-items:stretch;justify-content:space-between;padding:18px}
 .pin-city-stats{width:32%;opacity:.42}
 .pin-city-float{padding:12px 9px}.pin-city-float strong{font-size:18px}
 .pin-city-map,.pin-city-message{display:none}
 .pronto-pin-backdrop.pin-city-theme .pronto-pin-panel{width:min(450px,100%);padding:22px 25px}
}
@media(max-width:550px){.pronto-pin-backdrop.pin-city-theme{align-items:center;padding:16px 9px 12px}
 .pin-city-layout{display:none}.pin-city-landscape{filter:blur(10px) saturate(.9)}
 .pronto-pin-backdrop.pin-city-theme .pronto-pin-panel{margin:auto 0;width:min(400px,100%);padding:22px 20px 18px;gap:10px;border-radius:22px}
 .pin-city-theme .pronto-pin-brand img{width:37px;height:37px}
 .pin-city-theme .pronto-pin-brand strong{font-size:26px}
 .pin-city-theme .pronto-pin-panel h2{margin:8px 0 0;font-size:26px}
 .pin-city-theme .pronto-pin-keypad{grid-template-columns:repeat(3,minmax(0,65px));gap:7px 16px}
 .pin-city-theme .pronto-pin-keypad button{width:65px;height:65px;min-height:65px;font-size:27px}
 .pin-city-theme .pronto-pin-primary{min-height:49px}
 .pin-city-footer{font-size:10px;margin-top:26px;line-height:1.5;padding-bottom:max(6px,env(safe-area-inset-bottom))}
}
@media(max-height:780px) and (min-width:551px){.pronto-pin-backdrop.pin-city-theme{align-items:center}
 .pin-city-theme .pronto-pin-keypad{grid-template-columns:repeat(3,60px);gap:5px 16px}
 .pin-city-theme .pronto-pin-keypad button{width:60px;height:60px;min-height:60px;font-size:22px}
 .pin-city-theme .pronto-pin-panel h2{margin:5px 0 0}
 .pin-city-theme .pronto-pin-primary{min-height:43px}
}
@media(prefers-reduced-motion:reduce){.pin-city-landscape,.pin-city-stars,.pin-city-float,.pin-city-ambient-line,.pin-city-metric-rule{animation:none!important}.pin-city-theme .pronto-pin-keypad button{transition:none}}
