/* Tong Belajar Admin / OMS Modern Elegant Theme */
:root{
  --tb-deep:#0d3f2b;--tb-green:#12663d;--tb-green2:#1d7a4c;--tb-orange:#ef632d;--tb-gold:#f4ab2f;
  --tb-soft:#f4f8f5;--tb-green-soft:#eaf5ee;--tb-gold-soft:#fff3d7;--tb-ink:#1d352b;--tb-muted:#6b7a73;--tb-border:#dae6de;
  --tb-shadow:0 16px 42px rgba(13,63,43,.10);--primary:#12663d;--info:#f4ab2f;
}
html,body{font-family:"Inter","Nunito",sans-serif;background:var(--tb-soft);color:var(--tb-ink)}
body{background-image:radial-gradient(circle at 92% 0,rgba(244,171,47,.08),transparent 24%),radial-gradient(circle at 4% 96%,rgba(18,102,61,.07),transparent 25%)}
h1,h2,h3,h4,h5,h6,.sidebar-brand-text{font-family:"Plus Jakarta Sans","Nunito",sans-serif;color:var(--tb-deep)}
a{color:var(--tb-green)}a:hover{color:var(--tb-orange)}
.text-primary{color:var(--tb-green)!important}.bg-primary{background-color:var(--tb-green)!important}.bg-info{background-color:var(--tb-gold)!important;color:#4c3308!important}.border-left-primary{border-left-color:var(--tb-green)!important}.border-left-info{border-left-color:var(--tb-gold)!important}
.btn-primary,.btn-info{background:linear-gradient(135deg,var(--tb-green),var(--tb-green2))!important;border-color:var(--tb-green)!important;color:#fff!important;box-shadow:0 7px 18px rgba(18,102,61,.16)}.btn-primary:hover,.btn-info:hover{background:linear-gradient(135deg,var(--tb-deep),var(--tb-green))!important;border-color:var(--tb-deep)!important;transform:translateY(-1px)}
.btn-outline-primary{color:var(--tb-green)!important;border-color:var(--tb-green)!important}.btn-outline-primary:hover{color:#fff!important;background:var(--tb-green)!important}.btn-warning{background:var(--tb-gold)!important;border-color:var(--tb-gold)!important;color:#513407!important}.btn-link{color:var(--tb-green)!important}.btn-link:hover{color:var(--tb-orange)!important}
.badge-primary,.badge-info{background:var(--tb-green)!important;color:#fff!important}.badge-warning{background:var(--tb-gold)!important;color:#4b3105!important}.spinner-border.text-primary{color:var(--tb-green)!important}
.form-control,.form-select,.custom-select{border-color:#d3e0d8;border-radius:10px;min-height:40px;color:var(--tb-ink);background-color:#fff}.form-control:focus,.form-select:focus,.custom-select:focus{border-color:rgba(18,102,61,.7)!important;box-shadow:0 0 0 .2rem rgba(18,102,61,.12)!important}.select2-container--default .select2-selection--single,.select2-container--default .select2-selection--multiple{border-color:#d3e0d8!important;border-radius:10px!important;min-height:40px}.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:var(--tb-green)!important}.custom-control-input:checked~.custom-control-label::before{border-color:var(--tb-green)!important;background-color:var(--tb-green)!important}
.card{border:1px solid var(--tb-border)!important;border-radius:16px!important;box-shadow:0 8px 28px rgba(13,63,43,.06)!important;overflow:hidden}.card-header{background:linear-gradient(180deg,#fff,#f9fbfa)!important;border-bottom:1px solid var(--tb-border)!important}.card-header h6,.card-title{color:var(--tb-deep)!important;font-weight:800}.shadow,.shadow-sm{box-shadow:var(--tb-shadow)!important}
.modal-content{border:0!important;border-radius:18px!important;box-shadow:0 24px 70px rgba(0,0,0,.18)!important}.modal-header{border-bottom-color:#e5eee8}.modal-footer{border-top-color:#e5eee8}.modal-title{font-weight:800;color:var(--tb-deep)}
.table{color:var(--tb-ink)}.table thead th{border-bottom:0!important;background:#edf5f0;color:var(--tb-deep);font-size:.76rem;text-transform:uppercase;letter-spacing:.035em}.table td,.table th{vertical-align:middle;border-top-color:#edf2ef}.table-hover tbody tr:hover{background:#f5faf7}.table-responsive{border-radius:12px}
.dataTables_wrapper .dataTables_paginate .paginate_button.current,.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{background:var(--tb-green)!important;border-color:var(--tb-green)!important;color:#fff!important}.dataTables_wrapper .dataTables_paginate .paginate_button:hover{background:var(--tb-green2)!important;border-color:var(--tb-green2)!important;color:#fff!important}.dataTables_wrapper .dataTables_filter input,.dataTables_wrapper .dataTables_length select{border:1px solid var(--tb-border)!important;border-radius:8px!important;padding:5px 8px!important}
#wrapper{min-height:100vh}.sidebar{background:linear-gradient(180deg,#0b3b28 0%,#12663d 63%,#0f5434 100%)!important;color:#fff;box-shadow:8px 0 28px rgba(13,63,43,.09)!important}.sidebar .sidebar-brand{height:88px;background:rgba(255,255,255,.055);border-bottom:1px solid rgba(255,255,255,.09)}.sidebar .sidebar-brand-icon{transform:none!important}.sidebar .sidebar-brand-icon img{height:56px!important;width:56px;object-fit:contain;background:#fff;border-radius:16px;padding:3px;box-shadow:0 8px 20px rgba(0,0,0,.18)}.sidebar .sidebar-brand-text{color:#fff!important;letter-spacing:0!important;line-height:1.35;font-size:.78rem!important}.sidebar .nav-item .nav-link{color:rgba(255,255,255,.79)!important;border-radius:10px;margin:2px 8px;width:calc(100% - 16px)!important;padding:.78rem .9rem!important;transition:.2s}.sidebar .nav-item .nav-link i{color:rgba(244,171,47,.92)!important;width:22px}.sidebar .nav-item .nav-link:hover,.sidebar .nav-item.active .nav-link{background:rgba(255,255,255,.11)!important;color:#fff!important}.sidebar .nav-item.active .nav-link{box-shadow:inset 3px 0 0 var(--tb-gold)}.sidebar .sidebar-heading{color:rgba(255,255,255,.48)!important;letter-spacing:.08em}.sidebar hr.sidebar-divider{border-top-color:rgba(255,255,255,.1)}.sidebar .collapse-inner{border-radius:12px!important;background:#fff!important;box-shadow:0 16px 35px rgba(0,0,0,.16)}.sidebar .collapse-inner .collapse-item{border-radius:8px;color:#385045!important}.sidebar .collapse-inner .collapse-item:hover,.sidebar .collapse-inner .collapse-item.active{background:var(--tb-green-soft)!important;color:var(--tb-green)!important;font-weight:700}
#content-wrapper{background:transparent!important}.topbar{height:76px;background:rgba(255,255,255,.96)!important;border-bottom:1px solid var(--tb-border);box-shadow:0 3px 18px rgba(13,63,43,.04);backdrop-filter:blur(12px)}.topbar .nav-link{color:var(--tb-ink)!important}.topbar .fa-user-circle{font-size:1.8rem;color:var(--tb-green)}.topbar .dropdown-menu{border:1px solid var(--tb-border);border-radius:13px;box-shadow:var(--tb-shadow)}.topbar .dropdown-item{border-radius:8px}.topbar .dropdown-item:hover{background:var(--tb-green-soft);color:var(--tb-green)}.topbar .topbar-divider{border-right-color:var(--tb-border)}
.container-fluid{padding-left:2rem;padding-right:2rem}#titlePage{font-weight:800!important;color:var(--tb-deep)!important}.breadcrumb{font-size:.78rem}.breadcrumb-item a{color:var(--tb-green)!important}.sticky-footer{background:transparent!important;border-top:1px solid var(--tb-border);color:var(--tb-muted)}.scroll-to-top{background:var(--tb-orange)!important}.scroll-to-top:hover{background:var(--tb-green)!important}
.alert-info{color:#315540;background:#eef8f1;border-color:#cce6d5}.page-item.active .page-link{background:var(--tb-green);border-color:var(--tb-green)}.page-link{color:var(--tb-green)}.page-link:hover{color:var(--tb-orange)}

/* dashboard content generated by legacy View class */
#contentPage>.row>[class*="col-"] .card{height:100%}#contentPage .text-xs{letter-spacing:.04em}#contentPage .fa-2x,#contentPage .fa-3x{color:rgba(18,102,61,.32)}

/* Auth / standalone pages */
.tb-auth-page{min-height:100vh;display:flex;align-items:center;padding:28px;background:linear-gradient(135deg,#f6fbf7 0%,#fffaf0 58%,#f3f8f4 100%);position:relative;overflow:hidden}.tb-auth-page::before,.tb-auth-page::after{content:"";position:fixed;border-radius:50%;pointer-events:none}.tb-auth-page::before{width:420px;height:420px;background:rgba(244,171,47,.13);top:-190px;right:-140px}.tb-auth-page::after{width:380px;height:380px;background:rgba(18,102,61,.09);bottom:-210px;left:-170px}.tb-auth-shell{width:min(100%,1040px);margin:auto;background:#fff;border:1px solid var(--tb-border);border-radius:26px;box-shadow:0 30px 80px rgba(13,63,43,.14);overflow:hidden;position:relative;z-index:2}.tb-auth-brand{height:100%;min-height:530px;padding:48px;background:linear-gradient(145deg,var(--tb-deep),var(--tb-green));color:#fff;position:relative;overflow:hidden}.tb-auth-brand::after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-130px;bottom:-120px;background:rgba(244,171,47,.17)}.tb-auth-logo{width:112px;height:112px;object-fit:contain;background:#fff;border-radius:24px;padding:6px;box-shadow:0 16px 35px rgba(0,0,0,.18)}.tb-auth-brand h1,.tb-auth-brand h2,.tb-auth-brand h3{color:#fff}.tb-auth-brand p{color:rgba(255,255,255,.82)}.tb-auth-kicker{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(244,171,47,.17);color:#ffd878;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.tb-auth-form{padding:48px}.tb-auth-form h2{font-weight:850}.tb-auth-form .form-floating{margin-bottom:12px}.tb-auth-form .form-control{min-height:54px;border-radius:12px}.tb-auth-form .btn{border-radius:999px;min-height:46px;font-weight:800}.tb-auth-links{font-size:.84rem;color:var(--tb-muted)}
.tb-landing{min-height:100vh;display:flex;align-items:center;background:linear-gradient(135deg,#f7fbf8,#fff8e9);padding:30px}.tb-landing-card{width:min(100%,920px);margin:auto;background:#fff;border:1px solid var(--tb-border);border-radius:28px;box-shadow:0 30px 80px rgba(13,63,43,.13);padding:50px;text-align:center}.tb-landing-logo{width:180px;max-width:45vw}.tb-landing-card h1{font-weight:900}.tb-landing-card .lead{color:var(--tb-muted)}
.tb-registration-page{background:linear-gradient(180deg,#f5f9f6,#fff);min-height:100vh;padding:24px 0 70px}.tb-registration-head{background:linear-gradient(135deg,var(--tb-deep),var(--tb-green));color:#fff;border-radius:24px;padding:28px 30px;margin-bottom:25px;box-shadow:var(--tb-shadow);display:flex;align-items:center;gap:20px}.tb-registration-head img{width:88px;height:88px;object-fit:contain;background:#fff;border-radius:20px;padding:5px}.tb-registration-head h1,.tb-registration-head h3{color:#fff;margin:0}.tb-registration-head p{color:rgba(255,255,255,.82);margin:6px 0 0}.tb-registration-page .card{margin-bottom:18px!important}.tb-registration-page .card-title{padding-bottom:10px;border-bottom:1px solid var(--tb-border)}

@media(max-width:991px){.container-fluid{padding-left:1.2rem;padding-right:1.2rem}.tb-auth-brand{min-height:280px;padding:34px}.tb-auth-form{padding:34px}.tb-registration-head{align-items:flex-start}.tb-registration-head img{width:72px;height:72px}}
@media(max-width:767px){.sidebar{z-index:1040}.topbar{height:68px}.container-fluid{padding-left:1rem;padding-right:1rem}#titlePage{font-size:1.35rem!important}.tb-auth-page{padding:14px}.tb-auth-shell{border-radius:20px}.tb-auth-brand{min-height:auto;padding:28px}.tb-auth-logo{width:84px;height:84px}.tb-auth-form{padding:28px 22px}.tb-landing{padding:15px}.tb-landing-card{padding:30px 20px;border-radius:22px}.tb-registration-page{padding:12px 0 45px}.tb-registration-head{border-radius:18px;padding:20px;gap:14px}.tb-registration-head h3{font-size:1.25rem}.tb-registration-head img{width:62px;height:62px}.card{border-radius:13px!important}.dataTables_wrapper{overflow-x:auto}}


/* Final identity pass — replace legacy blue/cyan accents everywhere */
.text-info{color:#99620a!important}.text-primary,.link-primary{color:var(--tb-green)!important}.text-bg-primary{background:var(--tb-green)!important;color:#fff!important}.text-bg-info{background:var(--tb-gold)!important;color:#4b3105!important}.border-primary{border-color:var(--tb-green)!important}.border-info{border-color:var(--tb-gold)!important}
.bg-gradient-primary{background:linear-gradient(135deg,var(--tb-deep),var(--tb-green2))!important}.btn-outline-info{color:var(--tb-green)!important;border-color:var(--tb-green)!important}.btn-outline-info:hover{background:var(--tb-green)!important;color:#fff!important}.dropdown-item.active,.dropdown-item:active{background:var(--tb-green)!important;color:#fff!important}
.custom-checkbox .custom-control-input:checked~.custom-control-label::before,.custom-radio .custom-control-input:checked~.custom-control-label::before{background-color:var(--tb-green)!important;border-color:var(--tb-green)!important}.custom-range::-webkit-slider-thumb{background:var(--tb-green)!important}.custom-range::-moz-range-thumb{background:var(--tb-green)!important}
table.dataTable tbody tr.selected,table.dataTable tbody tr.selected td,table.dataTable tbody tr.selected th{background-color:var(--tb-green)!important;color:#fff!important}table.dataTable tbody tr.selected a{color:#fff!important}
#sidebarToggleTop{width:42px;height:42px;background:var(--tb-green-soft)!important;color:var(--tb-green)!important}#sidebarToggleTop:hover{background:var(--tb-green)!important;color:#fff!important}
#contentPage>.card,#contentPage>.row>.col-12>.card{animation:tbPanelIn .25s ease}@keyframes tbPanelIn{from{opacity:.2;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:767px){
  .sidebar{position:fixed!important;inset:0 auto 0 0;z-index:1050!important;overflow-y:auto;box-shadow:10px 0 30px rgba(13,63,43,.18)!important;transition:width .2s ease,transform .2s ease}.sidebar.toggled{width:0!important;min-width:0!important;overflow:hidden!important;transform:translateX(-100%)}.sidebar:not(.toggled){min-width:15rem!important;width:15rem!important;transform:translateX(0)}
  .topbar .navbar-nav{align-items:center}.topbar .dropdown-menu{max-width:calc(100vw - 24px)}
  .table-responsive,.dataTables_wrapper{overflow-x:auto!important;-webkit-overflow-scrolling:touch}.dataTables_wrapper table{min-width:720px}
  .modal-dialog{margin:.75rem}.modal-content{border-radius:16px!important}
}
