/* GENACOM reference design v2.0.0 */
@font-face{font-family:GenacomCairo;src:url('Cairo.ttf') format('truetype');font-weight:200 1000;font-style:normal;font-display:swap}
body[data-genacom]{--bg:#F5F7FA;--ink:#102638;--primary:#087F72;--primary-dark:#066b63;--line:#e3ebf2;font-family:GenacomCairo,Tahoma,sans-serif;background:#F5F7FA;color:#102638;line-height:1.65}
body[data-genacom] input,body[data-genacom] button,body[data-genacom] select,body[data-genacom] textarea{font-family:inherit}
body[data-genacom] .btn-primary,body[data-genacom="portal-login"] .btn,body[data-genacom="welcome"] .track button{background:#087F72;border-color:#087F72;color:#fff;box-shadow:none;font-weight:700}
body[data-genacom] .btn-primary:hover,body[data-genacom="portal-login"] .btn:hover,body[data-genacom="welcome"] .track button:hover{background:#066b63;border-color:#066b63;color:#fff}
body[data-genacom] .btn-primary:active,body[data-genacom="portal-login"] .btn:active,body[data-genacom="welcome"] .track button:active{background:#055c55;border-color:#055c55;color:#fff}
body[data-genacom] .btn{border-radius:8px;font-size:13px;padding:10px 18px;min-height:42px}
body[data-genacom] .btn-lg{min-height:50px;font-size:16px}
body[data-genacom] .brand-mark{background-image:url('mark.svg')}
body[data-genacom] .sidebar .brand-mark,body[data-genacom] .driver-top .brand-mark{background-image:url('mark-light.svg')}
body[data-genacom] .sidebar{background:#102638;padding:0;width:238px}
body[data-genacom] .sidebar>.brand{padding:26px 20px;justify-content:center;gap:12px;min-height:110px;flex-direction:row-reverse;border-bottom:1px solid #ffffff15}
body[data-genacom] .sidebar .brand-mark{width:50px;height:50px}
body[data-genacom] .sidebar .brand strong{font-size:20px;letter-spacing:.3px;line-height:1.15}
body[data-genacom] .sidebar .brand span{color:white;font-weight:800;font-size:22px;text-align:center;line-height:1.2;margin-top:5px}
body[data-genacom] .sidebar-nav{padding:10px 0;scrollbar-width:thin;scrollbar-color:#3c5667 transparent}
body[data-genacom] .sidebar-nav a{height:49px;padding:0 22px;margin:2px 0;border-radius:0;color:#f0f5f8;font-weight:600;font-size:14px;gap:13px}
body[data-genacom] .sidebar-nav a.active{background:#0d4c5c;box-shadow:inset -4px 0 #0db8ac}
body[data-genacom] .sidebar-nav a:hover{background:#163c50}
body[data-genacom] .nav-label{color:#94afbf;font-size:10px;margin:18px 22px 8px}
body[data-genacom] .nav-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0}
body[data-genacom] .nav-icon svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;fill:none}
body[data-genacom] .sidebar-footer{margin:0 16px;padding:18px 0}
body[data-genacom] .main-area{margin-right:238px}
body[data-genacom] .topbar{height:70px;background:#fff;border-bottom:1px solid #e4edf4;padding:0 28px;backdrop-filter:none}
body[data-genacom] .page-wrap{padding:26px 28px 34px;max-width:1700px}
body[data-genacom] .page-head{align-items:center;margin-bottom:24px}
body[data-genacom] .page-head h1{font-size:26px;font-weight:800;line-height:1.4}
body[data-genacom] .page-head p{font-size:13px;color:#6c839a}
body[data-genacom] .card,body[data-genacom] .kpi-card,body[data-genacom] .kpi{border:1px solid #e2ebf3;border-radius:10px;box-shadow:none;background:#fff}
body[data-genacom] .card-head{border-bottom:0;padding:20px 20px 12px}
body[data-genacom] .card-head h2,body[data-genacom] .card-head h3{font-size:17px;font-weight:800}
body[data-genacom] .card-head a{color:#0877cb;font-size:12px}
body[data-genacom] .kpi-grid{gap:16px;margin-bottom:20px}
body[data-genacom] .kpi-card{padding:20px 20px 16px 74px;min-height:126px;display:flex;flex-direction:column;justify-content:center}
body[data-genacom] .kpi-card:before{display:none}
body[data-genacom] .kpi-value{order:-1;font-size:30px;line-height:1.25;margin:0 0 6px;font-weight:800;color:#17394e}
body[data-genacom] .kpi-label{font-size:13px;color:#536c84;display:block}
body[data-genacom] .kpi-icon{position:absolute;left:18px;top:30px;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;font-size:22px;background:#edf2f7;color:#6c859f}
body[data-genacom] .kpi-card:nth-child(2) .kpi-icon{background:#e2f0ff;color:#168be1}
body[data-genacom] .kpi-card:nth-child(3) .kpi-icon{background:#def6ec;color:#079c7d}
body[data-genacom] .kpi-card:nth-child(4) .kpi-icon{background:#fff0e2;color:#ed8528}
body[data-genacom] .kpi-foot{font-size:10px;color:#8496a6;margin-top:4px}
body[data-genacom] .dashboard-grid{grid-template-columns:minmax(0,1fr)}
body[data-genacom] .dashboard-grid>.stack{grid-template-columns:repeat(2,minmax(0,1fr))}
body[data-genacom] .metric-strip .metric-small{background:#fff;border:1px solid #e2ebf3;color:#102638;border-radius:10px}
body[data-genacom] .metric-small span,body[data-genacom] .metric-small small{color:#6c839a}
body[data-genacom] .metric-small b{color:#17394e}
body[data-genacom] .data-table th{background:#f0f5f9;color:#55728d;font-size:12px;padding:13px 16px}
body[data-genacom] .data-table td{padding:14px 16px;font-size:13px;border-color:#eaf0f5;color:#334f69}
body[data-genacom] .data-table .tracking-link{font-weight:600;color:#304f6a}
body[data-genacom] .status-badge{font-size:11px;padding:5px 11px;border-radius:30px}
body[data-genacom] .status-delivered{background:#e0f7ef;color:#087f72}
body[data-genacom] .status-in_transit,body[data-genacom] .status-out_for_delivery{background:#e7f3ff;color:#087bcc}
body[data-genacom] .status-ready_for_dispatch{background:#fff1e6;color:#bc590c}
body[data-genacom] .field input:not([type=checkbox]):not([type=radio]),body[data-genacom] .field select,body[data-genacom] .field textarea{border:1px solid #dae5ef;border-radius:8px;color:#17394e;min-height:46px}
body[data-genacom] .reference-footer{display:flex;align-items:center;justify-content:center;gap:14px;margin:30px auto 0;padding:20px;color:#6c839a;font-size:12px;text-align:center;border-top:1px solid #e2ebf3;max-width:1100px}
body[data-genacom] .reference-footer:before{content:'';width:32px;height:3px;flex-shrink:0;background:#F58A32;border-radius:2px}
body[data-genacom="admin-login"],body[data-genacom="portal-login"]{background:#F5F7FA;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:28px 20px}
body[data-genacom="admin-login"] .login-shell,body[data-genacom="portal-login"] .wrap{width:min(1020px,100%);min-height:660px;display:grid;grid-template-columns:1fr 1fr;direction:ltr;border-radius:12px;overflow:hidden;border:1px solid #e0e9f1;box-shadow:0 12px 40px #10263808;background:#fff}
body[data-genacom="admin-login"] .login-visual,body[data-genacom="portal-login"] .hero{direction:rtl;background:#102638 url('delivery-art.png') center center/cover no-repeat;padding:52px 44px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:660px;position:relative}
body[data-genacom="admin-login"] .login-copy{margin:0;max-width:300px;color:white;z-index:1}
body[data-genacom="admin-login"] .login-copy h1,body[data-genacom="portal-login"] .hero h1{font-size:34px;line-height:1.45;margin:0;font-weight:800;color:white}
body[data-genacom="admin-login"] .login-copy h1:after,body[data-genacom="portal-login"] .hero h1:after{content:'';display:block;width:38px;height:4px;border-radius:2px;background:#f58a32;margin-top:18px}
body[data-genacom="admin-login"] .login-visual>.login-brand,body[data-genacom="admin-login"] .login-stats,body[data-genacom="admin-login"] .login-copy>p,body[data-genacom="portal-login"] .hero .mark,body[data-genacom="portal-login"] .hero p,body[data-genacom="portal-login"] .features{display:none}
body[data-genacom="admin-login"] .login-panel,body[data-genacom="portal-login"] .form{direction:rtl;display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:42px 44px;background:#fff}
body[data-genacom="admin-login"] .login-form{width:100%;max-width:390px;margin:auto}
body[data-genacom="admin-login"] .mobile-brand{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;margin-bottom:30px;text-align:center}
body[data-genacom="admin-login"] .mobile-brand .brand-mark{height:78px;width:78px}
body[data-genacom="admin-login"] .mobile-brand strong{font-size:23px;line-height:1.15;font-weight:900}
body[data-genacom="admin-login"] .mobile-brand strong span{display:block;font-size:28px;line-height:1.2}
body[data-genacom="admin-login"] .login-form>.eyebrow{display:none}
body[data-genacom="admin-login"] .login-form h2,body[data-genacom="portal-login"] .form h2{font-size:29px;text-align:center;font-weight:800;margin:0 0 5px}
body[data-genacom="admin-login"] .login-form>.muted,body[data-genacom="portal-login"] .form>p{text-align:center;font-size:13px;color:#738ca3;margin:0 0 28px}
body[data-genacom="admin-login"] .login-form .field input{font-size:15px;padding:13px;min-height:50px}
body[data-genacom="admin-login"] .field>span{font-size:12px;color:#536c84}
body[data-genacom="admin-login"] .check-row{justify-content:flex-start;font-size:12px;margin:18px 0}
body[data-genacom="admin-login"] .security-note{font-size:10px;text-align:center;color:#8094a7;margin-top:16px}
body[data-genacom="portal-login"] .form:before{display:none}
body[data-genacom] .reference-login-brand{display:flex;flex-direction:column;align-items:center;gap:6px;margin:0 0 28px;font-size:23px;font-weight:900;line-height:1.2}
body[data-genacom] .reference-login-brand img{width:78px;height:78px}
body[data-genacom] .reference-login-brand span{font-size:28px}
body[data-genacom="portal-login"] .form .btn{font-size:16px;min-height:50px}
body[data-genacom="portal-login"] .form .field input{min-height:50px;font-size:15px}
@media(max-width:1100px){body[data-genacom] .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){body[data-genacom] .sidebar{transform:translateX(100%)}body[data-genacom] .sidebar.open{transform:translateX(0)}body[data-genacom] .main-area{margin-right:0}body[data-genacom] .mobile-menu{display:block}}
@media(max-width:700px){body[data-genacom="admin-login"],body[data-genacom="portal-login"]{padding:18px 14px;justify-content:flex-start}body[data-genacom="admin-login"] .login-shell,body[data-genacom="portal-login"] .wrap{display:block;min-height:0;margin-top:10px}body[data-genacom="admin-login"] .login-visual,body[data-genacom="portal-login"] .hero{display:none}body[data-genacom="admin-login"] .login-panel,body[data-genacom="portal-login"] .form{padding:32px 24px}body[data-genacom] .page-wrap{padding:20px 14px}body[data-genacom] .topbar{padding:12px 14px;height:auto;min-height:64px;flex-wrap:wrap}body[data-genacom] .page-head h1{font-size:23px}body[data-genacom] .dashboard-grid>.stack{grid-template-columns:1fr}body[data-genacom] .kpi-card{padding:16px 12px;min-height:140px}body[data-genacom] .kpi-icon{position:static;width:32px;height:32px;font-size:17px;margin-top:9px}body[data-genacom] .kpi-label{font-size:12px}body[data-genacom] .kpi-value{font-size:26px}body[data-genacom] .reference-footer{font-size:11px;padding:18px 8px;margin-top:20px}body[data-genacom] .head-actions{width:100%}body[data-genacom] .page-head{flex-wrap:wrap}}
/* Keep compact login cards and matching portal navigation across breakpoints. */
body[data-genacom="portal"] .main{margin-right:238px}
body[data-genacom="portal"] .sidebar{padding:0 14px 18px}
body[data-genacom="portal"] .nav a{font-size:13px;min-height:44px}
body[data-genacom="portal"] .nav a.active{background:#0d4c5c;box-shadow:inset -3px 0 #0db8ac;border-radius:4px}
@media(max-width:980px){body[data-genacom="portal"] .main{margin-right:0}body[data-genacom="portal"] .mobile-toggle{display:inline-flex}}
@media(max-width:700px){body[data-genacom="admin-login"] .login-panel{min-height:0}body[data-genacom="admin-login"] .login-form{margin:0 auto}}
body[data-genacom] .field input:focus-visible,body[data-genacom] .field select:focus-visible,body[data-genacom] .field textarea:focus-visible{outline:2px solid #087F72;outline-offset:1px}
body[data-genacom="admin-login"] .login-copy{align-self:flex-end;text-align:right}
