/* Shared Bootstrap 4 / AdminLTE theme. */
:root{--ict-wine:#731c35;--ict-wine-dark:#511326;--ict-gold:#f0c44f;--ict-gold-soft:#fff5d5;--ict-paper:#f7f6f2;--ict-ink:#332d32;--ict-muted:#71656c;--ict-line:#eae5e5;--ict-shadow:0 4px 24px rgba(55,28,36,.045)}
body{font-family:Tahoma,"Leelawadee UI","Noto Sans Thai",sans-serif;font-size:16px;line-height:1.65;color:var(--ict-ink);background:var(--ict-paper)}
a{color:var(--ict-wine)}a:hover{color:var(--ict-wine-dark)}
button,input,select,textarea{font-family:inherit}button,a,input,select{touch-action:manipulation}
a:focus-visible,button:focus-visible{outline:3px solid var(--ict-gold);outline-offset:3px}
.content-wrapper{background:var(--ict-paper)}
.layout-navbar-fixed .wrapper .content-wrapper{margin-top:72px}
.main-header.navbar{height:72px;padding:0 24px;border:0;border-bottom:1px solid var(--ict-line);background:#fff!important;box-shadow:none;gap:12px}
.main-header .nav-link{height:auto!important;color:var(--ict-ink)!important}
.ict-menu-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px!important;border:1px solid var(--ict-line);border-radius:10px;background:#fff}
.ict-header-title{flex-shrink:0;font-size:16px;font-weight:700;line-height:1.4}.ict-header-title small{display:block;font-size:14px;font-weight:400;color:var(--ict-muted);margin-top:3px}
.ict-header-tools{display:flex;align-items:center;gap:16px;margin-left:auto}
.ict-term{display:flex;align-items:center;gap:10px;color:var(--ict-wine);background:var(--ict-gold-soft);padding:7px 13px;border-radius:10px;line-height:1.35}
.ict-term i{font-size:20px}.ict-term small{display:block;font-size:13px;color:#887339}.ict-term strong{font-size:16px;font-weight:700}
.ict-user{display:flex;align-items:center;gap:10px;color:var(--ict-ink);line-height:1.4}.ict-user span small{display:block;color:var(--ict-muted);font-size:13px;margin-top:3px}.ict-user-name{font-weight:600;font-size:15px;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ict-avatar{width:36px;height:36px;border-radius:50%;background:#f4e8ec;color:var(--ict-wine);display:flex;align-items:center;justify-content:center;object-fit:cover;font-size:18px;font-weight:700;flex-shrink:0}
.ict-logout{font-size:15px;padding-left:18px;border-left:1px solid var(--ict-line);white-space:nowrap}.ict-logout i{margin-right:5px}
.main-sidebar{background:var(--ict-wine)!important;box-shadow:none!important;border:0}
.main-sidebar .brand-link{height:72px!important;display:flex;align-items:center;padding:16px 20px;border-bottom:1px solid #ffffff1c;background:var(--ict-wine-dark)!important;color:#fff!important}
.brand-link .brand-image{float:none;margin:0 11px 0 0;width:38px;height:38px;max-height:38px;object-fit:contain;box-shadow:none!important;opacity:1!important}
.ict-brand-copy{line-height:1.3}.ict-brand-copy strong{display:block;font-size:17px;font-weight:700;letter-spacing:.8px}.ict-brand-copy small{display:block;color:#ebc6ce;font-size:12px;letter-spacing:.2px;margin-top:3px}
.main-sidebar .sidebar{padding:13px 10px 28px}.main-sidebar .nav-header{padding:17px 14px 9px;color:#d6a7b5!important;font-size:13px;letter-spacing:.4px;font-weight:600}
.main-sidebar .nav-sidebar>.nav-item>.nav-link{margin-bottom:5px;padding:11px 12px;border-radius:9px;font-size:16px;line-height:1.65;color:#f4e8ec!important;display:flex;align-items:center;white-space:normal}
.main-sidebar .nav-sidebar .nav-link .nav-icon{font-size:17px;width:22px;flex-shrink:0;margin:0 9px 0 0;color:#d9a8b6!important}
.main-sidebar .nav-sidebar .nav-link p{white-space:normal;flex:1;margin:0;padding-right:10px;width:auto}
.main-sidebar .nav-sidebar .nav-link:hover{background:#ffffff12!important;color:#fff!important}
.main-sidebar .nav-sidebar>.nav-item>.nav-link.active{background:var(--ict-gold)!important;color:var(--ict-wine-dark)!important;box-shadow:0 3px 10px #35051222!important;font-weight:700}
.main-sidebar .nav-sidebar>.nav-item>.nav-link.active .nav-icon{color:var(--ict-wine-dark)!important}
.main-sidebar .nav-treeview{background:#51132642;border-radius:8px;padding:5px 0}.main-sidebar .nav-treeview>.nav-item>.nav-link{color:#edcdd7!important;font-size:15px;border-radius:7px;padding:9px 8px}.main-sidebar .nav-treeview>.nav-item>.nav-link.active{background:#ffffff18!important;color:var(--ict-gold)!important}
.main-sidebar .nav-sidebar .nav-link.text-danger{color:#f6c3ce!important}.main-sidebar .nav-sidebar .right{right:12px;top:15px}
.content-header{padding:22px 24px 0}.content-header h1,.content-header h5{font-size:22px;font-weight:700;letter-spacing:-.3px}.content-header .breadcrumb{font-size:14px;padding-top:7px;color:var(--ict-muted)}
.content-wrapper>.content{padding:0 24px 24px}.content>.container-fluid{padding:0}
.main-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:15px;background:transparent;padding:20px 24px;border-top:1px solid var(--ict-line);font-size:14px;color:var(--ict-muted)}.main-footer .ict-footer-brand{display:flex;align-items:center;gap:9px}.main-footer img{width:22px;height:22px;object-fit:contain}.main-footer a{color:var(--ict-muted)}
.card{border:1px solid var(--ict-line);border-radius:14px;box-shadow:var(--ict-shadow)}.card-header{border-color:var(--ict-line);padding:18px 20px}.card-title{font-size:18px;font-weight:700}.card-body{padding:20px}.card-primary.card-outline{border-top:3px solid var(--ict-wine)}.card-warning.card-outline{border-top:3px solid var(--ict-gold)}.card-primary:not(.card-outline)>.card-header{background:var(--ict-wine)}.card-warning:not(.card-outline)>.card-header{background:var(--ict-gold-soft);color:var(--ict-wine-dark)}
.btn{border-radius:9px;padding:10px 15px;font-size:16px;font-weight:600;min-height:42px;box-shadow:none!important}.btn-primary,.btn-success{background:var(--ict-wine);border-color:var(--ict-wine)}.btn-primary:hover,.btn-success:hover,.btn-primary:focus,.btn-success:focus{background:var(--ict-wine-dark);border-color:var(--ict-wine-dark)}.btn-warning{background:var(--ict-gold);border-color:var(--ict-gold);color:var(--ict-wine-dark)}.btn-outline-primary{color:var(--ict-wine);border-color:var(--ict-wine)}.btn-outline-primary:hover{background:var(--ict-wine);border-color:var(--ict-wine)}
.form-control,.custom-select{border-color:#e0d9dc;border-radius:9px;min-height:44px;font-size:16px}.form-control:focus,.custom-select:focus{border-color:#b87f91;box-shadow:0 0 0 3px #731c3510}.input-group-text{background:#faf8f7;border-color:#e0d9dc;border-radius:9px;color:var(--ict-muted)}
.table thead th{background:#f8f5f3;color:#73626a;border-color:var(--ict-line);font-size:15px;font-weight:600;padding:13px 14px}.table td{border-color:var(--ict-line);padding:13px 14px;vertical-align:middle}.table-striped tbody tr:nth-of-type(odd){background:#fcfaf9}.page-item.active .page-link{background:var(--ict-wine);border-color:var(--ict-wine)}.page-link{color:var(--ict-wine)}
.badge-primary,.bg-primary{background:var(--ict-wine)!important}.text-primary{color:var(--ict-wine)!important}.modal-content{border:0;border-radius:16px;box-shadow:0 20px 60px #39101c26}.modal-header,.modal-footer{border-color:var(--ict-line)}
.layout-top-nav .main-header{height:auto;min-height:72px}.layout-top-nav .navbar-brand{display:flex;align-items:center;color:var(--ict-wine);font-weight:700}.layout-top-nav .navbar-brand img{width:36px;margin-right:10px}.layout-top-nav .content-wrapper{margin-top:0!important}.layout-top-nav .content-header{padding-top:28px}.layout-top-nav .main-footer{justify-content:center}.layout-top-nav .navbar-nav .nav-link{font-size:16px}
.ict-page-kicker{font-size:13px;font-weight:700;letter-spacing:.3px;color:var(--ict-muted);text-transform:uppercase;margin-bottom:6px}
.ict-student-hero{padding:28px!important;background:var(--ict-wine)!important;border-radius:18px;color:#fff;margin-bottom:22px!important}.ict-student-hero h1{color:#fff!important;font-size:26px!important}.ict-student-hero p{color:#eed4dc!important}.ict-student-hero .ict-page-kicker{color:var(--ict-gold)}
@media(min-width:992px){.sidebar-mini.sidebar-collapse .brand-link{padding-left:18px}.sidebar-mini.sidebar-collapse .ict-brand-copy{display:none}.sidebar-mini.sidebar-collapse .main-sidebar:hover .ict-brand-copy{display:block}.sidebar-mini.sidebar-collapse .nav-sidebar>.nav-item>.nav-link{padding-left:12px}}
@media(max-width:991.98px){.main-header.navbar{padding:0 16px}.ict-header-title{display:none}.ict-header-tools{gap:14px}.content-header{padding:20px 16px 0}.content-wrapper>.content{padding:0 16px 20px}.main-footer{padding:18px 16px}.layout-top-nav .navbar-collapse{width:100%;padding:12px 0}.main-sidebar{z-index:1040}.layout-top-nav .main-header>.container{padding:8px 0}}
@media(max-width:575.98px){.main-header.navbar{height:64px;gap:8px;padding:0 12px}.layout-navbar-fixed .wrapper .content-wrapper{margin-top:64px}.main-sidebar .brand-link{height:64px!important}.ict-header-tools{gap:10px}.ict-user-name,.ict-logout span{display:none}.ict-logout{border:0;padding:8px;margin:0}.ict-logout i{margin:0;font-size:20px}.ict-term{padding:6px 10px;gap:7px}.ict-term small{font-size:12px}.ict-term strong{font-size:15px}.ict-avatar{height:32px;width:32px}.content-header{padding:18px 12px 0}.content-wrapper>.content{padding:0 12px 18px}.content-header h1,.content-header h5{font-size:20px}.content-header .breadcrumb{float:none!important;margin-top:2px;margin-bottom:0}.main-footer{font-size:13px;flex-wrap:wrap;justify-content:center;text-align:center}.main-footer .ict-footer-note{display:none}.card-body{padding:16px}.layout-top-nav .navbar-brand{font-size:17px}.layout-top-nav .navbar-brand img{width:30px;height:30px}.layout-top-nav .navbar-toggler{padding:5px;font-size:18px}.layout-top-nav .navbar-nav.ml-auto{margin-left:8px!important}.ict-student-hero{padding:22px!important}.ict-student-hero h1{font-size:22px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.ict-menu-toggle{flex-shrink:0}.layout-top-nav .main-header.navbar{height:auto;min-height:64px}
img[src*="dist/img/logo.png"]{object-fit:contain;opacity:1!important}.login-brand-name img,.brand-link .brand-image{background:#fff;padding:2px;border-radius:8px}
.main-sidebar .nav-sidebar>.nav-item>.nav-link>i{font-size:17px;width:22px;flex-shrink:0;margin:0 9px 0 0;color:#d9a8b6!important;text-align:center}
.main-sidebar .nav-sidebar>.nav-item>.nav-link.active>i{color:var(--ict-wine-dark)!important}

/* Leave space for larger Thai labels in the fixed header and navigation. */
@media(min-width:992px) and (max-width:1399.98px){.ict-header-title small{display:none}.ict-user-name{max-width:145px}.ict-header-tools{gap:10px}.ict-header-title{flex-shrink:1}.ict-logout{padding-left:10px}}
@media(max-width:359.98px){.main-header.navbar{padding:0 8px}.ict-header-tools{gap:6px}.ict-term{padding:6px 8px}.ict-term i{display:none}}
