@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Tajawal:wght@400;500;600;700;800&display=swap');
:root{--bg:#f5f3ef;--panel:#fff;--ink:#17211f;--muted:#75807c;--gold:#b89a62;--line:#e8e5df;--green:#254d42;--soft:#f2eee5;--shadow:0 10px 28px rgba(23,33,31,.045)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Tajawal','DM Sans',sans-serif;font-size:15px}a{color:inherit;text-decoration:none}.app-shell{display:flex;min-height:100vh}.sidebar{width:255px;flex-shrink:0;background:#17231f;color:#fff;padding:25px 17px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:4px 8px 28px;border-bottom:1px solid rgba(255,255,255,.12)}.brand strong{display:block;letter-spacing:3px;font:700 17px 'DM Sans',sans-serif}.brand small{display:block;color:#c9b58c;font:10px 'DM Sans',sans-serif;letter-spacing:2px;margin-top:4px}.monogram{width:60px;height:60px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:italic 36px Georgia,serif}.monogram.small{width:43px;height:43px;font-size:26px}.sidebar nav{display:grid;gap:6px;padding-top:24px}.sidebar nav a{padding:12px 14px;border-radius:9px;color:#c3cbc6;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:#2b3b34;color:#fff}.sidebar nav a.active{border-right:3px solid var(--gold)}.logout{margin-top:auto;padding:14px;color:#d9c6a0}.main{flex:1;min-width:0;padding:28px clamp(16px,3vw,42px)}.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.eyebrow{font:600 10px 'DM Sans',sans-serif;letter-spacing:2px;color:var(--gold);margin:0 0 7px}.topbar h1{font-size:28px;margin:0;font-weight:800}.user-chip{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:30px;padding:10px 14px;font-size:13px}.dot{width:7px;height:7px;background:#6a9c75;border-radius:50%}.welcome{background:linear-gradient(120deg,#1b3028,#2e4b3f);color:white;border-radius:16px;padding:28px 32px;display:flex;justify-content:space-between;align-items:center;overflow:hidden;position:relative}.welcome h2{font-size:24px;margin:0 0 8px}.welcome p:not(.eyebrow){color:#d0d9d3;margin:0}.welcome-mark{font:italic 108px Georgia,serif;color:rgba(205,177,122,.65);padding:0 28px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.stat,.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.stat{padding:20px}.stat span{display:block;color:var(--muted);font-size:13px}.stat strong{display:block;font:700 24px 'DM Sans',sans-serif;margin:14px 0 7px;direction:ltr;text-align:right}.stat small{color:#8c9691;font-size:11px}.two-col{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.panel{padding:22px;margin-bottom:16px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.panel-heading h3{margin:0;font-size:17px}.tag{font:10px 'DM Sans',sans-serif;letter-spacing:1px;color:#8d7b54;background:#f5f0e5;padding:7px 9px;border-radius:5px}.quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-links a{border:1px solid var(--line);border-radius:9px;padding:15px;color:var(--green);font-weight:700}.quick-links a:hover{border-color:var(--gold);background:#fbfaf7}.big-number{font:700 40px 'DM Sans',sans-serif;margin:8px 0;color:var(--green)}.muted{color:var(--muted)}.notice{padding:13px 16px;background:#f9eddb;border:1px solid #ead9bc;color:#795c2e;border-radius:9px;margin-bottom:16px}.notice.info{background:#edf3ef;border-color:#d8e5dd;color:#476555;font-size:13px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.form-grid label,form label{display:grid;gap:7px;font-weight:600;font-size:13px}.form-grid input,.form-grid select,.login-card input{width:100%;border:1px solid #deded7;border-radius:8px;padding:12px 11px;font:14px 'Tajawal',sans-serif;background:#fff;color:var(--ink);outline:none}.form-grid input:focus,.form-grid select:focus,.login-card input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #b89a621c}.form-grid .wide{grid-column:span 2}.form-actions{display:flex;align-items:end}button{border:0;border-radius:8px;background:var(--green);color:white;padding:13px 20px;font:700 14px 'Tajawal',sans-serif;cursor:pointer}button:hover{background:#315e50}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;white-space:nowrap}th,td{text-align:right;padding:12px 10px;border-bottom:1px solid #efede8;font-size:13px}th{color:#8a928d;font-size:11px;font-weight:700;background:#faf9f6}tbody tr:last-child td{border-bottom:0}.empty{text-align:center;color:#89938d;padding:25px}footer{text-align:center;color:#9aa19d;font:10px 'DM Sans',sans-serif;letter-spacing:1px;padding:15px}.login-body{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse at top,#e7e0d1,#f5f3ef 65%)}.login-card{width:min(100%,410px);background:#fff;padding:38px;border:1px solid var(--line);border-radius:18px;box-shadow:0 25px 65px #17231f12;text-align:center}.login-card .monogram{margin:0 auto 18px}.login-card h1{font:700 22px 'DM Sans',sans-serif;letter-spacing:3px;margin:0}.login-card h1 span{color:var(--gold)}.login-card .muted{margin-bottom:25px}.login-card form{text-align:right;display:grid;gap:10px}.login-card button{margin-top:8px}.tiny{font-size:11px;margin:20px 0 0!important}.alert{background:#fff0ee;color:#a34437;border-radius:8px;padding:10px;margin:12px 0}
@media(max-width:1000px){.sidebar{width:215px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.app-shell{display:block}.sidebar{width:100%;padding:14px 14px 8px}.brand{padding:0 5px 12px}.sidebar nav{display:flex;overflow-x:auto;padding:12px 0 4px;gap:6px}.sidebar nav a{white-space:nowrap;padding:9px 12px;font-size:12px}.logout{display:none}.main{padding:19px 13px}.topbar h1{font-size:23px}.user-chip{font-size:11px;padding:8px}.welcome{padding:22px 19px}.welcome h2{font-size:20px}.welcome-mark{font-size:65px;padding:0 5px}.stats{gap:9px}.stat{padding:14px}.stat strong{font-size:19px}.stat span{font-size:12px}.stat small{font-size:10px}.panel{padding:16px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.quick-links{grid-template-columns:1fr 1fr}.login-card{padding:28px 22px}}
