*{box-sizing:border-box}body{margin:0;background:#f3f6fb;color:#172033;font-family:Segoe UI,Arial}header{background:#10264b;color:white;padding:20px 5%;display:flex;justify-content:space-between}header a{color:white}header i{color:#7dd3fc}main{width:min(1180px,92%);margin:30px auto}.login,.card{background:white;padding:25px;border-radius:16px;box-shadow:0 8px 25px #18315315;margin-bottom:23px}.login{max-width:440px;margin:60px auto}.login form{display:grid;gap:15px}label{display:grid;gap:6px;font-weight:600}input,select{padding:11px;border:1px solid #bac7db;border-radius:8px;background:white;color:#172033}button,.button{background:#1e56a0;color:white;border:0;border-radius:8px;padding:11px 15px;font-weight:700;text-decoration:none;cursor:pointer}.hero{background:linear-gradient(135deg,#0e7490,#166534);color:white;padding:25px;border-radius:17px;display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;margin-bottom:23px}.hero strong{font-size:28px}.hero .button{grid-column:1/-1;width:max-content;background:white;color:#145369}table{width:100%;border-collapse:collapse;min-width:650px}th,td{text-align:left;padding:11px;border-bottom:1px solid #dde5ef}.scroll{overflow:auto}.total{font-weight:800;background:#eaf7ee}.badge{padding:5px 9px;border-radius:20px;font-size:12px;font-weight:800}.green{background:#dcfce7;color:#166534}.blue{background:#dbeafe;color:#1d4ed8}.gray{background:#e5e7eb}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.grid button{grid-column:1/-1}.inline{display:grid;grid-template-columns:1fr 1.2fr 1fr 1fr auto;gap:8px}.mini{display:inline-flex;gap:4px}.mini input{width:90px}.flash{padding:12px;margin-bottom:15px;border-radius:8px}.success{background:#dcfce7;color:#166534}.error{background:#fee2e2;color:#991b1b}@media(max-width:800px){.grid{grid-template-columns:1fr 1fr}.inline{grid-template-columns:1fr}.hero{grid-template-columns:1fr}}@media(max-width:500px){.grid{grid-template-columns:1fr}}
.period{display:flex;gap:40px;background:#f5f8fc;padding:16px;border-radius:10px;margin:16px 0}.period div{display:grid;gap:4px}.section-title{margin:28px 0 6px;color:#10264b;border-bottom:2px solid #dce6f2;padding-bottom:7px}.details td:last-child{text-align:right;font-weight:700}.debts td:last-child{color:#b42318}.final{margin-top:28px;padding:24px;border-radius:14px;display:flex;justify-content:space-between;align-items:center}.final strong{font-size:28px}.final.positive{background:#dcfce7;color:#166534}.final.zero{background:#e5e7eb;color:#374151}.final.negative{background:#fee2e2;color:#991b1b}.wide{grid-column:1/-1}textarea{min-height:100px;padding:11px;border:1px solid #bac7db;border-radius:8px;font:inherit}@media(max-width:600px){.period{flex-direction:column;gap:12px}.final{align-items:flex-start;flex-direction:column;gap:8px}}