:root{--navy:#102a43;--navy2:#163d5c;--blue:#1479b8;--cyan:#18a6b8;--green:#17875d;--red:#c43d4b;--amber:#e5a11a;--ink:#172b3a;--muted:#607789;--line:#dce6ed;--surface:#fff;--canvas:#eef4f8;--shadow:0 8px 24px rgba(25,55,78,.10);--radius:12px}
*{box-sizing:border-box}html{min-height:100%;background:var(--canvas)}body{margin:0;min-height:100vh;font-family:"Segoe UI",Tahoma,Arial,sans-serif;color:var(--ink);background:linear-gradient(135deg,#edf4f8 0%,#f8fbfd 55%,#e6f1f6 100%);font-size:14px;line-height:1.5;padding-bottom:55px}
.header{height:72px!important;padding:0 24px!important;background:linear-gradient(105deg,#0d2b45,#10577b 58%,#117f8d)!important;color:#fff;display:grid!important;grid-template-columns:240px 1fr 260px;align-items:center;position:fixed;inset:0 0 auto 0;z-index:1000;box-shadow:0 4px 18px rgba(5,34,53,.22)}
.brand-block{display:flex;align-items:center;gap:12px}.header .logo{width:48px;height:48px!important;object-fit:cover;border-radius:10px;background:#fff;padding:3px;box-shadow:0 3px 12px rgba(0,0,0,.2)}.header .brand-small{font-size:11px;letter-spacing:1.4px;text-transform:uppercase;opacity:.8;font-weight:700}.header .system-name{text-align:center;font-size:18px!important;font-weight:700;letter-spacing:.3px}.header .user-info{text-align:right!important;font-size:12px!important;line-height:1.45}.header .user-name{font-size:14px;font-weight:700}.header .clock{display:inline-block;margin-top:3px;padding:2px 8px;background:rgba(255,255,255,.14);border-radius:12px}
.ui-version{display:inline-block;margin-left:8px;padding:3px 7px;border-radius:10px;background:#f5b82e;color:#173044;font-size:9px;letter-spacing:1px;vertical-align:middle;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.sidebar{width:250px!important;position:fixed;top:72px!important;bottom:36px;left:0;padding:18px 14px!important;overflow-y:auto;background:linear-gradient(180deg,#112f47,#173f59 60%,#112f47)!important;color:#fff;border-right:1px solid rgba(255,255,255,.08);z-index:900;scrollbar-width:thin;scrollbar-color:#47728e transparent}.sidebar h3{margin:0 8px 14px;font-size:11px;letter-spacing:1.8px;color:#99bdcf}.sidebar ul{list-style:none;padding:0;margin:0}.sidebar ul li{margin:5px 0!important}.sidebar ul li a,.sidebar .sidebar-button{display:flex!important;align-items:center;min-height:42px;padding:10px 12px!important;border-radius:9px!important;color:#eaf5fa!important;background:transparent!important;text-decoration:none!important;font-size:13px;font-weight:600;border:1px solid transparent;transition:.18s ease;box-shadow:none!important}.sidebar ul li a:hover{background:rgba(40,166,190,.18)!important;border-color:rgba(111,210,226,.26);color:#fff!important;transform:translateX(3px)}
.main-content,.content{margin-left:270px!important;margin-top:92px!important;margin-right:20px!important;padding:26px!important;max-width:none!important;min-height:calc(100vh - 155px);background:rgba(255,255,255,.96)!important;border:1px solid #e1eaf0;border-radius:16px!important;box-shadow:var(--shadow)}
h1,h2,h3,h4{color:var(--navy);line-height:1.25}h2{font-size:24px;margin-top:0;padding-bottom:12px;border-bottom:1px solid var(--line)}h3{font-size:18px}p{color:#40596a}
a{color:#096da8}button,.btn,input[type=submit],input[type=button],a.menu-button,a.revenue-button{font-family:inherit;cursor:pointer;transition:.18s ease}button,.btn,input[type=submit],input[type=button]{border:0!important;border-radius:8px!important;padding:10px 16px!important;background:linear-gradient(135deg,#1479b8,#0c668f)!important;color:#fff!important;font-weight:650!important;box-shadow:0 3px 10px rgba(17,105,153,.18)}button:hover,.btn:hover,input[type=submit]:hover,input[type=button]:hover{filter:brightness(1.08);transform:translateY(-1px)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}
input,select,textarea{font-family:inherit;font-size:14px;color:var(--ink);background:#fff;border:1px solid #cbd9e2!important;border-radius:8px!important;padding:9px 11px;outline:none;max-width:100%}input:focus,select:focus,textarea:focus{border-color:#2b91c4!important;box-shadow:0 0 0 3px rgba(43,145,196,.13)}label{color:#304b5e;font-weight:600}textarea{min-height:80px;resize:vertical}
table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;background:#fff;border:1px solid var(--line)!important;border-radius:10px;overflow:hidden;box-shadow:0 3px 12px rgba(31,64,85,.06);font-size:13px}thead,tr:first-child{background:#e9f2f7}th{background:#173f59!important;color:#fff!important;text-align:left;font-weight:650;letter-spacing:.15px;padding:11px 10px!important;border:0!important;white-space:nowrap}td{padding:10px!important;border:0!important;border-bottom:1px solid #e6edf2!important;color:#263e4e;vertical-align:middle}tbody tr:nth-child(even){background:#f7fafc}tbody tr:hover{background:#eaf5fa}tfoot th,tfoot td{background:#e8f1f5!important;color:var(--navy)!important;font-weight:700}.table-responsive{width:100%;overflow-x:auto;border-radius:10px}
.card,.dashboard-card{border:1px solid #e0e9ef!important;border-radius:12px!important;background:#fff!important;box-shadow:0 5px 16px rgba(26,61,83,.08)!important;padding:17px!important}.card .value{color:var(--navy)}
.dashboard-welcome{padding:0!important;overflow:hidden}.welcome-banner{display:flex;align-items:center;justify-content:space-between;padding:32px 34px;background:linear-gradient(118deg,#103c59,#147ca0 62%,#18a6a4);color:#fff}.welcome-banner h2{margin:6px 0 4px;padding:0;border:0;color:#fff;font-size:29px}.welcome-banner p{margin:0;color:#d8f0f4}.welcome-label{font-size:10px;letter-spacing:2px;font-weight:800;color:#aee7ed}.date-panel{width:105px;height:105px;border-radius:18px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 1px rgba(255,255,255,.2)}.date-panel b{font-size:38px;line-height:1}.date-panel span{font-size:12px;margin-top:7px;letter-spacing:1px}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:28px}.quick-card{min-height:135px;padding:20px;border-radius:14px;border:1px solid #dfebf1;background:linear-gradient(145deg,#fff,#f4f9fb);box-shadow:0 6px 18px rgba(28,65,87,.08);display:flex;flex-direction:column}.quick-card>span{font-size:25px}.quick-card small{margin-top:14px;color:#7890a0;font-weight:700;letter-spacing:1px}.quick-card strong{margin-top:5px;color:#173f59;font-size:15px;overflow-wrap:anywhere}@media(max-width:950px){.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.quick-grid{grid-template-columns:1fr;padding:16px}.welcome-banner{padding:23px}.date-panel{display:none}}
.main-content a[style*="padding: 20px"],.main-content a[style*="padding:20px"],.content a[style*="padding: 20px"],a.revenue-button,a.menu-button{min-height:88px;display:flex!important;align-items:center;justify-content:center;padding:18px!important;border-radius:12px!important;text-decoration:none!important;font-size:14px!important;line-height:1.35;text-align:center;font-weight:700!important;box-shadow:0 6px 16px rgba(25,63,87,.13)!important;border:1px solid rgba(255,255,255,.2);transition:.18s ease}.main-content a[style*="padding: 20px"]:hover,.content a[style*="padding: 20px"]:hover,a.revenue-button:hover,a.menu-button:hover{transform:translateY(-3px);filter:brightness(1.06);box-shadow:0 10px 22px rgba(25,63,87,.18)!important}
.footer{position:fixed;bottom:0;left:250px!important;right:0;height:36px;padding:8px!important;background:#0e2e47!important;color:#cfe1eb!important;text-align:center;font-size:12px;z-index:950;border-top:1px solid rgba(255,255,255,.08)}
.login-page{display:grid;place-items:center;min-height:100vh;padding:24px;background:linear-gradient(rgba(7,31,48,.58),rgba(7,54,68,.52)),url('../images/loginscr.jpg') center/cover fixed!important}.login-box{width:min(420px,94vw)!important;max-width:none!important;margin:0!important;padding:38px!important;border-radius:18px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 22px 60px rgba(0,0,0,.28)!important;border:1px solid rgba(255,255,255,.6);backdrop-filter:blur(8px)}.login-box img.logo{width:86px!important;height:86px;object-fit:cover;border-radius:16px;padding:4px;background:#fff;box-shadow:0 7px 20px rgba(15,66,90,.18)}.login-box h2{font-size:24px!important;color:var(--navy)!important}.login-box input{height:46px;margin:7px 0!important}.login-box button{height:47px;width:100%;font-size:15px!important;margin-top:12px!important}
@media(max-width:850px){.header{grid-template-columns:62px 1fr 120px;padding:0 12px!important}.header .brand-small{display:none}.header .system-name{font-size:14px!important}.header .user-info{font-size:10px!important}.sidebar{width:205px!important}.main-content,.content{margin-left:220px!important;margin-right:10px!important;padding:18px!important}.footer{left:205px!important}}
@media(max-width:620px){.header{grid-template-columns:52px 1fr;height:64px!important}.header .system-name{font-size:12px!important;text-align:left}.header .user-info{display:none}.header .logo{width:42px;height:42px!important}.sidebar{position:relative;width:auto!important;top:64px!important;bottom:auto;max-height:210px;margin-bottom:72px}.sidebar h3{display:none}.sidebar ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.sidebar ul li{margin:0!important}.main-content,.content{margin:78px 8px 50px!important;padding:15px!important;border-radius:12px!important}.footer{left:0!important}.main-content table{display:block;overflow-x:auto;white-space:nowrap}}
@media print{body{background:#fff!important;padding:0}.header,.sidebar,.footer,.no-print{display:none!important}.main-content,.content{margin:0!important;padding:0!important;box-shadow:none!important;border:0!important;background:#fff!important}table{box-shadow:none!important}button{display:none!important}}
