:root{--bg-sky: #EDF6FC;--bg-cloud: #ffffff;--text-dark: #1E3A5F;--text-light: #526B8C;--color-red: #EF476F;--color-yellow: #FDC429;--color-green: #79C16C;--color-purple: #8B62A4;--color-blue: #4B9AE1;--color-orange: #F39C12;--font-main: "Poppins", sans-serif;--font-heading: "Fredoka", sans-serif;--shadow-sm: 0 4px 10px rgba(30, 58, 95, .04);--shadow-md: 0 8px 24px rgba(30, 58, 95, .08);--shadow-cloud: 0 12px 32px rgba(30, 58, 95, .1);--radius-sm: 16px;--radius-md: 24px;--radius-cloud: 32px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--bg-sky);color:var(--text-dark);-webkit-font-smoothing:antialiased}.cloud-card{background-color:var(--bg-cloud);border-radius:var(--radius-cloud);padding:2rem;box-shadow:var(--shadow-cloud);transition:transform .3s ease,box-shadow .3s ease}.cloud-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #2d3b7326}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;margin-bottom:1rem;letter-spacing:.5px}p{color:var(--text-light);line-height:1.6;font-weight:400}.form-group{margin-bottom:1.5rem}.form-label{display:block;font-family:var(--font-heading);font-weight:500;margin-bottom:.5rem;font-size:.95rem;color:var(--text-dark)}.form-input{width:100%;padding:.8rem 1.2rem;border-radius:var(--radius-sm);border:2px solid #E2E8F0;background-color:#f8fafc;font-family:var(--font-main);font-size:.95rem;color:var(--text-dark);font-weight:500;transition:all .3s ease}.form-input:focus{outline:none;border-color:var(--color-blue);background-color:#fff;box-shadow:0 0 0 4px #3786c526}select.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233786c5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 1rem center;background-size:1em}input[type=file].form-input{padding:.5rem;background-color:#f8fafc}input[type=file].form-input::file-selector-button{background-color:#3786c51a;color:var(--color-blue);border:1px solid rgba(55,134,197,.2);padding:.4rem 1rem;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-heading);font-size:.85rem;font-weight:500;margin-right:1rem;transition:all .3s ease}input[type=file].form-input::file-selector-button:hover{background-color:var(--color-blue);color:#fff}input[type=date].form-input::-webkit-calendar-picker-indicator,input[type=month].form-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.5;transition:opacity .3s ease}input[type=date].form-input::-webkit-calendar-picker-indicator:hover,input[type=month].form-input::-webkit-calendar-picker-indicator:hover{opacity:1}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1.8rem;border-radius:50px;font-family:var(--font-heading);font-weight:600;font-size:1.05rem;border:none;cursor:pointer;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:var(--shadow-sm);gap:8px;letter-spacing:.5px}.btn:active{transform:scale(.95)}.btn-primary{background-color:var(--color-blue);color:#fff}.btn-primary:hover{background-color:#2a6ca0;box-shadow:0 8px 15px #3786c54d;transform:translateY(-2px)}.btn-secondary{background-color:var(--color-yellow);color:var(--text-dark)}.btn-secondary:hover{background-color:#e5b61b;box-shadow:0 8px 15px #f8c8224d;transform:translateY(-2px)}.btn-success{background-color:var(--color-green);color:#fff}.btn-success:hover{background-color:#5ea438;box-shadow:0 8px 15px #70be464d;transform:translateY(-2px)}.app-container{display:flex;min-height:100vh}.main-content{flex:1;padding:2rem;overflow-y:auto;display:flex;flex-direction:column}.table-container{width:100%;overflow-x:auto;border-radius:var(--radius-md);margin-top:1rem}.data-table{width:100%;border-collapse:separate;border-spacing:0}.data-table th{background-color:#4b9ae11a;color:var(--color-blue);font-family:var(--font-heading);font-weight:600;padding:1rem;text-align:left}.data-table th:first-child{border-top-left-radius:var(--radius-sm);border-bottom-left-radius:var(--radius-sm)}.data-table th:last-child{border-top-right-radius:var(--radius-sm);border-bottom-right-radius:var(--radius-sm)}.data-table td{padding:1rem;font-weight:500;border-bottom:1px solid #E2E8F0}.badge{padding:.4rem 1rem;border-radius:50px;font-family:var(--font-heading);font-size:.85rem;font-weight:500;display:inline-block}.badge-paid{background-color:#70be4626;color:var(--color-green)}.badge-pending{background-color:#f8c82226;color:#c9980a}.nav-link.active{background-color:#3786c51a;color:var(--color-blue)!important}.nav-link:hover{background-color:#2d3b730d}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.footer-wave{margin-top:auto;padding:2rem 0;text-align:center;color:var(--text-light);font-weight:700;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.footer-wave img{height:24px}.sidebar{width:280px;background-color:#fff;padding:2rem 1.5rem;display:flex;flex-direction:column;box-shadow:var(--shadow-cloud);z-index:100;transition:transform .3s ease}.mobile-close-btn{display:none;position:absolute;top:-10px;right:-10px;background:none;border:none;color:var(--color-red);cursor:pointer}.mobile-topbar{display:none;align-items:center;padding:1rem 1.5rem;background-color:#fff;box-shadow:var(--shadow-sm);margin-bottom:1.5rem;border-radius:var(--radius-md);gap:1rem}.hamburger-btn{background:none;border:none;color:var(--color-blue);cursor:pointer;display:flex;align-items:center;justify-content:center}.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#1e3a5f80;z-index:90;opacity:0;transition:opacity .3s ease}@media (max-width: 1024px){.grid-3{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.sidebar{position:fixed;top:0;left:0;height:100vh;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay.open{display:block;opacity:1}.mobile-close-btn{display:block}.mobile-topbar{display:flex}.main-content{padding:1rem}.grid-2,.grid-3{grid-template-columns:1fr}.cloud-card{padding:1.5rem}.form-group[style*="flex: 1"]{flex:100%!important}.cloud-card>div[style*="display: flex"]{flex-direction:column;align-items:stretch!important;gap:1rem!important}}
