:root{color:#10233f;background:#eef4fb;font-family:Inter,PingFang SC,sans-serif}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}.app-shell{background:#f7faff;width:min(100%,480px);min-height:100vh;margin:auto;padding:20px 18px 90px}.hero{color:#fff;background:linear-gradient(145deg,#0754d8,#38a8f8);border-radius:26px;padding:28px;box-shadow:0 20px 50px #0a60d62f}.hero h1{margin:8px 0 28px;font-size:28px}.hero strong{font-size:38px;display:block}.hero small{font-size:14px}.hero p:last-child{opacity:.76;margin-bottom:0;font-size:13px}.eyebrow{letter-spacing:.15em;color:#76aaf8;margin:0;font-size:11px;font-weight:800}.hero .eyebrow{color:#bfe2ff}.actions{grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0;display:grid}.actions a,.card,.page{background:#fff;border-radius:18px;padding:20px;box-shadow:0 10px 30px #173b6710}.actions a{text-align:center;font-weight:700}.card h2{font-size:18px}.card p,.page p{color:#6d7d91;line-height:1.6}.page{min-height:70vh;padding-top:42px}.page h1{font-size:32px}.bottom-nav{color:#a9bedc;background:#102f5e;border-radius:18px;justify-content:space-around;width:min(100% - 28px,450px);padding:16px 10px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 14px 35px #071d3a44}.bottom-nav a.router-link-active{color:#fff;font-weight:700}.auth-page{flex-direction:column;justify-content:center;min-height:calc(100vh - 40px);padding:24px;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#0754d8,#38a8f8);border-radius:18px;place-items:center;width:56px;height:56px;margin-bottom:22px;font-size:28px;font-weight:800;display:grid;box-shadow:0 14px 30px #0a60d62f}.auth-page h1{margin:8px 0;font-size:34px}.auth-intro{color:#73839a;margin-top:0}.auth-form{gap:18px;margin-top:24px;display:grid}.auth-form label{gap:8px;font-size:13px;font-weight:700;display:grid}.auth-form input{width:100%;font:inherit;border:1px solid #dbe5f0;border-radius:13px;outline:none;padding:15px 16px}.auth-form input:focus{border-color:#287ce2;box-shadow:0 0 0 3px #287ce218}.auth-form button{color:#fff;font:inherit;cursor:pointer;background:#1265d6;border:0;border-radius:13px;padding:16px;font-weight:800}.auth-form button:disabled{opacity:.65}.form-error{color:#b12e2e;background:#fff0f0;border-radius:10px;margin:0;padding:12px;font-size:13px}.text-button{color:#1765cb;font:inherit;cursor:pointer;background:0 0;border:0}.auth-page>.text-button{margin-top:20px}.sign-out{margin:24px auto;display:block}.content-page{padding-bottom:20px}.page-title{justify-content:space-between;align-items:center;min-height:84px;display:flex}.page-title h1{margin:6px 0 0;font-size:30px}.page-title>a,.page-title>span{color:#47708f;font-size:13px}.panel{background:#fff;border-radius:18px;padding:20px;box-shadow:0 10px 30px #173b6710}.form-grid{gap:16px;display:grid}.form-grid label{color:#4c617b;gap:8px;font-size:13px;font-weight:700;display:grid}.form-grid input,.form-grid textarea{width:100%;font:inherit;border:1px solid #dbe5f0;border-radius:12px;outline:none;padding:14px}.form-grid textarea{resize:vertical;min-height:76px}.form-grid input:focus,.form-grid textarea:focus{border-color:#287ce2}.primary-button,.outline-button{font:inherit;cursor:pointer;border-radius:12px;padding:15px;font-weight:800}.primary-button{color:#fff;background:#1265d6;border:0}.primary-button:disabled{opacity:.6}.outline-button{color:#284665;background:#fff;border:1px solid #cdd9e8}.full{width:100%}.address-card{color:#fff;background:#112f59;border-radius:18px;margin-bottom:16px;padding:22px}.address-card span{color:#9ab6d9;font-size:12px;display:block}.address-card strong{overflow-wrap:anywhere;margin:13px 0;font-size:14px;display:block}.address-card button{color:#69b7ff;cursor:pointer;background:0 0;border:0;padding:0}.address-card button:disabled{color:#77879a}.success-message{color:#147044;background:#eaf9f1;border-radius:10px;margin:0;padding:12px;font-size:13px}.hint{color:#78899c;margin:0;font-size:12px;line-height:1.6}.fee-line{background:#f3f7fb;border-radius:10px;justify-content:space-between;padding:14px;display:flex}.section-heading{margin:28px 0 12px}.section-heading h2{font-size:18px}.order-list,.news-list{gap:12px;display:grid}.order-item{background:#fff;border-radius:15px;grid-template-columns:1fr auto;gap:8px 12px;padding:17px;display:grid;box-shadow:0 8px 24px #173b670c}.order-item div{gap:4px;display:grid}.order-item div span,.order-item small{color:#8491a3;font-size:11px}.order-item em{color:#55708e;background:#eef3f8;border-radius:8px;align-self:start;padding:4px 8px;font-size:11px;font-style:normal}.order-item p{color:#7a5360;overflow-wrap:anywhere;grid-column:1/-1;margin:0;font-size:12px}.status-pending{color:#a76b00!important;background:#fff5df!important}.status-approved,.status-paid{color:#147044!important;background:#e8f8ef!important}.status-rejected{color:#ad3333!important;background:#ffeded!important}.empty{text-align:center;color:#8c9aad;padding:50px 20px}.tabs{background:#e7eef7;border-radius:12px;grid-template-columns:1fr 1fr;margin-bottom:18px;padding:4px;display:grid}.tabs button{color:#60758e;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:11px}.tabs button.active{color:#125ec5;background:#fff;font-weight:800;box-shadow:0 3px 12px #173b6713}.news-list .panel small{color:#8a99aa}.news-list h2{margin:10px 0;font-size:18px}.news-list p{white-space:pre-wrap;color:#5d7087;line-height:1.7}.profile-card{align-items:center;gap:16px;padding:24px 4px;display:flex}.avatar{color:#fff;background:linear-gradient(145deg,#0754d8,#38a8f8);border-radius:20px;place-items:center;width:58px;height:58px;font-size:24px;font-weight:800;display:grid}.profile-card h1{margin:0 0 6px}.profile-card p{color:#7b8a9e;margin:0;font-size:13px}.balance-strip{background:#dce6f1;border-radius:18px;grid-template-columns:1fr 1fr;gap:1px;margin-bottom:18px;display:grid;overflow:hidden}.balance-strip div{background:#fff;padding:20px}.balance-strip span{color:#7d8ca0;font-size:12px;display:block}.balance-strip strong{margin-top:8px;font-size:22px;display:block}.menu-list{background:#fff;border-radius:18px;margin-bottom:18px;display:grid;overflow:hidden}.menu-list a{border-bottom:1px solid #eef2f6;justify-content:space-between;padding:18px;display:flex}.menu-list a:last-child{border:0}.menu-list span{color:#9cabbc;font-size:22px}
