@tailwind base;@tailwind components;@tailwind utilities;body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:20px;border-radius:8px;width:100%;max-width:500px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;position:relative;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280}.modal-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.pill-button{padding:8px 16px;border-radius:9999px;border:1px solid #e2e8f0;background-color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;color:#475569}.pill-button:hover{background-color:#f8fafc}.pill-button.primary-button{background-color:var(--primary, #2563eb);color:#fff;border-color:var(--primary, #2563eb)}.pill-button.primary-button:hover{background-color:#1d4ed8}.pill-button.secondary-button{background-color:#fff;border-color:#e2e8f0;color:#475569}.form-grid{display:grid;gap:16px}.form-field{display:flex;flex-direction:column;gap:6px}.form-label{font-size:14px;font-weight:500;color:#374151}.form-input{padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;width:100%;box-sizing:border-box;outline:none}.form-input:focus{border-color:var(--primary, #2563eb);box-shadow:0 0 0 2px #2563eb1a}.table-wrapper{overflow-x:auto;border:1px solid var(--border);border-radius:8px}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th,.data-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border)}.data-table th{background-color:#f8fafc;font-weight:600;color:var(--muted)}html,body,#root{margin:0;padding:0;width:100%;height:100%;overflow-x:hidden;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:#f8fafc;color:#333}*{box-sizing:border-box}:root{--primary: #333333;--accent: #89f436;--border: #e5e7eb;--muted: #6b7280;--muted-light: #9ca3af;--card-bg: #ffffff}.app-shell{min-height:100vh;display:flex;background-color:#fff;color:var(--primary)}.sidebar{width:260px;border-right:1px solid var(--border);padding:16px 12px;display:flex;flex-direction:column;gap:12px;background-color:#252525;position:fixed;left:0;top:0;height:100vh;overflow-y:hidden;z-index:100;transition:transform .3s ease,width .3s ease}.sidebar-closed{transform:translate(-100%)}.sidebar-open{transform:translate(0)}.sidebar-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:99;transition:opacity .3s ease}@media(max-width:768px){.sidebar{width:100%;max-width:280px;box-shadow:2px 0 8px #00000026}.sidebar-closed{transform:translate(-100%)}.sidebar-overlay{display:block}.main-area{width:100%}}.sidebar-brand{display:flex;align-items:center;gap:12px}.sidebar-logo{width:36px;height:36px;border-radius:14px;background-color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;color:#1a1a1a}.sidebar-brand-text{line-height:1.2}.sidebar-title{font-size:14px;font-weight:600;color:#fff}.sidebar-subtitle{font-size:11px;color:#9ca3af}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:4px;overflow-y:auto;overflow-x:hidden;padding-right:4px;min-height:0}.nav-button{width:100%;text-align:left;padding:8px 10px;border-radius:10px;border:1px solid transparent;background-color:#2a2a2a;color:#d1d5db;font-size:12px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:all .2s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-button:hover{background-color:#2f2f2f}.nav-button.is-active{border-color:var(--accent);background-color:#333;color:var(--accent);font-weight:600}.nav-dot{width:6px;height:6px;border-radius:999px;background-color:var(--accent)}.sidebar-footer{font-size:11px;color:#9ca3af}.sidebar-user{font-weight:600;color:#fff}.main-area{flex:1;display:flex;flex-direction:column;background-color:#f8fafc;min-height:100vh;transition:margin-left .3s ease;width:100%;max-width:100%;overflow-x:hidden}.main-area-sidebar-open{margin-left:260px}.main-area-sidebar-closed{margin-left:0}@media(max-width:768px){.main-area-sidebar-open{margin-left:0}.main-area{margin-left:0!important}}.top-bar{padding:20px 32px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#fff,#f8fafc);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;box-shadow:0 1px 3px #0000000d;width:100%;box-sizing:border-box}.sidebar-toggle-btn{width:44px;height:44px;border-radius:12px;border:none;background:linear-gradient(135deg,#fff,#f8fafc);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #00000014;margin-right:12px;position:relative;overflow:hidden}.sidebar-toggle-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--accent) 0%,rgba(137,244,54,.8) 100%);opacity:0;transition:opacity .3s ease}.sidebar-toggle-btn:hover:before{opacity:.1}.sidebar-toggle-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.sidebar-toggle-btn:active{transform:translateY(0);box-shadow:0 2px 6px #0000001a}.hamburger{width:24px;height:18px;position:relative;display:flex;flex-direction:column;justify-content:space-between;z-index:1}.hamburger span{display:block;height:2.5px;width:100%;background:var(--primary);border-radius:3px;transition:all .3s ease;transform-origin:center}.sidebar-toggle-btn:hover .hamburger span{background:var(--accent)}.hamburger.is-active span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}.hamburger.is-active span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger.is-active span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.top-bar-meta{display:flex;flex-direction:column}.top-bar-title{font-size:24px;font-weight:700;color:var(--primary);letter-spacing:-.02em;margin-bottom:4px}.top-bar-subtitle{font-size:13px;color:var(--muted);line-height:1.4}.top-bar-user{display:flex;align-items:center;gap:8px;transition:all .2s ease;padding:4px 8px;border-radius:12px}.top-bar-user:hover{background-color:#00000008;transform:translateY(-1px)}.user-meta{text-align:right;line-height:1.2;font-size:11px}.user-avatar{width:40px;height:40px;border-radius:999px;background:linear-gradient(135deg,var(--accent) 0%,rgba(137,244,54,.8) 100%);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--primary);box-shadow:0 2px 8px #89f4364d;border:2px solid #ffffff}.content-area{flex:1;padding:24px 32px 40px;overflow-y:auto;overflow-x:hidden;width:100%;max-width:100%;box-sizing:border-box;background:linear-gradient(180deg,#f8fafc,#fff)}@media(max-width:768px){.top-bar{padding:16px 20px}.sidebar-toggle-btn{width:40px;height:40px;margin-right:8px}.content-area{padding:16px 20px 24px}}.module{display:flex;flex-direction:column;gap:16px}.card{background-color:var(--card-bg);border:1px solid var(--border);border-radius:20px;padding:24px;box-shadow:0 2px 8px #0000000a;transition:all .3s ease}.card:hover{box-shadow:0 4px 16px #0000000f}.section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.section-title{margin:0;font-size:18px;font-weight:700;color:var(--primary);letter-spacing:-.02em}.section-subtitle{margin:6px 0 0;font-size:13px;color:var(--muted);line-height:1.5}.helper-text{font-size:11px;color:var(--muted-light);margin:8px 0 0}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.stat-card{border:1px solid var(--border);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:4px;background-color:#fcfffb}.stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.stat-value{font-size:20px;font-weight:600;color:var(--primary)}.stat-note{font-size:11px;color:var(--muted-light)}.table-wrapper{border:1px solid var(--border);border-radius:16px;overflow-x:auto;overflow-y:visible;background-color:#fff;box-shadow:0 1px 3px #0000000d;width:100%;max-width:100%;box-sizing:border-box}@media(max-width:768px){.table-wrapper{border-radius:12px}}.data-table,.students-table{width:100%;border-collapse:collapse;font-size:13px;min-width:600px}@media(max-width:768px){.students-table{font-size:12px;min-width:500px}}.data-table thead,.students-table thead{background:linear-gradient(135deg,#f8fafc,#f1f5f9);text-transform:uppercase;font-size:11px;color:var(--muted);font-weight:600;letter-spacing:.05em}.data-table th,.data-table td,.students-table th,.students-table td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--border)}.data-table tbody tr,.students-table tbody tr{transition:all .2s ease}.data-table tbody tr:hover,.students-table tbody tr:hover{background-color:#f8fafc}.data-table tbody tr:last-child td,.students-table tbody tr:last-child td{border-bottom:none}.pill-button{border:none;border-radius:12px;padding:10px 20px;font-size:13px;font-weight:600;cursor:pointer;background-color:var(--accent);color:var(--primary);transition:all .2s ease;box-shadow:0 2px 4px #89f43633}.pill-button:hover{transform:translateY(-1px);box-shadow:0 4px 8px #89f4364d}.primary-button{background-color:var(--accent)}.secondary-button{background-color:transparent;border:1px solid var(--border);box-shadow:none;color:var(--primary)}.secondary-button:hover{background-color:#f8fafc;border-color:var(--accent);box-shadow:0 2px 4px #0000000d}.link-button{border:none;background:none;color:var(--primary);font-size:12px;text-decoration:underline;cursor:pointer;padding:0}.form-field{display:flex;flex-direction:column;gap:4px;min-width:0;width:100%;box-sizing:border-box}.form-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.form-input,.form-select,.form-field select,.form-field textarea{border:1px solid var(--border);border-radius:12px;padding:10px;font-size:12px;font-family:inherit;background-color:#fff;color:var(--primary);resize:vertical}.form-input[type=number]::-webkit-inner-spin-button,.form-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-input[type=number]{-moz-appearance:textfield}input[type=text].form-input::-webkit-search-decoration,input[type=text].form-input::-webkit-search-cancel-button,input[type=text].form-input::-webkit-search-results-button,input[type=text].form-input::-webkit-search-results-decoration{display:none;-webkit-appearance:none}.form-field textarea{min-height:80px;line-height:1.5}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;width:100%;box-sizing:border-box}@media(max-width:768px){.form-grid{grid-template-columns:1fr;gap:12px}}.actions-row{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:12px}.simple-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.simple-list-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.simple-list-row:last-child{border-bottom:none}.list-title{font-size:13px;font-weight:600;color:var(--primary)}.list-subtitle{font-size:11px;color:var(--muted)}.tag{font-size:11px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);color:var(--primary);background-color:#fff}.badge,.badge-paid,.badge-due,.badge-partial,.badge-success,.badge-warning{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:500}.badge-success,.badge-paid{background-color:#ecfdf5;color:#047857}.badge-warning{background-color:#fff7ed;color:#c2410c}.badge-due{background-color:#fef2f2;color:#b91c1c}.badge-partial{background-color:#fff7ed;color:#c2410c}.badge-dot{width:6px;height:6px;border-radius:999px;background-color:currentColor}.link-button:focus-visible,.pill-button:focus-visible,.secondary-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pill-button:disabled{opacity:.5;cursor:not-allowed}.placeholder-chart{height:140px;border:1px dashed var(--border);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--muted);margin-bottom:12px}.summary-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.summary-card{border:1px dashed var(--border);border-radius:12px;padding:10px;text-align:center}.summary-label{font-size:11px;color:var(--muted)}.summary-value{font-size:16px;font-weight:600;color:var(--primary)}.kpi-chips{display:flex;gap:12px;flex-wrap:wrap}.kpi-chip{border-radius:14px;background-color:#f4f6f9;padding:10px 14px;font-size:12px;color:var(--primary)}.ownership-options{display:flex;flex-wrap:wrap;gap:8px}.ownership-button{border:1px solid var(--border);border-radius:999px;padding:8px 16px;font-size:11px;cursor:pointer;background-color:#fff;color:#4b5563}.ownership-button.is-active{border-color:var(--accent);background-color:#f9ffec;color:var(--primary);font-weight:600}.doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.doc-upload{border:1px dashed var(--border);border-radius:14px;padding:12px;background-color:#fff;display:flex;flex-direction:column;gap:6px}.doc-upload-button{width:100%;margin-top:6px;border:1px solid var(--border);border-radius:10px;padding:8px;background-color:#f9fafb;font-size:11px;cursor:pointer;color:var(--primary)}.doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.form-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--border)}.form-section:last-of-type{border-bottom:none}.form-section-title{font-size:14px;font-weight:600;color:var(--primary);margin:0 0 16px}.sports-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:12px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--primary);cursor:pointer;padding:8px;border:1px solid var(--border);border-radius:10px;background-color:#fff;transition:all .2s}.checkbox-label:hover{background-color:#f9fafb;border-color:var(--accent)}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}.checkbox-label input[type=checkbox]:checked+span{font-weight:600;color:var(--primary)}.address-autocomplete{position:relative}.address-autocomplete:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #89f4361a}.logo-upload{margin-top:8px}.logo-preview{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:12px;background-color:#f9fafb}.logo-preview img{width:80px;height:80px;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.filter-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.filter-row .form-input,.filter-row .form-select{min-width:160px}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.quick-action{border:1px solid var(--border);border-radius:16px;padding:12px;text-align:left;background-color:#fff;font-size:12px;color:var(--primary)}.dashboard{display:flex;flex-direction:column;gap:24px}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.stat-box{border:1px solid var(--border);border-radius:20px;padding:24px;background:linear-gradient(135deg,#fff,#f8fafc);display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden;transition:all .3s ease;box-shadow:0 2px 8px #0000000a}.stat-box:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent) 0%,rgba(137,244,54,.5) 100%)}.stat-box:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000014;border-color:var(--accent)}.stat-box:nth-child(1):before{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.stat-box:nth-child(2):before{background:linear-gradient(90deg,#10b981,#34d399)}.stat-box:nth-child(3):before{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.stat-box:nth-child(4):before{background:linear-gradient(90deg,#ef4444,#f87171)}.stat-meta{font-size:12px;color:var(--muted);font-weight:500}.dashboard-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:24px}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border)}.activity-feed{display:flex;flex-direction:column;gap:0}.activity-item{padding:16px;border-bottom:1px solid var(--border);display:flex;gap:12px;align-items:flex-start;transition:all .2s ease;border-radius:8px;margin-bottom:4px}.activity-item:hover{background-color:#f8fafc;transform:translate(4px)}.activity-item:last-child{border-bottom:none}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.plan-card{border:1px solid var(--border);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px;background-color:#fff}.plan-actions{display:flex;gap:12px}.reminder-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.reminder-card{border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;justify-content:space-between;align-items:center}.template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.template-card{border:1px dashed var(--border);border-radius:12px;padding:12px;background-color:#fff}.template-title{font-size:13px;font-weight:600;margin-bottom:6px}.notification-list,.students-reminders-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.notification-card,.students-reminder-item{border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;justify-content:space-between;align-items:center;background-color:#fff}.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.report-card{border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:6px}.students-module{display:flex;flex-direction:column;gap:16px}.students-toolbar{display:flex;flex-direction:column;gap:12px}.students-title{margin:0;font-size:16px;color:var(--primary)}.students-subtitle{margin:0;font-size:12px;color:var(--muted)}.students-toolbar-actions{display:flex;flex-wrap:wrap;gap:10px}.students-search{flex:1 1 200px}.students-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.students-stat-card{border:1px solid var(--border);border-radius:14px;padding:12px;background-color:#fff;display:flex;flex-direction:column;gap:4px}.students-stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.students-stat-value{font-size:20px;font-weight:600;color:var(--primary)}.students-stat-sub{font-size:11px;color:var(--muted-light)}.students-table-card{display:flex;flex-direction:column;gap:12px}.students-table-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.students-table-title{margin:0;font-size:14px;color:var(--primary)}.students-table-subtitle{margin:4px 0 0;font-size:12px;color:var(--muted)}.student-name-cell{display:flex;flex-direction:column;gap:2px}.student-name{font-weight:600;color:var(--primary)}.student-parent{font-size:11px;color:var(--muted)}.students-reminders-title{margin:0;font-size:14px;color:var(--primary)}.students-reminders-sub{margin:4px 0 0;font-size:12px;color:var(--muted)}.students-reminders{display:flex;flex-direction:column;gap:12px}.reminder-title{font-weight:600;color:var(--primary)}.reminder-detail{font-size:11px;color:var(--muted)}.reminder-tag{font-size:11px;border:1px dashed var(--border);border-radius:999px;padding:4px 10px;color:var(--primary)}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-content{background-color:#fff;border-radius:16px;max-width:600px;width:calc(100% - 40px);max-width:min(600px,calc(100vw - 40px));box-sizing:border-box;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-content-large{max-width:800px;width:calc(100% - 40px);max-width:min(800px,calc(100vw - 40px));box-sizing:border-box}@media(max-width:768px){.modal-content-large{max-width:calc(100vw - 20px);width:calc(100vw - 20px)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border);border-radius:16px 16px 0 0;flex-shrink:0;background-color:#f8fafc}.modal-close{background:none;border:none;font-size:24px;color:var(--muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.modal-close:hover{background-color:#f3f4f6;color:var(--primary)}.modal-body{padding:24px;overflow-y:auto;flex:1;min-height:0}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border);border-radius:0 0 16px 16px;flex-shrink:0}.detail-section{margin-bottom:32px;padding:20px;background-color:#fafafa;border-radius:12px;border:1px solid var(--border)}.detail-section:last-child{margin-bottom:0}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:16px}.detail-item{display:flex;flex-direction:column;gap:6px;padding:12px;background-color:#fff;border-radius:8px;border:1px solid var(--border);transition:all .2s}.detail-item:hover{border-color:var(--accent);box-shadow:0 2px 4px #89f4361a}.detail-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:2px}.detail-item>span:last-child{font-size:14px;color:var(--primary);font-weight:500;line-height:1.5}.detail-item>div{font-size:14px;color:var(--primary);font-weight:500}.info-box{padding:16px;border-radius:12px;border-left:4px solid}.view-header-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid var(--border);border-radius:16px;padding:24px;margin-bottom:24px;display:flex;align-items:center;gap:20px}.view-header-logo{width:100px;height:100px;border-radius:16px;object-fit:cover;border:3px solid var(--border);box-shadow:0 4px 12px #00000014}.view-header-info{flex:1}.view-header-title{font-size:20px;font-weight:700;color:var(--primary);margin:0 0 8px}.view-section-divider{height:1px;background:linear-gradient(to right,transparent,var(--border),transparent);margin:24px 0}.view-content-card{background-color:#fff;border:1px solid var(--border);border-radius:12px;padding:16px;margin-top:12px}.celebration-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000;overflow:hidden}.celebration-content{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:24px;padding:48px 40px;text-align:center;position:relative;z-index:10;box-shadow:0 20px 60px #0000004d;animation:celebrationPop .5s ease-out;max-width:500px;width:90%}@keyframes celebrationPop{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.celebration-icon{font-size:80px;margin-bottom:16px;animation:bounce 1s ease-in-out infinite;display:inline-block}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes academySpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.celebration-title{font-size:32px;font-weight:700;color:var(--primary);margin:0 0 12px;background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.celebration-message{font-size:16px;color:var(--muted);margin:0;line-height:1.6}.firework{position:absolute;width:6px;height:6px;border-radius:50%;pointer-events:none;box-shadow:0 0 10px currentColor}.firework-1{top:20%;left:20%;background-color:var(--accent);color:var(--accent);animation:firework1 2s ease-out infinite}.firework-2{top:30%;right:20%;background-color:#ff6b6b;color:#ff6b6b;animation:firework2 2s ease-out infinite .3s}.firework-3{bottom:30%;left:30%;background-color:#4ecdc4;color:#4ecdc4;animation:firework3 2s ease-out infinite .6s}.firework-4{bottom:20%;right:30%;background-color:#ffe66d;color:#ffe66d;animation:firework4 2s ease-out infinite .9s}.firework-5{top:50%;left:10%;background-color:#a8e6cf;color:#a8e6cf;animation:firework5 2s ease-out infinite 1.2s}.firework-6{top:50%;right:10%;background-color:#ff8b94;color:#ff8b94;animation:firework6 2s ease-out infinite 1.5s}@keyframes firework1{0%{transform:translate(0) scale(1);opacity:1;box-shadow:0 0 0 0 currentColor,0 0 0 0 currentColor,0 0 0 0 currentColor}50%{transform:translate(-50px,-100px) scale(1.5);opacity:.8;box-shadow:-20px -40px 0 5px currentColor,20px -40px 0 5px currentColor,0 40px 0 5px currentColor}to{transform:translate(-100px,-200px) scale(0);opacity:0;box-shadow:-40px -80px 0 0 currentColor,40px -80px 0 0 currentColor,0 80px 0 0 currentColor}}@keyframes firework2{0%{transform:translate(0) scale(1);opacity:1;box-shadow:0 0 0 0 currentColor,0 0 0 0 currentColor,0 0 0 0 currentColor}50%{transform:translate(50px,-100px) scale(1.5);opacity:.8;box-shadow:20px -40px 0 5px currentColor,-20px -40px 0 5px currentColor,0 40px 0 5px currentColor}to{transform:translate(100px,-200px) scale(0);opacity:0;box-shadow:40px -80px 0 0 currentColor,-40px -80px 0 0 currentColor,0 80px 0 0 currentColor}}@keyframes firework3{0%{transform:translate(0) scale(1);opacity:1;box-shadow:0 0 0 0 currentColor,0 0 0 0 currentColor,0 0 0 0 currentColor}50%{transform:translate(-50px,100px) scale(1.5);opacity:.8;box-shadow:-20px 40px 0 5px currentColor,20px 40px 0 5px currentColor,0 -40px 0 5px currentColor}to{transform:translate(-100px,200px) scale(0);opacity:0;box-shadow:-40px 80px 0 0 currentColor,40px 80px 0 0 currentColor,0 -80px 0 0 currentColor}}@keyframes firework4{0%{transform:translate(0) scale(1);opacity:1;box-shadow:0 0 0 0 currentColor,0 0 0 0 currentColor,0 0 0 0 currentColor}50%{transform:translate(50px,100px) scale(1.5);opacity:.8;box-shadow:20px 40px 0 5px currentColor,-20px 40px 0 5px currentColor,0 -40px 0 5px currentColor}to{transform:translate(100px,200px) scale(0);opacity:0;box-shadow:40px 80px 0 0 currentColor,-40px 80px 0 0 currentColor,0 -80px 0 0 currentColor}}@keyframes firework5{0%{transform:translate(0) scale(1);opacity:1;box-shadow:0 0 0 0 currentColor,0 0 0 0 currentColor,0 0 0 0 currentColor}50%{transform:translate(-80px,-50px) scale(1.5);opacity:.8;box-shadow:-30px -20px 0 5px currentColor,30px -20px 0 5px currentColor,0 20px 0 5px currentColor}to{transform:translate(-160px,-100px) scale(0);opacity:0;box-shadow:-60px -40px 0 0 currentColor,60px -40px 0 0 currentColor,0 40px 0 0 currentColor}}@keyframes firework6{0%{transform:translate(0) scale(1);opacity:1;box-shadow:0 0 0 0 currentColor,0 0 0 0 currentColor,0 0 0 0 currentColor}50%{transform:translate(80px,-50px) scale(1.5);opacity:.8;box-shadow:30px -20px 0 5px currentColor,-30px -20px 0 5px currentColor,0 20px 0 5px currentColor}to{transform:translate(160px,-100px) scale(0);opacity:0;box-shadow:60px -40px 0 0 currentColor,-60px -40px 0 0 currentColor,0 40px 0 0 currentColor}}@media(max-width:720px){.section-header,.students-table-header{flex-direction:column;align-items:flex-start}.actions-row{justify-content:flex-start}.pill-button{width:100%;text-align:center}.celebration-content{padding:32px 24px;margin:20px}.celebration-title{font-size:24px}.celebration-icon{font-size:60px}}.report-content{padding:24px 0}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.report-stats{margin-bottom:24px}.report-stats .stat-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:20px;text-align:center}.report-stats .stat-value{font-size:24px;font-weight:700;color:var(--primary);margin-bottom:8px}.report-stats .stat-label{font-size:12px;color:var(--muted)}.razorpay-section{margin-top:8px}.razorpay-card{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:8px;border:1px solid #e0e0e0;background:#fafafa}.razorpay-card--connected{border-color:#4caf50;background:#f1f8e9}.razorpay-card--connect{border-color:#1976d2;background:#e3f2fd}.razorpay-card--pending{border-color:#ff9800;background:#fff3e0}.razorpay-card--route{border-color:#9e9e9e;background:#f5f5f5}.razorpay-icon{font-size:24px;flex-shrink:0;margin-top:2px}.razorpay-content{flex:1}.razorpay-title{margin:0 0 8px;font-size:15px;font-weight:600;color:#333}.razorpay-message{margin:0;font-size:13px;color:#555;line-height:1.5}.razorpay-details{display:flex;flex-direction:column;gap:4px}.razorpay-detail-row{display:flex;align-items:center;gap:8px;font-size:13px}.razorpay-label{color:#666;min-width:90px}.razorpay-value{font-weight:500;color:#333}.razorpay-healthy{color:#2e7d32}.razorpay-warning{color:#e65100}.razorpay-kyc--verified{color:#2e7d32}.razorpay-kyc--pending{color:#e65100}.razorpay-kyc--action_required{color:#c62828}.razorpay-managed-note{margin:8px 0 0;font-size:12px;color:#777;font-style:italic}.razorpay-connect-btn{margin-top:12px;padding:10px 24px;background:#2962ff;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.razorpay-connect-btn:hover{background:#0039cb}.razorpay-connect-btn:disabled{background:#90a4ae;cursor:not-allowed}.razorpay-loading{padding:12px;color:#999;font-size:13px}.razorpay-error{padding:12px;color:#c62828;font-size:13px;background:#ffebee;border-radius:6px}
