:root{--blue:#162f92;--yellow:#ffeb00;--cream:#fff7e8;--ink:#18346f;--line:#d5dffa;--pale:#f3f6ff;--muted:#5b6c92;--green:#198251;--warn:#fff7dd}*{box-sizing:border-box}body{margin:0;background:var(--cream);font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:var(--ink);line-height:1.45}.site{max-width:900px;margin:0 auto;padding:22px 22px 14px}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.brand{background:var(--yellow);color:#170e90;border:4px solid #170e90;border-radius:40px;font-weight:900;font-size:clamp(1rem,3.6vw,1.4rem);padding:5px 15px;white-space:nowrap}.chip{background:#eaf0ff;color:var(--blue);padding:8px 13px;border-radius:50px;font-weight:800;letter-spacing:.07em;font-size:.65rem}.login-layout{min-height:69vh;display:flex;align-items:center;justify-content:center;position:relative;padding:18px 0}.login-panel{width:min(100%,520px);background:white;border-radius:24px;padding:30px 32px;box-shadow:0 10px 40px #172a6e10;z-index:1}.eyebrow{font-size:.7rem;color:var(--muted);letter-spacing:.15em;font-weight:850;margin:0 0 10px}h1{font-size:clamp(1.6rem,4.5vw,2.3rem);margin:0 0 10px;color:var(--blue);letter-spacing:-.035em}h2{font-size:1.3rem;margin:0 0 8px;color:var(--blue)}h3{margin:0;color:var(--blue)}p{margin:7px 0 12px}.muted{color:var(--muted)}label{display:block;font-size:.97rem;font-weight:750;margin:15px 0 7px}input{font:inherit;width:100%;height:51px;border-radius:11px;border:2px solid #cbd6ef;padding:0 14px;color:var(--ink);background:white;outline-offset:2px}input:focus{outline:3px solid #ffdb4d;border-color:var(--blue)}.button{font:inherit;font-weight:800;border:0;min-height:46px;padding:10px 16px;border-radius:12px;cursor:pointer}.button.primary{background:var(--blue);color:white}.button.pale{background:#e6ecf7;color:var(--blue)}.button:disabled{opacity:.58;cursor:not-allowed}.button.full{width:100%;margin-top:18px}.login-panel .feedback{min-height:20px}.hero{position:absolute;width:105px;max-width:20vw;right:2%;bottom:10%;z-index:2;pointer-events:none}.feedback,.error{color:#a72d37;font-size:.9rem;min-height:1.15em}.panel{background:#fff;padding:24px;border-radius:26px;box-shadow:0 8px 38px #172a6e0b}.app-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.coffee{background:var(--yellow);border-radius:14px;padding:13px;font-size:1.3rem}.welcome{background:#edf2fe;border-radius:18px;padding:20px;margin:10px 0 18px}.welcome h2{margin:0}.welcome p{margin:4px 0;color:var(--muted)}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}.tile{background:var(--blue);color:#fff;display:flex;align-items:center;gap:13px;border:0;border-radius:16px;min-height:115px;padding:16px;text-align:left;cursor:pointer;font:inherit}.tile-icon{display:grid;place-items:center;background:var(--yellow);border-radius:13px;width:45px;height:45px;flex:0 0 45px;font-size:22px}.tile strong{display:block;font-size:1.06rem}.tile small{display:block;font-size:.76rem;margin-top:4px}.slogan{background:var(--blue);color:white;border-radius:12px;text-align:center;font-weight:850;padding:16px;margin-top:20px}.back{margin-bottom:16px}.subpanel{border:1px solid var(--line);border-radius:18px;padding:22px;margin:7px 0 18px}.big-name{font-weight:850;font-size:1.5rem;margin-top:8px}.big-money{font-weight:850;font-size:2rem;color:var(--blue)}.bank-total{background:var(--blue);color:white;border-radius:16px;padding:19px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.bank-total span{font-weight:600;font-size:.95rem}.bank-total strong{font-size:1.8rem}.account-cards{display:grid;gap:10px}.account{border:1px solid var(--line);border-radius:15px;padding:13px 15px;display:flex;align-items:center;gap:13px;background:#fff}.account-icon{background:#f0f3fb;border-radius:10px;padding:11px;font-size:1.45rem}.account div:nth-child(2){flex:1;min-width:0}.account p{color:var(--muted);font-size:.75rem;margin:2px 0 0}.account strong{white-space:nowrap;font-size:1.3rem;color:var(--blue)}.account.spend{border-left:5px solid #3b64d8}.account.save{border-left:5px solid #2b9856}.account.share{border-left:5px solid #d6a51d}.notice{border:1px solid #bcd4ff;background:#edf3ff;border-radius:15px;padding:16px;margin:15px 0;color:var(--ink)}.notice.warning{background:var(--warn);border-color:#ecd39a}.notice p{margin-bottom:0}.deposit-action{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:15px;padding:17px;margin:18px 0}.deposit-action p{margin:3px 0}.history{margin-top:16px}.history-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid #e6eaf3}.history-item div{display:flex;flex-direction:column}.history-item small{color:var(--muted)}.hint{font-size:.83rem;color:var(--muted)}.money-field{display:flex;align-items:center;gap:5px;border:2px solid #cbd6ef;border-radius:11px;height:51px;padding-left:13px}.money-field:focus-within{outline:3px solid #ffdb4d;border-color:var(--blue)}.money-field>span{font-size:1.2rem;font-weight:850}.money-field input{border:0;height:46px;outline:none;padding-left:3px}.money-field input:focus{outline:none;border:0}.sum-row{display:flex;justify-content:space-between;align-items:center;background:#f2f5ff;border-radius:12px;padding:15px;margin-top:18px}.sum-row strong{font-size:1.25rem}.slogan+.feedback{min-height:0}footer{text-align:center;font-size:.72rem;color:var(--muted);margin-top:13px}@media(max-width:570px){.site{padding:16px 12px}.panel{padding:17px}.login-panel{padding:25px 21px}.login-layout{align-items:flex-start;padding-top:8vh}.hero{bottom:5%;right:3%;width:80px}.tiles{gap:10px}.tile{padding:10px;min-height:105px;gap:9px}.tile-icon{width:38px;flex-basis:38px;height:38px;font-size:18px}.tile strong{font-size:.86rem}.tile small{font-size:.66rem}.subpanel{padding:15px}.deposit-action{display:block}.deposit-action button{width:100%;margin-top:8px}.bank-total strong{font-size:1.5rem}.account strong{font-size:1.1rem}}[hidden]{display:none!important}

.deposit-kind{border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:12px}.deposit-kind legend{font-weight:850;color:var(--blue)}.deposit-kind label{display:flex;align-items:center;gap:10px;margin:8px 0;font-size:.95rem}.deposit-kind input{width:20px;height:20px;flex:0 0 20px}
