/* One Project Safe Theme - visual only, no PHP logic changed */
:root{
    --op-primary:#0f766e;
    --op-primary-dark:#0b4f49;
    --op-primary-soft:#ecfdf5;
    --op-accent:#14b8a6;
    --op-warning:#f59e0b;
    --op-danger:#dc2626;
    --op-info:#2563eb;
    --op-bg:#f4f7fb;
    --op-card:#ffffff;
    --op-border:#dbe4ea;
    --op-text:#102027;
    --op-muted:#667085;
    --op-sidebar:#082f2c;
    --op-sidebar-2:#0f4f49;
    --op-shadow:0 12px 30px rgba(15, 23, 42, .08);
    --op-radius:18px;
}
*{box-sizing:border-box;}
html,body{min-height:100%;}
body.body, body{
    background:linear-gradient(180deg,#f7fbff 0%,#eef5f4 100%) !important;
    color:var(--op-text) !important;
    font-family:"Inter","Segoe UI",Arial,sans-serif !important;
    font-size:14px;
}
a{color:var(--op-primary);}
a:hover{color:var(--op-primary-dark);text-decoration:none;}
#wrap,.wrapper{background:transparent!important;}
/* Top bar */
#top .navbar,.navbar.navbar-static-top{
    min-height:64px!important;
    background:linear-gradient(135deg,var(--op-primary-dark),var(--op-primary))!important;
    border:0!important;
    box-shadow:0 8px 24px rgba(8,47,44,.22)!important;
    position:relative;
    z-index:1040;
}
#top .navbar .container-fluid{display:flex;align-items:center;min-height:64px;gap:14px;}
#top .navbar-brand{height:auto!important;display:flex!important;align-items:center!important;padding:8px 12px!important;margin:0!important;}
#top .navbar-brand h4{margin:0!important;display:flex;align-items:center;}
#top .navbar-brand img{height:34px!important;max-width:190px;object-fit:contain;filter:drop-shadow(0 4px 6px rgba(0,0,0,.22));}
#top .menu{display:flex;align-items:center;}
#top .toggle-left,#menu-toggle{
    width:42px;height:42px;border-radius:13px;background:rgba(255,255,255,.14);
    display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer;
    transition:.2s ease;box-shadow:inset 0 0 0 1px rgba(255,255,255,.10);
}
#top .toggle-left:hover,#menu-toggle:hover{background:rgba(255,255,255,.24);transform:translateY(-1px);}
#top .topnav{margin-left:auto;display:flex;align-items:center;gap:8px;}
/* Sidebar */
#left{
    width:290px!important;
    background:linear-gradient(180deg,var(--op-sidebar) 0%,var(--op-sidebar-2) 100%)!important;
    color:#fff!important;
    min-height:calc(100vh - 64px)!important;
    height:calc(100vh - 64px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    position:fixed!important;
    top:64px!important;
    left:0!important;
    z-index:1030!important;
    box-shadow:12px 0 32px rgba(8,47,44,.24)!important;
    padding:12px 10px 22px!important;
    transition:transform .25s ease,width .25s ease;
}
#left::-webkit-scrollbar{width:8px;}
#left::-webkit-scrollbar-thumb{background:rgba(255,255,255,.25);border-radius:999px;}
#left ul,#menu{list-style:none!important;margin:0!important;padding:0!important;background:transparent!important;}
#left li{list-style:none!important;margin:2px 0!important;padding:0!important;}
#left a{
    color:rgba(255,255,255,.92)!important;
    display:flex!important;align-items:center;gap:8px;
    padding:10px 12px!important;border-radius:12px!important;
    font-weight:600!important;letter-spacing:.01em;
    transition:background .18s ease, color .18s ease, transform .18s ease;
    white-space:normal!important;
}
#left a:hover{background:rgba(255,255,255,.13)!important;color:#fff!important;transform:translateX(2px);}
#left i{width:18px;text-align:center;opacity:.95;}
#left ul ul{margin:4px 0 8px 15px!important;padding:5px 0 5px 8px!important;border-left:1px solid rgba(255,255,255,.16);}
#left ul ul a{font-size:13px!important;font-weight:500!important;padding:8px 10px!important;color:rgba(255,255,255,.78)!important;}
#left li.active>a,#left a.active{background:rgba(20,184,166,.25)!important;color:#fff!important;box-shadow:inset 4px 0 0 var(--op-accent);}
body.one-sidebar-collapsed #left{transform:translateX(-102%);}
body.one-sidebar-collapsed #content{margin-left:0!important;}
/* Page width */
#content{
    margin-left:290px!important;
    padding:22px!important;
    background:transparent!important;
    transition:margin-left .25s ease;
    min-height:calc(100vh - 64px);
}
.outer,.inner,.bg-container,.lter{background:transparent!important;}
.outer{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;}
.inner{width:100%!important;max-width:none!important;padding:0!important;}
.row{max-width:none!important;}
.col-xs-12,.col-lg-12,.data_tables{max-width:100%!important;}
/* Header / quick controls */
.head{
    background:transparent!important;
    border:0!important;
    margin:0 0 18px 0!important;
    padding:0!important;
}
.head .main-bar{
    background:linear-gradient(135deg,#ffffff 0%,#f2fffc 100%)!important;
    border:1px solid rgba(15,118,110,.16)!important;
    border-radius:var(--op-radius)!important;
    box-shadow:var(--op-shadow)!important;
    padding:18px!important;
    display:flex!important;
    align-items:center!important;
    gap:16px!important;
    margin:0!important;
}
.head .main-bar .col-md-4,.head .main-bar .col-md-8{float:none!important;margin:0!important;padding:0 8px!important;}
.head .main-bar .col-md-4{flex:1 1 350px!important;max-width:none!important;width:auto!important;}
.head .main-bar .col-md-8{flex:2 1 520px!important;max-width:none!important;width:auto!important;}
.head h4,.nav_top_align{
    margin:0!important;color:var(--op-primary-dark)!important;font-size:24px!important;font-weight:800!important;line-height:1.25!important;
}
.head h4:before,.nav_top_align:before{content:"";display:inline-block;width:10px;height:28px;background:var(--op-accent);border-radius:999px;margin-right:10px;vertical-align:-6px;}
.head form{margin:0!important;}
.head form .row{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:10px!important;margin:0!important;}
.head .input_field_sections{margin:0!important;float:none!important;padding:0!important;}
.head input[type="date"],.head select,.head .form-control{
    min-height:42px!important;border-radius:12px!important;border:1px solid var(--op-border)!important;background:#fff!important;
    box-shadow:0 4px 12px rgba(15,23,42,.05)!important;color:var(--op-text)!important;
}
/* Cards and sections */
.card,.modal-content{
    border:1px solid rgba(15,118,110,.12)!important;
    border-radius:var(--op-radius)!important;
    box-shadow:var(--op-shadow)!important;
    background:var(--op-card)!important;
    overflow:hidden;
}
.card{width:100%!important;margin:0 0 18px 0!important;}
.card:hover{box-shadow:var(--op-shadow)!important;}
.card-header,.card-header.bg-white{
    background:linear-gradient(135deg,#ffffff,#f5fffb)!important;
    color:var(--op-primary-dark)!important;
    border-bottom:1px solid rgba(15,118,110,.12)!important;
    font-weight:800!important;
    font-size:16px!important;
    padding:14px 18px!important;
}
.card-block,.modal-body{padding:18px!important;}
.card-block[style*="margin-top:60px"]{margin-top:0!important;}
.card-block[style*="margin-top: 60px"]{margin-top:0!important;}
.container{max-width:100%!important;width:100%!important;}
/* Forms */
.form-control,input[type="text"],input[type="number"],input[type="date"],input[type="email"],input[type="password"],select,textarea,
.chosen-container-single .chosen-single{
    border:1px solid var(--op-border)!important;
    border-radius:12px!important;
    min-height:40px!important;
    padding:8px 12px!important;
    background:#fff!important;
    color:var(--op-text)!important;
    box-shadow:none!important;
    transition:border-color .18s ease, box-shadow .18s ease!important;
}
textarea{min-height:90px!important;resize:vertical;}
.form-control:focus,input:focus,select:focus,textarea:focus{
    border-color:var(--op-accent)!important;
    box-shadow:0 0 0 4px rgba(20,184,166,.14)!important;
    outline:none!important;
}
h5,label,.form-control-label{font-weight:700!important;color:#334155!important;margin-bottom:6px!important;}
.input_field_sections{margin-top:12px!important;}
.label_desc{font-size:11px!important;color:var(--op-muted)!important;}
/* Buttons */
.btn,.custom-button,.adv-btn,input[type="submit"],button[type="submit"]{
    border:0!important;border-radius:12px!important;font-weight:800!important;letter-spacing:.01em!important;
    box-shadow:0 8px 18px rgba(15,118,110,.14)!important;
    padding:9px 14px!important;transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
    text-transform:none!important;
}
.btn:hover,.custom-button:hover,.adv-btn:hover,input[type="submit"]:hover,button[type="submit"]:hover{transform:translateY(-1px)!important;box-shadow:0 12px 24px rgba(15,118,110,.2)!important;animation:none!important;}
.btn-success,.btn-primary,.custom-success-button,.adv-btn-primary,.adv-btn-success,.logout-button,.logout-button1{
    background:linear-gradient(135deg,var(--op-primary),var(--op-accent))!important;color:#fff!important;
}
.btn-warning{background:linear-gradient(135deg,#f59e0b,#fbbf24)!important;color:#111827!important;}
.btn-danger,.custom-danger-button{background:linear-gradient(135deg,#dc2626,#ef4444)!important;color:#fff!important;}
.btn-default,.btn-white{background:#fff!important;color:var(--op-primary-dark)!important;border:1px solid var(--op-border)!important;}
.btn-sm{padding:6px 10px!important;border-radius:10px!important;font-size:12px!important;}
.btn::after,.btn-success::after,.btn-view-pdf::after,.btn-view-send::after{display:none!important;}
/* Tables */
.table,.dataTable{width:100%!important;margin:0!important;background:#fff!important;border-collapse:separate!important;border-spacing:0!important;}
.table th,.table td{padding:10px 12px!important;vertical-align:middle!important;border-color:#e6edf2!important;white-space:nowrap;}
.table thead th,.dataTable thead th{
    background:linear-gradient(135deg,var(--op-primary-dark),var(--op-primary))!important;color:#fff!important;
    border-color:rgba(255,255,255,.12)!important;font-weight:800!important;position:sticky;top:0;z-index:2;
}
.table tbody tr:nth-child(even){background:#f8fbfc!important;}
.table tbody tr:hover{background:#ecfdf5!important;}
.table tfoot td,.table tfoot th{background:#f1f8f7!important;font-weight:800!important;color:var(--op-primary-dark)!important;}
.table-responsive,.table-responsive.m-t-35,.one-table-scroll,.dataTables_wrapper{
    width:100%!important;max-width:100%!important;overflow:auto!important;
    border:1px solid var(--op-border);border-radius:16px;background:#fff;
}
.one-table-scroll{max-height:72vh!important;}
.one-table-scroll::-webkit-scrollbar,.table-responsive::-webkit-scrollbar,.dataTables_wrapper::-webkit-scrollbar{height:10px;width:10px;}
.one-table-scroll::-webkit-scrollbar-thumb,.table-responsive::-webkit-scrollbar-thumb,.dataTables_wrapper::-webkit-scrollbar-thumb{background:#a7c7c2;border-radius:999px;}
.one-table-scroll::-webkit-scrollbar-track,.table-responsive::-webkit-scrollbar-track,.dataTables_wrapper::-webkit-scrollbar-track{background:#eef5f4;}
.dataTables_length,.dataTables_filter,.dataTables_info,.dataTables_paginate{padding:10px 0!important;color:var(--op-muted)!important;}
.dataTables_filter input{margin-left:8px!important;min-width:220px;}
.pagination>li>a,.pagination>li>span{border-radius:10px!important;margin:0 2px!important;color:var(--op-primary)!important;}
/* Modals */
.modal-header.bg-success,.modal-header{background:linear-gradient(135deg,var(--op-primary-dark),var(--op-primary))!important;color:#fff!important;border:0!important;}
.modal-title{font-weight:800!important;}
.modal-footer{border-top:1px solid var(--op-border)!important;background:#f8fbfc!important;}
/* Login */
body.one-login-page{
    background:radial-gradient(circle at top left,rgba(20,184,166,.28),transparent 32%),linear-gradient(135deg,#082f2c,#0f766e)!important;
    min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;
}
body.one-login-page .container{max-width:1040px!important;}
body.one-login-page .login_logo{background:linear-gradient(135deg,var(--op-primary-dark),var(--op-primary))!important;border-radius:22px 22px 0 0!important;box-shadow:0 18px 40px rgba(0,0,0,.18);}
body.one-login-page .login_logo h3{font-weight:800!important;letter-spacing:.02em;}
body.one-login-page .login_content{border-radius:0 0 22px 22px!important;box-shadow:0 22px 50px rgba(0,0,0,.2)!important;padding:28px!important;}
body.one-login-page .login_button{width:100%!important;background:linear-gradient(135deg,var(--op-primary),var(--op-accent))!important;color:#fff!important;}
body.one-login-page .input-group-addon{border-radius:12px 0 0 12px!important;background:#f1f8f7!important;border-color:var(--op-border)!important;}
/* Print pages: keep clean */
@media print{
    #top,#left,.head .btn,.btn,.dataTables_filter,.dataTables_length,.dataTables_paginate{display:none!important;}
    #content{margin:0!important;padding:0!important;}
    .card{box-shadow:none!important;border:0!important;}
    .one-table-scroll,.table-responsive,.dataTables_wrapper{overflow:visible!important;border:0!important;max-height:none!important;}
    .table th,.table td{white-space:normal!important;}
}
/* Responsive */
@media (max-width: 991px){
    #left{transform:translateX(-102%);width:280px!important;top:64px!important;}
    body.one-mobile-sidebar-open #left{transform:translateX(0);}
    #content{margin-left:0!important;padding:14px!important;}
    .head .main-bar{display:block!important;padding:14px!important;}
    .head .main-bar .col-md-4,.head .main-bar .col-md-8{width:100%!important;padding:0!important;}
    .head h4,.nav_top_align{font-size:20px!important;margin-bottom:12px!important;}
    .head form .row{justify-content:flex-start!important;flex-wrap:wrap!important;}
    .head .input_field_sections{width:100%!important;max-width:100%!important;margin:6px 0!important;}
    .head input[type="date"],.head select,.head .form-control,.head .btn{width:100%!important;}
    .card-block,.modal-body{padding:12px!important;}
    .table th,.table td{padding:8px 10px!important;font-size:12px!important;}
    .dataTables_filter input{min-width:0;width:100%!important;margin:6px 0!important;}
    .dataTables_length,.dataTables_filter{text-align:left!important;}
}
@media (min-width: 1400px){
    #content{padding:28px 34px!important;}
    #left{width:300px!important;}
    #content{margin-left:300px!important;}
}
