.loading{text-align:center;padding:80px}.auth{max-width:500px;margin:55px auto;padding:35px;border:1px solid #d9e9e4;border-radius:25px;background:#f5fbf8}.auth h1{font-size:38px;line-height:1.2}.auth label{margin:16px 0}.auth input:not([type=checkbox]),.admin input:not([type=checkbox]),.admin select,.admin textarea,.signal textarea{width:100%;padding:12px;border:1px solid #bdd7ce;border-radius:10px;font-size:16px;background:white;color:#203d48}.auth .small{margin:10px 0}.auth button{width:100%;margin:20px 0}.auth .privacy{font-weight:400;font-size:14px}.auth input[type=checkbox]{accent-color:#167963}.shell{display:grid;grid-template-columns:210px 1fr;max-width:1500px;margin:25px auto;gap:28px;padding:0 25px}.sidebar{background:#edf8f4;border-radius:22px;padding:22px;align-self:start;position:sticky;top:100px}.sidebar button{display:block;width:100%;border:0;background:transparent;color:#49655f;padding:14px;text-align:left;border-radius:12px;font:inherit;cursor:pointer;margin:5px 0}.sidebar button.active{background:white;color:#167963;box-shadow:0 4px 0 #dbece3;font-weight:650}.dash-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.dash-top h1{font-size:35px;letter-spacing:-.04em;margin:20px 0 0}.badge{border-radius:100px;padding:6px 14px;background:#e5f7ee;color:#167963;font-size:13px}.dash-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0}.dash-card{border-radius:22px;border:1px solid #dce9e4;padding:22px;background:#fff;box-shadow:0 6px 0 #edf4f0}.dash-card strong{display:block;font-size:32px;letter-spacing:-.03em;color:#167963;animation:enter .6s}.dash-card small{font-size:13px;color:#6a8078}.dash-card:first-child{background:#fff8e9}.dash-card:first-child strong{color:#a16d23}.dash-panel{padding:26px;border:1px solid #dce9e4;border-radius:22px;margin:20px 0;background:white}.dash-panel h2{font-size:25px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}td,th{padding:14px 10px;border-bottom:1px solid #e6eeeb;text-align:left;white-space:nowrap}th{color:#6e847b;font-size:12px}.empty{padding:30px;background:#f4f9f7;border-radius:15px;color:#647c73}.demo-banner{background:#fff0c7;padding:14px 25px;text-align:center;font-size:14px}.demo-banner a{font-weight:700}.dashboard-illustration{background:#eaf8ff;border-radius:25px;position:relative;padding:30px;display:flex;align-items:center;justify-content:space-between;overflow:hidden}.dashboard-illustration .mini-house{font-size:90px;animation:float 4s infinite alternate;filter:drop-shadow(0 10px 0 #d9e9ef)}.dashboard-illustration h2{font-size:28px}.expense-bars{display:grid;gap:16px}.expense-bar{height:10px;background:#e7f1ed;border-radius:10px}.expense-bar i{height:100%;display:block;background:#69b3a2;border-radius:10px;transform-origin:left;animation:grow 1s both}.admin{display:grid;gap:18px;grid-template-columns:1fr 1fr}.admin form{padding:24px;background:#f4faf7;border:1px solid #d9e9e2;border-radius:20px}.admin label{font-size:14px;margin:10px 0}.admin h3{margin-top:0}.admin .btn{margin-top:15px}.admin .wide{grid-column:1/-1}.signal label{margin-bottom:15px}.signal textarea{min-height:110px}#toast{position:fixed;bottom:25px;right:25px;max-width:420px;background:#203d48;color:white;padding:15px 25px;border-radius:15px;display:none;z-index:40}.pending{max-width:700px;margin:80px auto;padding:35px;background:#f2fbf6;border-radius:25px}.privacy-page{max-width:900px;margin:50px auto;padding:25px}.privacy-page h1{font-size:42px}.privacy-page h2{font-size:25px;margin-top:35px}.table-controls{display:flex;justify-content:space-between;gap:15px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.month-filter{padding:10px;border:1px solid #c9dfd5;border-radius:10px;font:inherit;color:#167963}.table-wrap tr[hidden]{display:none}@keyframes enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes grow{from{scale:0 1}to{scale:1 1}}@media(max-width:850px){.shell{display:block;padding:0 16px}.sidebar{position:static;display:flex;overflow:auto;padding:10px}.sidebar button{white-space:nowrap;width:auto}.dash-cards{grid-template-columns:1fr}.admin{grid-template-columns:1fr}.dash-top{flex-wrap:wrap}.auth{margin:30px 16px}.dashboard-illustration .mini-house{font-size:65px}}
