:root{--ink:#163b32;--muted:#78837e;--line:#e4e9e4;--green:#22664d;--lime:#ceef9d;--bg:#f6f8f4}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:inherit;text-decoration:none}button{border:0}h1,h2,h3,p{margin:0}h1{font-size:36px;letter-spacing:-1.4px;font-weight:650}h2{font-size:21px;letter-spacing:-.6px;font-weight:600}h3{font-size:16px}.brand{display:flex;align-items:center;gap:10px;font-size:35px;font-weight:750;letter-spacing:-1.8px}.brand>span{font-size:31px}.dot{color:#73a860}.muted{color:var(--muted)}.eyebrow,.nav-label{font-size:10px;letter-spacing:1.7px;font-weight:650}.primary,.secondary{border-radius:8px;padding:13px 18px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px}.primary{background:var(--ink);color:white}.primary:hover{background:#27634d}.secondary{border:1px solid #d9e1d9;background:transparent;color:var(--ink)}.secondary:hover{background:#eef2e9}.full{width:100%;justify-content:space-between}.text-btn{background:none;color:var(--green);font-weight:600;padding:8px 0}.fine{font-size:11px;line-height:1.7;color:var(--muted);text-align:center;margin-top:16px}.align-left{text-align:left;margin:0 0 14px}.error{color:#b43a3a;font-size:13px;line-height:1.6;margin:8px 0}.auth-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100svh}.auth-story{background:#173f35;color:white;padding:45px 65px;display:flex;flex-direction:column;position:relative;overflow:hidden}.auth-story:after{content:"";border:1px solid #ffffff0c;width:600px;height:600px;position:absolute;right:-320px;top:150px;border-radius:50%;box-shadow:0 0 0 75px #ffffff03,0 0 0 150px #ffffff03;pointer-events:none}.auth-story .brand{color:#edf4e7}.story-content{margin:auto 0;position:relative;z-index:1;padding:45px 0}.story-content .eyebrow{color:#b4ceba}.story-content h1{font-size:clamp(48px,5.3vw,82px);line-height:1.03;letter-spacing:-3px;margin:25px 0}.story-content em{font-weight:450;font-family:Georgia,serif;color:#cbedaa}.story-content p{line-height:1.8;color:#b8cbc1;font-size:16px}.story-graph{margin-top:50px;max-width:410px}.story-graph span{font-size:9px;letter-spacing:1.5px;color:#a6bdb0}.story-graph svg{width:100%;margin-top:18px;overflow:visible}.auth-story>small{color:#99b3a5;font-size:11px}.auth-panel{display:grid;place-items:center;padding:45px 28px;background:#fbfcf9}.auth-card{width:100%;max-width:370px}.pill{background:#eaf2e2;padding:8px 10px;border-radius:4px;font-size:9px;letter-spacing:1.4px;color:#46723c;font-weight:650}.auth-card h2{font-size:31px;margin:22px 0 9px;letter-spacing:-1px}.tabs{display:flex;margin:30px 0 25px;border-bottom:1px solid var(--line)}.tabs button{background:none;padding:12px 0;margin-right:30px;color:var(--muted);font-weight:600;border-bottom:2px solid transparent}.tabs button.active{color:var(--ink);border-color:var(--ink)}label{display:block;font-weight:550;font-size:12px;margin-bottom:17px}input,select,textarea{display:block;width:100%;border:1px solid #dde4dc;background:white;border-radius:6px;padding:12px;color:var(--ink);margin-top:8px;outline:none;min-height:42px}input:focus,select:focus,textarea:focus{border-color:#4b8564;box-shadow:0 0 0 3px #4b856416}button:focus-visible,a:focus-visible{outline:3px solid #86b9a3;outline-offset:3px}#forgot{display:block;margin:-6px 0 12px auto;font-size:11px}.divider{display:flex;align-items:center;gap:16px;color:#9ca59c;font-size:11px;margin:24px 0}.divider:before,.divider:after{content:"";height:1px;flex:1;background:var(--line)}.sidebar{width:230px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:34px 24px;display:flex;flex-direction:column}.sidebar .brand{padding-left:9px;margin-bottom:52px}.nav-label{color:#a0a89f;font-size:9px;margin:0 12px 15px}nav{display:grid;gap:8px}nav button{display:flex;gap:14px;align-items:center;text-align:left;padding:14px;border-radius:7px;background:none;color:#7c8881;font-size:19px}nav button span{font-size:13px}nav button.active{background:#edf3e7;color:#285137;font-weight:650}.side-note{margin-top:auto;margin-bottom:28px;padding:19px;background:#f4f7ed;border-radius:9px}.side-note>span{font-size:29px;color:#689d43}.side-note h3{font-size:13px;margin:8px 0}.side-note p{font-size:11px;color:#87917d;line-height:1.8}.profile{border-top:1px solid var(--line);padding-top:22px;display:flex;gap:10px;align-items:center}.avatar{background:#e6eddf;border-radius:50%;height:33px;width:33px;display:grid;place-items:center;flex-shrink:0}.profile strong{font-size:11px;display:block;max-width:100px;overflow:hidden;text-overflow:ellipsis}.profile small{display:block;font-size:9px;color:#9ba399;margin-top:4px}.profile button{margin-left:auto;background:none;font-size:20px;color:#8d978b}main{margin-left:230px;max-width:1650px;padding:39px 42px 15px}header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:26px}header .eyebrow{color:#8a998b}header h1{margin:9px 0}header p{font-size:13px}.banner{display:flex;justify-content:space-between;gap:10px;background:#edf3e2;padding:12px 15px;border-radius:6px;color:#687852;font-size:11px}.banner button{background:none;font-size:11px;color:#42612d;text-decoration:underline}.toolbar{display:flex;justify-content:space-between;align-items:center;margin:25px 0 19px;font-size:11px;color:#87927f}.status-dot{display:inline-block;width:6px;height:6px;background:#74a35b;border-radius:50%;margin-right:8px}.inline{display:flex;gap:10px;align-items:center;margin:0;color:#899284;font-size:11px}.inline select{width:auto;margin:0;font-size:11px;padding:9px 12px;min-height:35px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat{background:#fff;border:1px solid var(--line);padding:21px;border-radius:10px}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#8c9588;font-size:11px}.stat-icon{color:#57814d;background:#f2f6eb;border-radius:6px;padding:5px 8px;font-size:16px}.stat-value{font-size:30px;letter-spacing:-1px;margin:9px 0 7px;font-weight:600}.stat-value small{font-size:13px;letter-spacing:0;color:#94a08c}.stat-foot{font-size:10px;color:#9ca693}.card{background:white;border:1px solid var(--line);border-radius:11px;padding:25px}.insight-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(245px,1fr);gap:22px;margin-bottom:25px}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.card-heading .eyebrow,.consistency .eyebrow{font-size:8px;color:#9aab94;letter-spacing:1.3px}.card-heading h2{margin-top:7px}.tag{border:1px solid #e0e7db;padding:5px 9px;border-radius:5px;font-size:10px;color:#889981}.chart-controls{display:flex;align-items:center;justify-content:space-between;margin:17px 0 5px;gap:10px}.chart-controls select{width:auto;max-width:68%;font-size:11px;padding:8px 10px;min-height:34px;margin:0}.growth{color:#618a3f;font-size:10px;white-space:nowrap}.chart-caption{font-size:9px;color:#a3ac9e;margin-top:3px}#chart{height:205px;display:flex;align-items:center;justify-content:center}#chart svg{width:100%;height:100%;overflow:visible}.consistency{background:#f0f5e7;border-color:#e3ebd8}.consistency h2{margin:10px 0 20px;line-height:1.3}#calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-cell{height:19px;background:#e2e9d8;border-radius:3px}.calendar-cell.filled{background:#65864d}.calendar-key{font-size:8px;color:#91a17e;display:flex;align-items:center;gap:5px;margin-top:11px}.calendar-key span{width:9px;height:9px}.consistency-bottom{display:flex;align-items:center;gap:15px;margin-top:22px;border-top:1px solid #dfe8d3;padding-top:17px}.consistency-bottom strong{font-size:33px;letter-spacing:-1px}.consistency-bottom span{font-size:10px;line-height:1.7;color:#839271}.records{padding-bottom:0}.records .text-btn{font-size:11px}.record-filters{display:flex;align-items:center;justify-content:space-between;margin:18px 0 7px;gap:15px}.record-filters input{max-width:280px;background:#fafbf7;padding:10px;font-size:11px;min-height:36px;margin:0}.record-filters span{font-size:10px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:8px;letter-spacing:1.2px;color:#9da794;font-weight:550;padding:17px 10px;border-bottom:1px solid var(--line)}td{padding:16px 10px;border-bottom:1px solid #edf0e9;font-size:11px;color:#7d8a74}td:first-child{color:var(--ink);font-weight:600}td small{display:block;font-size:9px;color:#a0aa98;margin-top:5px;font-weight:400}.weight-pill{background:#f0f5e9;color:#50733d;border-radius:4px;padding:5px 8px;font-size:10px;font-weight:600}.row-action{background:none;color:#89987b;padding:6px;font-size:12px}.row-action:hover{background:#edf3e6;border-radius:4px}.all-records{width:100%;text-align:center;background:none;padding:17px;color:#6e8860;font-size:10px}.empty{text-align:center;color:#536b47;padding:45px;line-height:2}.empty span{font-size:12px;color:#a0ab98}footer{display:flex;justify-content:space-between;align-items:center;font-size:11px;padding:24px 0;color:#a5ae9c}footer>span{font-size:9px}dialog{border:1px solid #dde6d7;border-radius:14px;max-width:560px;width:calc(100% - 30px);padding:27px;color:var(--ink);max-height:92svh;overflow:auto}dialog::backdrop{background:#12382ad0;backdrop-filter:blur(4px)}.modal-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.modal-heading .eyebrow{font-size:9px;color:#96a18d}.modal-heading h2{margin-top:6px}.icon-btn{font-size:25px;background:none;color:#8b9a83}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid.three{grid-template-columns:1fr 1fr 1fr}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#163b32;color:white;box-shadow:0 4px 25px #0002;padding:14px 25px;border-radius:9px;font-size:13px;z-index:10}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@media(min-width:1550px){main{margin-right:auto}}@media(max-width:1150px){main{padding:30px 25px}.sidebar{width:200px;padding:30px 16px}main{margin-left:200px}.stat{padding:16px}.stat-value{font-size:26px}.insight-grid{gap:15px;grid-template-columns:minmax(0,1.6fr) minmax(230px,1fr)}.card{padding:20px}.auth-story{padding:35px 40px}}@media(max-width:850px){.sidebar{width:75px;padding:25px 10px}.sidebar .brand>span,.nav-label,nav button span,.side-note,.profile>div:not(.avatar){display:none}.sidebar .brand{padding:0;justify-content:center;font-size:30px;margin-bottom:35px}nav button{justify-content:center;padding:13px;font-size:22px}.profile{margin-top:auto;flex-direction:column}.profile button{margin:auto}.avatar{height:30px;width:30px}main{margin-left:75px}.stats{grid-template-columns:repeat(2,1fr)}.insight-grid{grid-template-columns:1fr}.consistency{display:none}h1{font-size:29px}.auth-story{padding:30px}.story-content h1{font-size:54px}}@media(max-width:580px){.auth-layout{grid-template-columns:1fr}.auth-story{padding:22px 25px}.auth-story .brand{font-size:27px}.auth-story .brand>span{font-size:26px}.story-content{padding:25px 0 10px}.story-content h1{font-size:42px;line-height:1.08;margin:10px 0}.story-content h1 br{display:none}.story-content .eyebrow,.story-content p,.story-graph,.auth-story>small{display:none}.auth-panel{padding:30px 25px}.auth-card h2{font-size:27px}.sidebar{position:fixed;inset:auto 0 0 0;width:100%;height:66px;padding:0;background:white;z-index:5;border-top:1px solid var(--line);border-right:0}.sidebar .brand,.sidebar .profile{display:none}.sidebar nav{display:flex;justify-content:space-around;height:100%;gap:0}.sidebar nav button{flex-direction:column;gap:2px;flex:1;font-size:19px;border-radius:0;padding:9px}.sidebar nav button span{display:block;font-size:9px}main{margin:0;padding:24px 17px 75px}header{align-items:flex-start;margin-bottom:19px}header .eyebrow{font-size:8px}header h1{font-size:27px}header p{font-size:11px}header .primary{padding:10px;min-height:38px;font-size:18px}header .primary span{display:none}.banner{font-size:9px;align-items:center;line-height:1.6}.banner button{font-size:9px}.toolbar{margin:18px 0 15px}.toolbar>div{font-size:9px}.inline{font-size:0}.inline select{font-size:10px;padding:8px;max-width:145px}.stats{gap:10px;margin-bottom:15px}.stat{padding:14px}.stat-top{font-size:10px}.stat-value{font-size:27px}.stat-foot{font-size:9px}.stat-icon{font-size:13px;padding:4px 7px}.card{padding:18px}.insight-grid{margin-bottom:15px}.card-heading h2{font-size:19px}.card-heading .eyebrow{font-size:7px}.chart-controls select{font-size:10px}#chart{height:195px}.growth{font-size:9px}.records{padding-bottom:0}.records .text-btn{font-size:9px}.record-filters input{max-width:200px;font-size:10px}td{padding:14px 8px}th{padding:14px 8px;font-size:7px}.form-grid.three{gap:10px}.form-grid.three label{font-size:10px}.form-grid{gap:10px}dialog{padding:22px}.modal-actions button{font-size:12px;padding:12px}footer>span:first-of-type{display:none}#toast{bottom:80px;width:max-content;max-width:90%;text-align:center}}

.header-actions{display:flex;gap:10px;align-items:center}.mobile-exit{display:none;background:none;color:#74866b;font-size:11px;padding:7px}@media(max-width:580px){.mobile-exit{display:block}}

.admin-demo{margin-top:10px;font-size:12px}.password-rules{font-size:11px;padding:0 0 12px;line-height:1.9;color:#8c9690}.password-rules .passed{color:#387640}.access-gate p{margin:15px 0;line-height:1.8}.gate-actions{display:flex;gap:12px;flex-wrap:wrap}.admin-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 20px}.admin-toolbar h2{margin-top:7px}.admin-tabs{display:flex;gap:8px;margin:18px 0}.admin-tabs button{background:white;border:1px solid var(--line);border-radius:6px;padding:10px 14px;color:var(--muted)}.admin-tabs button.active{background:var(--ink);color:white}.admin-filters{display:flex;align-items:center;gap:12px;margin:20px 0}.admin-filters input{flex:1;margin:0}.admin-filters select{width:auto;margin:0}.badge{display:inline-block;font-size:10px;padding:5px 8px;border-radius:20px;background:#edf3e5;color:#547a3d}.badge.blocked{background:#fbece8;color:#a84938}.badge.pending{background:#fff3da;color:#9e7c30}.admin-actions{display:flex;gap:6px}.admin-actions button{font-size:10px;padding:7px 9px;border-radius:5px;background:#f1f5ed;color:#45613a}.admin-actions button:disabled{opacity:.35;cursor:not-allowed}.admin-actions button.danger{background:#faeee9;color:#9b4a3d}.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:23px}.policy-item{background:#f5f8f0;padding:20px;border-radius:8px}.policy-item h3{margin-bottom:10px}.policy-item p{font-size:12px;color:#8a9882;line-height:1.8}.security-line{padding:15px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:12px;align-items:center}.security-line p{color:#8a9882;font-size:11px;margin-top:6px}.security-tip{background:#eef4e4;border-radius:7px;padding:15px;font-size:12px;line-height:1.8;margin:20px 0;color:#688052}.security-panel{max-width:750px}.security-panel h2{margin:8px 0 20px}.security-panel button{margin-top:15px}.demo-switch{display:flex;gap:10px;align-items:center;font-size:11px}.demo-switch select{margin:0;width:auto;min-height:32px;font-size:11px}.totp-secret{display:block;word-break:break-all;padding:15px;background:#f2f5ed;border-radius:6px;font-size:16px;letter-spacing:2px;margin:15px 0}.security-panel label{margin-top:18px}.admin-empty{text-align:center;padding:35px;color:var(--muted)}.admin-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.audit-list{max-height:500px;overflow:auto}.audit-item{padding:17px 0;border-bottom:1px solid var(--line);line-height:1.7;font-size:12px}.audit-item small{color:var(--muted);display:block}.admin-help{font-size:11px;color:var(--muted);line-height:1.8;margin:16px 0}#adminError{font-size:12px;line-height:1.7;color:#a44638;margin:12px 0}.page-security .toolbar,.page-admin .toolbar{display:none}body:has(#adminSection:not([hidden])) header #newRecord,body:has(#securitySection:not([hidden])) header #newRecord{display:none}@media(max-width:850px){.admin-actions{flex-wrap:wrap}}@media(max-width:580px){.policy-grid{grid-template-columns:1fr}.admin-summary{gap:8px}.admin-summary .stat{padding:12px}.admin-summary .stat-value{font-size:23px}.admin-filters{flex-wrap:wrap}.admin-filters input{flex-basis:100%}.admin-filters select{flex:1}.admin-toolbar{align-items:flex-start}.admin-toolbar h2{font-size:18px}.admin-toolbar .secondary{padding:8px;font-size:10px;min-height:35px}.demo-switch{flex-wrap:wrap}.sidebar nav button span{font-size:8px}.sidebar nav button{padding:8px 3px}.admin-tabs button{padding:9px;font-size:11px}}

/* Preferências de aparência por conta. */
.primary{background:var(--accent,var(--ink));color:var(--accent-text,#fff)}
nav button.active,.side-note,.stat-icon,.weight-pill,.theme-preview{background:var(--soft,#edf3e7);color:var(--green)}
.dot,.growth{color:var(--green)}.consistency{background:var(--soft,#f0f5e7)}.calendar-cell.filled{background:var(--accent,#65864d)}
.appearance-card{max-width:760px;padding:30px}.color-fields{display:flex;gap:22px;align-items:end;margin:24px 0}.color-fields label{flex:1}.color-fields input[type=color]{width:100%;height:48px;padding:4px;cursor:pointer}.theme-preview{padding:24px;border-radius:16px;margin:20px 0}.theme-preview .primary{display:inline-block;padding:12px 18px;border-radius:9px;font-size:13px}.copyright{display:block;font-size:10px!important;line-height:1.7;color:var(--muted);white-space:normal}.copyright a{color:inherit;text-decoration:underline}.auth-card>.copyright{margin-top:24px}footer{flex-wrap:wrap;gap:12px}footer .copyright{flex-basis:100%}
@media(max-width:580px){footer .copyright{display:block!important}.appearance-card{padding:20px}.color-fields{gap:12px}.sidebar nav button{padding-left:6px;padding-right:6px}.sidebar nav button span{font-size:9px}}

.registration-settings{padding:24px;margin-bottom:20px}.registration-settings h3{margin-top:0}.registration-settings button{margin-top:10px}button:disabled{cursor:not-allowed;opacity:.55}
