*{box-sizing:border-box}body{color:#3b2a5c;background:linear-gradient(160deg,#8ecbff 0%,#b8d8ff 30%,#ffe29a 70%,#ffc9e8 100%) fixed;min-height:100vh;margin:0;padding:24px;font-family:Fredoka,Comic Sans MS,Chalkboard SE,Comic Neue,cursive,sans-serif;font-size:18px;overflow-x:hidden}.sky{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.cloud{opacity:.85;background:#fffc;border-radius:999px;animation:14s ease-in-out infinite floaty;position:absolute}.cloud:before,.cloud:after{content:"";background:inherit;border-radius:50%;position:absolute}.cloud:before{width:55px;height:55px;top:-22px;left:18px}.cloud:after{width:70px;height:70px;top:-30px;right:18px}.c1{width:130px;height:42px;top:8%;left:6%}.c2{width:90px;height:30px;animation-delay:2s;top:22%;right:8%}.c3{width:110px;height:36px;animation-delay:4s;top:60%;left:70%}.c4{width:70px;height:24px;animation-delay:1s;top:84%;left:12%}.sparkle{-webkit-user-select:none;user-select:none;font-size:30px;animation:3.5s ease-in-out infinite twinkle;position:absolute}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}@keyframes twinkle{0%,to{opacity:.25;transform:scale(.8)rotate(0)}50%{opacity:1;transform:scale(1.2)rotate(20deg)}}@keyframes wiggle{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}.page{z-index:1;max-width:940px;margin:0 auto;position:relative}.mascot{text-align:center;margin:6px 0 22px}.mascot .face{font-size:74px;animation:3s ease-in-out infinite wiggle;display:inline-block}.mascot h1{color:#fff;text-shadow:3px 3px #7a5ad9,-2px -2px #ff9dd2;margin:6px 0 4px;font-size:40px;font-weight:700}.mascot p{color:#4a3d8f;margin:0;font-size:20px;font-weight:600}.rainbow{background:linear-gradient(90deg,#ff5f6d,#ffc15e,#ffe66d,#6ee7a0,#5ec8ff,#b78bff);border-radius:999px;width:70%;height:10px;margin:18px auto 24px}.card{background:#fffef7;border:4px solid #3b2a5c;border-radius:28px;margin-bottom:28px;padding:22px 24px;box-shadow:0 10px #3b2a5c47}h2{color:#7a5ad9;margin:0 0 14px;font-size:26px}h3{color:#ff6f91;margin:18px 0 12px;font-size:22px}.meta{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:6px;display:grid}label{color:#4a3d8f;flex-direction:column;gap:6px;font-weight:600;display:flex}input[type=text],input[type=number]{color:#3b2a5c;background:#fff;border:3px solid #b9a8e8;border-radius:14px;width:100%;padding:11px 12px;font-family:inherit;font-size:17px;transition:transform .15s,box-shadow .15s,border-color .15s}input:focus{border-color:#ff6f91;outline:none;transform:scale(1.03);box-shadow:0 0 0 4px #ffd9e6}.sub-table{border-collapse:separate;border-spacing:0;width:100%;margin-bottom:6px}.sub-table th,.sub-table td{text-align:left;border:3px solid #3b2a5c;padding:10px 12px}.sub-table th{color:#fff;background:linear-gradient(#a78bfa,#8b5cf6);font-size:17px}.sub-table td{background:#fff}.sub-table tr td:first-child{color:#4a3d8f;background:#f3ecff;font-weight:600}.sub-table tr:nth-child(2n) td{background:#fbf6ff}.sub-table tr:nth-child(2n) td:first-child{background:#f3eaff}.sub-table th:first-child{border-radius:14px 0 0}.sub-table th:last-child{border-radius:0 14px 0 0}.sub-table tr:last-child td:first-child{border-radius:0 0 0 14px}.sub-table tr:last-child td:last-child{border-radius:0 0 14px}.treasury{grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:6px;display:grid}button{color:#fff;cursor:pointer;background:linear-gradient(#ff9a56,#ff6f61);border:4px solid #3b2a5c;border-radius:999px;margin:18px auto 0;padding:14px 34px;font-family:inherit;font-size:21px;font-weight:700;transition:transform .12s,box-shadow .12s,filter .12s;display:block;box-shadow:0 7px #c94f3f,0 10px 16px #0000002e}button:hover{filter:brightness(1.05);transform:translateY(-3px)scale(1.04);box-shadow:0 10px #c94f3f,0 14px 20px #0003}button:active{transform:translateY(3px);box-shadow:0 3px #c94f3f}#status,.status-msg{text-align:center;color:#2f9e5f;margin-top:16px;font-size:20px;font-weight:700}.fin-table{border-collapse:separate;border-spacing:0;width:100%;margin-top:10px}.fin-table th,.fin-table td{text-align:right;font-variant-numeric:tabular-nums;border:3px solid #3b2a5c;padding:10px 12px}.fin-table th{color:#fff;text-align:center;background:linear-gradient(#6ee7a0,#34d399);font-size:17px}.fin-table td{background:#fff}.fin-table tr:nth-child(2n) td{background:#eafbf3}.fin-table td:first-child,.fin-table th:first-child{text-align:left;color:#2f6b96;font-weight:700}.fin-table th:first-child{border-radius:14px 0 0}.fin-table th:last-child{border-radius:0 14px 0 0}.fin-table tr:last-child td:first-child{border-radius:0 0 0 14px}.fin-table tr:last-child td:last-child{border-radius:0 0 14px}.fin-wrap{overflow-x:auto}#fin-status,.fin-status-msg{color:#6b5b9e;margin-top:12px;font-style:italic}.sub-wrap{overflow-x:auto}.auth-card{max-width:440px;margin:0 auto}.auth-sub{color:#6b5b9e;margin:0 0 18px;font-weight:600}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-hint{color:#8a7bb5;font-size:14px;font-weight:500;display:block}.auth-input{color:#3b2a5c;background:#fff;border:3px solid #b9a8e8;border-radius:14px;width:100%;padding:11px 12px;font-family:inherit;font-size:17px;transition:transform .15s,box-shadow .15s,border-color .15s}.auth-input:focus{border-color:#ff6f91;outline:none;transform:scale(1.03);box-shadow:0 0 0 4px #ffd9e6}.auth-error{color:#b3261e;background:#ffe1e1;border:2px solid #ff6f61;border-radius:12px;padding:10px 12px;font-weight:600}.auth-switch{text-align:center;color:#4a3d8f;margin-top:18px;font-weight:600}.link-btn{box-shadow:none;color:#7a5ad9;font-size:inherit;cursor:pointer;background:0 0;border:none;width:auto;margin:0;padding:0;font-weight:700;text-decoration:underline;display:inline}.link-btn:hover{box-shadow:none;filter:none;color:#4a3d8f;transform:none}.link-btn:active{box-shadow:none;transform:none}.usermenu{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;padding:14px 20px;display:flex}.usermenu-greeting{color:#3b2a5c;font-size:19px;font-weight:700}.role-badge{text-transform:uppercase;color:#7a5ad9;background:#efe6ff;border:2px solid #b9a8e8;border-radius:999px;margin-left:6px;padding:2px 10px;font-size:13px;font-weight:700;display:inline-block}.usermenu-actions{flex-wrap:wrap;gap:10px;display:flex}.ghost-btn{color:#4a3d8f;cursor:pointer;background:#fff;border:3px solid #b9a8e8;border-radius:999px;width:auto;margin:0;padding:7px 14px;font-family:inherit;font-size:14px;font-weight:700;transition:transform .12s,box-shadow .12s,background .12s;display:inline-block;box-shadow:0 3px #cdbfe8}.ghost-btn:hover{background:#f4edff;transform:translateY(-2px);box-shadow:0 5px #cdbfe8}.ghost-btn:active{transform:translateY(2px);box-shadow:0 1px #cdbfe8}.ghost-btn.danger{color:#b3261e;background:#fff5f4;border-color:#ff9a8a;box-shadow:0 3px #ffc2b8}.ghost-btn.danger:hover{background:#ffe1de}.admin-wrap{overflow-x:auto}.admin-table{min-width:620px}@media (width<=640px){body{background-attachment:scroll;padding:10px}.page{max-width:100%}.mascot .face{font-size:56px}.mascot h1{text-shadow:2px 2px #7a5ad9,-1px -1px #ff9dd2;font-size:30px}.mascot p{font-size:17px}.card{border-width:3px;border-radius:20px;margin-bottom:20px;padding:12px}h2{font-size:22px}h3{font-size:19px}.meta,.treasury{grid-template-columns:1fr;gap:10px}input[type=text],input[type=number],.auth-input{padding:10px;font-size:16px}.sub-table th,.sub-table td,.fin-table th,.fin-table td{padding:6px 8px;font-size:14px}.sub-table input[type=number]{font-size:15px}button{width:100%;padding:12px 24px;font-size:19px}.status-msg,.fin-status-msg{font-size:17px}}
