@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#202c2a;--muted:#7c8584;--green:#224d3d;--lime:#dbedbb;--bg:#f6f7f9;--border:#e9ecec;--font:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:14px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #6b9e86;outline-offset:3px}input:focus,select:focus{outline:2px solid #8cad99;outline-offset:1px}[hidden]{display:none!important}.shell{display:flex;min-height:100vh}.sidebar{width:244px;position:fixed;inset:0 auto 0 0;padding:34px 22px 20px;display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--border);z-index:3}.brand{display:flex;gap:10px;align-items:center;color:var(--green);text-decoration:none;padding:0 10px;font-family:Manrope,Arial,sans-serif;font-size:26px;font-weight:800;letter-spacing:1px}.brand small{display:block;font-family:var(--font);font-size:8px;letter-spacing:1.5px;margin-top:1px;font-weight:650}.workspace{display:flex;gap:10px;align-items:center;padding:17px 10px;margin-top:37px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:12px;font-weight:600}.workspace small{display:block;color:var(--muted);font-size:11px;margin-top:4px;font-weight:400}.workspace-icon{background:#f0f2ef;padding:9px 12px;border-radius:9px;color:#55735c}.nav-label{font-size:10px;letter-spacing:1.3px;color:#929b98;margin:30px 12px 15px}nav{display:grid;gap:7px}.nav{display:flex;gap:13px;text-align:left;align-items:center;border:0;background:none;color:#7a8480;padding:13px 14px;border-radius:8px;font-size:12px;font-weight:550}.nav span{font-size:19px;line-height:19px}.nav.active{background:#e9f0e8;color:#2f543a}.nav:hover{background:#f1f5ee}.sidebar-tip{padding:19px 16px;background:#f6f8f1;border:1px solid #eaf0de;border-radius:10px;margin-top:auto;margin-bottom:28px}.sidebar-tip>span{display:block;color:#618b47;font-size:24px;margin-bottom:9px}.sidebar-tip strong{font-family:Manrope,sans-serif;font-size:13px;line-height:1.7}.sidebar-tip p{color:#8a9585;font-size:11px;line-height:1.7;margin-bottom:0}.user{display:flex;align-items:center;gap:9px;background:none;border:0;border-top:1px solid var(--border);padding:17px 3px 0;text-align:left;color:var(--ink)}.avatar,.mini-avatar{display:grid;place-items:center;background:#ebe5da;border-radius:50%;width:35px;height:35px;color:#706653;font-weight:600;font-size:12px}.user small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.user>span:last-child{margin-left:auto;color:#8b928c}.user #user-name{font-size:12px}main{margin-left:244px;min-width:0;flex:1}header{height:76px;border-bottom:1px solid var(--border);padding:0 42px;display:flex;align-items:center;justify-content:space-between;background:#ffffffb5}.breadcrumb{font-size:11px;color:#919996}.breadcrumb span{margin:0 12px;color:#c0c6c3}.breadcrumb b{font-weight:500;color:#56625d}.header-right{display:flex;align-items:center;gap:14px}#sync-status{font-size:10px;color:#668068}.mini-avatar{width:29px;height:29px;font-size:10px}.content{max-width:1530px;margin:auto;padding:35px 42px 20px}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:29px}.eyebrow{font-size:9px;letter-spacing:1.7px;color:#929e95;font-weight:600}h1{font-family:Manrope,sans-serif;letter-spacing:-1.1px;font-size:29px;font-weight:750;margin:10px 0}h1>span{color:#7c9d65}.page-heading p{font-size:12px;color:var(--muted);margin:0}.primary{display:flex;align-items:center;justify-content:center;gap:9px;padding:13px 18px;background:var(--green);color:white;border:1px solid var(--green);border-radius:8px;font-size:12px;font-weight:550;white-space:nowrap;box-shadow:0 3px 5px #224d3d10}.primary:hover{background:#173d32}.primary span{font-size:18px;font-weight:400}.toolbar{display:flex;align-items:center;gap:14px;margin-bottom:24px}.period{display:flex;align-items:center;gap:5px;background:#fff;padding:4px;border:1px solid var(--border);border-radius:8px}.icon-button{background:none;border:0;padding:5px 9px;font-size:20px;line-height:1;color:#76837b;border-radius:5px}.icon-button:hover{background:#edf2eb}.period input{border:0;background:none;color:#3b4941;font-size:12px;min-width:130px;padding:4px;max-width:170px}.period-note{font-size:10px;color:#939b98}.secondary{background:#fff;border:1px solid #dfe4e1;padding:10px 13px;border-radius:7px;font-size:11px;color:#65716b;margin-left:auto}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat{background:#fff;border:1px solid var(--border);border-radius:11px;padding:18px 19px;min-width:0}.stat:first-child{background:#233f34;color:#fff;border-color:#233f34;position:relative;overflow:hidden}.stat:first-child:after{content:'';position:absolute;width:120px;height:120px;border:1px solid #ffffff0c;border-radius:50%;right:-35px;bottom:-55px;box-shadow:0 0 0 18px #ffffff04,0 0 0 36px #ffffff03}.stat-label{font-size:11px;display:flex;align-items:center;justify-content:space-between;color:#7d8981}.stat-label span:last-child{background:#f3f5f2;color:#8a988b;width:27px;height:27px;display:grid;place-items:center;border-radius:7px;font-size:15px}.stat:first-child .stat-label{color:#c9d7cc}.stat:first-child .stat-label span:last-child{background:#ffffff12;color:#dce9cb}.stat-value{font-family:Manrope,sans-serif;font-weight:750;letter-spacing:-.8px;font-size:26px;margin:14px 0 12px;white-space:nowrap}.stat-note{font-size:10px;color:#8d9790}.stat:first-child .stat-note{color:#b9cebd}.stat-note b{font-weight:500;color:#5e8a60}.stat:first-child .stat-note b{color:#d9ecb8}.chart-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:22px;margin-bottom:21px}.panel{border:1px solid var(--border);border-radius:11px;background:white;overflow:hidden}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:22px 23px 12px}h2{font-family:Manrope,sans-serif;font-size:14px;font-weight:750;letter-spacing:-.2px;margin:0}.panel-title p{font-size:10px;color:#929b96;margin:7px 0 0}.legend{font-size:9px;color:#809086;white-space:nowrap}.legend i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#52795c;margin-right:5px}.line-chart{height:225px;padding:10px 14px 0}.line-chart svg{width:100%;height:100%;overflow:visible}.line-chart text{font-family:var(--font);font-size:10px;fill:#a1aaa3}.chart-foot{border-top:1px solid #f0f2ee;padding:14px 23px;display:flex;justify-content:space-between;font-size:10px;color:#a0a89f}.chart-foot strong{color:#7b8778;font-weight:450}.dots{font-size:22px;color:#98a293}.donut-area{display:flex;align-items:center;justify-content:center;gap:24px;padding:13px 22px 14px}.donut{width:130px;height:130px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;position:relative}.donut:before{content:'';position:absolute;inset:18px;background:#fff;border-radius:50%}.donut>div{z-index:1;text-align:center}.donut small{display:block;font-size:9px;color:#949d96}.donut strong{display:block;font-family:Manrope;font-size:16px;margin-top:6px}.category-legend{min-width:0;display:grid;gap:12px;flex:1}.category-item{display:flex;align-items:center;gap:7px;font-size:10px;color:#7f8a82}.category-item i{height:7px;width:7px;border-radius:2px;flex-shrink:0}.category-item b{margin-left:auto;color:#69786c;font-weight:500}.category-bottom{display:flex;justify-content:space-between;border-top:1px solid #f1f3ee;padding:15px 23px;font-size:10px;color:#90998f}.category-bottom strong{color:#5c7058;font-weight:500}.insight{display:flex;align-items:center;gap:14px;padding:18px 22px;margin-bottom:24px;background:#f0f4e8;border:1px solid #e2e9d7;border-radius:10px}.insight-icon{display:grid;place-items:center;height:36px;width:36px;background:#e5ecd6;border-radius:10px;font-size:20px;color:#6b8154;flex-shrink:0}.insight strong{font-size:12px;color:#526149;font-weight:600}.insight p{margin:5px 0 0;color:#87917d;font-size:11px;line-height:1.6}.insight .tag{margin-left:auto;color:#839170;font-size:9px;white-space:nowrap;border:1px solid #dae3cd;border-radius:5px;padding:6px 9px}.transactions{margin-top:23px}.transaction-heading{padding-bottom:21px}.table-tools{display:flex;align-items:center;gap:10px}.table-tools input,.table-tools select{border:1px solid #e8ece6;padding:8px 10px;border-radius:6px;font-size:10px;background:#fff;color:#7a857b;max-width:170px}.text-button{border:0;background:none;color:#5e7756;font-size:11px;padding:6px;white-space:nowrap}table{width:100%;border-collapse:collapse;white-space:nowrap}th{font-weight:500;text-align:left;font-size:8px;letter-spacing:.8px;color:#a0a99f;background:#fafbf9;padding:12px 22px;border-top:1px solid #f1f3ee;border-bottom:1px solid #f1f3ee}td{border-bottom:1px solid #f2f4f0;padding:14px 22px;font-size:11px;color:#929b92}td.description{font-weight:500;color:#4a594c;display:flex;align-items:center;gap:10px}.category-icon{display:grid;place-items:center;border-radius:8px;background:#f3f2ec;width:31px;height:31px;color:#928b69;font-size:14px;flex-shrink:0}.description small{display:block;font-size:9px;font-weight:400;color:#a0aa9e;margin-top:4px}.badge{padding:5px 8px;border-radius:5px;background:#f2f5ed;color:#879379;font-size:9px}.payment{font-size:10px;color:#7d897f}.payment:before{content:'▭';margin-right:6px;color:#a2aba0}.amount{text-align:right}td.amount{font-family:Manrope,sans-serif;color:#50604f;font-size:11px;font-weight:650}.row-actions{padding-left:0;padding-right:12px}.row-actions button{border:0;background:none;color:#8a9686;font-size:12px;padding:6px}.row-actions button:hover{background:#f0f4eb;border-radius:4px}.table-wrap{overflow-x:auto}.table-footer{display:flex;justify-content:space-between;padding:15px 23px;color:#a0a99c;font-size:9px}footer{display:flex;justify-content:space-between;padding:28px 0 5px;font-size:9px;color:#aeb5ab}footer>span:first-child{letter-spacing:1px;color:#8c9986;font-weight:750}footer b{font-size:7px;font-weight:400;margin-left:5px}.demo-banner{background:#e9eedf;color:#63794e;font-size:9px;font-weight:600;letter-spacing:.5px;display:flex;align-items:center;gap:15px;padding:9px 42px}.demo-banner span{font-weight:400;letter-spacing:0}.demo-banner button{margin-left:auto;background:none;border:0;color:#63794e;font-size:9px;text-decoration:underline}dialog{width:min(480px,calc(100% - 28px));border:1px solid #dfe7db;border-radius:16px;box-shadow:0 20px 80px #11271830;padding:28px;color:var(--ink)}dialog::backdrop{background:#172b2660;backdrop-filter:blur(4px)}.dialog-heading{display:flex;justify-content:space-between;margin-bottom:25px}.dialog-heading h2{font-size:24px;margin-top:8px}label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#6e7c70;margin-bottom:18px}label input,label select{width:100%;min-width:0;border:1px solid #dfe5dd;border-radius:7px;padding:12px;color:#3d503f;background:#fff}label small{font-size:10px;color:#929e90}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-info,.offline-note{font-size:10px;color:#8b978a;line-height:1.7}.form-info{padding:10px 12px;background:#f5f7f1;border-radius:6px}.offline-note{text-align:center;margin-bottom:0}.full{width:100%;justify-content:space-between}#form-error,#auth-error{font-size:12px;color:#b35346}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:25px;background:#edf2e8}.auth-card{max-width:420px;width:100%;padding:36px;background:white;border:1px solid #dfe7d9;border-radius:18px}.auth-card h1{font-size:27px;color:var(--green)}.auth-card h1 span{display:block;font-size:9px;letter-spacing:2px}.auth-card h2{margin-top:30px;font-size:20px}.auth-card p{font-size:12px;line-height:1.7;color:#8a9586}.auth-card form{margin-top:25px}.auth-card .primary{width:100%}.compare-label{margin:0;flex-direction:row;align-items:center;white-space:nowrap;font-size:10px}.compare-label input{padding:7px}.compare-grid{padding:20px 24px;display:grid;grid-template-columns:1fr 1fr;gap:25px}.compare-block{padding:20px;background:#f6f8f3;border-radius:10px}.compare-block small{color:#879480}.compare-block strong{display:block;font-size:26px;color:#36553a;margin:10px 0}.compare-detail{padding:0 24px 24px;line-height:1.8;font-size:12px;color:#7c8c76}.compare-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:10px;padding:10px 0;border-bottom:1px solid #eff2eb}.empty{padding:35px;text-align:center;color:#93a08c;white-space:normal;font-size:12px;line-height:1.7}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#234b38;color:#fff;padding:14px 22px;border-radius:9px;box-shadow:0 8px 30px #13271925;z-index:20;font-size:12px;max-width:90vw}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1600px){.content{padding-top:44px}.line-chart{height:260px}.donut-area{padding-top:30px;padding-bottom:30px}.stat-value{font-size:30px}}
@media(max-width:1200px){.sidebar{width:210px;padding-left:15px;padding-right:15px}main{margin-left:210px}.content{padding:28px 25px}.demo-banner,header{padding-left:25px;padding-right:25px}.stat{padding:15px}.stat-value{font-size:22px}.chart-grid{grid-template-columns:1.3fr 1fr;gap:16px}.donut-area{gap:15px;padding-left:15px;padding-right:15px}.donut{width:110px;height:110px}.panel-title{padding-left:18px;padding-right:18px}.table-tools input{max-width:130px}th,td{padding-left:16px;padding-right:16px}}
@media(max-width:1000px){.sidebar{width:185px}.brand{font-size:23px;padding-left:2px}.brand img{width:34px;height:34px}.brand small{font-size:6px}.nav{font-size:11px;padding-left:10px}.workspace{padding-left:4px;font-size:10px}.sidebar-tip{padding:15px 11px}main{margin-left:185px}.chart-grid{grid-template-columns:1fr}.stats{gap:10px;grid-template-columns:repeat(2,1fr)}.donut-area{justify-content:start;padding:16px 30px;gap:35px}.donut{width:135px;height:135px}.category-legend{max-width:360px}.transaction-heading{align-items:flex-start;flex-direction:column}.table-tools{width:100%}.table-tools input{max-width:none;flex:1}.table-tools .text-button{margin-left:auto}.page-heading h1{font-size:25px}.demo-banner{flex-wrap:wrap;gap:6px 12px}.demo-banner span{font-size:8px}.insight .tag{display:none}}
@media(max-width:700px){.sidebar{position:relative;width:auto;inset:auto;display:block;padding:17px 18px 0;border-bottom:1px solid var(--border);border-right:0}.shell{display:block}.brand{font-size:23px}.brand small{font-size:7px}.workspace,.nav-label,.sidebar-tip,.user{display:none}nav{display:flex;gap:4px;margin-top:20px}.nav{flex:1;font-size:10px;padding:12px 7px;justify-content:center;gap:6px;border-radius:7px 7px 0 0}.nav span{font-size:15px}main{margin-left:0}header{height:52px;padding:0 20px}.header-right{gap:6px}#sync-status{font-size:9px}.mini-avatar{display:none}.content{padding:25px 18px 12px}.page-heading{align-items:flex-start;gap:8px;margin-bottom:23px}.page-heading h1{font-size:23px;line-height:1.35;max-width:220px;margin-top:9px}.page-heading p{font-size:11px;line-height:1.6;max-width:220px}.eyebrow{font-size:7px;letter-spacing:1.2px}.primary{font-size:10px;padding:11px 12px;gap:5px}.page-heading>.primary{margin-top:24px}.toolbar{gap:7px;margin-bottom:18px}.period-note{display:none}.period input{font-size:11px;min-width:118px}.secondary{font-size:10px;padding:10px}.stats{gap:10px;margin-bottom:18px}.stat{padding:13px}.stat-value{font-size:23px;margin:13px 0 10px}.stat-label{font-size:10px}.stat-note{font-size:8px}.stat-label span:last-child{width:23px;height:23px;font-size:12px}.panel-title h2{font-size:12px}.panel-title p{font-size:9px}.panel-title{padding:18px 16px 10px}.line-chart{height:200px;padding-left:8px;padding-right:8px}.chart-foot{padding:13px 16px;font-size:8px}.legend{font-size:8px}.chart-grid{gap:18px}.category-item{font-size:10px}.donut-area{padding:15px 20px;gap:25px}.donut{width:120px;height:120px}.insight{padding:14px;gap:11px}.insight p{font-size:10px}.insight strong{font-size:11px}.transaction-heading{gap:15px}.table-tools{flex-wrap:wrap;gap:8px}.table-tools input{width:140px}.table-tools select{max-width:145px}.table-tools .text-button{font-size:10px}.table-footer{font-size:8px;padding:14px 16px}.table-footer span:last-child{display:none}th{font-size:7px}td,th{padding:12px 14px}.demo-banner{padding:8px 18px;font-size:8px;gap:5px}.demo-banner span{flex-basis:100%;order:3}.demo-banner button{font-size:8px}footer{font-size:8px;gap:10px}footer>span:last-child{max-width:120px;text-align:right;line-height:1.6}dialog{padding:23px}.compare-grid{padding:15px;gap:10px}.compare-block{padding:14px}.compare-block strong{font-size:20px}.compare-block small{font-size:10px}.compare-label{flex-direction:column;align-items:flex-start;gap:3px}.compare-label input{font-size:10px;max-width:145px}.compare-detail{padding:0 16px 18px}.compare-row{font-size:10px;grid-template-columns:90px 1fr 1fr}}
.wallet-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.wallet-heading h2{font-size:17px}.wallet-heading p{font-size:12px;color:var(--muted);line-height:1.6}.wallet-actions{display:flex;gap:10px}.wallet-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.wallet-item{margin:14px 18px 18px;padding:18px;background:#f7f9f4;border:1px solid #e7ecdf;border-radius:10px}.wallet-item.archived{opacity:.65;background:#f6f6f4}.wallet-item-head{display:flex;gap:10px;align-items:center}.wallet-item-head>div{min-width:0;flex:1}.wallet-item h3{margin:0 0 5px;font-size:13px;overflow-wrap:anywhere}.wallet-item small{font-size:10px;color:#879280}.wallet-symbol{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:#e8eddf;color:var(--green);font-size:19px}.wallet-item p{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#8a9581;font-size:11px;margin:22px 0 4px}.wallet-item p strong{color:#385737;font-size:18px;white-space:nowrap}.card-details{display:grid;gap:7px;font-size:10px;color:#879280;border-top:1px solid #e4e9dc;margin-top:15px;padding-top:13px}.source-name{display:block;font-size:9px;color:#96a08f;margin-top:6px;max-width:160px;overflow:hidden;text-overflow:ellipsis}.archive-label{display:flex;flex-direction:row;align-items:center}.archive-label input{width:auto}.admin-toolbar{padding:15px 23px;display:flex;gap:12px}.admin-toolbar input,.admin-toolbar select,.admin-table input,.admin-table select{border:1px solid #dfe6d9;border-radius:6px;padding:10px;color:#68795d;background:#fff;font-size:11px}.admin-toolbar input{flex:1;min-width:100px}.admin-table td{padding:18px 20px;vertical-align:middle}.admin-table td strong{display:block;color:#4c6044;font-size:12px}.admin-table td small{display:block;font-size:10px;margin-top:6px}.admin-table .primary{font-size:10px;padding:9px 12px}.admin-footnote{padding:15px 23px;font-size:11px;color:#8a957f;line-height:1.8}#admin-feedback{margin:0 23px 15px;color:#79856c;font-size:11px}.access-badge{display:inline-block;padding:6px 9px;border-radius:6px;font-size:10px}.status-pending{background:#faf1db;color:#9a7940}.status-approved{background:#e9f1df;color:#547440}.status-blocked,.status-expired{background:#f7e6df;color:#ad6b51}#access-error,#wallet-error{color:#b35345;font-size:12px}#access-title{font-size:22px;margin-top:20px;line-height:1.4}#access-email{font-weight:600;color:#4d6746;overflow-wrap:anywhere}.auth-card #access-logout{margin-top:15px}.sidebar-tip{margin-bottom:14px}.sidebar{overflow-y:auto}.sidebar-tip{margin-top:35px}.user{margin-top:auto}
@media(max-width:1000px){.wallet-grid{grid-template-columns:1fr}.wallet-heading{align-items:flex-start;flex-direction:column}.wallet-actions{width:100%}.wallet-actions .secondary{margin-left:0}.admin-toolbar{flex-wrap:wrap}.admin-toolbar input{width:100%}.nav{font-size:10px}.sidebar-tip{padding:12px}.sidebar-tip strong{font-size:11px}}
@media(max-width:700px){nav{flex-wrap:wrap}.nav{flex:none;width:calc(33.333% - 3px);font-size:9px;border-radius:7px}.sidebar{overflow:visible;padding-bottom:10px}.wallet-actions .primary,.wallet-actions .secondary{font-size:11px}.wallet-item{margin:12px;padding:15px}.wallet-item p strong{font-size:16px}.admin-toolbar{padding:12px 15px}.admin-footnote{padding:12px 15px}.wallet-heading p{font-size:11px}.wallet-heading h2{font-size:15px}}
@media(max-width:700px){.admin-table,.admin-table tbody{display:block;width:100%;white-space:normal}.admin-table thead{display:none}.admin-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 12px;margin:12px 15px;padding:14px;border:1px solid #e3e9dc;border-radius:10px}.admin-table td{display:block;border:0;padding:7px 0;min-width:0}.admin-table td:first-child,.admin-table td:last-child{grid-column:1/-1}.admin-table td::before{display:block;font-size:8px;letter-spacing:.8px;color:#a0aa96;margin-bottom:8px}.admin-table td:nth-child(2)::before{content:'SITUAÇÃO'}.admin-table td:nth-child(3)::before{content:'ACESSO'}.admin-table td:nth-child(4)::before{content:'VÁLIDO ATÉ'}.admin-table td:nth-child(4){grid-column:1/-1}.admin-table td input,.admin-table td select{max-width:100%;width:100%;font-size:11px}.admin-table td small{overflow-wrap:anywhere}.admin-table .primary{width:100%;padding:12px}.admin-table .access-badge{font-size:9px}}
@media(prefers-reduced-motion:no-preference){button{transition:background .15s}.panel,.stat{animation:appear .3s ease-out}@keyframes appear{from{opacity:.6;transform:translateY(4px)}to{opacity:1;transform:none}}}
