/* Consistent responsive behavior for every app view */
html{min-width:320px}.content{width:100%}.panel{min-width:0}.dashboard-grid>*,.dashboard-grid>div{min-width:0}.auth-card,.auth-panel,.auth-intro{min-width:0}.table-scroll{width:100%;-webkit-overflow-scrolling:touch}.table-scroll::-webkit-scrollbar{height:5px}.table-scroll::-webkit-scrollbar-thumb{background:#b9beb9;border-radius:4px}.data-table{white-space:nowrap}.modal{overscroll-behavior:contain}.btn{white-space:nowrap}.sidebar{overscroll-behavior:contain}

/* Comfortable desktop scale */
@media(min-width:1300px){.content{padding-left:48px;padding-right:48px}.dashboard-grid{gap:28px}.panel{padding:20px}.auth-intro{padding-left:clamp(58px,8vw,150px);padding-right:clamp(58px,8vw,150px)}}

/* Tablet: collapsible navigation, reflowed summaries and two-column utility panels */
@media(max-width:1100px){.app-shell{grid-template-columns:1fr}.sidebar{transform:translateX(-100%);width:270px;padding:20px 16px;transition:transform .25s ease}.sidebar.open{transform:translateX(0)}main{grid-column:1}.topbar{padding:0 28px;justify-content:space-between}.menu-toggle,.mobile-brand{display:block}.mobile-brand{font-size:12px;color:#f4efe6;font-weight:700;letter-spacing:1.25px}.content{padding:28px}.dashboard-grid{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:20px}.account-row{grid-template-columns:36px minmax(120px,1fr) 35px 110px 10px}.auth-shell{grid-template-columns:minmax(360px,42%) 1fr}.auth-intro{padding:44px}.auth-brand img{width:280px}}

@media(max-width:820px){.auth-shell{grid-template-columns:1fr}.auth-intro{min-height:300px;padding:34px 42px}.auth-brand img{height:76px;width:245px}.auth-copy{margin:30px 0 0}.auth-copy h1{font-size:38px}.auth-copy>p:last-child,.auth-security{display:none}.auth-panel{min-height:auto;padding:42px 28px}.auth-mobile-logo{display:none}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid>div:nth-child(2){display:grid;grid-template-columns:1fr 1fr;gap:18px}.dashboard-grid>div:nth-child(2) .panel{margin:0}.dashboard-grid>div:nth-child(2) .panel:last-child{grid-column:1/-1}.form-grid{gap:14px}.welcome-row{gap:18px}.table-actions{align-items:center}.modal{width:min(620px,calc(100% - 40px))}}

/* Phone: a single-column, touch-friendly banking experience */
@media(max-width:600px){body{font-size:13px}.topbar{height:62px;padding:0 15px}.top-actions{gap:11px}.icon-btn{font-size:19px}.content{padding:21px 14px 36px}.page-title{font-size:25px}.subtitle{font-size:12px;line-height:1.45}.welcome-row{display:block;margin-bottom:19px}.action-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.action-row .btn{width:100%;padding:10px 7px;font-size:9px}.panel{padding:14px;border-radius:5px}.panel+.panel{margin-top:14px}.section-heading{margin-bottom:11px}.section-heading h2{font-size:15px}.account-row{grid-template-columns:32px minmax(0,1fr) auto;padding:11px 4px;gap:8px}.account-row .currency,.account-row .arrow{display:none}.account-row .amount{font-size:11px;max-width:110px}.account-name{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-no{font-size:9px}.bank-icon{width:27px;height:27px;font-size:14px}.transaction-row{grid-template-columns:31px minmax(0,1fr) auto;padding:11px 3px;gap:7px}.tx-icon{width:27px;height:27px;font-size:11px}.tx-name{font-size:11px;max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tx-date{font-size:9px}.transaction-row .amount{font-size:10px;max-width:105px}.portfolio-value{font-size:21px}.chart-wrap{height:100px}.quick-grid{gap:6px}.quick{min-height:70px;font-size:9px;padding:7px 3px}.quick i{font-size:18px;margin-bottom:5px}.notice{padding:10px;font-size:9px}.dashboard-grid>div:nth-child(2){display:block}.dashboard-grid>div:nth-child(2) .panel{margin-top:14px}.dashboard-grid>div:nth-child(2) .panel:first-child{margin-top:0}.table-actions{display:grid;grid-template-columns:1fr auto;gap:8px}.search{min-width:0;width:100%;margin:0}.filter{max-width:145px}.data-table{min-width:560px;font-size:11px}.data-table th,.data-table td{padding:11px 8px}.form-grid{grid-template-columns:1fr;gap:12px}.field.full{grid-column:auto}.field input,.field select,.field textarea{font-size:16px;padding:11px}.modal{width:calc(100% - 22px);padding:20px 16px;max-height:90vh;border-radius:7px}.modal h2{font-size:21px}.modal-footer{display:grid;grid-template-columns:1fr 1fr;gap:8px}.modal-footer .btn{width:100%;padding:11px 6px;font-size:9px}.dropdown.notifications{right:8px;top:54px;width:calc(100vw - 16px);min-width:0}.profile-menu{right:0;top:43px}.sidebar{width:min(286px,86vw)}.brand img{width:178px}.nav-item{padding:10px}.auth-intro{display:none}.auth-shell{display:block}.auth-panel{min-height:100svh;padding:25px 20px;align-items:start}.auth-card{margin:auto}.auth-mobile-logo{display:block;width:220px;height:86px;object-fit:contain;object-position:left center;margin:0 0 23px}.auth-card h2{font-size:26px}.auth-form{margin-top:23px;gap:13px}.auth-options{gap:8px;align-items:flex-start}.auth-options .text-link{padding:0;text-align:right}.auth-submit{min-height:45px}.auth-switch{line-height:1.6}.terms{align-items:flex-start}.terms input{margin-top:2px}}

@media(max-width:380px){.content{padding-left:11px;padding-right:11px}.action-row{grid-template-columns:1fr}.account-row .amount small{display:none}.tx-name{max-width:120px}.quick{min-height:66px}.profile{gap:5px}.auth-panel{padding:22px 16px}.auth-card h2{font-size:24px}.table-actions{grid-template-columns:1fr}.filter{max-width:none}}
