:root{
    --mobile-blue:#156dff;
    --mobile-blue-deep:#0b54d8;
    --mobile-navy:#11285a;
    --mobile-text:#2f4678;
    --mobile-muted:#7187b0;
    --mobile-line:#e3ebf7;
    --mobile-soft:#f6f9ff;
    --mobile-surface:#ffffff;
    --mobile-shadow:0 18px 50px rgba(13,54,125,.10);
    --mobile-radius-xl:32px;
    --mobile-radius-lg:24px;
    --mobile-radius-md:18px;
}

.mobile-app-only{display:none}
.mobile-desktop-only{display:block}

body.mobile-app-mode{
    background:
        radial-gradient(circle at top left, rgba(223,241,255,.95), transparent 34%),
        radial-gradient(circle at top right, rgba(237,244,255,.9), transparent 30%),
        linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
}

body.mobile-app-mode .mobile-app-only{display:block}
body.mobile-app-mode .mobile-desktop-only{display:none !important}
body.mobile-app-mode .mobile-bottom-nav.mobile-app-only{display:grid}
body.mobile-app-mode.layout-panel.dashboard-home-page .app,
body.mobile-app-mode.layout-panel.dashboard-vehicle-page .app,
body.mobile-app-mode.layout-panel.dashboard-reports-page .app,
body.mobile-app-mode.layout-panel.dashboard-reminders-page .app,
body.mobile-app-mode.layout-panel.dashboard-settings-page .app,
body.mobile-app-mode.layout-panel.dashboard-vehicle-create-page .app,
body.mobile-app-mode.layout-panel.dashboard-documents-page .app,
body.mobile-app-mode.layout-panel.dashboard-support-page .app,
body.mobile-app-mode.layout-panel.dashboard-savings-page .app{
    display:block;
    min-height:100vh;
}
body.mobile-app-mode.layout-panel.dashboard-home-page .sidebar,
body.mobile-app-mode.layout-panel.dashboard-home-page .topbar,
body.mobile-app-mode.layout-panel.dashboard-home-page .vehicle-chip-row,
body.mobile-app-mode.layout-panel.dashboard-vehicle-page .sidebar,
body.mobile-app-mode.layout-panel.dashboard-vehicle-page .topbar,
body.mobile-app-mode.layout-panel.dashboard-vehicle-page .vehicle-chip-row,
body.mobile-app-mode.layout-panel.dashboard-reports-page .sidebar,
body.mobile-app-mode.layout-panel.dashboard-reports-page .topbar,
body.mobile-app-mode.layout-panel.dashboard-reports-page .vehicle-chip-row,
body.mobile-app-mode.layout-panel.dashboard-reminders-page .sidebar,
body.mobile-app-mode.layout-panel.dashboard-reminders-page .topbar,
body.mobile-app-mode.layout-panel.dashboard-reminders-page .vehicle-chip-row,
body.mobile-app-mode.layout-panel.dashboard-settings-page .sidebar,
body.mobile-app-mode.layout-panel.dashboard-settings-page .topbar,
body.mobile-app-mode.layout-panel.dashboard-settings-page .vehicle-chip-row,
body.mobile-app-mode.layout-panel.dashboard-vehicle-create-page .sidebar,
body.mobile-app-mode.layout-panel.dashboard-vehicle-create-page .topbar,
body.mobile-app-mode.layout-panel.dashboard-vehicle-create-page .vehicle-chip-row,
body.mobile-app-mode.layout-panel.dashboard-documents-page .sidebar,
body.mobile-app-mode.layout-panel.dashboard-documents-page .topbar,
body.mobile-app-mode.layout-panel.dashboard-documents-page .vehicle-chip-row,
body.mobile-app-mode.layout-panel.dashboard-support-page .sidebar,
body.mobile-app-mode.layout-panel.dashboard-support-page .topbar,
body.mobile-app-mode.layout-panel.dashboard-support-page .vehicle-chip-row,
body.mobile-app-mode.layout-panel.dashboard-savings-page .sidebar,
body.mobile-app-mode.layout-panel.dashboard-savings-page .topbar,
body.mobile-app-mode.layout-panel.dashboard-savings-page .vehicle-chip-row{
    display:none !important;
}
body.mobile-app-mode.layout-panel.dashboard-home-page .main,
body.mobile-app-mode.layout-panel.dashboard-vehicle-page .main,
body.mobile-app-mode.layout-panel.dashboard-reports-page .main,
body.mobile-app-mode.layout-panel.dashboard-reminders-page .main,
body.mobile-app-mode.layout-panel.dashboard-settings-page .main,
body.mobile-app-mode.layout-panel.dashboard-vehicle-create-page .main{
    padding:0;
}
body.mobile-app-mode.layout-panel.dashboard-documents-page .main,
body.mobile-app-mode.layout-panel.dashboard-support-page .main,
body.mobile-app-mode.layout-panel.dashboard-savings-page .main{
    padding:0;
}

.mobile-app-shell{
    position:relative;
    min-height:100vh;
    padding:18px 18px 112px;
    overflow:hidden;
}

.mobile-app-shell:before{
    content:"";
    position:absolute;
    inset:auto -10% 20% auto;
    width:320px;
    height:320px;
    background:radial-gradient(circle, rgba(45,120,255,.16) 0%, rgba(45,120,255,0) 72%);
    pointer-events:none;
}

.mobile-frame{
    position:relative;
    z-index:1;
    max-width:430px;
    margin:0 auto;
}

.mobile-statusbar{display:none !important}

.mobile-status-icons{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:15px;
}

.mobile-logo-row,
.mobile-top-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:22px;
}

.mobile-logo-row img,
.mobile-brand-inline img{
    width:170px;
    height:auto;
}

.mobile-brand-inline{
    display:flex;
    align-items:center;
    gap:12px;
}

.mobile-user-tools{
    display:flex;
    align-items:center;
    gap:14px;
}

.mobile-bell{
    position:relative;
    width:46px;
    height:46px;
    border-radius:50%;
    display:grid;
    place-items:center;
    color:var(--mobile-blue);
}

.mobile-bell .badge{
    position:absolute;
    top:-2px;
    right:-2px;
    min-width:22px;
    height:22px;
    border-radius:999px;
    display:grid;
    place-items:center;
    padding:0 6px;
    background:var(--mobile-blue);
    color:#fff;
    border:3px solid #fff;
    font-size:12px;
    font-weight:800;
}

.mobile-avatar{
    width:52px;
    height:52px;
    border-radius:50%;
    background:linear-gradient(135deg,#ffe7d2,#dcecff);
    box-shadow:0 8px 24px rgba(12,73,160,.12);
    overflow:hidden;
    display:grid;
    place-items:center;
    font-weight:800;
    color:var(--mobile-blue);
}
.mobile-avatar.has-photo{
    color:transparent;
    background-size:cover;
    background-position:center center;
}

.mobile-back{
    width:54px;
    height:54px;
    border-radius:50%;
    border:1px solid var(--mobile-line);
    background:rgba(255,255,255,.86);
    display:grid;
    place-items:center;
    color:var(--mobile-blue);
    box-shadow:0 10px 28px rgba(16,66,145,.08);
}

.mobile-title-group{
    margin-bottom:20px;
}

.mobile-title-group h1,
.mobile-center-title{
    margin:0;
    color:var(--mobile-navy);
    font-size:28px;
    line-height:1.15;
    letter-spacing:-.8px;
}

.mobile-center-title{
    text-align:center;
    font-size:26px;
    margin-bottom:18px;
}

.mobile-title-group p{
    margin:8px 0 0;
    color:var(--mobile-muted);
    font-size:15px;
}

.mobile-title-inline{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}

.mobile-card{
    background:rgba(255,255,255,.92);
    border:1px solid var(--mobile-line);
    border-radius:var(--mobile-radius-lg);
    box-shadow:var(--mobile-shadow);
}

.mobile-card + .mobile-card{
    margin-top:18px;
}

.mobile-card-body{
    padding:20px;
}

.mobile-hero-art{
    position:relative;
    padding:18px 0 8px;
    margin-bottom:10px;
}

.mobile-hero-orb{
    position:absolute;
    inset:12% 8% auto 8%;
    height:68%;
    border-radius:50%;
    background:radial-gradient(circle, rgba(39,118,255,.20) 0%, rgba(39,118,255,.05) 42%, rgba(39,118,255,0) 74%);
}

.mobile-hero-art img{
    position:relative;
    z-index:1;
    margin:0 auto;
}

.mobile-onboard-phone{
    width:76%;
}

.mobile-onboard-car{
    width:72%;
    margin-top:-110px !important;
}

.mobile-onboard-copy{
    text-align:center;
    padding:8px 4px 0;
}

.mobile-onboard-copy h1{
    margin:0 0 14px;
    font-size:32px;
    line-height:1.16;
    letter-spacing:-1px;
    color:var(--mobile-navy);
}

.mobile-onboard-copy p{
    margin:0;
    color:var(--mobile-text);
    font-size:17px;
    line-height:1.7;
}

.mobile-dots{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin:26px 0 22px;
}

.mobile-dots span{
    width:14px;
    height:14px;
    border-radius:50%;
    background:#d9e2ef;
}

.mobile-dots span.active{
    background:var(--mobile-blue);
}

.mobile-cta-stack{
    display:grid;
    gap:14px;
}

.mobile-primary-btn,
.mobile-secondary-btn{
    height:64px;
    border-radius:22px;
    border:0;
    font-size:20px;
    font-weight:800;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
}

.mobile-primary-btn{
    background:linear-gradient(135deg,var(--mobile-blue),var(--mobile-blue-deep));
    color:#fff;
    box-shadow:0 18px 36px rgba(21,109,255,.26);
}

body.mobile-app-mode .select2-container--default .select2-selection--single{
    height:64px;
    border:1px solid var(--mobile-line);
    border-radius:22px;
    background:rgba(255,255,255,.92);
    padding:0 46px 0 18px;
    box-shadow:0 12px 28px rgba(13,54,125,.06);
}

body.mobile-app-mode .select2-container--default .select2-selection--single .select2-selection__rendered{
    line-height:64px;
    color:var(--mobile-text);
    font-size:17px;
    font-weight:600;
}

body.mobile-app-mode .select2-container--default .select2-selection--single .select2-selection__placeholder{
    color:#8ca0c3;
}

body.mobile-app-mode .select2-container--default .select2-selection--single .select2-selection__arrow{
    height:62px;
    right:12px;
}

body.mobile-app-mode .select2-dropdown{
    border:1px solid var(--mobile-line);
    border-radius:22px;
    box-shadow:0 24px 54px rgba(13,54,125,.14);
}

body.mobile-app-mode .select2-container--default .select2-search--dropdown .select2-search__field{
    height:48px;
    border:1px solid var(--mobile-line);
    border-radius:14px;
    padding:0 14px;
    color:var(--mobile-text);
}

body.mobile-app-mode .select2-results__option{
    padding:12px 16px;
    font-size:15px;
}

.mobile-secondary-btn{
    background:#fff;
    color:var(--mobile-blue);
    border:1px solid var(--mobile-line);
    box-shadow:0 14px 28px rgba(15,62,145,.08);
}

.mobile-auth-hero{
    display:grid;
    gap:24px;
    margin-bottom:18px;
}

.mobile-auth-visual{
    position:relative;
    min-height:220px;
}

.mobile-auth-visual img.phone{
    width:58%;
    margin-left:auto;
}

.mobile-auth-visual img.car{
    width:56%;
    position:absolute;
    right:4%;
    bottom:-4px;
}

.mobile-auth-copy h2{
    margin:0 0 12px;
    font-size:30px;
    line-height:1.18;
    color:var(--mobile-navy);
    letter-spacing:-.8px;
}

.mobile-auth-copy p{
    margin:0;
    color:var(--mobile-muted);
    font-size:18px;
    line-height:1.7;
}

.mobile-auth-card{
    padding:12px;
    border-radius:32px;
}

.mobile-tab-switch{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin-bottom:18px;
}

.mobile-tab-switch a,
.mobile-tab-switch span{
    height:58px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    font-weight:800;
    color:#7b8ba8;
    background:transparent;
}

.mobile-tab-switch .active{
    color:var(--mobile-blue);
    background:#fff;
    border:1px solid var(--mobile-line);
    box-shadow:0 10px 24px rgba(13,54,125,.08);
}

.mobile-form{
    display:grid;
    gap:16px;
}

.mobile-overview-grid{
    display:grid;
    gap:12px;
}

.mobile-overview-card{
    display:grid;
    grid-template-columns:46px 1fr;
    gap:14px;
    align-items:start;
    padding:16px;
    border-radius:20px;
    border:1px solid #e4ecf9;
    background:#fff;
}

.mobile-overview-card strong{
    display:block;
    color:var(--mobile-navy);
}

.mobile-overview-card p{
    margin:4px 0 0;
    color:var(--mobile-muted);
    line-height:1.55;
    font-size:14px;
}

.mobile-overview-icon{
    width:46px;
    height:46px;
    border-radius:16px;
    display:grid;
    place-items:center;
    background:#eef5ff;
    color:var(--mobile-blue);
    font-size:18px;
}

.mobile-form-section{
    display:grid;
    gap:16px;
    padding:18px;
    border-radius:24px;
    border:1px solid #e5edf8;
    background:#fbfdff;
}

.mobile-form-section-head{
    display:grid;
    gap:8px;
}

.mobile-form-section-head h2{
    margin:0;
    font-size:20px;
    color:var(--mobile-navy);
}

.mobile-form-section-head p{
    margin:0;
    color:var(--mobile-muted);
    line-height:1.6;
    font-size:14px;
}

.mobile-section-caption{
    margin:0;
    color:var(--mobile-muted);
    line-height:1.6;
    font-size:14px;
}

.mobile-form-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:0 12px;
    border-radius:999px;
    background:#eef5ff;
    color:var(--mobile-blue);
    font-size:12px;
    font-weight:900;
    justify-self:start;
}

.mobile-intro-chip-row{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:14px;
}

.mobile-intro-chip{
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:36px;
    padding:0 12px;
    border-radius:999px;
    border:1px solid #dce8f8;
    background:#fff;
    color:var(--mobile-navy);
    font-size:12px;
    font-weight:800;
}

.mobile-intro-chip i{
    color:var(--mobile-blue);
}

.mobile-field-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.mobile-form-note{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:12px 14px;
    border-radius:16px;
    border:1px solid #dce8f8;
    background:#f7fbff;
    color:var(--mobile-muted);
    font-size:14px;
    line-height:1.5;
}

.mobile-form-note i{
    color:var(--mobile-blue);
    margin-top:2px;
}

.mobile-action-card{
    display:grid;
    gap:14px;
    padding:18px;
    border-radius:24px;
    border:1px solid #dfeaf8;
    background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
    margin-bottom:18px;
}

.mobile-action-card strong{
    display:block;
    color:var(--mobile-navy);
    font-size:18px;
}

.mobile-action-card p{
    margin:6px 0 0;
    color:var(--mobile-muted);
    line-height:1.6;
    font-size:14px;
}

@media (max-width: 420px){
    .mobile-field-grid{
        grid-template-columns:1fr;
    }
}

.mobile-shortcut-grid{
    display:grid;
    gap:12px;
}

.mobile-shortcut-card{
    width:100%;
    padding:16px;
    border-radius:20px;
    border:1px solid #e4ecf9;
    background:#fff;
    display:grid;
    grid-template-columns:46px 1fr;
    gap:14px;
    align-items:center;
    color:var(--mobile-navy);
    text-align:left;
}

.mobile-shortcut-card strong{
    display:block;
}

.mobile-shortcut-card span{
    display:block;
    margin-top:4px;
    color:var(--mobile-muted);
    font-size:14px;
}

.mobile-auth-checklist{
    display:grid;
    gap:10px;
}

.mobile-auth-checkitem{
    display:grid;
    grid-template-columns:38px 1fr;
    gap:12px;
    align-items:start;
    padding:14px 16px;
    border-radius:18px;
    border:1px solid #e5edf8;
    background:#fff;
}

.mobile-auth-checkitem strong{
    display:block;
    color:var(--mobile-navy);
}

.mobile-auth-checkitem p{
    margin:4px 0 0;
    color:var(--mobile-muted);
    font-size:14px;
    line-height:1.55;
}

.mobile-field-label{
    display:block;
    margin:8px 0 8px;
    font-size:16px;
    font-weight:800;
    color:var(--mobile-navy);
}

.mobile-input,
.mobile-select,
.mobile-textarea{
    width:100%;
    min-height:66px;
    border-radius:22px;
    border:1px solid var(--mobile-line);
    background:#fff;
    color:var(--mobile-text);
    padding:0 20px;
    font:inherit;
    box-shadow:0 10px 24px rgba(13,54,125,.05);
}

.mobile-input::placeholder,
.mobile-textarea::placeholder{
    color:#8a9bb9;
}

.mobile-select{
    appearance:none;
    background-image:linear-gradient(45deg, transparent 50%, #6f82ab 50%),linear-gradient(135deg, #6f82ab 50%, transparent 50%);
    background-position:calc(100% - 24px) calc(50% - 3px),calc(100% - 16px) calc(50% - 3px);
    background-size:8px 8px,8px 8px;
    background-repeat:no-repeat;
    padding-right:52px;
}

.mobile-textarea{
    min-height:148px;
    padding:20px;
    resize:vertical;
}

.mobile-field-icon{
    position:relative;
}

.mobile-field-icon .mobile-input,
.mobile-field-icon .mobile-select,
.mobile-field-icon .mobile-textarea{
    padding-left:56px;
}

.mobile-field-icon i{
    position:absolute;
    left:20px;
    top:22px;
    color:var(--mobile-blue);
    font-size:22px;
}

.mobile-field-meta{
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin-top:8px;
    font-size:14px;
    color:var(--mobile-muted);
}

.mobile-inline-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.mobile-check{
    display:flex;
    align-items:center;
    gap:12px;
    font-size:16px;
    color:var(--mobile-text);
}

.mobile-check input{
    width:22px;
    height:22px;
    accent-color:var(--mobile-blue);
}

.mobile-divider{
    display:flex;
    align-items:center;
    gap:14px;
    color:#8ea0bf;
    margin:8px 0;
    font-weight:700;
}

.mobile-divider:before,
.mobile-divider:after{
    content:"";
    flex:1;
    height:1px;
    background:var(--mobile-line);
}

.mobile-social-btn{
    width:100%;
    min-height:66px;
    border-radius:22px;
    border:1px solid var(--mobile-line);
    background:#fff;
    color:var(--mobile-navy);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    font-size:18px;
    font-weight:800;
}

.mobile-social-btn.disabled{
    opacity:.7;
}

.mobile-legal-copy{
    margin:12px 0 0;
    text-align:center;
    color:#7e90ad;
    font-size:14px;
    line-height:1.7;
}

.mobile-legal-copy a{
    color:var(--mobile-blue);
    font-weight:700;
}

.mobile-summary-card{
    padding:20px 22px;
}

.mobile-vehicle-pill{
    display:flex;
    align-items:center;
    gap:16px;
    padding:18px 20px;
}

.mobile-vehicle-pill img{
    width:74px;
    height:46px;
    object-fit:contain;
}

.mobile-vehicle-pill h3{
    margin:0 0 6px;
    font-size:18px;
    color:var(--mobile-navy);
}

.mobile-vehicle-pill p{
    margin:0;
    color:var(--mobile-muted);
    font-size:14px;
}

.mobile-pill-status{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 14px;
    border-radius:999px;
    background:#e8fff1;
    color:#13a15a;
    font-size:14px;
    font-weight:800;
    white-space:nowrap;
}

.mobile-pill-status:after{
    content:"";
    width:10px;
    height:10px;
    border-radius:50%;
    background:currentColor;
}

.mobile-kpi-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:14px;
}

.mobile-kpi-grid.cols-3{
    grid-template-columns:repeat(3,1fr);
}

.mobile-kpi-card{
    padding:18px;
}

.mobile-kpi-card small{
    display:block;
    color:var(--mobile-muted);
    font-size:14px;
    margin-bottom:10px;
}

.mobile-kpi-card strong{
    display:block;
    color:var(--mobile-navy);
    font-size:26px;
    letter-spacing:-.8px;
}

.mobile-kpi-card .delta{
    margin:12px 0 0;
}

.mobile-panel-title{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:18px;
}

.mobile-panel-title h2{
    margin:0;
    font-size:18px;
    color:var(--mobile-navy);
}

.mobile-panel-title a{
    color:var(--mobile-blue);
    font-size:16px;
    font-weight:700;
}

.mobile-chart{
    height:260px;
    border-radius:22px;
    background:
        linear-gradient(180deg, rgba(29,103,255,.08), transparent 60%),
        linear-gradient(180deg, #ffffff 0%, #fdfefe 100%);
    border:1px solid #edf2fb;
    padding:18px 14px 14px;
}

.mobile-chart svg{
    width:100%;
    height:100%;
}

.mobile-donut-wrap{
    display:grid;
    grid-template-columns:190px 1fr;
    gap:20px;
    align-items:center;
}

.mobile-donut{
    width:180px;
    height:180px;
    border-radius:50%;
    background:conic-gradient(#1b72ff 0 38%, #9e6af5 38% 64%, #42c9be 64% 82%, #ff9433 82% 93%, #ffbf4a 93% 100%);
    position:relative;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);
}

.mobile-donut:after{
    content:attr(data-total);
    white-space:pre;
    position:absolute;
    inset:34px;
    border-radius:50%;
    background:#fff;
    display:grid;
    place-items:center;
    text-align:center;
    color:var(--mobile-navy);
    font-weight:800;
    font-size:16px;
    line-height:1.5;
    box-shadow:inset 0 0 0 1px #eff4fb;
}

.mobile-legend{
    display:grid;
    gap:12px;
}

.mobile-legend-row{
    display:grid;
    grid-template-columns:12px 1fr auto auto;
    gap:10px;
    align-items:center;
    color:var(--mobile-text);
    font-size:15px;
}

.mobile-dot{
    width:12px;
    height:12px;
    border-radius:50%;
}

.mobile-reminder-list,
.mobile-list{
    display:grid;
    gap:0;
}

.mobile-reminder-item,
.mobile-list-item{
    display:grid;
    grid-template-columns:56px 1fr auto;
    gap:14px;
    align-items:center;
    padding:18px 0;
    border-bottom:1px solid #edf2fb;
}

.mobile-reminder-item:last-child,
.mobile-list-item:last-child{
    border-bottom:0;
}

.mobile-icon-badge{
    width:56px;
    height:56px;
    border-radius:18px;
    display:grid;
    place-items:center;
    font-size:24px;
}

.mobile-icon-blue{background:#edf5ff;color:#2272ff}
.mobile-icon-green{background:#ecfbf2;color:#1eb266}
.mobile-icon-purple{background:#f2ebff;color:#8e46ff}
.mobile-icon-orange{background:#fff3e8;color:#ff8a17}
.mobile-icon-teal{background:#eafaf7;color:#1fb8a7}
.mobile-icon-slate{background:#eef3ff;color:#4b6bb3}

.mobile-reminder-item h3,
.mobile-list-item h3{
    margin:0 0 6px;
    font-size:17px;
    color:var(--mobile-navy);
}

.mobile-reminder-item p,
.mobile-list-item p{
    margin:0;
    color:var(--mobile-muted);
    font-size:14px;
}

.mobile-date-col{
    text-align:right;
    display:grid;
    gap:8px;
    justify-items:end;
    color:var(--mobile-text);
    font-size:15px;
}

.mobile-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 14px;
    border-radius:999px;
    font-size:14px;
    font-weight:800;
}

.mobile-tag.blue{background:#eaf3ff;color:#1e73ff}
.mobile-tag.green{background:#e8fbef;color:#18a45c}
.mobile-tag.purple{background:#f5edff;color:#9657ff}
.mobile-tag.orange{background:#fff3e3;color:#f08a22}
.mobile-tag.gray{background:#eff4fb;color:#6f82ab}

.mobile-segment{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:6px;
    padding:6px;
    border-radius:22px;
    background:#fff;
    border:1px solid var(--mobile-line);
    box-shadow:var(--mobile-shadow);
    margin-bottom:18px;
}

.mobile-segment a,
.mobile-segment span{
    min-height:58px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:17px;
    font-weight:800;
    color:#7386ad;
}

.mobile-segment .active{
    background:linear-gradient(135deg,var(--mobile-blue),var(--mobile-blue-deep));
    color:#fff;
    box-shadow:0 12px 26px rgba(21,109,255,.24);
}

.mobile-calendar-strip{
    padding:18px 18px 14px;
}

.mobile-calendar-grid{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:12px;
    margin-top:18px;
    text-align:center;
}

.mobile-calendar-grid small{
    display:block;
    color:var(--mobile-muted);
    font-size:12px;
    margin-bottom:10px;
}

.mobile-calendar-grid strong{
    display:inline-grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:50%;
    color:var(--mobile-navy);
    font-size:18px;
    font-weight:800;
}

.mobile-calendar-grid strong.active{
    background:var(--mobile-blue);
    color:#fff;
}

.mobile-calendar-dots{
    display:flex;
    justify-content:center;
    gap:6px;
    margin-top:10px;
}

.mobile-calendar-dots span{
    width:8px;
    height:8px;
    border-radius:50%;
}

.mobile-search-row{
    display:grid;
    grid-template-columns:1fr auto;
    gap:12px;
    margin-bottom:18px;
}

.mobile-search{
    display:flex;
    align-items:center;
    gap:12px;
    min-height:64px;
    border-radius:22px;
    background:#fff;
    border:1px solid var(--mobile-line);
    padding:0 18px;
    box-shadow:var(--mobile-shadow);
}

.mobile-search input{
    border:0;
    outline:0;
    flex:1;
    font:inherit;
    color:var(--mobile-text);
    background:transparent;
}

.mobile-filter-btn{
    min-width:140px;
    min-height:64px;
    border-radius:22px;
    background:#fff;
    border:1px solid var(--mobile-line);
    color:var(--mobile-blue);
    box-shadow:var(--mobile-shadow);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    font-size:18px;
    font-weight:800;
}

.mobile-vehicle-highlight{
    padding:18px;
}

.mobile-vehicle-highlight .top{
    display:grid;
    grid-template-columns:1fr auto;
    gap:16px;
    align-items:start;
}

.mobile-vehicle-highlight .media{
    display:flex;
    align-items:center;
    gap:16px;
}

.mobile-vehicle-highlight img{
    width:120px;
    height:74px;
    object-fit:contain;
}

.mobile-vehicle-highlight h2{
    margin:0 0 8px;
    font-size:18px;
}

.mobile-vehicle-highlight p{
    margin:0;
    color:var(--mobile-muted);
}

.mobile-vehicle-stats{
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid #edf2fb;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
}

.mobile-vehicle-stats div{
    display:grid;
    gap:6px;
}

.mobile-vehicle-stats small{
    color:var(--mobile-muted);
    font-size:13px;
}

.mobile-vehicle-stats strong{
    color:var(--mobile-navy);
    font-size:16px;
}

.ownership-mobile-shell .mobile-card{
    overflow:hidden;
}

.ownership-mobile-shell .ownership-item-card{
    padding:16px;
    border-radius:18px;
    background:#fbfdff;
}

.ownership-mobile-shell .ownership-item-card p{
    margin:0;
    color:var(--mobile-muted);
    line-height:1.45;
}

.ownership-mobile-shell .ownership-item-card strong{
    color:var(--mobile-navy);
    font-size:22px;
    letter-spacing:-.03em;
}

.ownership-mobile-shell .ownership-badge{
    background:#edf4ff;
}

.ownership-mobile-shell .mobile-form{
    gap:12px;
}

.mobile-simple-list{
    display:grid;
    gap:14px;
}

.mobile-simple-list .item{
    padding:18px;
    display:grid;
    grid-template-columns:96px 1fr auto;
    gap:18px;
    align-items:center;
}

.mobile-simple-list .item img{
    width:96px;
    height:58px;
    object-fit:contain;
}

.mobile-simple-list h3{
    margin:0 0 6px;
    font-size:18px;
    color:var(--mobile-navy);
}

.mobile-simple-list p,
.mobile-simple-list small{
    margin:0;
    color:var(--mobile-muted);
}

.mobile-fab{
    position:fixed;
    right:24px;
    bottom:110px;
    width:78px;
    height:78px;
    border-radius:28px;
    background:linear-gradient(135deg,var(--mobile-blue),var(--mobile-blue-deep));
    color:#fff;
    display:grid;
    place-items:center;
    box-shadow:0 22px 38px rgba(21,109,255,.28);
    z-index:25;
    font-size:34px;
}

.mobile-quick-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
}

.mobile-quick-card{
    min-height:110px;
    border-radius:22px;
    background:#fff;
    border:1px solid var(--mobile-line);
    box-shadow:var(--mobile-shadow);
    display:grid;
    place-items:center;
    text-align:center;
    padding:16px 10px;
    gap:10px;
    color:var(--mobile-text);
    font-size:15px;
    font-weight:800;
}

.mobile-quick-card i{
    color:var(--mobile-blue);
    font-size:28px;
}

.mobile-info-bar{
    padding:16px 18px;
    display:flex;
    align-items:center;
    gap:12px;
    color:var(--mobile-muted);
    font-size:15px;
}

.mobile-settings-stack{
    display:grid;
    gap:18px;
}

.mobile-profile-card{
    padding:18px;
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:16px;
    align-items:center;
}

.mobile-profile-card h3{
    margin:0 0 6px;
    font-size:18px;
}

.mobile-profile-card p{
    margin:0;
    color:var(--mobile-muted);
    line-height:1.55;
}

.mobile-plan-card,
.mobile-settings-group{
    padding:20px;
}

.mobile-settings-group h2,
.mobile-plan-card h2{
    margin:0 0 18px;
    font-size:18px;
    color:var(--mobile-navy);
}

.mobile-setting-row{
    display:grid;
    grid-template-columns:56px 1fr auto;
    gap:14px;
    align-items:center;
    padding:16px 0;
    border-bottom:1px solid #edf2fb;
}

.mobile-setting-row:last-child{
    border-bottom:0;
}

.mobile-setting-row h3{
    margin:0 0 4px;
    font-size:17px;
}

.mobile-setting-row p{
    margin:0;
    color:var(--mobile-muted);
    font-size:14px;
}

.mobile-switch{
    appearance:none;
    width:58px;
    height:34px;
    border-radius:999px;
    border:1px solid #d7e0ee;
    background:#e8edf5;
    position:relative;
    cursor:pointer;
}

.mobile-switch:before{
    content:"";
    position:absolute;
    top:3px;
    left:3px;
    width:26px;
    height:26px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 8px 16px rgba(0,0,0,.12);
    transition:left .2s ease;
}

.mobile-switch:checked{
    background:linear-gradient(135deg,var(--mobile-blue),var(--mobile-blue-deep));
    border-color:transparent;
}

.mobile-switch:checked:before{
    left:29px;
}

.mobile-support-link{
    display:inline-flex;
    align-items:center;
    gap:10px;
    min-height:48px;
    padding:0 18px;
    border-radius:16px;
    border:1px solid var(--mobile-line);
    color:var(--mobile-blue);
    font-weight:800;
    background:#fff;
}

.mobile-doc-upload{
    border:1.5px dashed #d8e4f6;
    border-radius:28px;
    background:#fff;
    padding:30px 20px;
    text-align:center;
    color:var(--mobile-text);
    box-shadow:var(--mobile-shadow);
}

.mobile-doc-upload i{
    font-size:42px;
    color:var(--mobile-blue);
    margin-bottom:12px;
}

.mobile-sub-note{
    margin-top:14px;
    color:var(--mobile-muted);
    font-size:14px;
    text-align:center;
}

.mobile-bottom-nav{
    position:fixed;
    left:50%;
    bottom:10px;
    transform:translateX(-50%);
    width:min(430px, calc(100vw - 18px));
    padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    border-radius:30px;
    background:rgba(255,255,255,.88);
    border:1px solid rgba(227,235,247,.94);
    box-shadow:0 20px 44px rgba(11,49,116,.14);
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    align-items:center;
    gap:8px;
    z-index:30;
    backdrop-filter:blur(18px);
}

.mobile-bottom-nav:before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    background:linear-gradient(180deg,rgba(255,255,255,.84) 0,rgba(247,251,255,.96) 100%);
    z-index:-1;
}

.mobile-bottom-nav button.center{
    border:0;
    cursor:pointer;
}

.mobile-avatar{cursor:pointer}

.mobile-hub-backdrop{
    position:fixed;
    inset:0;
    background:rgba(9,18,35,.36);
    opacity:0;
    pointer-events:none;
    transition:.24s ease;
    z-index:120;
}

.mobile-hub-sheet,
.mobile-form-modal{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    transform:translateY(110%);
    transition:transform .28s ease;
    z-index:140;
}

.mobile-hub-sheet{
    padding:18px 18px calc(28px + env(safe-area-inset-bottom));
    background:rgba(255,255,255,.98);
    border-radius:30px 30px 0 0;
    box-shadow:0 -24px 64px rgba(7,27,69,.18);
    max-height:min(84vh,780px);
    overflow:auto;
}

.mobile-sheet-handle{
    width:62px;
    height:6px;
    border-radius:999px;
    background:#d7e1ef;
    margin:0 auto 14px;
}

.mobile-sheet-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}

.mobile-sheet-head h3{
    margin:0;
    color:var(--mobile-navy);
    font-size:22px;
}

.mobile-sheet-head p{
    margin:6px 0 0;
    color:var(--mobile-muted);
    font-size:14px;
}

.mobile-sheet-close{
    width:44px;
    height:44px;
    border-radius:50%;
    border:1px solid var(--mobile-line);
    background:#fff;
    color:var(--mobile-navy);
    font-size:28px;
    line-height:1;
}

.mobile-hub-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-bottom:16px;
}

.mobile-hub-action{
    min-height:92px;
    border:1px solid var(--mobile-line);
    background:#fff;
    border-radius:20px;
    display:grid;
    place-items:center;
    gap:8px;
    color:var(--mobile-navy);
    font-weight:700;
    box-shadow:0 10px 24px rgba(17,40,90,.05);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.mobile-hub-action:hover{
    border-color:#cfe1fb;
    box-shadow:0 14px 26px rgba(17,40,90,.08);
}

.mobile-hub-action:active{
    transform:translateY(1px) scale(.99);
}

.mobile-hub-action i{
    color:var(--mobile-blue);
    font-size:22px;
}

.mobile-hub-links{
    display:grid;
    gap:10px;
    margin-bottom:16px;
}

.mobile-hub-links a{
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px 16px;
    border-radius:18px;
    background:#f8fbff;
    border:1px solid var(--mobile-line);
    color:var(--mobile-navy);
    font-weight:700;
}

.mobile-hub-empty{
    display:grid;
    gap:10px;
    padding:14px 0 18px;
    color:var(--mobile-text);
}

.mobile-secondary-link{
    color:var(--mobile-blue);
    font-weight:800;
}

.mobile-hub-logout{
    display:grid;
}

.mobile-form-modal{
    top:0;
    padding:18px;
    background:rgba(9,18,35,.36);
    opacity:0;
    pointer-events:none;
    display:grid;
    align-items:end;
}

.mobile-form-card{
    background:#fff;
    border-radius:30px 30px 0 0;
    padding:18px 18px calc(24px + env(safe-area-inset-bottom));
    box-shadow:0 -24px 64px rgba(7,27,69,.18);
    max-height:86vh;
    overflow:auto;
}

body.mobile-sheet-open .mobile-hub-backdrop{
    opacity:1;
    pointer-events:auto;
}

body.mobile-sheet-open .mobile-hub-sheet{
    transform:translateY(0);
}

body.mobile-modal-open .mobile-form-modal.is-open{
    opacity:1;
    pointer-events:auto;
    transform:translateY(0);
}

body.mobile-modal-open{
    overflow:hidden;
}

.mobile-form .mobile-primary-btn,
.mobile-form .mobile-secondary-btn{
    margin-top:12px;
}

.mobile-bottom-nav .mobile-bottom-link{
    display:grid;
    place-items:center;
    gap:6px;
    min-height:68px;
    padding:8px 4px 10px;
    border-radius:20px;
    color:#6980aa;
    font-size:12px;
    font-weight:700;
    transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}

.mobile-bottom-nav .mobile-bottom-link i{
    font-size:20px;
}

.mobile-bottom-nav .mobile-bottom-link:hover,
.mobile-bottom-nav .mobile-bottom-link:active{
    transform:translateY(-1px);
}

.mobile-bottom-nav .mobile-bottom-link.active{
    color:var(--mobile-navy);
    background:linear-gradient(180deg,#f7fbff 0,#edf5ff 100%);
    box-shadow:inset 0 0 0 1px rgba(180,209,247,.9);
}

.mobile-bottom-nav .mobile-bottom-link:active{
    transform:translateY(1px);
}

.mobile-bottom-nav .mobile-bottom-link .nav-icon-wrap{
    position:relative;
    width:42px;
    height:42px;
    border-radius:15px;
    display:grid;
    place-items:center;
    color:currentColor;
    background:transparent;
    transition:background .18s ease,box-shadow .18s ease,color .18s ease;
}

.mobile-bottom-nav .mobile-bottom-link.active .nav-icon-wrap{
    background:#fff;
    color:var(--mobile-blue);
    box-shadow:0 10px 20px rgba(16,76,178,.12);
}

.mobile-bottom-nav .mobile-bottom-label{
    line-height:1.05;
    text-align:center;
}

.mobile-bottom-nav .center{
    width:74px;
    height:74px;
    margin-top:-28px;
    justify-self:center;
    border-radius:24px;
    background:linear-gradient(135deg,var(--mobile-blue),var(--mobile-blue-deep));
    color:#fff;
    border:4px solid rgba(255,255,255,.92);
    box-shadow:0 18px 30px rgba(21,109,255,.28);
    display:grid;
    place-items:center;
    gap:3px;
    padding-top:4px;
    transition:transform .18s ease,box-shadow .18s ease;
}

.mobile-bottom-nav .center:hover,
.mobile-bottom-nav .center:active{
    transform:translateY(-2px);
    box-shadow:0 22px 34px rgba(21,109,255,.34);
}

.mobile-bottom-nav .center.active{
    transform:translateY(-2px);
    box-shadow:0 24px 38px rgba(21,109,255,.36);
}

.mobile-bottom-nav .center:active{
    transform:translateY(-1px) scale(.98);
}

.mobile-bottom-nav .center i{
    font-size:23px;
}

.mobile-bottom-nav .center span{
    font-size:10px;
    font-weight:800;
    letter-spacing:.3px;
    text-transform:uppercase;
}

.mobile-bottom-nav .nav-badge{
    position:absolute;
    top:-3px;
    right:-6px;
    min-width:22px;
    height:22px;
    border-radius:999px;
    padding:0 5px;
    display:grid;
    place-items:center;
    background:var(--mobile-blue);
    color:#fff;
    border:3px solid #fff;
    font-size:11px;
}

.theme-dark{
    color:#d7e4f6;
    background:#08111f;
}

.mobile-home-hero{
    background:
        radial-gradient(circle at top right, rgba(21,109,255,.12), transparent 32%),
        linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(246,250,255,.94) 100%);
}

.mobile-home-hero-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
}

.mobile-home-title{
    margin-bottom:0;
}

.mobile-home-eyebrow{
    display:inline-flex;
    align-items:center;
    padding:8px 12px;
    border-radius:999px;
    background:#eaf3ff;
    color:var(--mobile-blue);
    font-size:12px;
    font-weight:900;
    letter-spacing:.45px;
    text-transform:uppercase;
    margin-bottom:12px;
}

.mobile-home-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 14px;
    border-radius:14px;
    background:#fff;
    border:1px solid var(--mobile-line);
    color:var(--mobile-blue);
    font-weight:800;
    white-space:nowrap;
}

.mobile-home-vehicle{
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:22px;
    padding:18px;
    border-radius:24px;
    background:rgba(255,255,255,.82);
    border:1px solid #e4ecf9;
}

.mobile-home-vehicle-copy{
    flex:1;
}

.mobile-home-vehicle-badge{
    display:inline-flex;
    align-items:center;
    padding:7px 12px;
    border-radius:999px;
    background:#ecf6ff;
    color:var(--mobile-blue);
    font-size:12px;
    font-weight:900;
    margin-bottom:12px;
}

.mobile-home-vehicle-copy h2{
    margin:0 0 8px;
    color:var(--mobile-navy);
    font-size:28px;
    letter-spacing:-.9px;
}

.mobile-home-vehicle-copy p{
    margin:0;
    color:var(--mobile-muted);
    line-height:1.6;
}

.mobile-home-vehicle-art{
    width:118px;
    height:96px;
    flex:0 0 auto;
    padding:10px;
    border-radius:22px;
    background:linear-gradient(135deg,#f7fbff,#eef5ff);
}

.mobile-home-vehicle-art img{
    width:100%;
    height:100%;
    object-fit:contain;
    mix-blend-mode:multiply;
}

.mobile-home-stat-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:18px;
}

.mobile-home-stat{
    padding:16px;
    border-radius:20px;
    border:1px solid #e5edf9;
    background:#fff;
    display:grid;
    gap:8px;
}

.mobile-home-stat:last-child{
    grid-column:1 / -1;
}

.mobile-home-stat small{
    color:var(--mobile-muted);
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.45px;
    font-weight:800;
}

.mobile-home-stat strong{
    color:var(--mobile-navy);
    font-size:24px;
    letter-spacing:-.8px;
    line-height:1.15;
}

.mobile-home-stat span{
    color:var(--mobile-muted);
    font-size:14px;
}

.mobile-home-chip-row{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:18px;
}

.mobile-home-chip{
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:0 14px;
    border-radius:999px;
    background:#f2f7ff;
    color:#4a668b;
    font-size:13px;
    font-weight:800;
}

.mobile-home-highlight{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    padding:16px 18px;
    border-radius:20px;
    background:#f8fbff;
    border:1px solid #e6eef9;
    margin-bottom:16px;
}

.mobile-home-highlight small{
    display:block;
    color:var(--mobile-muted);
    font-size:13px;
    margin-bottom:6px;
}

.mobile-home-highlight strong{
    color:var(--mobile-navy);
    font-size:24px;
    letter-spacing:-.7px;
}

.mobile-home-highlight b{
    color:var(--mobile-blue);
    font-size:18px;
}

.mobile-home-category-list,
.mobile-home-vehicle-list{
    display:grid;
    gap:14px;
}

.mobile-home-category-row{
    display:grid;
    gap:10px;
}

.mobile-home-category-copy{
    display:flex;
    align-items:center;
    gap:12px;
}

.mobile-home-category-copy strong{
    display:block;
    color:var(--mobile-navy);
}

.mobile-home-category-copy small{
    display:block;
    color:var(--mobile-muted);
    margin-top:4px;
}

.mobile-home-dot{
    width:14px;
    height:14px;
    border-radius:50%;
    flex:0 0 auto;
}

.mobile-home-category-track{
    height:10px;
    border-radius:999px;
    overflow:hidden;
    background:#eaf1fb;
}

.mobile-home-category-track span{
    display:block;
    height:100%;
    border-radius:999px;
}

.mobile-home-category-row b{
    color:var(--mobile-navy);
}

.mobile-home-reminder-spotlight{
    display:grid;
    grid-template-columns:44px 1fr;
    gap:14px;
    align-items:start;
    padding:16px;
    border-radius:20px;
    background:#f8fbff;
    border:1px solid #e5edf8;
    margin-bottom:10px;
}

.mobile-home-reminder-spotlight strong{
    display:block;
    color:var(--mobile-navy);
}

.mobile-home-reminder-spotlight p{
    margin:6px 0 0;
    color:var(--mobile-muted);
    line-height:1.5;
}

.mobile-home-reminder-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:62px;
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    background:#e9f3ff;
    color:var(--mobile-blue);
    font-size:13px;
    font-weight:900;
    justify-self:start;
    grid-column:2;
}

.mobile-home-reminder-item{
    border-bottom:0;
    padding:14px 0;
}

.mobile-home-action-grid{
    display:grid;
    gap:12px;
}

.mobile-home-action-card{
    width:100%;
    border:1px solid #e4edf8;
    border-radius:20px;
    background:#fff;
    padding:16px;
    display:grid;
    grid-template-columns:48px 1fr;
    gap:14px;
    align-items:center;
    text-align:left;
    color:var(--mobile-navy);
    font:inherit;
    box-shadow:0 14px 30px rgba(11,59,136,.06);
}

.mobile-home-action-card i{
    width:48px;
    height:48px;
    border-radius:16px;
    display:grid;
    place-items:center;
    background:#eef5ff;
    color:var(--mobile-blue);
    font-size:20px;
}

.mobile-home-action-card strong{
    display:block;
}

.mobile-home-action-card span{
    display:block;
    margin-top:4px;
    color:var(--mobile-muted);
    font-size:14px;
}

.mobile-home-vehicle-card{
    display:flex;
    align-items:center;
    gap:14px;
    padding:14px;
    border-radius:20px;
    border:1px solid #e4edf8;
    background:#fff;
}

.mobile-home-vehicle-card.active{
    border-color:#9dc3ff;
    box-shadow:0 0 0 3px rgba(21,109,255,.08);
}

.mobile-home-vehicle-card img{
    width:88px;
    height:64px;
    object-fit:contain;
    padding:8px;
    border-radius:18px;
    background:#f5f9ff;
}

.mobile-home-vehicle-card strong{
    display:block;
    color:var(--mobile-navy);
}

.mobile-home-vehicle-card p{
    margin:4px 0;
    color:var(--mobile-muted);
}

.mobile-home-vehicle-card small{
    color:var(--mobile-muted);
}

.mobile-home-empty,
.mobile-home-empty-list{
    display:grid;
    gap:8px;
    padding:18px;
    border-radius:22px;
    background:#f8fbff;
    border:1px dashed #cfdcf0;
}

.mobile-home-empty p,
.mobile-home-empty-list p{
    margin:0;
    color:var(--mobile-muted);
    line-height:1.6;
}

.mobile-reports-hero{
    background:
        radial-gradient(circle at top right, rgba(21,109,255,.12), transparent 30%),
        linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(246,250,255,.94) 100%);
}

.mobile-reports-title{
    margin-bottom:0;
}

.mobile-reports-vehicle{
    margin-top:22px;
}

.mobile-reports-trend{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:14px;
    align-items:end;
}

.mobile-reports-trend-item{
    display:grid;
    gap:10px;
    justify-items:center;
}

.mobile-reports-trend-item strong{
    color:var(--mobile-navy);
    font-size:14px;
    text-align:center;
}

.mobile-reports-trend-item small{
    color:var(--mobile-muted);
    font-size:13px;
    font-weight:700;
}

.mobile-reports-trend-bar{
    width:100%;
    height:132px;
    border-radius:20px;
    padding:10px;
    background:linear-gradient(180deg,#f8fbff 0%,#ebf2fb 100%);
    display:flex;
    align-items:flex-end;
}

.mobile-reports-trend-bar span{
    display:block;
    width:100%;
    border-radius:14px;
    background:linear-gradient(180deg,#2b84ff 0%,#0d62df 100%);
    box-shadow:0 12px 22px rgba(21,109,255,.18);
}

.mobile-reports-note{
    margin-top:16px;
}

.mobile-reports-suggestion-list,
.mobile-reports-archive-list{
    display:grid;
    gap:12px;
    margin-top:14px;
}

.mobile-reports-suggestion-card{
    padding:16px;
    border-radius:20px;
    border:1px solid #e5edf8;
    background:#fbfdff;
    display:grid;
    gap:10px;
}

.mobile-reports-suggestion-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.mobile-reports-suggestion-top strong{
    color:var(--mobile-blue);
    font-size:18px;
}

.mobile-reports-suggestion-card h3{
    margin:0;
    color:var(--mobile-navy);
}

.mobile-reports-suggestion-card p{
    margin:0;
    color:var(--mobile-muted);
    line-height:1.6;
}

@media(max-width:380px){
    .mobile-home-hero-top,
    .mobile-home-vehicle,
    .mobile-home-reminder-spotlight{
        display:grid;
    }

    .mobile-home-link,
    .mobile-home-reminder-badge{
        justify-self:start;
    }

    .mobile-home-vehicle-art{
        width:100%;
        height:110px;
    }

    .mobile-reports-trend{
        grid-template-columns:repeat(2, minmax(0,1fr));
    }
}

.theme-dark body,
body.theme-dark{
    background:#08111f;
}

.theme-dark .sidebar,
.theme-dark .panel,
.theme-dark .kpi,
.theme-dark .vehicle-card,
.theme-dark .summary-card,
.theme-dark .vehicle-chip,
.theme-dark .quick,
.theme-dark .search,
.theme-dark .user-mini,
.theme-dark .pro-card,
.theme-dark .payment,
.theme-dark .auth-card,
.theme-dark .auth-shell,
.theme-dark .auth-note,
.theme-dark .checkout-summary,
.theme-dark .checkout-price-breakdown,
.theme-dark .switch-chip span,
.theme-dark .sidebar-ad,
.theme-dark .table,
.theme-dark .dataTables_wrapper .dataTables_filter input,
.theme-dark .dataTables_wrapper .dataTables_length select,
.theme-dark .mobile-drawer{
    background:#0e1828 !important;
    color:#d7e4f6 !important;
    border-color:#22324b !important;
}

.theme-dark .mobile-hub-sheet,
.theme-dark .mobile-form-card,
.theme-dark .mobile-sheet-close,
.theme-dark .mobile-hub-action,
.theme-dark .mobile-hub-links a{
    background:#101a2b !important;
    color:#e6eefb !important;
    border-color:#22324b !important;
}

.theme-dark .mobile-sheet-handle{
    background:#2d4264;
}

.theme-dark .main,
.theme-dark .app,
.theme-dark .hero,
.theme-dark .page-hero,
.theme-dark .auth-page,
.theme-dark .pricing,
.theme-dark .trust,
.theme-dark .footer{
    background:#08111f !important;
}

.theme-dark .table th,
.theme-dark .table td,
.theme-dark .setting-row,
.theme-dark .mini-record-item,
.theme-dark .reminder,
.theme-dark .expense,
.theme-dark .switch-row,
.theme-dark .mobile-setting-row{
    border-color:#1b2a43 !important;
}

.theme-dark .search input,
.theme-dark .form input,
.theme-dark .form select,
.theme-dark .form textarea,
.theme-dark .auth-card input,
.theme-dark .vehicle-switch-form select,
.theme-dark .package-upgrade-actions select,
.theme-dark .package-upgrade-actions input,
.theme-dark .pricing-action-form input,
.theme-dark .pricing-action-form select,
.theme-dark .admin-search-form input{
    background:#0a1422 !important;
    color:#d7e4f6 !important;
    border-color:#22324b !important;
}

.theme-dark .page-head p,
.theme-dark p,
.theme-dark small,
.theme-dark .proof-text,
.theme-dark .vehicle-empty-copy,
.theme-dark .mobile-title-group p,
.theme-dark .mobile-auth-copy p,
.theme-dark .mobile-legal-copy,
.theme-dark .mobile-list-item p,
.theme-dark .mobile-reminder-item p,
.theme-dark .mobile-setting-row p{
    color:#8fa7cb !important;
}

.theme-dark .mobile-app-shell{
    background:
        radial-gradient(circle at top left, rgba(23,75,168,.28), transparent 32%),
        radial-gradient(circle at top right, rgba(16,46,112,.32), transparent 28%),
        linear-gradient(180deg,#08111f 0%, #0a1320 100%);
}

.theme-dark .mobile-statusbar,
.theme-dark .mobile-title-group h1,
.theme-dark .mobile-center-title,
.theme-dark .mobile-onboard-copy h1,
.theme-dark .mobile-panel-title h2,
.theme-dark .mobile-vehicle-pill h3,
.theme-dark .mobile-profile-card h3,
.theme-dark .mobile-setting-row h3,
.theme-dark .mobile-kpi-card strong,
.theme-dark .mobile-title-inline,
.theme-dark .mobile-auth-copy h2,
.theme-dark .mobile-onboard-copy p{
    color:#edf4ff !important;
}

.theme-dark .mobile-card,
.theme-dark .mobile-primary-btn + .mobile-secondary-btn,
.theme-dark .mobile-input,
.theme-dark .mobile-select,
.theme-dark .mobile-textarea,
.theme-dark .mobile-search,
.theme-dark .mobile-filter-btn,
.theme-dark .mobile-quick-card,
.theme-dark .mobile-doc-upload,
.theme-dark .mobile-bottom-nav,
.theme-dark .mobile-back{
    background:#0d1827 !important;
    color:#d7e4f6 !important;
    border-color:#1e2d46 !important;
    box-shadow:0 18px 50px rgba(0,0,0,.28);
}

.theme-dark .mobile-overview-card,
.theme-dark .mobile-form-section,
.theme-dark .mobile-action-card,
.theme-dark .mobile-shortcut-card,
.theme-dark .mobile-auth-checkitem{
    background:#0d1827 !important;
    border-color:#1f304a !important;
}

.theme-dark .mobile-donut:after,
.theme-dark .mobile-segment,
.theme-dark .mobile-tab-switch .active{
    background:#0b1523 !important;
    color:#edf4ff !important;
    border-color:#20314d !important;
}

.theme-dark .mobile-kpi-card small,
.theme-dark .mobile-field-meta,
.theme-dark .mobile-calendar-grid small,
.theme-dark .mobile-check,
.theme-dark .mobile-search input::placeholder,
.theme-dark .mobile-input::placeholder,
.theme-dark .mobile-textarea::placeholder{
    color:#8fa7cb !important;
}

.theme-dark .mobile-overview-card p,
.theme-dark .mobile-form-section-head p,
.theme-dark .mobile-action-card p,
.theme-dark .mobile-shortcut-card span,
.theme-dark .mobile-auth-checkitem p{
    color:#8fa7cb !important;
}

.theme-dark .mobile-overview-card strong,
.theme-dark .mobile-form-section-head h2,
.theme-dark .mobile-action-card strong,
.theme-dark .mobile-shortcut-card strong,
.theme-dark .mobile-auth-checkitem strong{
    color:#edf4ff !important;
}

.theme-dark .mobile-bottom-nav .center{
    color:#fff !important;
}

.theme-dark .home-hero-panel,
.theme-dark .reports-hero-panel,
.theme-dark .home-vehicle-spotlight-card,
.theme-dark .reports-vehicle-card,
.theme-dark .reports-score-card,
.theme-dark .reports-summary-card,
.theme-dark .reports-inline-metric,
.theme-dark .reports-top-category,
.theme-dark .reports-mini-suggestion,
.theme-dark .reports-archive-empty,
.theme-dark .home-insight-pill,
.theme-dark .home-story-kpi,
.theme-dark .home-summary-stat,
.theme-dark .home-reminder-spotlight,
.theme-dark .home-empty-card,
.theme-dark .home-action-card,
.theme-dark .home-vehicle-card,
.theme-dark .mobile-home-link,
.theme-dark .mobile-home-vehicle,
.theme-dark .mobile-home-stat,
.theme-dark .mobile-home-highlight,
.theme-dark .mobile-home-action-card,
.theme-dark .mobile-home-vehicle-card,
.theme-dark .mobile-home-empty,
.theme-dark .mobile-home-empty-list{
    background:#0d1827 !important;
    color:#d7e4f6 !important;
    border-color:#1f304a !important;
}

.theme-dark .home-vehicle-spotlight-media,
.theme-dark .reports-vehicle-media,
.theme-dark .reports-trend-bar,
.theme-dark .mobile-home-vehicle-art,
.theme-dark .mobile-home-vehicle-card img{
    background:#0b1523 !important;
}

.theme-dark .mobile-reports-suggestion-card{
    background:#0d1827 !important;
    border-color:#1f304a !important;
}

.theme-dark .home-action-card p,
.theme-dark .reports-hero-copy p,
.theme-dark .reports-score-card span,
.theme-dark .reports-summary-card span,
.theme-dark .reports-inline-metric span,
.theme-dark .reports-top-category span,
.theme-dark .reports-category-copy small,
.theme-dark .reports-category-meta small,
.theme-dark .reports-note-item small,
.theme-dark .reports-mini-suggestion p,
.theme-dark .reports-archive-row small,
.theme-dark .reports-archive-row span,
.theme-dark .home-category-copy small,
.theme-dark .home-category-value small,
.theme-dark .home-reminder-spotlight p,
.theme-dark .home-insight-pill span,
.theme-dark .home-story-kpi span,
.theme-dark .home-summary-stat span,
.theme-dark .mobile-home-vehicle-copy p,
.theme-dark .mobile-home-stat span,
.theme-dark .mobile-home-highlight small,
.theme-dark .mobile-home-category-copy small,
.theme-dark .mobile-home-reminder-spotlight p,
.theme-dark .mobile-home-action-card span,
.theme-dark .mobile-home-vehicle-card p,
.theme-dark .mobile-home-vehicle-card small,
.theme-dark .mobile-home-empty p,
.theme-dark .mobile-home-empty-list p,
.theme-dark .mobile-reports-suggestion-card p,
.theme-dark .mobile-reports-trend-item small{
    color:#8fa7cb !important;
}

.theme-dark .home-insight-pill strong,
.theme-dark .reports-vehicle-top h2,
.theme-dark .reports-score-card strong,
.theme-dark .reports-summary-card strong,
.theme-dark .reports-inline-metric strong,
.theme-dark .reports-top-category strong,
.theme-dark .reports-category-copy strong,
.theme-dark .reports-note-item b,
.theme-dark .reports-mini-suggestion h3,
.theme-dark .reports-archive-row strong,
.theme-dark .reports-trend-column strong,
.theme-dark .home-story-kpi strong,
.theme-dark .home-summary-stat strong,
.theme-dark .home-hero-metric strong,
.theme-dark .home-category-copy strong,
.theme-dark .home-reminder-spotlight strong,
.theme-dark .home-vehicle-card h3,
.theme-dark .mobile-home-vehicle-copy h2,
.theme-dark .mobile-home-stat strong,
.theme-dark .mobile-home-highlight strong,
.theme-dark .mobile-home-category-copy strong,
.theme-dark .mobile-home-reminder-spotlight strong,
.theme-dark .mobile-home-vehicle-card strong,
.theme-dark .mobile-reports-trend-item strong,
.theme-dark .mobile-reports-suggestion-card h3{
    color:#edf4ff !important;
}

.theme-dark .mobile-bottom-nav .mobile-bottom-link{
    color:#91a7ca !important;
}

.theme-dark .mobile-bottom-nav .mobile-bottom-link.active{
    background:linear-gradient(180deg,#102033 0,#12263d 100%) !important;
    color:#edf4ff !important;
    box-shadow:inset 0 0 0 1px rgba(46,79,122,.95);
}

.theme-dark .mobile-bottom-nav .mobile-bottom-link.active .nav-icon-wrap{
    background:#0b1523 !important;
    color:#7db4ff !important;
    box-shadow:0 10px 18px rgba(0,0,0,.22);
}

.theme-dark .mobile-secondary-btn,
.theme-dark .mobile-social-btn,
.theme-dark .mobile-support-link{
    background:#0d1827 !important;
    color:#7eb4ff !important;
    border-color:#20314d !important;
}

.mobile-expense-hero .mobile-panel-title a{color:#156dff;font-weight:800}
.mobile-expense-hero-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:16px}
.mobile-expense-hero-head strong{display:block;font-size:30px;line-height:1.1;color:#132a50}
.mobile-expense-hero-head p{margin:8px 0 0;color:#617690}
.mobile-expense-breakdown-list,.mobile-expense-list{display:grid;gap:14px}
.mobile-expense-breakdown-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid #edf3fa}
.mobile-expense-breakdown-row:last-child{border-bottom:0;padding-bottom:0}
.mobile-expense-breakdown-row strong{display:block;color:#17315a}
.mobile-expense-breakdown-row small{color:#7487a1}
.mobile-expense-item{padding:16px;border:1px solid #e5eef9;border-radius:22px;background:#fbfdff;display:grid;gap:12px}
.mobile-expense-item-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.mobile-expense-item-head strong{display:block;color:#132a50;font-size:18px}
.mobile-expense-item-head p{margin:6px 0 0;color:#667b97}
.mobile-expense-item-head b{font-size:22px;color:#132a50;letter-spacing:-.6px}
.mobile-expense-chip-row{display:flex;flex-wrap:wrap;gap:8px}
.mobile-expense-meta{display:flex;flex-wrap:wrap;gap:10px;color:#4f6686;font-weight:700}
.mobile-expense-note{margin:0;color:#47617e;line-height:1.6}
.mobile-expense-empty h2{margin:0 0 8px}
.mobile-expense-empty p{margin:0 0 16px;color:#667b97}
.mobile-reminder-hero .mobile-panel-title a{color:#156dff;font-weight:800}
.mobile-reminder-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mobile-reminder-kpi{padding:16px;border:1px solid #e5eef9;border-radius:20px;background:#fbfdff;display:grid;gap:6px}
.mobile-reminder-kpi small{color:#6f84a2;font-weight:700}
.mobile-reminder-kpi strong{font-size:28px;letter-spacing:-.8px;color:#132a50}
.mobile-reminder-kpi span{color:#5f7593;font-size:13px;line-height:1.45}
.mobile-reminder-kpi.is-warn{background:#fffaf3;border-color:#f7dfbd}
.mobile-reminder-kpi.is-danger{background:#fff5f6;border-color:#f6d7dc}
.mobile-reminder-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.mobile-reminder-actions .mobile-secondary-btn{margin-top:0}
.mobile-reminder-focus{display:grid;gap:12px}
.mobile-reminder-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mobile-preference-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mobile-notification-item{align-items:flex-start}
.mobile-notification-item .mobile-icon-badge{margin-top:2px}
.mobile-profile-hero{display:grid;grid-template-columns:88px 1fr;gap:16px;align-items:center}
.mobile-profile-avatar{width:88px;height:88px;border-radius:28px;display:grid;place-items:center;background:linear-gradient(135deg,#f5d4cb,#dcecff);font-size:28px;font-weight:800;color:#17315a;background-size:cover;background-position:center center;overflow:hidden}
.mobile-profile-avatar.has-photo{color:transparent}
.mobile-profile-hero h2{margin:0 0 8px;font-size:24px;letter-spacing:-.5px;color:#132a50}
.mobile-profile-hero p{margin:0;color:#607492}
.mobile-profile-preview{margin-top:14px}
.mobile-profile-preview img{width:100%;max-height:220px;object-fit:cover;border-radius:20px;border:1px solid #e5eef9}
.mobile-profile-hero-card .mobile-card-body{display:grid;gap:8px}
.theme-dark .mobile-profile-hero h2{color:#e6eefb}
.theme-dark .mobile-profile-hero p{color:#8ea4c1}
.theme-dark .mobile-profile-preview img{border-color:#22324b}

@media (max-width: 440px){
    .mobile-app-shell{padding-left:14px;padding-right:14px}
    .mobile-frame{max-width:100%}
    .mobile-kpi-grid.cols-3{grid-template-columns:1fr}
    .mobile-quick-grid{grid-template-columns:repeat(2,1fr)}
    .mobile-donut-wrap{grid-template-columns:1fr}
    .mobile-donut{margin:0 auto}
    .mobile-simple-list .item{grid-template-columns:78px 1fr}
    .mobile-simple-list .item > :last-child{grid-column:2/3}
    .mobile-expense-hero-head,.mobile-expense-item-head{display:grid}
    .mobile-reminder-kpi-grid,.mobile-reminder-form-grid,.mobile-preference-grid{grid-template-columns:1fr}
}
