:root{--deep:#004D35;--primary:#006C45;--light:#E8F3EF;--gold:#C9A646;--bg:#F7F9F8;--text:#1F2A37;--muted:#6B7280;--border:#E5E7EB;--danger:#B42318}*{box-sizing:border-box}body{margin:0;font-family:"Segoe UI",Tahoma,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}.hidden{display:none!important}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(105deg,rgba(0,77,53,.96),rgba(0,77,53,.55)),url('riyadh-background.png') center/cover}.login-card{width:min(430px,92vw);background:#ffFFfff2;padding:42px;border-radius:20px;box-shadow:0 24px 70px #001d1470}.brand-mark,.logo>span{display:grid;place-items:center;background:var(--gold);color:var(--deep);font-weight:800}.brand-mark{width:64px;height:64px;border-radius:18px;font-size:34px}.login h1{font-size:40px;margin:12px 0 0;color:var(--deep)}.login p{color:var(--muted);margin:0 0 30px}.login label{display:block;margin:12px 0 8px;font-weight:600}.login input{width:100%;padding:14px;border:1px solid var(--border);border-radius:10px;direction:ltr}.login button,.primary{width:100%;border:0;background:var(--primary);color:#fff;padding:14px;border-radius:10px;font-weight:700;margin-top:20px;cursor:pointer}.login small{display:block;text-align:center;color:var(--muted);margin-top:18px}.shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.shell aside{grid-column:1;background:var(--deep);color:#fff;min-height:100vh;position:sticky;top:0;padding:24px 16px;display:flex;flex-direction:column}.shell main{grid-column:2;grid-row:1}.logo{display:flex;align-items:center;gap:12px;padding:5px 10px 28px}.logo>span{width:44px;height:44px;border-radius:12px;font-size:24px}.logo b{display:block;font-size:22px}.logo small{color:#b8d7cc}.shell nav{display:grid;gap:5px}.shell nav button,.aside-foot button{border:0;background:transparent;color:#d7e9e3;padding:13px 14px;border-radius:9px;text-align:right;cursor:pointer}.shell nav button.active,.shell nav button:hover{background:#ffffff18;color:#fff;border-right:3px solid var(--gold)}.aside-foot{margin-top:auto;border-top:1px solid #ffffff1f;padding-top:12px}header{height:90px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:3}header h2{margin:0;color:var(--deep)}header p{margin:4px 0 0;color:var(--muted);font-size:13px}.user{display:flex;align-items:center;gap:12px}.user small{display:block;color:var(--muted)}.user i{width:42px;height:42px;background:var(--light);color:var(--deep);border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:700}.bell{color:var(--gold)}#content{padding:26px;max-width:1500px;margin:auto}.kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.card{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 3px 12px #10261f0b}.kpi{padding:20px;border-top:3px solid var(--primary)}.kpi span{color:var(--muted);font-size:13px}.kpi strong{display:block;font-size:30px;color:var(--deep);margin-top:8px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.panel{padding:20px}.panel h3{margin:0 0 16px;color:var(--deep)}table{width:100%;border-collapse:collapse;text-align:right}th{color:var(--muted);font-size:12px;background:var(--bg)}td,th{padding:12px;border-bottom:1px solid var(--border)}.badge{display:inline-block;padding:5px 10px;border-radius:999px;background:var(--light);color:var(--primary);font-size:12px;font-weight:700}.badge.red{background:#feeceb;color:var(--danger)}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:16px}.toolbar input,.toolbar select,.form input,.form select,.form textarea{border:1px solid var(--border);border-radius:9px;padding:11px;background:#fff}.toolbar input{flex:1}.toolbar button{margin-right:auto;width:auto;padding-inline:20px;margin-top:0}.form{padding:24px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.form label{display:grid;gap:7px;font-weight:600}.form .full{grid-column:1/-1}.form textarea{min-height:100px;resize:vertical}.form-actions{grid-column:1/-1;display:flex;gap:10px}.form-actions button{width:auto;padding-inline:28px}.empty-chart{height:210px;display:grid;place-items:center;background:repeating-linear-gradient(135deg,#f8faf9,#f8faf9 10px,#f2f6f4 10px,#f2f6f4 20px);border:1px dashed #bdd1ca;border-radius:12px;color:var(--muted)}@media(max-width:1050px){.kpis{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.shell{grid-template-columns:210px 1fr}}@media(max-width:720px){.shell{display:block}.shell aside{min-height:auto;position:static}.shell nav{grid-template-columns:repeat(2,1fr)}header{position:static}.kpis{grid-template-columns:1fr}.form{grid-template-columns:1fr}.form .full{grid-column:auto}}

.dl-analysis-rankings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}.dl-ranking-list{display:grid;gap:7px}.dl-ranking-row{display:flex;justify-content:space-between;gap:10px;width:100%;border:1px solid #e2e8e5;background:#fff;border-radius:9px;padding:8px 10px;cursor:pointer;text-align:right}.dl-ranking-row:hover{border-color:#006c45;background:#f5faf8}.dl-kpi[role=button]:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,77,53,.08)}@media(max-width:800px){.dl-analysis-rankings{grid-template-columns:1fr}}
