:root{
  --petrol-950:#082638;--petrol-900:#0d3347;--petrol-850:#103c52;--petrol-800:#15495f;
  --cyan-600:#178da9;--cyan-500:#22a3c2;--cyan-400:#4cc4d8;--mint-500:#4bcfb3;
  --ice:#f4f7f8;--white:#fff;--ink:#12293b;--muted:#708596;--line:#dce6eb;--danger:#cb4549;
  --shadow:0 18px 44px rgba(8,38,56,.14);--shadow-soft:0 10px 26px rgba(8,38,56,.09);--safe-bottom:max(16px,env(safe-area-inset-bottom));
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent} [hidden]{display:none!important} html,body{margin:0;min-height:100%;background:#eaf0f3;color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif} body{overflow-x:hidden}button,input,textarea{font:inherit}button{border:0;cursor:pointer}svg{width:1em;height:1em;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.screen{display:none;min-height:100vh}.screen.active{display:block}.eyebrow,.field-kicker,.mini-label{font-size:.68rem;font-weight:900;letter-spacing:.12em;color:#7891a1}.light{color:#9dc4d0}.cyan{color:#6ed2e1}

/* AUTH */
.auth-screen{position:relative;overflow:auto;background:#061c28;color:#fff;padding:calc(28px + env(safe-area-inset-top)) 20px 34px;isolation:isolate}.auth-wallpaper{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;transform:translateY(-9vh) scale(1.02);filter:saturate(.9) contrast(1.02)}.auth-overlay{position:absolute;z-index:-2;inset:0;background:linear-gradient(180deg,rgba(2,16,24,.78) 0%,rgba(4,24,35,.43) 21%,rgba(4,25,36,.10) 39%,rgba(4,25,36,.17) 60%,rgba(4,24,35,.72) 78%,rgba(3,20,29,.93) 100%)}.auth-bg-ring{position:absolute;z-index:-1;border:1px solid rgba(76,196,216,.08);border-radius:50%;pointer-events:none}.auth-bg-ring-a{width:350px;height:350px;right:-210px;top:85px}.auth-bg-ring-b{width:230px;height:230px;left:-150px;bottom:80px}.auth-wrap{max-width:520px;min-height:calc(100vh - 62px);margin:0 auto;position:relative}.auth-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.brand-mark{width:72px;height:72px;border-radius:24px;background:linear-gradient(145deg,var(--cyan-500),var(--cyan-600));display:grid;place-items:center;box-shadow:0 18px 36px rgba(23,141,169,.26)}.brand-mark svg{width:38px;height:38px;stroke-width:1.5}.version-pill{font-size:.58rem;font-weight:900;letter-spacing:.12em;color:#91b8c4;border:1px solid rgba(125,202,216,.18);background:rgba(255,255,255,.045);padding:9px 11px;border-radius:999px}.auth-heading{margin-top:40px}.auth-heading h1{font-size:clamp(3rem,13vw,4.25rem);line-height:.9;letter-spacing:-.055em;margin:9px 0 14px}.auth-heading p{color:#b2c4cc;font-size:.92rem;line-height:1.5;max-width:430px;margin:0}.glass-card{background:rgba(7,34,47,.53);border:1px solid rgba(255,255,255,.12);box-shadow:0 28px 70px rgba(0,0,0,.22);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:29px;padding:20px}.auth-card{margin-top:clamp(360px,39vh,590px);margin-bottom:18px}.auth-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:16px}.auth-card-head strong{display:block;margin-top:4px}.status-pill{font-size:.61rem;font-weight:900;letter-spacing:.06em;color:#c7d6dc;background:rgba(255,255,255,.07);padding:9px 10px;border-radius:999px;white-space:nowrap}.status-pill i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--mint-500);margin-right:6px;box-shadow:0 0 0 4px rgba(75,207,179,.13)}.input-shell{height:59px;border-radius:17px;display:flex;align-items:center;gap:12px;padding:0 14px}.dark-input{border:1px solid rgba(255,255,255,.12);background:rgba(2,21,31,.40)}.dark-input:focus-within{border-color:var(--cyan-400);box-shadow:0 0 0 3px rgba(76,196,216,.12)}.input-shell>svg{font-size:1.35rem;color:var(--cyan-400)}.input-shell input{width:100%;border:0;outline:0;background:transparent;color:#fff;font-weight:800}.input-shell input::placeholder{color:#8299a6}.icon-button{width:38px;height:38px;border-radius:12px;display:grid;place-items:center}.ghost{background:transparent;color:#a9bdc7}.primary-cta{width:100%;height:60px;border-radius:18px;background:linear-gradient(135deg,var(--cyan-500),#157f9c);color:#fff;font-weight:900;font-size:.79rem;letter-spacing:.045em;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 13px 30px rgba(23,141,169,.29)}.primary-cta:active{transform:translateY(1px) scale(.995)}.primary-cta svg{font-size:1.3rem}.auth-card .primary-cta{margin-top:16px}.auth-hint{text-align:center;color:#8ba3af;font-size:.72rem;margin:13px 0 0}.auth-hint.error{color:#ffb7ba}.auth-progress{height:9px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden;margin-top:14px}.auth-progress span{display:block;width:0;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--petrol-800),var(--cyan-600),var(--cyan-400),var(--mint-500));transition:width .08s linear}

/* SHELL */
.main-screen{background:linear-gradient(180deg,#eaf0f3,#f7f9fa);padding-bottom:calc(86px + var(--safe-bottom))}.app-header{position:sticky;top:0;z-index:30;padding:calc(16px + env(safe-area-inset-top)) 18px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(155deg,var(--petrol-900),var(--petrol-950));color:#fff;box-shadow:0 10px 30px rgba(8,38,56,.12)}.header-eyebrow{color:#79c9d8}.app-header h2{font-size:1.03rem;margin:3px 0 0;letter-spacing:.015em}.header-tools{display:flex;align-items:center;gap:8px}.logout-action{height:40px;border-radius:13px;padding:0 12px;background:linear-gradient(145deg,#d95256,#bb3439);color:#fff;display:flex;align-items:center;gap:7px;font-weight:900;font-size:.65rem;letter-spacing:.05em;box-shadow:0 9px 20px rgba(187,52,57,.28)}.logout-action svg{font-size:1.15rem}.app-content{max-width:780px;margin:0 auto;padding:18px}.view{display:none}.view.active-view{display:block}

/* ORBIT */
.vehicle-status-loader{width:36px;height:36px;display:flex;flex-direction:column;justify-content:center;align-items:center;filter:drop-shadow(0 0 7px rgba(76,196,216,.23));overflow:visible}.vehicle-status-slice{position:relative;width:36px;height:6px}.vehicle-status-slice:before,.vehicle-status-slice:after{content:"";position:absolute;left:15px;top:0;width:6px;height:6px;border-radius:50%;background:var(--cyan-400);will-change:transform,opacity;animation:orbit 2.5s linear infinite}.vehicle-status-slice:nth-child(1):after{animation-delay:-1.25s}.vehicle-status-slice:nth-child(2):before{animation-delay:-.4167s}.vehicle-status-slice:nth-child(2):after{animation-delay:-1.6667s}.vehicle-status-slice:nth-child(3):before{animation-delay:-.8333s}.vehicle-status-slice:nth-child(3):after{animation-delay:-2.0833s}.vehicle-status-slice:nth-child(4):before{animation-delay:-1.25s}.vehicle-status-slice:nth-child(4):after{animation-delay:-2.5s}.vehicle-status-slice:nth-child(5):before{animation-delay:-1.6667s}.vehicle-status-slice:nth-child(5):after{animation-delay:-2.9167s}.vehicle-status-slice:nth-child(6):before{animation-delay:-2.0833s}.vehicle-status-slice:nth-child(6):after{animation-delay:-3.3333s}@keyframes orbit{0%{transform:translate3d(9px,0,0) scale(.74);opacity:.65}25%{transform:translate3d(0,0,0) scale(.47);opacity:.3}50%{transform:translate3d(-9px,0,0) scale(.74);opacity:.65}75%{transform:translate3d(0,0,0) scale(1);opacity:1}100%{transform:translate3d(9px,0,0) scale(.74);opacity:.65}}

/* DASHBOARD */
.hero-card{position:relative;overflow:hidden;border-radius:28px;padding:22px;background:linear-gradient(145deg,var(--petrol-900),var(--petrol-800));color:#fff;box-shadow:var(--shadow);min-height:208px}.hero-card:after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-66px;top:-62px}.hero-copy{position:relative;z-index:2;padding-right:80px}.hero-copy strong{display:block;font-size:1.55rem;line-height:1.05;margin:6px 0 8px}.hero-copy p{margin:0;color:#abc0ca;max-width:410px;font-size:.86rem;line-height:1.45}.hero-icon{position:absolute;z-index:2;right:21px;top:22px;width:62px;height:62px;border-radius:20px;background:linear-gradient(145deg,var(--cyan-500),var(--cyan-600));display:grid;place-items:center;box-shadow:0 15px 30px rgba(0,0,0,.16)}.hero-icon svg{font-size:1.8rem}.hero-cta{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;height:51px;border-radius:15px;background:linear-gradient(135deg,var(--cyan-500),var(--cyan-600));color:#fff;font-size:.75rem;font-weight:900;letter-spacing:.035em;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 10px 22px rgba(0,0,0,.13)}.metric-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:12px 0 24px}.metric-card{background:#fff;border:1px solid #e2eaee;border-radius:19px;padding:13px 11px;box-shadow:var(--shadow-soft);min-width:0}.metric-icon{width:29px;height:29px;border-radius:10px;background:#e9f6f9;color:var(--cyan-600);display:grid;place-items:center;margin-bottom:9px}.metric-icon.solid{background:linear-gradient(145deg,var(--cyan-500),var(--cyan-600));color:#fff}.metric-card strong{display:block;font-size:1.32rem;line-height:1}.metric-card small{display:block;font-size:.52rem;letter-spacing:.065em;font-weight:900;color:#7c909e;margin-top:6px;line-height:1.2}.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:7px 2px 13px}.section-head h3{margin:4px 0 0;font-size:1.25rem;letter-spacing:-.02em}.mini-primary{height:41px;border-radius:13px;padding:0 12px;background:linear-gradient(135deg,var(--cyan-500),var(--cyan-600));color:#fff;display:flex;align-items:center;gap:6px;font-size:.68rem;font-weight:900;box-shadow:0 9px 20px rgba(23,141,169,.22)}.circle-cta{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#e6f4f7;color:var(--cyan-600)}

/* CALENDAR */
.calendar-card{display:grid;grid-template-columns:205px 1fr;background:#fff;border-radius:27px;overflow:hidden;box-shadow:var(--shadow);border:1px solid #e1eaee}.calendar-side{background:linear-gradient(160deg,var(--petrol-900),var(--petrol-800));color:#fff;padding:24px 20px;min-height:390px}.big-date{display:block;font-size:4.6rem;line-height:.83;font-weight:900;letter-spacing:-.06em}.calendar-side>strong{display:block;font-size:1.05rem;margin-top:13px}.calendar-side>small{display:block;color:#74c6d6;font-size:.68rem;font-weight:900;margin-top:4px}.day-use-list{display:flex;flex-direction:column;gap:7px;margin-top:22px}.day-use-item{display:flex;align-items:center;gap:8px;padding:8px 9px;border-radius:13px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09)}.day-use-item img{width:38px;height:29px;border-radius:8px;object-fit:cover;background:#fff}.day-use-item strong{display:block;font-size:.64rem}.day-use-item small{display:block;color:#99b4c0;font-size:.54rem;margin-top:2px}.day-empty{font-size:.66rem;line-height:1.4;color:#96b3bf;padding:10px 0}.calendar-main{padding:21px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.calendar-toolbar strong,.range-calendar-toolbar strong{font-size:.78rem;text-transform:uppercase}.calendar-arrow{width:39px;height:39px;border-radius:13px;background:#edf5f7;color:var(--petrol-800);display:grid;place-items:center}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.calendar-weekdays span{text-align:center;color:#8799a5;font-size:.51rem;font-weight:900;padding:6px 0}.calendar-day{position:relative;min-height:44px;border-radius:13px;background:transparent;color:var(--ink);font-size:.69rem;font-weight:850;display:grid;place-items:center}.calendar-day.other{color:#c1ccd2}.calendar-day.today{box-shadow:inset 0 0 0 1.5px var(--cyan-400)}.calendar-day.selected{background:linear-gradient(145deg,var(--cyan-500),var(--cyan-600));color:#fff;box-shadow:0 7px 14px rgba(23,141,169,.24)}.calendar-day.has-use:after{content:"";position:absolute;bottom:5px;width:4px;height:4px;border-radius:50%;background:var(--mint-500)}.calendar-day.selected.has-use:after{background:#fff}

/* USAGE FLOW — APP, NOT FORM */
.usage-title{margin-bottom:15px}.usage-flow{display:flex;flex-direction:column;gap:13px}.flow-card{position:relative;background:#fff;border:1px solid #e1eaee;border-radius:24px;box-shadow:var(--shadow-soft);padding:17px}.identity-card,.destination-card{display:grid;grid-template-columns:38px 44px 1fr;gap:10px;align-items:center}.flow-number{width:34px;height:34px;border-radius:12px;background:var(--petrol-900);color:#fff;display:grid;place-items:center;font-size:.62rem;font-weight:900;letter-spacing:.05em}.flow-number.inline{display:inline-grid;margin-right:8px;vertical-align:middle}.flow-icon{width:44px;height:44px;border-radius:14px;background:#e9f6f9;color:var(--cyan-600);display:grid;place-items:center}.flow-icon svg{font-size:1.3rem}.flow-copy{min-width:0}.flow-copy input,.flow-copy textarea{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-weight:800;font-size:1rem;margin-top:7px;padding:0;resize:none}.flow-copy textarea{line-height:1.45}.flow-copy input::placeholder,.flow-copy textarea::placeholder{color:#9aabb5;font-weight:650}.flow-card:focus-within{border-color:#8fd6e1;box-shadow:0 0 0 3px rgba(76,196,216,.10),var(--shadow-soft)}.flow-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:15px}.flow-card-head.simple{margin-bottom:14px}.flow-card-head h4{font-size:1.08rem;margin:5px 0 0}.flow-card-head p{margin:6px 0 0;color:var(--muted);font-size:.73rem}.period-card{background:linear-gradient(160deg,#fff,#f5fafb)}.period-badge{font-size:.54rem;font-weight:900;color:var(--cyan-600);background:#e9f6f9;padding:8px 9px;border-radius:999px;white-space:nowrap}.period-focus-grid{display:grid;grid-template-columns:1fr 32px 1fr;align-items:stretch;gap:7px}.period-focus{border-radius:17px;border:1px solid #d9e6eb;background:#f5f8f9;text-align:left;padding:12px;color:var(--ink)}.period-focus.active{background:#e7f7fa;border-color:#82d2df;box-shadow:0 8px 18px rgba(23,141,169,.10)}.period-focus span{display:block;font-size:.53rem;letter-spacing:.09em;font-weight:900;color:#79909f}.period-focus strong{display:block;font-size:.85rem;margin-top:4px}.period-focus small{display:block;font-size:.52rem;color:#8a9ca7;margin-top:2px;font-weight:800}.period-arrow{display:grid;place-items:center;color:#91a7b2}.usage-calendar{margin-top:13px;border:1px solid #e0e9ed;border-radius:20px;padding:12px;background:#fff}.range-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;text-align:center;margin-bottom:8px}.range-calendar-toolbar small{display:block;font-size:.48rem;letter-spacing:.08em;color:#8ba0ad;font-weight:900;margin-bottom:3px}.range-calendar-grid .calendar-day{min-height:42px}.range-calendar-grid .calendar-day.disabled{color:#d0d9de;pointer-events:none}.range-calendar-grid .calendar-day.range-start,.range-calendar-grid .calendar-day.range-end{background:linear-gradient(145deg,var(--cyan-500),var(--cyan-600));color:#fff;box-shadow:0 7px 14px rgba(23,141,169,.22)}.range-calendar-grid .calendar-day.in-range{background:#def2f6;border-radius:6px}.flow-hint{display:flex;gap:8px;align-items:flex-start;color:#738a98;font-size:.66rem;line-height:1.4;margin:10px 2px 0}.flow-hint svg{flex:0 0 16px;color:var(--cyan-600);margin-top:1px}

/* APPROVED SELECTOR */
.vehicle-field-block{padding:16px 12px 14px}.vehicle-field-block .flow-card-head{padding:0 5px}.selectionator{position:relative;border-radius:19px;background:var(--petrol-900);color:#fff;perspective:800px;z-index:6}.selectionator-search{position:relative;z-index:3;width:100%;min-height:60px;border-radius:19px;background:linear-gradient(160deg,var(--petrol-900),var(--petrol-850));color:#fff;padding:9px 12px;display:grid;grid-template-columns:50px 1fr 24px;align-items:center;gap:10px;text-align:left;transform-origin:50% 0;transition:transform .28s ease,box-shadow .28s ease;box-shadow:0 10px 20px rgba(8,38,56,.22)}.selectionator.opened .selectionator-search{transform:rotateX(18deg);box-shadow:0 17px 28px rgba(0,0,0,.22)}.selectionator-search-icon{width:48px;height:42px;border-radius:12px;background:rgba(76,196,216,.12);color:var(--cyan-400);display:grid;place-items:center;overflow:hidden}.selectionator-search-icon svg{font-size:1.35rem}.vehicle-selected-photo{width:100%;height:100%;object-fit:cover;display:block}.vehicle-selected-copy strong{display:block;font-size:.7rem;letter-spacing:.03em}.vehicle-selected-copy small{display:block;color:#8faab6;font-size:.56rem;margin-top:3px}.selector-chevron{color:#9cc2cd;transition:transform .25s}.selectionator.opened .selector-chevron{transform:rotate(180deg)}.selectionator-menu{position:absolute;z-index:2;left:0;right:0;top:47px;max-height:0;overflow:hidden;opacity:0;background:var(--petrol-900);border-radius:0 0 20px 20px;transition:max-height .30s ease,opacity .25s ease;padding:0 10px}.selectionator.opened .selectionator-menu{max-height:440px;opacity:1;padding-top:22px;padding-bottom:10px;box-shadow:0 18px 34px rgba(8,38,56,.25)}.vehicle-options{display:flex;flex-direction:column;gap:5px}.vehicle-option{width:100%;border-radius:14px;background:transparent;color:#dbe8ed;display:grid;grid-template-columns:70px 1fr 26px;align-items:center;gap:10px;padding:8px;text-align:left}.vehicle-option:hover,.vehicle-option.selected{background:rgba(34,163,194,.14)}.vehicle-option-photo-wrap{width:70px;height:48px;border-radius:11px;overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.1)}.vehicle-option-photo{width:100%;height:100%;object-fit:cover;display:block}.vehicle-option-copy strong{display:block;font-size:.74rem;color:#fff}.vehicle-option-copy small{display:block;font-size:.58rem;color:#8eabb7;margin-top:3px}.vehicle-option-check{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:transparent;border:1px solid rgba(255,255,255,.09)}.vehicle-option.selected .vehicle-option-check{background:var(--mint-500);color:#fff;border-color:transparent}.vehicle-option-check svg{font-size:.82rem}

/* RECEIPTS */
.receipts-card{background:linear-gradient(160deg,#fff,#f4fafb)}.receipt-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.receipt-type-cta{min-height:105px;border-radius:18px;background:#fff;border:1px solid #dfe9ed;padding:12px;display:grid;grid-template-columns:42px 1fr 24px;gap:9px;align-items:center;text-align:left;color:var(--ink);box-shadow:0 7px 17px rgba(8,38,56,.05)}.receipt-type-icon{width:42px;height:42px;border-radius:14px;background:#e8f6f8;color:var(--cyan-600);display:grid;place-items:center}.receipt-type-icon svg{font-size:1.28rem}.receipt-type-cta strong{display:block;font-size:.67rem;line-height:1.25}.receipt-type-cta small{display:block;font-size:.55rem;color:#869aa5;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.receipt-check{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;color:transparent;background:#edf3f5}.receipt-type-cta.attached{border-color:#71d5c0;background:#f5fcfa}.receipt-type-cta.attached .receipt-type-icon{background:var(--mint-500);color:#fff}.receipt-type-cta.attached .receipt-check{background:#daf7ef;color:#24947e}.receipt-type-cta.attached small{color:#24947e;font-weight:800}.inline-message{border-radius:14px;padding:12px 14px;font-size:.72rem;font-weight:800;line-height:1.4}.error-message{background:#fff0f0;border:1px solid #f3c1c3;color:#a8373b}.draft-status{display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:16px;background:#eaf4f6;color:#56717f}.draft-status>svg{font-size:1.2rem;color:var(--cyan-600)}.draft-status strong{display:block;font-size:.57rem;letter-spacing:.06em}.draft-status small{display:block;font-size:.56rem;margin-top:2px}.usage-submit{margin-top:2px}.reset-cta{height:48px;border-radius:15px;background:transparent;color:var(--cyan-600);font-weight:900;font-size:.68rem;display:flex;align-items:center;justify-content:center;gap:7px}

/* HISTORY */
.history-list{display:flex;flex-direction:column;gap:10px}.history-empty{background:#fff;border-radius:22px;padding:26px;text-align:center;color:#8095a2;box-shadow:var(--shadow-soft)}.history-item{background:#fff;border:1px solid #e1eaee;border-radius:21px;padding:13px;box-shadow:var(--shadow-soft);display:grid;grid-template-columns:62px 1fr auto;gap:11px;align-items:center}.history-item img{width:62px;height:45px;border-radius:11px;object-fit:cover;background:#f1f5f6}.history-item strong{display:block;font-size:.77rem}.history-item small{display:block;color:#7f929e;font-size:.58rem;margin-top:3px}.history-item .history-meta{margin-top:5px;color:#178da9;font-weight:850}.history-download{width:36px;height:36px;border-radius:12px;background:#e9f6f9;color:var(--cyan-600);display:grid;place-items:center}.history-download:disabled{opacity:.4}

/* BOTTOM NAV */
.bottom-nav{position:fixed;z-index:25;left:0;right:0;bottom:0;height:calc(67px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:rgba(255,255,255,.96);border-top:1px solid #dfe8ec;display:grid;grid-template-columns:1fr 1fr;backdrop-filter:blur(12px)}.nav-item{background:transparent;color:#8397a3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.58rem;font-weight:850}.nav-item svg{font-size:1.2rem}.nav-item.active{color:var(--petrol-900)}

/* SHEETS */
.sheet-backdrop{position:fixed;z-index:80;inset:0;background:rgba(5,25,36,.58);backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center}.bottom-sheet{width:min(100%,620px);max-height:92vh;overflow:auto;background:#fff;border-radius:29px 29px 0 0;padding:16px 20px calc(24px + env(safe-area-inset-bottom));text-align:center;box-shadow:0 -22px 60px rgba(8,38,56,.2)}.sheet-handle{width:46px;height:5px;border-radius:999px;background:#d6e1e6;margin:0 auto 18px}.sheet-icon,.success-icon{width:67px;height:67px;border-radius:21px;background:#e8f8f5;color:#26977f;display:grid;place-items:center;margin:0 auto 15px}.sheet-icon{background:#e8f6f8;color:var(--cyan-600)}.sheet-icon svg,.success-icon svg{font-size:2rem}.bottom-sheet h3{font-size:1.28rem;margin:5px 0 7px}.bottom-sheet>p{color:#7f929d;font-size:.75rem;line-height:1.45}.sheet-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}.sheet-choice-grid button{border-radius:18px;background:#f2f7f8;border:1px solid #e0e9ed;padding:16px 10px;color:var(--ink)}.sheet-choice-grid button span{width:43px;height:43px;border-radius:14px;background:#e2f4f7;color:var(--cyan-600);display:grid;place-items:center;margin:0 auto 9px}.sheet-choice-grid strong{display:block;font-size:.72rem}.sheet-choice-grid small{display:block;color:#8396a1;font-size:.57rem;margin-top:4px}.sheet-cancel,.sheet-link{background:transparent;color:var(--cyan-600);font-weight:900;font-size:.7rem;margin-top:17px}.voucher-id-pill{display:inline-block;background:#edf7f8;color:var(--petrol-800);font-size:.66rem;font-weight:900;letter-spacing:.06em;border-radius:999px;padding:9px 12px;margin:3px 0 16px}.success-action{margin-top:10px}.whatsapp-cta{background:linear-gradient(135deg,var(--cyan-500),var(--cyan-600));}.whatsapp-outline-icon{width:22px;height:22px;stroke-width:1.65}.share-feedback{min-height:18px;margin:10px 0 0!important;color:#748a96!important;font-weight:800}.share-feedback.success{color:#26977f!important}.share-feedback.error{color:#b23d42!important}.success-note{font-size:.64rem!important;margin:16px auto 0!important;max-width:500px}.hidden-input{display:none}

@media(max-width:620px){.app-content{padding:14px}.calendar-card{grid-template-columns:1fr}.calendar-side{min-height:auto;padding:19px;display:grid;grid-template-columns:92px 1fr;column-gap:15px;align-items:start}.big-date{grid-row:1/4;font-size:4.1rem}.calendar-side>strong{margin-top:4px}.calendar-side>small{margin-top:3px}.day-use-list{grid-column:1/-1;margin-top:15px;display:grid;grid-template-columns:1fr 1fr}.calendar-main{padding:14px}.receipt-type-grid{grid-template-columns:1fr}.receipt-type-cta{min-height:84px}.auth-card{margin-top:clamp(330px,38vh,520px)}}
@media(max-width:390px){.auth-heading h1{font-size:2.85rem}.auth-card{margin-top:310px}.metric-card{padding:11px 8px}.metric-card strong{font-size:1.18rem}.metric-card small{font-size:.47rem}.period-focus-grid{grid-template-columns:1fr 24px 1fr}.calendar-day{min-height:39px}.flow-card{padding:14px}.identity-card,.destination-card{grid-template-columns:34px 39px 1fr}.day-use-list{grid-template-columns:1fr}.hero-copy strong{font-size:1.38rem}}
@media(min-width:760px){.metric-strip{gap:12px}.receipt-type-grid{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){*:not(.vehicle-status-slice):not(.vehicle-status-slice:before):not(.vehicle-status-slice:after){scroll-behavior:auto!important;transition:none!important}}


/* ===== V9 · GERADOR DE RECIBOS ===== */
.metric-strip-finance{grid-template-columns:.85fr 1.15fr;gap:10px}
.metric-strip-finance .metric-card{min-height:104px;border:0;color:#fff;padding:15px 14px;position:relative;overflow:hidden}
.metric-strip-finance .metric-card:after{content:"";position:absolute;width:92px;height:92px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-30px;top:-35px}
.metric-card-count{background:linear-gradient(145deg,#15495f,#0d3347)!important}
.metric-card-total{background:linear-gradient(145deg,#22a3c2,#178da9)!important}
.metric-strip-finance .metric-icon{background:rgba(255,255,255,.13);color:#fff;margin-bottom:10px}
.metric-strip-finance .metric-card strong{color:#fff;font-size:1.42rem;position:relative;z-index:1}
.metric-strip-finance .metric-card-total strong{font-size:1.24rem}
.metric-strip-finance .metric-card small{color:rgba(255,255,255,.78);position:relative;z-index:1}

.trip-card{background:linear-gradient(160deg,#0d3347,#15495f);border:0;color:#fff}
.trip-card .field-kicker{color:#78d4e2}.trip-card h4{color:#fff}
.trip-field{display:grid;grid-template-columns:46px 1fr;gap:11px;align-items:center;border-radius:18px;padding:12px 13px;margin-top:10px;cursor:text}
.trip-field-local{background:linear-gradient(135deg,rgba(34,163,194,.95),rgba(23,141,169,.95))}
.trip-field-reason{background:linear-gradient(135deg,rgba(16,60,82,.98),rgba(21,73,95,.98));align-items:start}
.trip-field-icon{width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,.13);display:grid;place-items:center;color:#fff}
.trip-field-icon svg{font-size:1.35rem}
.trip-field-copy small{display:block;font-size:.56rem;font-weight:900;letter-spacing:.11em;color:rgba(255,255,255,.72);margin-bottom:4px}
.trip-field-copy input,.trip-field-copy textarea{width:100%;border:0;outline:0;background:transparent;color:#fff;font-weight:800;resize:none;padding:0}
.trip-field-copy input::placeholder,.trip-field-copy textarea::placeholder{color:rgba(255,255,255,.58)}

.receipts-card{background:linear-gradient(160deg,#e9f1f4,#f6f9fa)!important}
.receipt-type-grid{grid-template-columns:1fr 1fr;gap:10px}
.receipt-type-cta{min-height:112px;border:0!important;color:#fff!important;box-shadow:0 11px 24px rgba(8,38,56,.13)!important;position:relative;overflow:hidden}
.receipt-type-cta:before{content:"";position:absolute;width:86px;height:86px;border-radius:50%;border:1px solid rgba(255,255,255,.12);right:-34px;top:-28px}
.receipt-type-cta .receipt-type-icon{background:rgba(255,255,255,.14)!important;color:#fff!important}
.receipt-type-cta strong{color:#fff;font-size:.64rem;position:relative;z-index:1}
.receipt-type-cta small{color:rgba(255,255,255,.72)!important;max-width:128px;position:relative;z-index:1}
.receipt-type-cta.attached{box-shadow:0 0 0 2px rgba(75,207,179,.65),0 12px 26px rgba(8,38,56,.16)!important}
.receipt-count{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.15);font-style:normal;font-size:.64rem;font-weight:900;color:#fff;position:relative;z-index:1}
.cat-fuel{background:linear-gradient(145deg,#22a3c2,#157f9c)!important}
.cat-toll{background:linear-gradient(145deg,#0d3347,#15495f)!important}
.cat-parking{background:linear-gradient(145deg,#24637a,#178da9)!important}
.cat-wash{background:linear-gradient(145deg,#319d9c,#287d86)!important}
.cat-food{background:linear-gradient(145deg,#2c7f91,#1b5f76)!important}
.cat-material{background:linear-gradient(145deg,#4c7385,#2d5a70)!important}
.cat-maintenance{background:linear-gradient(145deg,#123e58,#082638)!important}
.cat-hotel{background:linear-gradient(145deg,#268f9f,#176978)!important}

.receipt-summary-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:13px 0 4px}
.receipt-summary-bar>span{border-radius:14px;background:#fff;padding:10px 9px;text-align:center;border:1px solid #dce7eb}
.receipt-summary-bar strong{display:block;font-size:.72rem;color:var(--petrol-900)}
.receipt-summary-bar small{display:block;font-size:.48rem;font-weight:900;letter-spacing:.06em;color:#8497a3;margin-top:4px}
.receipt-attachment-list{display:flex;flex-direction:column;gap:7px;margin-top:10px}
.receipt-attachment-row{display:grid;grid-template-columns:34px 1fr auto 32px;gap:8px;align-items:center;background:#fff;border:1px solid #dce7eb;border-radius:15px;padding:9px 9px}
.attachment-order{width:31px;height:31px;border-radius:10px;background:#e6f5f8;color:var(--cyan-600);font-size:.58rem;font-weight:900;display:grid;place-items:center}
.attachment-copy strong{display:block;font-size:.62rem;color:var(--ink)}
.attachment-copy small{display:block;font-size:.52rem;color:#8598a3;margin-top:3px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.attachment-value{font-size:.65rem;font-weight:900;color:var(--cyan-600);white-space:nowrap}
.attachment-remove{width:31px;height:31px;border-radius:10px;background:#fff0f0;color:#b33e43;display:grid;place-items:center}

.money-input-shell{height:66px;border:1px solid #dbe6ea;border-radius:18px;background:#f5f9fa;display:flex;align-items:center;gap:9px;padding:0 15px;margin:17px 0 8px;text-align:left}
.money-input-shell>span{font-size:.95rem;font-weight:900;color:var(--cyan-600)}
.money-input-shell input{width:100%;border:0;outline:0;background:transparent;font-size:1.25rem;font-weight:900;color:var(--petrol-900)}
.value-error{font-size:.67rem!important;color:#b33e43!important;font-weight:800;margin:4px 0 0!important}

.share-fallback-actions{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.fallback-action{min-height:48px;border-radius:15px;background:#eef5f7;color:var(--petrol-900);display:flex;align-items:center;justify-content:center;gap:8px;font-size:.64rem;font-weight:900;padding:9px 12px}
.fallback-action svg{font-size:1.1rem}.fallback-retry{background:#dff3f7;color:#116f89}

.history-actions{display:flex;gap:6px}.history-share{width:36px;height:36px;border-radius:12px;background:#e8f6f8;color:var(--cyan-600);display:grid;place-items:center}
.history-share.ready{background:linear-gradient(145deg,var(--cyan-500),var(--cyan-600));color:#fff;box-shadow:0 7px 16px rgba(23,141,169,.18)}

.day-use-item em{display:block;font-style:normal;font-size:.58rem;color:#62d2e1;font-weight:900;margin-top:3px}

@media(max-width:620px){
  .metric-strip-finance{grid-template-columns:1fr 1.15fr}
  .receipt-type-grid{grid-template-columns:1fr 1fr!important}
  .receipt-type-cta{min-height:104px;padding:10px;grid-template-columns:38px 1fr 24px}
  .receipt-type-icon{width:38px;height:38px}
  .receipt-type-cta strong{font-size:.59rem}
  .receipt-type-cta small{font-size:.49rem;max-width:115px}
}
@media(max-width:370px){
  .receipt-type-grid{grid-template-columns:1fr}
  .receipt-type-cta{min-height:84px}
  .receipt-summary-bar{grid-template-columns:1fr}
}


/* ===== V10 · AJUSTES DE UX / BACKLOG ===== */
/* AUTH: composição compacta para manter login e CTA visíveis sem rolagem em telas móveis */
.auth-screen{min-height:100svh;padding:calc(14px + env(safe-area-inset-top)) 16px max(12px,env(safe-area-inset-bottom));overflow:hidden}
.auth-wrap{min-height:calc(100svh - 28px);max-width:520px}
.auth-heading>p{display:none!important}
@media(max-width:620px){
  .auth-wallpaper{height:100svh;object-position:center center;transform:translateY(-17svh) scale(1.035)}
  .auth-overlay{background:linear-gradient(180deg,rgba(2,16,24,.88) 0%,rgba(4,24,35,.48) 18%,rgba(4,25,36,.07) 35%,rgba(4,25,36,.08) 60%,rgba(4,24,35,.68) 77%,rgba(3,20,29,.94) 100%)}
  .auth-top{position:absolute;z-index:3;top:8px;left:0;right:0;justify-content:flex-start}
  .brand-mark{width:58px;height:58px;border-radius:19px;flex:0 0 58px}
  .brand-mark svg{width:31px;height:31px}
  .version-pill{display:none}
  .auth-heading{position:absolute;z-index:3;top:9px;left:74px;right:0;margin:0}
  .auth-heading .eyebrow{font-size:.50rem;letter-spacing:.14em}
  .auth-heading h1{font-size:clamp(2.05rem,9.2vw,2.75rem);line-height:.88;margin:5px 0 0;letter-spacing:-.055em}
  .auth-card{position:absolute;z-index:4;left:0;right:0;top:60svh;margin:0;padding:15px;border-radius:24px}
  .auth-card-head{margin-bottom:11px}.auth-card-head strong{font-size:.78rem}.auth-card-head .eyebrow{font-size:.48rem}
  .status-pill{font-size:.49rem;padding:7px 8px}
  .input-shell{height:51px;border-radius:15px}.auth-card .primary-cta{height:51px;margin-top:12px;border-radius:15px}
  .auth-hint{font-size:.59rem;margin-top:8px}
}
@media(max-width:390px){
  .auth-heading h1{font-size:2.1rem!important}
  .auth-card{top:59svh!important}
}
@media(max-height:590px) and (max-width:620px){
  .auth-wallpaper{transform:translateY(-19svh) scale(1.04)}
  .auth-card{top:57svh}
  .auth-hint{display:none}
}

/* Dashboard: início do fluxo, sem CTA de envio prematuro */
.hero-card-start{min-height:174px;padding:21px 22px}
.hero-card-start .hero-copy{padding-right:0}
.hero-card-start .hero-copy strong{font-size:1.58rem;max-width:360px}
.hero-card-start .hero-icon,.hero-card-start .hero-copy p{display:none!important}
.hero-card-start .hero-cta{bottom:18px}

/* Dados da viagem: Local e Motivo usam exatamente o mesmo tratamento visual */
.trip-field-reason{background:linear-gradient(135deg,rgba(34,163,194,.95),rgba(23,141,169,.95))!important;align-items:center!important}
.trip-field-reason .trip-field-icon{align-self:center}

/* Cards de comprovantes: gutter real e elementos internos protegidos */
.receipt-type-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;column-gap:16px!important;row-gap:10px!important}
.receipt-type-cta{grid-template-columns:38px minmax(0,1fr) 26px!important;column-gap:8px!important;min-width:0!important;padding:10px 9px!important}
.receipt-type-cta>span:nth-child(2){min-width:0}
.receipt-type-cta strong{overflow-wrap:anywhere}
.receipt-type-cta small{max-width:100%!important}
.receipt-count{justify-self:end;flex:0 0 auto}
.receipt-count.has-photo{background:#ffd75a!important;border-color:#ffe793!important;color:#4c3b00!important;box-shadow:0 4px 12px rgba(105,79,0,.22)}
.receipt-count.pending{animation:receiptPendingPulse 1.15s ease-in-out infinite}
@keyframes receiptPendingPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}

/* Modal de comprovante: valor + motivo do gasto */
.expense-reason-shell{display:block;border:1px solid #dbe6ea;border-radius:18px;background:#f5f9fa;padding:12px 15px;margin:10px 0 8px;text-align:left}
.expense-reason-shell>span{display:block;font-size:.57rem;font-weight:900;letter-spacing:.10em;color:#6f8795;margin-bottom:7px}
.expense-reason-shell textarea{width:100%;min-height:66px;border:0;outline:0;background:transparent;resize:none;color:var(--petrol-900);font-size:.84rem;font-weight:750;line-height:1.4;padding:0}
.expense-reason-shell textarea::placeholder{color:#9aabb5;font-weight:650}
.expense-reason-shell:focus-within{border-color:#82d2df;box-shadow:0 0 0 3px rgba(76,196,216,.10)}
.attachment-reason{display:block!important;color:#587483!important;font-weight:750!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;max-width:none!important}

@media(max-width:620px){
  .receipt-type-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;column-gap:15px!important}
  .receipt-type-cta{min-height:104px!important;grid-template-columns:36px minmax(0,1fr) 24px!important;column-gap:7px!important;padding:9px 8px!important}
  .receipt-type-icon{width:36px!important;height:36px!important}
  .receipt-type-cta strong{font-size:.56rem!important}
  .receipt-type-cta small{font-size:.47rem!important}
}
@media(max-width:350px){
  .receipt-type-grid{grid-template-columns:1fr!important}
}


/* ===== V11 · AUTH / DASHBOARD / VALOR / MODAL ===== */
/* Hard lock against horizontal page dragging on Android. */
html,body{width:100%;max-width:100vw;overflow-x:hidden!important;overscroll-behavior-x:none}
.app-shell{width:100%;max-width:100vw;overflow-x:hidden;overscroll-behavior-x:none}
.auth-screen{width:100%;max-width:100vw;overflow:hidden!important;overscroll-behavior-x:none;touch-action:pan-y}
.auth-wrap{width:100%;max-width:520px;overflow:visible}
.auth-wallpaper,.auth-overlay{max-width:none}

/* Mobile Auth: icon + title occupy the same compact top zone; login is bottom-anchored. */
@media(max-width:620px){
  .auth-screen{height:100svh;min-height:100svh;padding:calc(10px + env(safe-area-inset-top)) 14px max(8px,env(safe-area-inset-bottom))}
  .auth-wrap{height:100%;min-height:0;margin:0 auto}
  .auth-top{position:absolute;z-index:5;top:7px;left:0;right:0;height:58px;display:flex;align-items:flex-start;justify-content:flex-start;pointer-events:none}
  .brand-mark{width:58px;height:58px;border-radius:19px;flex:0 0 58px;pointer-events:auto}
  .brand-mark svg{width:31px;height:31px}
  .version-pill{display:none!important}
  .auth-heading{position:absolute!important;z-index:5;top:7px!important;left:74px!important;right:0!important;margin:0!important;min-width:0}
  .auth-heading .eyebrow{display:block;font-size:.49rem;letter-spacing:.13em;line-height:1.1;margin-top:1px}
  .auth-heading h1{font-size:clamp(1.92rem,8.7vw,2.55rem)!important;line-height:.88!important;letter-spacing:-.052em!important;margin:5px 0 0!important;white-space:normal}
  .auth-heading>p{display:none!important}
  .auth-wallpaper{width:100%;height:100svh;object-fit:cover;object-position:center center;transform:translateY(-13.5svh) scale(1.02)!important;transform-origin:center center}
  .auth-overlay{background:linear-gradient(180deg,rgba(2,16,24,.90) 0%,rgba(4,24,35,.44) 17%,rgba(4,25,36,.05) 34%,rgba(4,25,36,.08) 60%,rgba(4,24,35,.64) 77%,rgba(3,20,29,.94) 100%)}
  .auth-card{position:absolute!important;z-index:6;left:0!important;right:0!important;top:auto!important;bottom:max(8px,env(safe-area-inset-bottom))!important;margin:0!important;padding:14px!important;border-radius:23px!important}
  .auth-card-head{margin-bottom:10px!important;gap:8px}
  .auth-card-head strong{font-size:.77rem!important;margin-top:3px!important;line-height:1.2}
  .auth-card-head .eyebrow{font-size:.47rem!important}
  .status-pill{font-size:.47rem!important;padding:7px 8px!important}
  .input-shell{height:50px!important;border-radius:15px!important}
  .auth-card .primary-cta{height:49px!important;margin-top:10px!important;border-radius:15px!important}
  .auth-hint{display:none!important}
  .auth-progress{margin-top:9px!important}
  .auth-bg-ring-a{right:-175px!important;top:82px!important}
  .auth-bg-ring-b{left:-145px!important;bottom:66px!important}
}
@media(max-width:360px){
  .auth-heading{left:69px!important}
  .auth-heading h1{font-size:1.88rem!important}
  .brand-mark{width:54px;height:54px;flex-basis:54px;border-radius:18px}
  .brand-mark svg{width:29px;height:29px}
  .auth-card{padding:12px!important}
  .auth-card-head strong{font-size:.73rem!important}
  .status-pill{font-size:.44rem!important;padding:6px 7px!important}
  .input-shell{height:48px!important}
  .auth-card .primary-cta{height:47px!important}
}
@media(max-height:610px) and (max-width:620px){
  .auth-wallpaper{transform:translateY(-15.5svh) scale(1.02)!important}
  .auth-card{padding:11px!important}
  .auth-card-head{margin-bottom:8px!important}
  .input-shell{height:45px!important}
  .auth-card .primary-cta{height:44px!important;margin-top:8px!important}
}

/* Dashboard: only the principal NEW RECEIPT action remains. */
#calendarView>.section-head{padding-right:0}
.hero-card-start .hero-cta{gap:10px;font-size:.78rem}
.hero-card-start .hero-cta .new-receipt-icon{width:22px;height:22px;stroke-width:1.9;flex:0 0 22px}

/* Banking-style amount field. Prefix is fixed; digits are masked by JS in pt-BR. */
.money-input-shell{width:100%;height:64px;margin:16px 0 12px;border-radius:19px;background:linear-gradient(180deg,#f5f9fa,#eef5f7);border:1px solid #d7e5ea;box-shadow:inset 0 1px 0 rgba(255,255,255,.72)}
.money-input-shell>span{font-size:1rem;flex:0 0 auto}
.money-input-shell input{min-width:0;font-size:1.32rem;letter-spacing:.01em;font-variant-numeric:tabular-nums}
.money-input-shell:focus-within{border-color:#72cbd9;box-shadow:0 0 0 3px rgba(76,196,216,.12),inset 0 1px 0 rgba(255,255,255,.72)}

/* Expense reason is a full-width app component, never a naked textarea. */
.receipt-sheet .expense-reason-shell{display:block!important;width:100%!important;max-width:none!important;margin:0 0 12px!important;padding:13px 14px 12px!important;border:1px solid #d7e5ea!important;border-radius:19px!important;background:linear-gradient(180deg,#f4f9fa,#edf5f7)!important;text-align:left!important;overflow:hidden!important}
.receipt-sheet .expense-reason-shell>span{display:flex!important;align-items:center;gap:7px;width:100%;margin:0 0 8px!important;font-size:.58rem!important;font-weight:900!important;letter-spacing:.11em!important;color:#627e8e!important}
.receipt-sheet .expense-reason-shell>span:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--cyan-500);box-shadow:0 0 0 4px rgba(34,163,194,.10)}
.receipt-sheet .expense-reason-shell textarea{display:block!important;width:100%!important;max-width:100%!important;min-height:72px!important;margin:0!important;padding:0!important;border:0!important;outline:0!important;background:transparent!important;color:var(--petrol-900)!important;font-size:.88rem!important;font-weight:750!important;line-height:1.4!important;resize:none!important;appearance:none!important;-webkit-appearance:none!important}
.receipt-sheet .expense-reason-shell textarea::placeholder{color:#91a5b0!important;font-weight:650!important;opacity:1}
.receipt-sheet .expense-reason-shell:focus-within{border-color:#72cbd9!important;box-shadow:0 0 0 3px rgba(76,196,216,.12)!important}
.receipt-sheet #confirmReceiptValue{margin-top:2px}

/* Keep the two-column receipt grid separated through all normal phone widths. */
@media(min-width:351px) and (max-width:620px){
  .receipt-type-grid{column-gap:18px!important}
  .receipt-type-cta{grid-template-columns:35px minmax(0,1fr) 23px!important;column-gap:7px!important;padding-left:8px!important;padding-right:8px!important}
  .receipt-count{margin-left:2px}
}


/* ===== V12 · INPUTS / MOBILE IMAGE PIPELINE ===== */
/* Typed content is white; placeholders use the branding cyan/blue. */
.trip-field-copy input,.trip-field-copy textarea{color:#ffffff!important;caret-color:#ffffff!important}
.trip-field-copy input::placeholder,.trip-field-copy textarea::placeholder{color:#78d3e2!important;opacity:1!important;font-weight:700!important}
.auth-card .input-shell input{color:#ffffff!important;caret-color:#ffffff!important}
.auth-card .input-shell input::placeholder{color:#62c6da!important;opacity:1!important;font-weight:750!important}

/* Native picker is single-flight: prevent accidental repeated taps while Android is normalizing an image. */
.receipt-type-cta:disabled,#cameraButton:disabled,#galleryButton:disabled{pointer-events:none;filter:saturate(.78);opacity:.72}
.receipt-type-cta:disabled small{font-weight:850}

/* =========================================================
   V13 · AJUSTES VISUAIS / NAVEGAÇÃO
   PDF + WEB SHARE: NÃO ALTERADOS
   ========================================================= */

/* Auth: usa exatamente TELA DE ENTRADA.webp, sem deixar o carro atrás do card. */
.auth-screen{background:#061c28!important}
.auth-wallpaper{
  inset:auto 0 auto 0!important;
  top:72px!important;
  width:100%!important;
  height:calc(61svh - 72px)!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:none!important;
  filter:none!important;
}
.auth-overlay{
  background:linear-gradient(180deg,rgba(2,16,24,.90) 0%,rgba(4,24,35,.30) 20%,rgba(4,25,36,.02) 43%,rgba(4,25,36,.04) 62%,rgba(3,20,29,.90) 100%)!important;
}

/* Campos de digitação solicitados: fundo branco + placeholder ciano. */
.auth-card .dark-input{
  background:#ffffff!important;
  border-color:#d9e8ed!important;
  box-shadow:0 8px 22px rgba(0,0,0,.08)!important;
}
.auth-card .dark-input:focus-within{
  border-color:var(--cyan-500)!important;
  box-shadow:0 0 0 3px rgba(34,163,194,.16),0 8px 22px rgba(0,0,0,.08)!important;
}
.auth-card .input-shell>svg{color:var(--cyan-600)!important}
.auth-card .input-shell input{color:#173446!important;caret-color:var(--cyan-600)!important}
.auth-card .input-shell input::placeholder{color:#42b8cf!important;opacity:1!important;font-weight:800!important}
.auth-card .ghost{color:#557887!important}

.trip-field-local,.trip-field-reason{
  background:#ffffff!important;
  border:1px solid #dbe8ed!important;
  box-shadow:0 8px 22px rgba(5,36,50,.10)!important;
  align-items:center!important;
}
.trip-field-icon{
  background:#e7f6f9!important;
  color:var(--cyan-600)!important;
}
.trip-field-copy small{color:#168da9!important}
.trip-field-copy input,.trip-field-copy textarea{
  color:#173446!important;
  caret-color:var(--cyan-600)!important;
}
.trip-field-copy input::placeholder,.trip-field-copy textarea::placeholder{
  color:#55b9cb!important;
  opacity:1!important;
  font-weight:750!important;
}

/* Header: botão Voltar apenas nas páginas internas. Dashboard usa SAIR. */
.header-left{display:flex;align-items:center;gap:9px;min-width:0}
.header-title{min-width:0}
.header-back-action{
  height:40px;min-width:40px;padding:0 10px;border-radius:13px;
  background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);
  color:#fff;display:flex;align-items:center;justify-content:center;gap:5px;
  font-size:.58rem;font-weight:900;letter-spacing:.05em;flex:0 0 auto;
}
.header-back-action svg{font-size:1.15rem}
.header-back-action:active{transform:translateY(1px)}
@media(max-width:410px){
  .header-back-action{width:38px;min-width:38px;padding:0}
  .header-back-action span{display:none}
  .app-header h2{font-size:.90rem}
}

/* Dashboard: dois caminhos lado a lado. O fluxo Shell será ligado depois. */
.hero-card-start{min-height:190px!important}
.hero-actions{
  position:absolute;z-index:3;left:22px;right:22px;bottom:18px;
  display:grid;grid-template-columns:1fr 1fr;gap:9px;
}
.hero-actions .hero-cta{
  position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;
  width:100%;height:56px;min-width:0;padding:0 10px;
  border-radius:15px;display:flex;align-items:center;justify-content:center;gap:7px;
  color:#fff;font-size:.70rem;font-weight:900;letter-spacing:.025em;line-height:1.08;
  box-shadow:0 10px 22px rgba(0,0,0,.13);
}
.hero-cta-new{background:linear-gradient(135deg,var(--cyan-500),var(--cyan-600))!important}
.hero-cta-shell{background:linear-gradient(135deg,#176a82,#0d4f66)!important;text-align:left}
.hero-cta-shell img{
  width:31px;height:31px;object-fit:cover;border-radius:7px;flex:0 0 31px;
  background:#fff;
}
.hero-cta-shell span{max-width:92px}
@media(max-width:360px){
  .hero-actions{left:16px;right:16px;gap:7px}
  .hero-actions .hero-cta{padding:0 7px;font-size:.62rem}
  .hero-cta-shell img{width:27px;height:27px;flex-basis:27px}
}

/* =========================================================
   V14 · AUTH EM FLUXO + FATURADO POSTO SHELL
   PDF/WEB SHARE DO RECIBO NORMAL: BLOCO CONGELADO
   ========================================================= */

/* Auth: imagem exata do usuário em fluxo e card imediatamente abaixo do carro. */
.auth-screen{overflow-y:auto!important;overflow-x:hidden!important;background:#061c28!important;padding:calc(14px + env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom))!important}
.auth-wrap{
  width:100%!important;max-width:520px!important;min-height:auto!important;margin:0 auto!important;
  display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;grid-template-rows:auto auto auto!important;
  column-gap:12px!important;align-items:start!important;overflow:visible!important;
}
.auth-top{position:relative!important;inset:auto!important;grid-column:1!important;grid-row:1!important;display:block!important;z-index:3!important}
.auth-top .brand-mark{width:58px!important;height:58px!important;border-radius:19px!important}
.auth-top .brand-mark svg{width:31px!important;height:31px!important}
.auth-top .version-pill{display:none!important}
.auth-heading{position:relative!important;inset:auto!important;grid-column:2!important;grid-row:1!important;margin:3px 0 0!important;z-index:3!important;align-self:center!important}
.auth-heading .eyebrow{font-size:.50rem!important;letter-spacing:.14em!important}
.auth-heading h1{font-size:clamp(2rem,9vw,2.55rem)!important;line-height:.88!important;margin:5px 0 0!important;letter-spacing:-.055em!important}
.auth-car-stage{
  grid-column:1/-1!important;grid-row:2!important;position:relative!important;z-index:2!important;
  width:calc(100% + 10px)!important;height:36svh!important;min-height:205px!important;max-height:330px!important;
  margin:2px -5px 0!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;overflow:hidden!important;
}
.auth-car-image{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center bottom!important;filter:none!important;transform:none!important}
.auth-card{
  grid-column:1/-1!important;grid-row:3!important;position:relative!important;inset:auto!important;top:auto!important;left:auto!important;right:auto!important;
  z-index:4!important;margin:-2px 0 0!important;padding:15px!important;border-radius:24px!important;
}
.auth-overlay{background:linear-gradient(180deg,rgba(2,16,24,.88) 0%,rgba(4,24,35,.22) 36%,rgba(4,25,36,.08) 63%,rgba(3,20,29,.84) 100%)!important}
.auth-wallpaper{display:none!important}
@media(max-width:390px){
  .auth-wrap{grid-template-columns:54px minmax(0,1fr)!important;column-gap:10px!important}
  .auth-top .brand-mark{width:54px!important;height:54px!important}
  .auth-heading h1{font-size:2.02rem!important}
  .auth-car-stage{height:34svh!important;min-height:185px!important}
  .auth-card{padding:13px!important}
}
@media(max-height:650px) and (max-width:620px){
  .auth-car-stage{height:31svh!important;min-height:165px!important}
  .auth-card{padding:12px!important}
  .auth-card-head{margin-bottom:8px!important}
  .auth-card .input-shell{height:46px!important}
  .auth-card .primary-cta{height:46px!important;margin-top:9px!important}
  .auth-hint{display:none!important}
}

/* Shell dashboard */
.shell-view{padding-bottom:28px}
.shell-page-head{background:linear-gradient(145deg,#0d3347,#15556b);border-radius:26px;padding:18px;color:#fff;box-shadow:0 18px 36px rgba(8,38,56,.14);position:relative;overflow:hidden}
.shell-page-head:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;border:1px solid rgba(255,255,255,.08);right:-70px;top:-80px}
.shell-page-title{display:flex;align-items:center;gap:12px;position:relative;z-index:1}
.shell-page-title>img{width:50px;height:50px;object-fit:contain;background:#fff;border-radius:14px;padding:4px;box-shadow:0 8px 18px rgba(0,0,0,.14)}
.shell-page-title h3{font-size:1.32rem;margin:3px 0 2px;color:#fff}
.shell-page-title p{margin:0;color:#b9d1da;font-size:.72rem;line-height:1.35}
.shell-page-title .eyebrow{color:#55c7da}
.shell-page-actions{display:grid;grid-template-columns:1.35fr 1fr;gap:9px;margin-top:16px;position:relative;z-index:1}
.shell-action-primary,.shell-action-secondary{height:52px;border-radius:15px;display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;font-size:.67rem;font-weight:900;letter-spacing:.035em}
.shell-action-primary{background:linear-gradient(135deg,var(--cyan-500),var(--cyan-600));box-shadow:0 10px 22px rgba(23,141,169,.24)}
.shell-action-secondary{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14)}
.shell-action-primary svg,.shell-action-secondary svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8}
.shell-summary{display:grid;grid-template-columns:1fr 1.25fr;gap:10px;margin:12px 0 20px}
.shell-summary article{min-height:112px;border-radius:22px;padding:14px;background:#fff;border:1px solid #dce7eb;box-shadow:0 12px 26px rgba(8,38,56,.07);position:relative;overflow:hidden}
.shell-summary article:nth-child(1){background:linear-gradient(145deg,#123e58,#0d3347);color:#fff}
.shell-summary article:nth-child(2){background:linear-gradient(145deg,#24a6c2,#178da9);color:#fff}
.shell-summary-icon{width:36px;height:36px;border-radius:11px;background:rgba(255,255,255,.14);display:grid;place-items:center;margin-bottom:9px}
.shell-summary-icon svg{width:20px;height:20px;stroke:#fff;stroke-width:1.7}
.shell-summary strong{display:block;font-size:1.18rem;line-height:1.1}
.shell-summary small{display:block;margin-top:5px;font-size:.52rem;font-weight:900;letter-spacing:.065em;color:rgba(255,255,255,.74)}
.shell-list-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin:0 2px 11px}
.shell-list-head h3{font-size:1.18rem;margin:2px 0 0;color:var(--petrol-900)}
.shell-updated{font-size:.49rem;font-weight:900;letter-spacing:.05em;color:#78909d;white-space:nowrap}
.shell-invoice-list{display:flex;flex-direction:column;gap:12px}
.shell-month-card{border-radius:24px;padding:15px;color:#fff;box-shadow:0 14px 30px rgba(8,38,56,.12);position:relative;overflow:hidden}
.shell-month-card:after{content:"";position:absolute;width:125px;height:125px;border:1px solid rgba(255,255,255,.10);border-radius:50%;right:-50px;top:-50px}
.shell-tone-0{background:linear-gradient(145deg,#0d3347,#15556b)}
.shell-tone-1{background:linear-gradient(145deg,#1a8197,#22a3c2)}
.shell-tone-2{background:linear-gradient(145deg,#245d72,#2d7c8d)}
.shell-tone-3{background:linear-gradient(145deg,#176978,#319d9c)}
.shell-month-top{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:9px;align-items:center;position:relative;z-index:1}
.shell-month-calendar{width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.14);display:grid;place-items:center}
.shell-month-calendar svg,.shell-money-icon svg{width:22px;height:22px;stroke:#fff;stroke-width:1.7}
.shell-month-copy span{display:block;font-size:.48rem;font-weight:900;letter-spacing:.08em;color:rgba(255,255,255,.72)}
.shell-month-copy strong{display:block;font-size:.83rem;margin-top:3px}
.shell-month-status{font-size:.44rem;font-weight:900;letter-spacing:.05em;padding:7px 8px;border-radius:999px;background:rgba(255,255,255,.12);color:#e6f7fa;white-space:nowrap}
.shell-month-value{display:flex;align-items:center;gap:10px;margin:15px 0 11px;position:relative;z-index:1}
.shell-money-icon{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.13);display:grid;place-items:center}
.shell-month-value small{display:block;font-size:.49rem;font-weight:900;letter-spacing:.075em;color:rgba(255,255,255,.70)}
.shell-month-value strong{display:block;font-size:1.55rem;line-height:1.05;margin-top:2px}
.shell-month-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 0;border-top:1px solid rgba(255,255,255,.10);border-bottom:1px solid rgba(255,255,255,.10);position:relative;z-index:1}
.shell-month-meta span{font-size:.54rem;color:rgba(255,255,255,.78);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.shell-month-actions{display:grid;grid-template-columns:.85fr 1.35fr;gap:8px;margin-top:11px;position:relative;z-index:1}
.shell-month-actions button{height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:.54rem;font-weight:900;color:#fff;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.11)}
.shell-month-actions .shell-send-note{background:#fff;color:#0d556d;border-color:#fff}
.shell-month-actions svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.8}
.shell-empty{min-height:210px;border:1px dashed #cfe0e6;background:#f5f9fa;border-radius:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px}
.shell-empty img{width:58px;height:58px;object-fit:contain;margin-bottom:10px}
.shell-empty strong{color:var(--petrol-900);font-size:.92rem}
.shell-empty span{color:#7d929f;font-size:.67rem;line-height:1.45;max-width:260px;margin-top:5px}

/* Shell add/share sheets */
.shell-sheet-brand{display:flex;align-items:center;gap:11px;text-align:left;margin-bottom:15px}
.shell-sheet-brand img{width:48px;height:48px;object-fit:contain;border-radius:13px;background:#fff;padding:4px;border:1px solid #e2e9ec}
.shell-sheet-brand h3{margin:3px 0 0;font-size:1.08rem;color:var(--petrol-900)}
.shell-form-field,.shell-file-field{display:block;text-align:left;margin:0 0 11px}
.shell-form-field>span,.shell-file-field>span{display:block;font-size:.55rem;font-weight:900;letter-spacing:.09em;color:#66818f;margin:0 0 6px 2px}
.shell-form-field>input{width:100%;height:54px;border-radius:16px;border:1px solid #d7e5ea;background:#fff;color:#173446;font-weight:850;padding:0 14px;outline:0}
.shell-form-field>input:focus{border-color:#72cbd9;box-shadow:0 0 0 3px rgba(76,196,216,.12)}
.shell-money-input{height:58px;border:1px solid #d7e5ea;background:#fff;border-radius:16px;display:flex;align-items:center;gap:8px;padding:0 14px}
.shell-money-input b{color:var(--cyan-600);font-size:.92rem}
.shell-money-input input{width:100%;border:0;outline:0;background:transparent;color:#173446;font-size:1.14rem;font-weight:900}
.shell-money-input input::placeholder{color:#57b9cb}
.shell-file-field>button{width:100%;min-height:66px;border-radius:17px;background:#eef7f9;border:1px solid #d6e7eb;color:#16475c;display:grid;grid-template-columns:36px 1fr;grid-template-rows:auto auto;column-gap:9px;align-items:center;text-align:left;padding:10px 12px}
.shell-file-field>button svg{grid-row:1/3;width:28px;height:28px;stroke:var(--cyan-600);stroke-width:1.7}
.shell-file-field>button strong{font-size:.66rem}.shell-file-field>button small{font-size:.53rem;color:#79909b}
#shellFileName{margin:6px 3px 0;font-size:.55rem;color:#768d99;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shell-share-summary{background:#eef7f9;border:1px solid #d7e7eb;border-radius:16px;padding:13px;color:#315566;font-weight:800;font-size:.72rem;line-height:1.4;margin:2px 0 12px}

@media(max-width:360px){
  .shell-page-actions{grid-template-columns:1fr}
  .shell-month-top{grid-template-columns:38px 1fr}.shell-month-status{grid-column:2;justify-self:start}
  .shell-month-meta{grid-template-columns:1fr}
}
