:root{font-family:Segoe UI,Arial,sans-serif;color:#071d30;background:#f6f8fb;font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:8px;padding:12px 18px;background:#17613e;color:white;font-weight:600}button:hover{filter:brightness(1.08)}button:disabled{opacity:.6}input,select,textarea{width:100%;padding:11px;border:1px solid #ccd5dc;border-radius:7px;background:white;color:#102c38}label{display:block;font-weight:600;font-size:13px}label input,label select,label textarea{margin-top:6px}h1{font-size:42px;letter-spacing:-1px}h2{font-size:25px}p{line-height:1.7}small,.muted{color:#61718a}.brand{font-size:30px;font-weight:700;letter-spacing:2px;text-align:center}.brand small{display:block;font-size:12px;letter-spacing:3px;color:inherit}.weave{height:22px;margin:24px -28px;background:repeating-linear-gradient(45deg,#af173b 0 7px,#f6bd36 7px 12px,#084931 12px 19px,#162e74 19px 26px)}#login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;gap:6%;padding:6%;background:radial-gradient(ellipse at bottom left,#dce8cd,transparent 65%),#f6f4e9}.intro{padding:20px}.intro h1{font-size:65px;margin-bottom:20px}.intro h1 span{color:#17613e}.values{margin-top:50px;color:#17613e}.login-card{align-self:center;padding:48px;background:#002a24;color:white;border-radius:28px;box-shadow:0 20px 50px #001d2925}.login-card h2,.login-card p{text-align:center}.login-card label{margin:24px 0}.login-card button{width:100%;background:#538d30}.login-card input{background:#ffffff08;color:white}.login-card .muted{color:#b6c7b7}#portal{display:flex;min-height:100vh}#portal[hidden],#login[hidden]{display:none}aside{width:240px;flex-shrink:0;background:#001c2c;color:white;padding:32px 28px;position:fixed;height:100vh}aside .brand{font-size:24px}nav{display:grid;gap:12px;margin-top:25px}nav button{text-align:left;background:transparent}nav button.selected{background:#0952cc}.aside-note{position:absolute;bottom:25px;font-size:12px;color:#c3cfd6}main{margin-left:240px;width:calc(100% - 240px);padding:28px 36px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:25px;border-bottom:1px solid #e2e8ed}header select{margin:6px 0;border:0;background:transparent;font-weight:700;min-width:230px}header small{display:block;font-size:11px;letter-spacing:1px}.secondary{background:#eaf0f4;color:#143442;margin-left:10px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card,.panel{background:white;border:1px solid #e8edf0;border-radius:15px;padding:25px;box-shadow:0 4px 12px #032b4810}.card strong{display:block;font-size:30px;color:#17613e;margin-top:12px}.toolbar{display:flex;gap:15px;align-items:center;margin:25px 0}.toolbar input{max-width:420px}.panel{margin-top:24px;overflow:auto}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:16px 10px;border-bottom:1px solid #e9edf1;font-size:14px}th{color:#68788d;font-size:12px}td button{padding:7px 12px}.badge{background:#e5f3e9;color:#17613e;padding:5px 10px;border-radius:15px;font-size:12px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}fieldset{border:0;padding:0;margin:25px 0}legend{font-size:18px;font-weight:700;padding-bottom:20px}.full{grid-column:1/-1}input[type=checkbox]{width:auto}#notice{position:fixed;bottom:25px;right:25px;padding:18px 24px;max-width:500px;background:#102e3c;color:white;border-radius:10px;z-index:10}pre{white-space:pre-wrap}a{color:#17613e}@media(max-width:850px){#login{grid-template-columns:1fr}.intro h1{font-size:42px}aside{width:170px;padding:25px 15px}aside .brand{font-size:17px}main{margin-left:170px;width:calc(100% - 170px);padding:20px}header{align-items:start;flex-direction:column}.cards,.grid{grid-template-columns:1fr}.full{grid-column:auto}}
@media print{body{background:white;color:black}aside,header,#notice,.no-print{display:none!important}main{margin:0;width:100%;padding:0}#content>*:not(#cashReceipt):not(#accountStatementPrint){display:none!important}#cashReceipt{border:0;box-shadow:none;padding:12mm;overflow:visible;margin:0}#cashReceipt h1{font-size:26px}#cashReceipt h2{font-size:20px}.grid{grid-template-columns:1fr 1fr}}

aside{overflow-y:auto}.aside-note{position:static;margin-top:35px}nav button[hidden]{display:none}

@media print{#accountStatementPrint{border:0;box-shadow:none;padding:10mm;overflow:visible;margin:0}#accountStatementPrint .cards{grid-template-columns:repeat(3,1fr)}#accountStatementPrint .card{box-shadow:none;padding:8px}#accountStatementPrint .card strong{font-size:18px}#accountStatementPrint th,#accountStatementPrint td{font-size:11px;padding:8px 5px}#accountStatementPrint thead{display:table-header-group}#accountStatementPrint tr{break-inside:avoid}}
