*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}body{margin:0;background:#f5f7fb;color:#13243a}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.65rem,3vw,2.35rem);letter-spacing:-.04em}h2{font-size:1.18rem;letter-spacing:-.02em}h3{font-size:1rem}.wrap{width:min(1200px,calc(100% - 40px));margin:0 auto}.top{background:#0c1b30;color:#fff;box-shadow:0 4px 20px #06142718}.topflex{display:flex;justify-content:space-between;align-items:center;padding:14px 0}.brand{display:flex;align-items:center;gap:12px}.brand small{display:block;color:#aebbd0;margin-top:3px}.symbol{display:grid;place-items:center;width:46px;height:46px;background:#d9bf78;border-radius:13px;color:#0c1b30;font-size:1.1rem;font-weight:900;letter-spacing:-.06em}.right{display:flex;align-items:center;gap:18px}.desktopUser{color:#d6dce8}.right .subtle{color:#fff;border-color:#46556b}.body{padding-top:34px;min-height:75vh}.greeting{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:28px}.greeting h1{margin:8px 0}.eyebrow{letter-spacing:.17em;color:#8d794a;font-size:.68rem;font-weight:800}.muted{color:#708098;line-height:1.5;font-size:.91rem;margin-bottom:16px}.tabs{background:#fff;display:flex;gap:6px;padding:7px;border:1px solid #e5eaf1;border-radius:15px;overflow-x:auto;box-shadow:0 5px 22px #081b3407;margin-bottom:20px}.tabs button{border:none;background:transparent;padding:14px 18px;border-radius:10px;white-space:nowrap;color:#63728b;font-weight:700;font-size:.88rem}.tabs .active{background:#0c1b30;color:#fff}.card{background:#fff;border:1px solid #e7ebf1;border-radius:20px;padding:26px;box-shadow:0 8px 28px #081b3406;margin:0 0 20px}.card h2{margin-bottom:6px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}.stats.painel{grid-template-columns:repeat(5,minmax(0,1fr))}.stat{background:#fff;border:1px solid #e7ebf1;border-radius:18px;padding:23px;min-width:0;box-shadow:0 6px 18px #081b3406}.stat:before{content:"";display:block;width:25px;height:3px;border-radius:10px;background:#9ba8b7;margin-bottom:18px}.stat.up:before{background:#2aab79}.stat.down:before{background:#df7783}.stat.gold:before{background:#d9bf78}.stat>span,.reporttotals span{display:block;color:#68778c;font-size:.8rem;font-weight:650}.stat strong{display:block;font-size:clamp(1.18rem,2.2vw,1.85rem);margin-top:9px;letter-spacing:-.04em;overflow-wrap:anywhere}.up strong{color:#137a5e}.down strong{color:#b94556}.gold strong{color:#9a7930}.twocol{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.twocol .card{min-width:0}.tablewrap{overflow:auto;max-width:100%;border:1px solid #ecf0f4;border-radius:12px;margin:16px 0}.table{width:100%;border-collapse:collapse;min-width:600px;text-align:left;font-size:.84rem}.table th{text-transform:uppercase;letter-spacing:.07em;font-size:.67rem;color:#8290a5;background:#f8fafc;font-weight:800;padding:14px 12px;border-bottom:1px solid #e8edf3}.table td{padding:14px 12px;border-bottom:1px solid #edf0f5;vertical-align:top}.table tr:last-child td{border-bottom:none}.number{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:750}.plus{color:#17805c}.minus{color:#bc4b5b}.actions{white-space:nowrap}.actions button{background:transparent;border:0;color:#456a91;font-size:.78rem;padding:7px}.actions button:last-child{color:#bd4454}.empty{padding:35px;text-align:center;color:#8491a3}.sectionrow{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.primary{background:#102440;border:1px solid #102440;border-radius:11px;color:#fff;font-weight:800;padding:13px 19px;box-shadow:0 7px 18px #09234216}.primary:hover:not(:disabled){background:#213c5b}.outline{display:inline-block;background:transparent;border:1px solid #cfd8e4;border-radius:10px;padding:12px 17px;color:#173553;font-weight:700;text-decoration:none;margin:12px 0 0}.outline:hover{background:#f5f8fc}.subtle{background:transparent;border:1px solid #d8e2ed;color:#334a64;border-radius:9px;padding:8px 13px;font-weight:700}.link{border:0;background:none;color:#276aa0;text-decoration:underline;padding:10px 0;font-size:.85rem;font-weight:700}.catline,.line{display:flex;justify-content:space-between;gap:15px;padding:14px 0;border-bottom:1px solid #eaf0f5}.line span,.catline span{color:#738399}.catline b,.line strong{text-align:right}.form{display:grid;gap:14px}.form label,.filters label{display:grid;gap:7px;color:#455971;font-size:.84rem;font-weight:700}.form input,.form select,.filters input,.filters select{min-height:47px;width:100%;border:1px solid #dce3ec;border-radius:10px;background:#fff;padding:11px 13px;outline:none;color:#142b44}.form input:focus,.form select:focus,.filters input:focus,.filters select:focus{border-color:#577da5;box-shadow:0 0 0 3px #8ba4cb2b}.auth{min-height:100vh;display:grid;place-items:center;padding:30px 18px;background:radial-gradient(circle at 10% 15%,#173a5b 0,#0c1b30 48%,#06111e)}.authpanel{max-width:480px;width:100%;padding:32px;border-radius:23px;background:#fff;box-shadow:0 24px 70px #0005}.brand.big{margin-bottom:25px}.brand.big .symbol{width:54px;height:54px}.brand.big h1{font-size:1.45rem;margin:0}.brand.big p{color:#748194;margin:4px 0}.authpanel h2{margin-top:10px}.authlinks{display:flex;justify-content:space-between;gap:12px;margin:16px 0}.authlinks button{border:0;background:none;color:#1d6295;font-weight:700;padding:10px 0}.authpanel small{display:block;margin-top:15px;color:#9aa5b5;line-height:1.5}.center{display:flex;align-items:center;justify-content:center;gap:12px;min-height:100vh;font-weight:600}.spinner{border:3px solid #d5dde5;border-top-color:#23476f;border-radius:100%;height:27px;width:27px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notice,.error{padding:13px 16px;border-radius:10px;line-height:1.55;margin:12px 0;font-size:.85rem}.notice{background:#eaf8f2;color:#146448;border:1px solid #bbdfd1}.error{background:#fff0f1;color:#9b2337;border:1px solid #ebc5cc}.notice button,.error button{float:right;border:0;background:transparent;font-size:1.2rem}.filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0}.reportcard{overflow:visible}.reporthead{padding:20px 0 14px;border-bottom:2px solid #e4e9f0}.reporthead h2{font-size:1.3rem;margin-top:6px}.reporthead p{font-size:.82rem;color:#536880;margin:5px 0}.reporttotals{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.reporttotals>div{border:1px solid #e3e9f0;border-radius:9px;padding:13px}.reporttotals strong{display:block;font-size:1.1rem;margin-top:7px}.under{display:block;color:#718196;margin-top:3px}.smallmuted{font-size:.76rem;color:#79879b;line-height:1.6}.footer{text-align:center;padding:30px 15px;margin-top:30px;border-top:1px solid #e4ebf3;color:#8390a3;font-size:.8rem}.overlay{position:fixed;inset:0;background:#07162b99;display:grid;place-items:center;z-index:50;padding:12px}.dialog{max-width:560px;width:100%;background:#fff;border-radius:17px;padding:25px;max-height:95vh;overflow:auto;box-shadow:0 30px 100px #0006}.dialog .sectionrow{align-items:start}.x{font-size:2rem;line-height:1;background:transparent;border:0;color:#6c7b8d}.pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.twobutton{display:flex;gap:5px;background:#eff3f8;padding:5px;border-radius:11px}.twobutton button{width:50%;background:transparent;border:0;padding:13px;border-radius:9px;font-weight:800;color:#667994}.twobutton .sel{background:#fff;color:#153554;box-shadow:0 2px 7px #04152c1e}.check{display:flex!important;align-items:center;gap:10px!important}.check input{width:20px!important;min-height:20px!important}.copyline{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.copyline code{font-size:.7rem;overflow-wrap:anywhere}.card input[type=file]{display:block;border:1px dashed #bdc9d8;width:100%;padding:20px;border-radius:12px;margin:20px 0}.card h3{margin:22px 0 10px}@media(max-width:850px){.stats,.stats.painel{grid-template-columns:1fr 1fr}.twocol{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr}.greeting{flex-direction:column;align-items:stretch}.greeting .add{align-self:flex-start}}@media(max-width:500px){.wrap{width:calc(100% - 24px)}.topflex{padding:10px 0}.desktopUser{display:none}.body{padding-top:23px}.stats{gap:9px}.stat{padding:15px}.stat strong{font-size:1.1rem}.card{padding:16px;border-radius:15px}.filters{gap:9px}.tabs button{padding:12px}.pair{grid-template-columns:1fr}.reporttotals{grid-template-columns:1fr 1fr}.authpanel{padding:23px}.dialog{padding:18px}.sectionrow .primary{font-size:.85rem}}.deductionlist{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 20px}.deductionlist span{display:inline-block;background:#edf4f0;color:#215b48;border:1px solid #d4e8db;padding:8px 10px;border-radius:9px;font-size:.82rem;font-weight:700}@media print{@page{size:A4 portrait;margin:11mm}body{background:#fff!important;color:#111!important}body *{visibility:hidden!important}.reportcard,.reportcard *{visibility:visible!important}.reportcard{position:absolute!important;left:0!important;top:0!important;width:100%!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important}.reportcard>.sectionrow,.reportcard>.filters,.reportcard>.smallmuted{display:none!important}.printarea,.printarea *{visibility:visible!important}.reporttotals{grid-template-columns:repeat(3,1fr)}.tablewrap{overflow:visible!important;border:0!important}.table{width:100%!important;min-width:0!important;font-size:8pt}.table th{font-size:6.8pt;padding:7px 5px}.table td{padding:7px 5px}.table tr{break-inside:avoid;page-break-inside:avoid}.table thead{display:table-header-group}.reporthead h2{font-size:16pt}.reporttotals>div{break-inside:avoid}.smallmuted{font-size:8pt}}.bill-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.bill-summary>div{padding:18px;background:#f5f8fc;border-radius:12px}.bill-summary span{display:block;font-size:.8rem;color:#667994}.bill-summary strong{display:block;font-size:1.5rem;margin-top:7px;overflow-wrap:anywhere}.bill-list{display:grid;gap:12px}.bill-item{border:1px solid #dce4ed;border-radius:14px;padding:18px;display:flex;justify-content:space-between;gap:20px;min-width:0}.bill-item h3{margin:12px 0 7px}.bill-item p{font-size:.82rem;color:#65748b;margin:6px 0}.bill-item small{color:#61748c}.bill-paid{border-color:#a8d9be;background:#f1fbf5}.bill-badge{display:inline-block;border-radius:7px;padding:5px 9px;font-size:.75rem;font-weight:800;background:#eaf0f7;color:#395570}.bill-badge.paid{background:#cdefd9;color:#16643d}.bill-badge.late{background:#ffe7e9;color:#a82e40}.bill-badge.due{background:#fff1cf;color:#805907}.bill-value{text-align:right;min-width:150px}.bill-value>strong{font-size:1.3rem;overflow-wrap:anywhere}.bill-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;margin-top:18px}.bill-actions button{font-size:.8rem;padding:9px 12px}.bill-calendar{border-top:1px solid #e7ebf1;margin-top:24px;padding-top:8px}.bill-reminder{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#fff8e7;border:1px solid #efdaad;border-radius:12px;padding:14px;margin:12px 0 20px;color:#77571c}.bill-reminder span{font-size:.85rem;flex:1}.bills .filters{grid-template-columns:1fr 1fr;max-width:650px}@media(max-width:600px){.bill-item{flex-direction:column;gap:12px}.bill-value{text-align:left}.bill-actions{justify-content:flex-start;margin-top:12px}.bill-summary,.bills .filters{grid-template-columns:1fr}.bill-reminder{align-items:flex-start;flex-direction:column}}
