*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial,sans-serif;
}

body{
background:#040608;
color:white;
}

.page{
display:none;
min-height:100vh;
padding:0;
}

.page.active{
display:block;
}

.login-container{
max-width:420px;
margin:auto;
padding-top:80px;
}

.logo{
text-align:center;
font-size:28px;
font-weight:bold;
margin-bottom:10px;
}

.sub{
text-align:center;
color:#666;
margin-bottom:30px;
}

.card{
background:white;
border-radius:16px;
padding:20px;
box-shadow:0 2px 10px rgba(0,0,0,.08);
}

label{
display:block;
margin-bottom:8px;
font-size:14px;
font-weight:bold;
}

input{
width:100%;
height:50px;
padding:0 15px;
border:1px solid #ddd;
border-radius:10px;
margin-bottom:15px;
font-size:16px;
}

button{
width:100%;
height:52px;
border:none;
border-radius:10px;
font-size:16px;
font-weight:bold;
cursor:pointer;
}

.btn-login{
background:#2563eb;
color:white;
}

.btn-logout{
background:#ef4444;
color:white;
margin-top:20px;
}

.dashboard-card{
background:#0c111b;
padding:18px;
border-radius:24px;
margin-top:12px;
border:1px solid rgba(255,255,255,.05);
}

.message{
margin-top:10px;
text-align:center;
font-size:14px;
color:red;
}

.dashboard-header{
margin-bottom:20px;
}

.dashboard-title{
font-size:26px;
font-weight:800;
}

.dashboard-subtitle{
color:#9ca3af;
margin-top:5px;
}

.summary-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:12px;
}

.summary-card{
background:#0c111b;
border-radius:24px;
padding:18px;
border:1px solid rgba(255,255,255,.05);
min-height:130px;
}

.summary-icon{
font-size:28px;
margin-bottom:12px;
}

.summary-label{
font-size:12px;
color:#9ca3af;
font-weight:bold;
}

.summary-value{
font-size:20px;
font-weight:800;
margin-top:8px;
}

.bottom-nav{
position:fixed;
bottom:0;
left:0;
right:0;
height:80px;
background:#0c111b;
display:flex;
justify-content:space-around;
align-items:center;
border-top:1px solid rgba(255,255,255,.05);
z-index:999;
}

.bottom-nav button{
background:none;
border:none;
color:white;
font-size:12px;
width:auto;
height:auto;
display:flex;
flex-direction:column;
align-items:center;
gap:4px;
}

.fab{
width:60px;
height:60px;
border-radius:50%;
background:#2563eb;
color:white;
font-size:28px;
border:none;
margin-top:-30px;
}

.login-logo{
text-align:center;
margin-bottom:20px;
}

.login-logo img{
width:90px;
height:90px;
object-fit:contain;
border-radius:50%;
background:white;
padding:5px;
}

.password-wrapper{
position:relative;
}

.password-wrapper input{
padding-right:50px;
}

.toggle-password{
position:absolute;
right:15px;
top:15px;
cursor:pointer;
font-size:20px;
}

.login-footer{
text-align:center;
margin-top:20px;
font-size:12px;
color:#666;
}

.card{
background:#0c111b;
border:1px solid rgba(255,255,255,.05);
color:white;
}

input{
background:#040608;
color:white;
border:1px solid rgba(255,255,255,.08);
}

input::placeholder{
color:#666;
}

.btn-login{
background:#2563eb;
transition:.2s;
}

.btn-login:hover{
transform:translateY(-2px);
}

.dashboard-page{
padding-bottom:100px;
}

.dashboard-header{
margin-bottom:20px;
}

.dashboard-greeting{
font-size:28px;
font-weight:800;
}

.dashboard-subtitle{
margin-top:5px;
color:#9ca3af;
font-size:14px;
}

.section-title{
font-size:13px;
font-weight:700;
color:#9ca3af;
margin-bottom:15px;
}

.status-row{
display:flex;
justify-content:space-between;
padding:10px 0;
border-bottom:1px solid rgba(255,255,255,.05);
}

.status-row:last-child{
border-bottom:none;
}

.payment-group{
margin-top:15px;
font-weight:700;
font-size:13px;
color:#9ca3af;
}

.payment-empty{
padding:10px 0;
font-size:14px;
}

.top-header{
display:flex;
justify-content:space-between;
align-items:center;
padding:12px 0 20px;
margin-bottom:10px;
}

.header-left{
display:flex;
align-items:center;
gap:12px;
}

.menu-btn{
width:42px;
height:42px;
border:none;
border-radius:12px;
background:#0c111b;
color:white;
font-size:20px;
cursor:pointer;
}

.header-title{
font-size:18px;
font-weight:800;
}

.header-subtitle{
font-size:12px;
color:#9ca3af;
margin-top:2px;
}

.header-right{
display:flex;
align-items:center;
gap:10px;
}

.header-user{
font-size:14px;
font-weight:600;
color:white;
}

.logout-btn{
width:42px;
height:42px;
border:none;
border-radius:12px;
background:#ef4444;
color:white;
font-size:18px;
cursor:pointer;
}

.page-header{
margin-bottom:20px;
}

.page-title{
font-size:24px;
font-weight:800;
}

.page-subtitle{
margin-top:5px;
font-size:14px;
color:#9ca3af;
}

.quick-input{
width:100%;
height:120px;
resize:none;
padding:15px;
border-radius:12px;
border:1px solid rgba(255,255,255,.08);
background:#040608;
color:white;
margin-bottom:12px;
}

.btn-primary{
width:100%;
height:50px;
border:none;
border-radius:12px;
background:#2563eb;
color:white;
font-weight:700;
}

.inbox-title{
font-weight:700;
margin-bottom:8px;
}

.inbox-value{
font-size:18px;
font-weight:800;
}

.plus{
color:#22e86f;
}

.minus{
color:#ff6666;
}

.page-content{
padding-bottom:100px;
}

.mini-text{
margin-top:6px;
font-size:12px;
color:#9ca3af;
}

.payment-item{
display:flex;
justify-content:space-between;
padding:12px 0;
font-weight:600;
}

.setting-row{
display:flex;
justify-content:space-between;
padding:12px 0;
border-bottom:1px solid rgba(255,255,255,.05);
}

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

.btn-danger{
width:100%;
height:50px;
border:none;
border-radius:12px;
background:#ef4444;
color:white;
font-weight:700;
cursor:pointer;
}

#header{
padding:0 16px;
}

#app{
padding:0 16px;
}
