:root{--navy:#13233f;--navy2:#0b1830;--amber:#f5a524;--teal:#19a889;--bg:#f4f7fb;--muted:#718096;--border:#e4eaf2}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#23324a;font-family:Inter,"Segoe UI",sans-serif}.rn-shell{min-height:100vh;display:grid;grid-template-columns:270px 1fr}.rn-sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(165deg,var(--navy),var(--navy2));padding:22px 16px;display:flex;flex-direction:column;color:#fff}.rn-brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;font-weight:800;font-size:22px;letter-spacing:-.6px;padding:0 8px 24px}.rn-brand img{width:47px;height:47px;object-fit:contain}.rn-brand small{display:block;font-size:10px;font-weight:500;letter-spacing:.15px;color:#9fafc6}.rn-sidebar nav{display:flex;flex-direction:column;gap:5px}.rn-sidebar nav a{color:#bac7d8;text-decoration:none;padding:11px 13px;border-radius:10px;display:flex;align-items:center;gap:12px;font-weight:600;font-size:14px}.rn-sidebar nav a i{font-size:20px}.rn-sidebar nav a:hover,.rn-sidebar nav a.active{background:rgba(255,255,255,.1);color:#fff}.rn-sidebar nav a.active{box-shadow:inset 3px 0 var(--amber)}.rn-nav-label{text-transform:uppercase;font-size:10px;letter-spacing:1.4px;color:#71839e;padding:20px 13px 6px}.rn-user{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding:18px 8px 0;display:flex;justify-content:space-between;align-items:center}.rn-user strong,.rn-user small{display:block}.rn-user small{text-transform:capitalize;color:#8fa0b9;font-size:11px}.rn-user button{border:0;background:rgba(255,255,255,.08);color:#fff;border-radius:8px;padding:8px}.rn-topbar{height:80px;background:#fff;border-bottom:1px solid var(--border);padding:0 32px;display:flex;align-items:center;gap:15px}.rn-topbar strong,.rn-topbar span{display:block}.rn-topbar span{color:var(--muted);font-size:12px}.rn-status{margin-left:auto;background:#ecfaf6;color:#08745e;border-radius:30px;padding:8px 13px;font-size:12px;font-weight:700}.rn-menu{display:none}.rn-content{padding:28px 32px}.rn-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}.rn-stat,.rn-card{background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:0 4px 16px rgba(19,35,63,.04)}.rn-stat{padding:20px;display:flex;align-items:center;gap:15px}.rn-stat-icon{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;background:#fff4df;color:#b96d00;font-size:24px}.rn-stat:nth-child(2) .rn-stat-icon{background:#e8faf5;color:var(--teal)}.rn-stat:nth-child(3) .rn-stat-icon{background:#eaf0ff;color:#4767c8}.rn-stat:nth-child(4) .rn-stat-icon{background:#f2ebff;color:#8251c5}.rn-stat small,.rn-stat strong{display:block}.rn-stat small{color:var(--muted);font-size:12px}.rn-stat strong{font-size:24px;color:var(--navy)}.rn-card{padding:22px}.rn-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.rn-card-header h4{margin:0;font-size:17px}.rn-btn,.rn-primary{border:0;background:var(--amber);color:var(--navy);font-weight:800;border-radius:9px;padding:10px 15px;text-decoration:none;display:inline-flex;gap:7px;align-items:center}.rn-btn-secondary{background:#edf2f7;color:#34445c}.table>:not(caption)>*>*{padding:13px 12px;border-color:#edf0f4}.table thead th{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:#718096;background:#f8fafc}.rn-badge{border-radius:20px;padding:5px 9px;background:#e8faf5;color:#08745e;font-size:11px;font-weight:800}.modal-content{border:0;border-radius:16px}.form-label{font-size:12px;font-weight:700;color:#44536a}.form-control,.form-select{border-color:#dce3ed;border-radius:9px;min-height:43px}.pagination{margin:18px 0 0}.rn-empty{text-align:center;padding:45px;color:var(--muted)}
.rn-auth{display:grid;grid-template-columns:1.1fr .9fr;min-height:100vh;background:#fff}.rn-auth-art{position:relative;overflow:hidden;background:radial-gradient(circle at 70% 15%,#1f4967 0,#13233f 48%,#09152a 100%);padding:8vw;color:#fff;display:flex;align-items:center}.rn-auth-art:after{content:"";position:absolute;width:520px;height:520px;border:100px solid rgba(245,165,36,.12);border-radius:50%;right:-190px;bottom:-180px}.rn-auth-copy{position:relative;z-index:1;max-width:590px}.rn-pill{display:inline-flex;gap:7px;background:rgba(25,168,137,.18);color:#75e0c8;border:1px solid rgba(117,224,200,.24);padding:7px 12px;border-radius:30px;font-size:12px;font-weight:700}.rn-auth h1{font-size:clamp(44px,5vw,76px);line-height:.98;letter-spacing:-3px;margin:28px 0}.rn-auth h1 em{color:var(--amber);font-style:normal}.rn-auth-copy>p{font-size:18px;line-height:1.6;color:#b4c1d3;max-width:520px}.rn-proof{display:flex;gap:25px;margin-top:48px;color:#9eb0c7;font-size:12px}.rn-proof b{display:block;color:#fff;font-size:16px}.rn-auth-panel{display:grid;place-items:center;padding:45px}.rn-login-card{width:min(430px,100%)}.rn-brand-dark{color:var(--navy);padding:0 0 55px}.rn-login-card h2{font-size:30px;color:var(--navy);margin:0}.rn-login-card>p{color:var(--muted);margin:8px 0 30px}.rn-login-card label{font-size:12px;font-weight:700;margin:15px 0 7px}.rn-input{height:50px;border:1px solid #d9e0e9;border-radius:10px;display:flex;align-items:center;padding:0 14px;gap:10px}.rn-input:focus-within{border-color:var(--amber);box-shadow:0 0 0 3px rgba(245,165,36,.12)}.rn-input input{border:0;outline:0;width:100%;font-size:14px}.rn-check{display:flex;align-items:center;gap:7px!important;font-weight:500!important}.rn-primary{width:100%;justify-content:center;height:50px;margin-top:20px}.rn-demo{display:block;text-align:center;color:#91a0b4;margin-top:18px}.rn-hero{background:linear-gradient(110deg,#13233f,#1b4055);color:#fff;border-radius:18px;padding:28px;margin-bottom:20px;position:relative;overflow:hidden}.rn-hero h2{margin:0 0 6px}.rn-hero p{margin:0;color:#b8c6d6}.rn-hero:after{content:"";position:absolute;width:180px;height:180px;border:35px solid rgba(245,165,36,.18);border-radius:50%;right:50px;top:-75px}
@media(max-width:1000px){.rn-stats{grid-template-columns:repeat(2,1fr)}.rn-auth{grid-template-columns:1fr}.rn-auth-art{display:none}}@media(max-width:760px){.rn-shell{display:block}.rn-sidebar{position:fixed;z-index:20;left:-280px;width:270px;transition:.2s}.sidebar-open .rn-sidebar{left:0}.rn-menu{display:block;border:0;background:none;font-size:23px}.rn-topbar{padding:0 18px}.rn-content{padding:18px}.rn-stats{grid-template-columns:1fr}.rn-status{display:none}.rn-auth-panel{padding:28px}.rn-card{padding:15px}}
.select2-container .select2-selection--single{height:43px;border:1px solid #dce3ed;border-radius:9px}.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:41px;padding-left:13px}.select2-container--default .select2-selection--single .select2-selection__arrow{height:41px}.select2-dropdown{border-color:#dce3ed;border-radius:9px;overflow:hidden}.seat-config{display:grid;grid-template-columns:repeat(5,minmax(54px,1fr));gap:12px;padding:18px;background:#f8fafc;border-radius:12px}.seat-chip{min-height:48px;border:1px solid #8bd8c7;background:#e8faf5;color:#08745e;border-radius:10px;font-weight:800}.seat-chip.disabled{background:#edf0f4;color:#9aa6b5;border-color:#dce3ed;text-decoration:line-through}.student-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.student-detail-grid span{padding:13px;background:#f8fafc;border-radius:10px;color:var(--muted);font-size:12px}.student-detail-grid strong{display:block;color:var(--navy);font-size:15px;margin-top:4px}.rn-stats:has(.rn-stat:nth-child(5)){grid-template-columns:repeat(5,1fr)}@media(max-width:1200px){.rn-stats:has(.rn-stat:nth-child(5)){grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.rn-stats:has(.rn-stat:nth-child(5)),.student-detail-grid{grid-template-columns:1fr}.seat-config{grid-template-columns:repeat(4,1fr)}}

.rn-route-actions{display:grid;grid-template-columns:170px 36px 36px 36px;align-items:center;gap:8px;width:max-content}
.rn-route-actions form{display:flex;margin:0}
.rn-route-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:36px;width:100%;padding:6px 8px;white-space:nowrap;line-height:1}
.rn-route-actions .btn i{display:block;font-size:16px;line-height:1}

.rn-footer{text-align:center;padding:18px 24px;color:#718096;font-size:12px}.rn-footer a{color:inherit;font-weight:700;text-decoration:none}.rn-footer a:hover{text-decoration:underline}
