:root{--ink:#1c3438;--ink-soft:#49626a;--muted:#819299;--green:#195b59;--green-2:#25736a;--mint:#e5f4ef;--mint-2:#d0e9df;--rose:#d58d72;--orange:#dc9b66;--danger:#bd6a61;--danger-bg:#fff0eb;--surface:#fff;--background:#f7f9f7;--line:#e8eeeb;--shadow:0 12px 36px rgba(32,73,70,.035);--radius:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--background);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;fill:none;flex:none}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:'Manrope',sans-serif;letter-spacing:-.035em}p{line-height:1.55}a{color:inherit}
.app-shell{display:flex;min-height:100vh}.sidebar{width:266px;background:#173d42;color:#eaf8f4;min-height:100vh;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;padding:33px 19px 22px;z-index:5;overflow:hidden}.sidebar:before{content:"";position:absolute;inset:auto -120px 20px auto;width:250px;height:250px;pointer-events:none;background:radial-gradient(circle,rgba(59,123,110,.2),transparent 65%)}.sidebar:after{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:6px;background:linear-gradient(90deg,#aadac3,#7ab8af,#d7ac88)}.brand-lockup{display:flex;align-items:center;gap:12px;padding:0 9px 51px}.brand-symbol{height:41px;width:41px;border-radius:13px;background:#b8e7d0;display:grid;place-items:center;color:#174b49;transform:rotate(-8deg)}.brand-leaf{width:26px;height:26px;transform:rotate(8deg)}.brand-name{font-family:Manrope;font-size:24px;font-weight:800;letter-spacing:-1.5px;line-height:1}.brand-name span{font-weight:500;color:#b7ddcc}.brand-caption{font-size:8.5px;letter-spacing:2.1px;color:#a4c9c4;margin-top:7px;font-weight:800}.sidebar-section-label{padding:0 15px;color:#89adac;font-weight:800;letter-spacing:1.6px;font-size:10px;margin-bottom:17px}.main-nav{display:grid;gap:6px}.nav-link{height:48px;border:0;background:transparent;color:#c1dbd7;border-radius:12px;display:flex;align-items:center;text-align:left;gap:13px;padding:0 15px;font-size:14px;font-weight:600;transition:background .2s,color .2s}.nav-link svg{width:20px;height:20px;stroke-width:1.7}.nav-link:hover{color:white;background:#285357}.nav-link.active{background:#e4f5eb;color:#205956;font-weight:800;box-shadow:0 7px 24px rgba(0,0,0,.09)}.sidebar-spacer{flex:1;min-height:30px}.support-tile{background:linear-gradient(155deg,#2d6867,#235251);padding:19px;border-radius:16px;position:relative;overflow:hidden;margin:0 5px 22px;border:1px solid #4a7c78}.support-tile:after{content:"";position:absolute;border:1px solid #7aa79b;border-radius:50%;width:145px;height:145px;right:-90px;bottom:-90px;opacity:.45}.support-icon{height:35px;width:35px;background:#e4f4df;color:#1b5e53;border-radius:10px;display:grid;place-items:center;margin-bottom:13px}.support-icon svg{width:20px}.support-tile strong{font-family:Manrope;font-size:13px;line-height:1.5;display:block;max-width:170px}.support-tile p{font-size:11px;color:#c0deda;margin-top:8px;line-height:1.6}.sidebar-profile{border-top:1px solid #3b6668;padding:21px 8px 0;display:flex;align-items:center;gap:10px;position:relative}.sidebar-profile>span:nth-child(2){display:grid;gap:3px;flex:1}.sidebar-profile strong{font-weight:800;font-size:13px}.sidebar-profile small{color:#a6c6c4;font-size:11px}.sidebar-profile>svg{width:18px;color:#a5c7c4}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-weight:800;flex:none}.avatar-profile{width:38px;height:38px;background:#ebd4bd;color:#8b5839}.workspace{margin-left:266px;min-width:0;flex:1}.topbar{height:85px;background:rgba(255,255,255,.8);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(23px,4vw,61px);gap:20px}.breadcrumbs{display:flex;align-items:center;gap:9px;color:#92a3a5;font-size:12px}.breadcrumbs strong{font-size:12px;color:#49676a;font-weight:800}.breadcrumbs svg{width:13px;height:13px;color:#aabbb9}.topbar-actions{display:flex;align-items:center;gap:19px;color:#62787c}.today-label{font-size:12px;font-weight:600}.topbar-separator{height:24px;width:1px;background:#e6eeeb}.icon-button{background:#fff;border:1px solid #ebf0ed;color:#688380;border-radius:11px;height:37px;width:37px;display:grid;place-items:center;position:relative}.icon-button svg{width:18px;height:18px}.notification-dot{position:absolute;right:8px;top:7px;width:7px;height:7px;background:#db9c75;border:2px solid white;border-radius:100%}.avatar-top{width:37px;height:37px;background:#f5e0cf;color:#986b4c;font-size:13px}.main-content{max-width:1580px;margin:auto;padding:43px clamp(22px,4vw,61px) 75px;min-height:calc(100vh - 85px)}
.page-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:29px}.page-head h1{font-size:clamp(24px,2.8vw,32px);font-weight:800;color:#1e4044;line-height:1.24}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.8px;color:#709489;text-transform:uppercase;margin-bottom:10px}.page-subtitle{color:#829597;font-size:13px;margin-top:9px}.head-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.btn{min-height:41px;padding:0 18px;display:inline-flex;gap:9px;align-items:center;justify-content:center;border-radius:11px;font-size:12.5px;font-weight:800;border:1px solid transparent;transition:transform .15s,background .2s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn svg{width:16px;height:16px}.btn-primary{background:#215f5b;color:#fff;box-shadow:0 5px 13px rgba(36,110,99,.12)}.btn-primary:hover{background:#134c48}.btn-secondary{background:#fff;border-color:#e3ebe7;color:#456866}.btn-soft{background:#e8f4ee;color:#296c61}.btn-text{border:0;background:transparent;color:#38776e;padding:0 5px}.btn-tiny{padding:7px 10px;min-height:30px;border:1px solid #e2ebe7;border-radius:8px;background:#fff;color:#557673;font-size:11px;font-weight:800}.btn-tiny:hover{background:#edf6f1}.section-title{font-size:17px;font-weight:800;color:#254649}.section-caption{color:#93a3a5;font-size:12px;margin-top:7px}.section-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:21px}.section-header .btn{font-size:12px}.section-header .btn svg{width:14px}.cards-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:23px}.stat-card{border:1px solid #edf1ee;background:#fff;border-radius:17px;min-height:145px;padding:20px 20px 17px;box-shadow:var(--shadow);position:relative;overflow:hidden}.stat-card.highlight{background:linear-gradient(140deg,#235f59,#1b4e4f);color:#fff;border-color:#235f59}.stat-card.highlight:after{content:"";position:absolute;width:170px;height:170px;border:1px solid #57978c;border-radius:50%;right:-93px;top:43px;opacity:.58}.stat-top{display:flex;align-items:center;justify-content:space-between;gap:4px}.stat-label{font-size:12px;font-weight:700;color:#879c9d}.highlight .stat-label{color:#cae3de}.stat-icon{height:37px;width:37px;border-radius:11px;background:#eff7f1;display:grid;place-items:center;color:#438678}.stat-icon svg{width:18px;height:18px}.highlight .stat-icon{background:rgba(255,255,255,.13);color:#e4f7ef}.stat-value{font-family:Manrope;font-size:clamp(22px,2.4vw,30px);font-weight:800;letter-spacing:-1.2px;margin-top:18px;line-height:1.2;white-space:nowrap}.stat-foot{color:#9caeab;font-size:11px;margin-top:9px}.highlight .stat-foot{color:#bddcd5}.stat-foot strong{color:#408b78}.highlight .stat-foot strong{color:#d4f0df}.content-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:20px;margin-bottom:23px}.surface-card{background:#fff;border:1px solid #edf1ee;border-radius:18px;padding:25px;box-shadow:var(--shadow);min-width:0}.chart-panel{min-height:338px}.revenue-graph{height:218px;display:flex;gap:10px;margin-top:26px;align-items:stretch;position:relative;padding-left:26px}.graph-grid{position:absolute;inset:0 0 27px 26px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.graph-grid span{border-top:1px dashed #e9efeb;position:relative}.graph-grid small{position:absolute;right:100%;top:-8px;padding-right:10px;font-size:10px;color:#a2b4b1}.graph-bars{position:relative;z-index:1;flex:1;display:flex;align-items:flex-end;justify-content:space-around;gap:11px;padding-bottom:27px}.graph-col{height:100%;min-width:0;display:flex;align-items:center;flex:1;flex-direction:column;justify-content:flex-end;position:relative}.graph-bar-track{height:100%;width:min(34px,100%);display:flex;align-items:flex-end;border-radius:8px 8px 0 0}.graph-bar{width:100%;background:#d1e8de;min-height:3px;border-radius:8px 8px 2px 2px;position:relative;transition:height .5s,background .2s;cursor:default}.graph-bar:hover{background:#89bfae}.graph-bar.current{background:#438a7a}.graph-bar.current:hover{background:#2f746b}.graph-bar:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);font-size:11px;white-space:nowrap;color:white;background:#224d4c;border-radius:7px;padding:6px 9px;z-index:4}.graph-month{position:absolute;top:calc(100% - 23px);font-size:11px;color:#a0aeac;font-weight:700}.graph-col:last-child .graph-month{color:#397b70}.method-summary{display:flex;align-items:center;gap:15px;margin-top:33px;justify-content:center}.donut{width:151px;height:151px;border-radius:50%;position:relative;display:grid;place-items:center;flex:none}.donut:after{content:"";position:absolute;inset:27px;background:white;border-radius:100%}.donut-inner{position:relative;z-index:1;text-align:center}.donut-inner strong{display:block;font-family:Manrope;font-size:23px;color:#264e4d;letter-spacing:-1px}.donut-inner span{font-size:10px;color:#a2b1ae}.method-legend{display:grid;gap:14px;min-width:100px}.legend-row{display:flex;align-items:center;gap:8px;font-size:12px;color:#617a78;white-space:nowrap}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-row strong{color:#305d58;margin-left:auto;font-size:12px}.list-with-cards{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:20px}.mini-payment-row,.due-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #eff3ef}.mini-payment-row:last-child,.due-row:last-child{border-bottom:0}.person-avatar{height:38px;width:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;flex:none}.person-info{min-width:0;flex:1}.person-name{font-size:12.5px;font-weight:800;color:#315358;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-meta{font-size:11px;color:#9aaba9;margin-top:5px}.mini-amount{text-align:right;font-weight:800;font-size:13px;white-space:nowrap;color:#376a5c}.due-amount{color:#b57160}.due-name{display:flex;align-items:center;gap:7px}.due-icon{background:#fff2e7;color:#bd8b60;border-radius:10px;width:35px;height:35px;display:grid;place-items:center}.due-icon svg{width:17px;height:17px}.quiet-link{border:0;background:transparent;color:#287b6e;font-weight:800;font-size:12px;display:inline-flex;align-items:center;gap:5px}.quiet-link svg{height:14px;width:14px}.notice-strip{background:#f0f8f2;border:1px solid #d8ecdf;border-radius:13px;padding:14px 17px;display:flex;gap:12px;align-items:center;color:#406d5e;font-size:12px;margin-top:25px}.notice-strip svg{color:#5f9c7e;width:18px;height:18px}.notice-strip strong{color:#2b6757}
.toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap}.search-wrap{position:relative;flex:1;min-width:210px;max-width:370px}.search-wrap svg{position:absolute;top:13px;left:14px;width:16px;height:16px;color:#9ab0ad}.search-input,.select-input,.form-input{height:44px;border-radius:11px;background:white;color:#34595b;border:1px solid #e4ede8;outline:0;padding:0 14px;width:100%;font-size:12.5px;transition:border .15s,box-shadow .15s}.search-input{padding-left:41px}.search-input:focus,.select-input:focus,.form-input:focus{border-color:#67aa9c;box-shadow:0 0 0 3px #e4f4eb}.select-input{appearance:none;cursor:pointer;min-width:145px;padding-right:37px;background-image:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23688d86" stroke-width="2"%3E%3Cpath d="m6 9 6 6 6-6"/%3E%3C/svg%3E');background-size:16px;background-repeat:no-repeat;background-position:right 12px center}.toggle-tabs{display:flex;gap:5px;background:#eef4f0;border-radius:12px;padding:4px;width:max-content;max-width:100%;overflow:auto}.tab{border:0;border-radius:9px;background:transparent;padding:9px 14px;color:#819895;font-size:12px;font-weight:800;white-space:nowrap}.tab.active{color:#2a6560;background:white;box-shadow:0 2px 10px rgba(30,75,61,.06)}.table-card{background:white;border:1px solid #edf1ee;border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.table-heading{padding:23px 25px 19px;display:flex;justify-content:space-between;align-items:center;gap:15px}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;text-align:left;min-width:760px}.data-table th{color:#97aaa6;text-transform:uppercase;letter-spacing:.7px;font-size:10px;font-weight:800;padding:16px 20px;background:#f9fbf9;white-space:nowrap}.data-table td{padding:16px 20px;border-bottom:1px solid #eff3f0;color:#5c7673;font-size:12px;white-space:nowrap}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:#fcfefd}.cell-person{display:flex;align-items:center;gap:11px}.cell-person strong{font-size:12px;color:#31575a}.cell-person small{display:block;color:#a2b2b0;font-size:10.5px;margin-top:4px}.money-strong{font-weight:800;color:#2e5b58}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;font-size:10.5px;font-weight:800}.badge i{width:6px;height:6px;border-radius:50%;background:currentColor}.badge-success{background:#e7f6eb;color:#348566}.badge-warning{background:#fff4e6;color:#b88948}.badge-danger{background:#fff0ea;color:#c47d6e}.badge-muted{background:#f1f5f3;color:#879b97}.table-actions{display:flex;justify-content:flex-end;gap:6px}.round-action{width:30px;height:30px;background:#f6faf7;border:1px solid #edf2ef;border-radius:9px;color:#547c76;display:grid;place-items:center}.round-action:hover{background:#e6f3ed}.round-action svg{width:15px;height:15px}.empty-state{padding:60px 20px;text-align:center;color:#9aa9a7}.empty-state svg{width:34px;height:34px;color:#7fb4a4}.empty-state strong{display:block;color:#456f68;margin-top:14px}.empty-state p{margin-top:5px;font-size:12px}.table-footer{border-top:1px solid #eff3f0;padding:15px 24px;color:#9caeaa;font-size:11px}.summary-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.small-kpi{padding:20px;border:1px solid #e9efeb;border-radius:14px;background:white}.small-kpi small{display:block;color:#93aaa5;font-size:11px;margin-bottom:10px}.small-kpi strong{font-family:Manrope;font-size:23px;color:#285d56;letter-spacing:-.6px}.small-kpi.alert strong{color:#bd7e64}.mini-label{font-size:10px;color:#a0afab;margin-top:7px}.progress-rail{width:100%;height:8px;background:#edf2ee;border-radius:20px;overflow:hidden;margin-top:13px}.progress-fill{height:100%;background:#529b83;border-radius:20px;transition:width .3s}.callout-card{margin:0 0 20px;background:linear-gradient(110deg,#ebf5ee,#f6faf6);border:1px solid #dcebe0;padding:18px 21px;border-radius:14px;display:flex;gap:13px;align-items:center}.callout-card .round-icon{width:42px;height:42px;background:#d2eadc;border-radius:12px;display:grid;place-items:center;color:#387561}.callout-card h3{font-size:13px}.callout-card p{font-size:11.5px;color:#79928a;margin-top:4px}.callout-card .btn{margin-left:auto}
.reports-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:20px;margin-bottom:20px}.report-list{display:grid;gap:16px;padding-top:17px}.report-progress-header{display:flex;justify-content:space-between;font-size:12px;gap:10px}.report-progress-header span{color:#68837d}.report-progress-header strong{color:#2b5e57}.report-progress{background:#eff5f1;height:8px;border-radius:10px;overflow:hidden;margin-top:9px}.report-progress i{background:#4f9882;height:100%;display:block;border-radius:10px}.report-progress i.second{background:#a5c9ba}.report-progress i.third{background:#dbad90}.report-highlight{border-radius:17px;background:#214f50;color:#fff;padding:25px;min-height:180px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;position:relative;overflow:hidden}.report-highlight:after{content:"";width:220px;height:220px;border:1px solid #4b8d85;border-radius:50%;position:absolute;right:-100px;top:-100px}.report-highlight .eyebrow{color:#b6dcd2}.report-highlight h2{font-size:27px;margin-top:8px}.report-highlight p{font-size:12px;color:#c7ded8;margin-top:10px;max-width:380px}.report-highlight .decor{font-size:64px;font-weight:800;color:#bde7d5;opacity:.65;line-height:1}
.modal-backdrop{position:fixed;inset:0;background:rgba(12,40,41,.48);display:grid;place-items:center;padding:22px;z-index:30;backdrop-filter:blur(3px)}.modal-dialog{background:white;border-radius:20px;width:min(500px,100%);max-height:min(87vh,780px);overflow:auto;box-shadow:0 30px 100px rgba(12,43,41,.22);padding:26px}.modal-dialog.wide{width:min(610px,100%)}.modal-head{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:22px}.modal-head h2{font-size:19px}.modal-head p{font-size:12px;color:#92a5a0;margin-top:6px}.modal-close{height:33px;width:33px;border:1px solid #edf1ee;color:#8ba5a0;border-radius:10px;background:#fff;display:grid;place-items:center}.modal-close svg{width:17px;height:17px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:grid;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:11px;color:#647f79;font-weight:800}.field .form-input{height:45px}.helper-text{color:#9cacaa;font-size:11px;line-height:1.5}.modal-actions{margin-top:24px;display:flex;justify-content:flex-end;gap:9px}.detail-panel{background:#f7faf7;border:1px solid #e9f0e9;padding:19px;border-radius:13px}.detail-line{display:flex;justify-content:space-between;gap:20px;padding:11px 0;color:#7a938c;font-size:12px;border-bottom:1px solid #e7eee8}.detail-line strong{font-weight:800;color:#315951;text-align:right}.detail-line:last-child{border-bottom:0}.copy-box{background:#eff6f1;border:1px dashed #cbded1;border-radius:12px;padding:17px;margin-top:15px;color:#3c695c;font-size:12px;line-height:1.7}.copy-box strong{color:#285b51}.demo-warning{background:#fff7e9;color:#97734b;border-radius:9px;padding:11px 13px;font-size:11px;margin-top:15px;line-height:1.5}.modal-status{display:grid;place-items:center;text-align:center;gap:9px;padding:8px}.modal-status .big-icon{height:70px;width:70px;border-radius:50%;background:#e3f3e7;color:#4a9472;display:grid;place-items:center;margin-bottom:3px}.modal-status .big-icon svg{width:34px;height:34px}.modal-status h3{font-size:21px}.modal-status p{font-size:12px;color:#93a7a2}
#toast{position:fixed;bottom:25px;right:25px;z-index:60;pointer-events:none}#toast .toast-message{display:flex;align-items:center;gap:10px;padding:14px 18px;background:#1c5651;color:white;box-shadow:0 16px 40px rgba(22,68,62,.23);border-radius:11px;font-weight:700;font-size:12px;animation:toast-in .25s ease}#toast svg{width:17px;height:17px}@keyframes toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.demo-tag{position:fixed;bottom:14px;right:15px;border-radius:8px;background:#fff;box-shadow:0 4px 18px #234c4522;border:1px solid #e1ebe4;padding:7px 10px;color:#839b91;font-size:8.5px;letter-spacing:1px;font-weight:800;display:flex;align-items:center;gap:6px;z-index:3}.demo-pulse{width:6px;height:6px;background:#70bda1;border-radius:50%}.mobile-nav{display:none}
@media(max-width:1220px){.sidebar{width:234px}.workspace{margin-left:234px}.main-content{padding:33px 27px 70px}.topbar{padding:0 27px}.cards-grid{gap:11px}.stat-card{padding:17px}.content-grid,.list-with-cards,.reports-grid{grid-template-columns:minmax(0,1.3fr) minmax(230px,1fr)}.surface-card{padding:21px}.method-summary{flex-wrap:wrap;gap:15px}.brand-name{font-size:22px}}
@media(max-width:980px){.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid,.list-with-cards,.reports-grid{grid-template-columns:1fr}.method-summary{flex-wrap:nowrap}.stat-value{font-size:27px}.topbar{height:70px}.main-content{min-height:calc(100vh - 70px)}.today-label{display:none}}
@media(max-width:700px){.sidebar{display:none}.workspace{margin-left:0}.topbar{height:66px;padding:0 20px}.main-content{padding:26px 16px 118px}.breadcrumbs{font-size:11px}.breadcrumbs strong{font-size:11px}.topbar-actions{gap:10px}.topbar-separator{display:none}.page-head{flex-direction:column;align-items:stretch;gap:17px;margin-bottom:23px}.page-head h1{font-size:25px}.page-subtitle{font-size:12px}.head-actions{justify-content:flex-start}.head-actions .btn{flex:1}.mobile-nav{display:flex;background:#fff;position:fixed;bottom:0;left:0;right:0;height:calc(69px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid #e4ece6;z-index:10;box-shadow:0 -10px 30px #224a4110}.mobile-nav button{background:transparent;border:0;flex:1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;color:#91a5a1;font-weight:700;font-size:9.5px;min-width:0;padding-top:7px}.mobile-nav button svg{height:20px;width:20px}.mobile-nav button.selected{color:#2c766a}.mobile-nav button.selected:before{content:"";height:3px;border-radius:0 0 4px 4px;position:absolute;top:0;width:33px;background:#419582}.demo-tag{bottom:calc(78px + env(safe-area-inset-bottom));right:11px;font-size:7px;opacity:.92}.cards-grid{gap:10px}.stat-card{min-height:130px;padding:15px}.stat-value{font-size:23px}.stat-label{font-size:10px}.stat-icon{width:31px;height:31px}.stat-foot{font-size:10px}.surface-card{padding:19px}.chart-panel{min-height:320px}.report-highlight{padding:20px}.report-highlight h2{font-size:23px}.report-highlight .decor{font-size:47px}.callout-card{flex-wrap:wrap}.callout-card .btn{margin-left:55px}.toolbar{gap:10px}.search-wrap{max-width:none;width:100%;flex:auto}.summary-row{grid-template-columns:1fr 1fr}.small-kpi:last-child{grid-column:1/-1}.small-kpi{padding:17px}.small-kpi strong{font-size:21px}#toast{bottom:95px;right:12px;left:12px}#toast .toast-message{width:100%}.modal-backdrop{padding:12px}.modal-dialog{padding:21px;max-height:88vh}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}}
@media(max-width:400px){.stat-card{padding:13px}.stat-value{font-size:20px}.stat-icon{width:29px;height:29px}.stat-icon svg{width:16px;height:16px}.method-summary{flex-wrap:wrap}.revenue-graph{gap:7px}.graph-bars{gap:5px}.graph-month{font-size:10px}.breadcrumbs>span{display:none}.section-header{align-items:flex-start}.section-header h2{font-size:16px}.table-heading{padding:20px}.page-head h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Identidade original da clínica. O restante da linguagem visual permanece igual. */
.brand-symbol-real{width:54px;height:54px;transform:none;border-radius:50%;background:#fff;overflow:hidden;box-shadow:0 0 0 2px rgba(218,243,227,.22)}
.brand-symbol-real img{display:block;width:100%;height:100%;object-fit:contain}
.mobile-top-logo{display:none}

/* Pincelada responsiva: os mesmos dados da tabela ficam completos em cartões no celular. */
@media(max-width:700px){
  .mobile-top-logo{display:block;width:36px;height:33px;object-fit:contain;border-radius:50%;background:#fff;flex:none}
  .breadcrumbs>svg{display:none}
  .breadcrumbs{gap:10px}
  .breadcrumbs strong{font-size:12px;color:#295a56}
  .table-scroll{overflow:visible}
  .data-table{display:block;min-width:0;width:100%}
  .data-table thead{display:none}
  .data-table tbody{display:block}
  .data-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px;padding:17px 18px;background:#fff;border-bottom:1px solid #e8f0eb}
  .data-table tbody tr:last-child{border-bottom:0}
  .data-table tbody tr:hover{background:#fcfefd}
  .data-table td{display:block;padding:0;border:0!important;min-width:0;white-space:normal;color:#4f7570;line-height:1.4}
  .data-table td:first-child{grid-column:1/-1;padding-bottom:12px;border-bottom:1px solid #edf2ee!important}
  .data-table td:first-child:before{display:none}
  .data-table td:not(:first-child):before{display:block;color:#95aca6;font-size:9px;letter-spacing:.7px;text-transform:uppercase;font-weight:800;white-space:nowrap;margin-bottom:5px}
  .data-table .cell-person{align-items:center;gap:11px;min-width:0}
  .data-table .cell-person span:last-child{min-width:0}
  .data-table .cell-person strong{display:block;white-space:normal;overflow-wrap:anywhere;font-size:13px}
  .data-table .cell-person small{font-size:11px;white-space:normal}
  .data-table .person-avatar{height:39px;width:39px;flex:none}
  .data-table .money-strong{font-size:13px}
  .data-table td:last-child{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:9px;border-top:1px solid #edf2ee!important}
  .data-table td:last-child:before{margin:0}
  .data-table .table-actions{justify-content:flex-end;gap:9px;margin-left:auto}
  .data-table .round-action{width:37px;height:35px}
  .data-table .round-action svg{height:17px;width:17px}
  .data-table .btn-tiny{margin-left:auto;min-height:34px;padding:8px 14px}
  body[data-view="students"] .data-table td:nth-child(2):before{content:"Plano"}
  body[data-view="students"] .data-table td:nth-child(3):before{content:"Mensalidade"}
  body[data-view="students"] .data-table td:nth-child(4):before{content:"Vencimento"}
  body[data-view="students"] .data-table td:nth-child(5):before{content:"Situação"}
  body[data-view="students"] .data-table td:nth-child(6):before{content:"Ações"}
  body[data-view="invoices"] .data-table td:nth-child(2):before{content:"Vencimento"}
  body[data-view="invoices"] .data-table td:nth-child(3):before{content:"Valor"}
  body[data-view="invoices"] .data-table td:nth-child(4):before{content:"Status"}
  body[data-view="invoices"] .data-table td:nth-child(5):before{content:"Recebimento"}
  body[data-view="invoices"] .data-table td:nth-child(6):before{content:"Ações"}
  body[data-view="payments"] .data-table td:nth-child(2):before{content:"Data"}
  body[data-view="payments"] .data-table td:nth-child(3):before{content:"Forma"}
  body[data-view="payments"] .data-table td:nth-child(4):before{content:"Valor"}
  body[data-view="payments"] .data-table td:nth-child(5):before{content:"Status"}
  body[data-view="payments"] .data-table td:nth-child(6):before{content:"Comprovante"}
  .demo-tag{position:relative;inset:auto;bottom:auto;right:auto;width:max-content;max-width:calc(100% - 32px);margin:0 16px 90px auto;opacity:1}
}
@media(max-width:380px){
  .data-table tbody tr{padding:15px 13px;gap:11px 10px}
  .data-table td:not(:first-child):before{font-size:8.5px}
  .data-table .badge{padding:5px 8px}
}
