
:root{
  --orange:#e84f12;--orange2:#ff7a19;--orange3:#c43808;--ink:#1f2937;--muted:#667085;
  --line:#d8dee8;--bg:#f4f6f8;--card:#fff;--green:#24a148;--blue:#2468d8;--red:#d72c2c;
  --shadow:0 12px 30px rgba(17,24,39,.09);--radius:18px
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Segoe UI,Tahoma,Arial,sans-serif;color:var(--ink);background:var(--bg)}
button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}
body[dir="rtl"]{text-align:right}body[dir="ltr"]{text-align:left}
.toast{position:fixed;z-index:9999;left:50%;bottom:24px;transform:translate(-50%,20px);background:#111827;color:#fff;padding:12px 18px;border-radius:12px;opacity:0;pointer-events:none;transition:.25s;box-shadow:var(--shadow)}
.toast.show{opacity:1;transform:translate(-50%,0)}
.login-screen{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#f46b20,#bb2b00);padding:20px}
.login-card{width:min(430px,100%);background:#fff;padding:32px;border-radius:28px;box-shadow:0 30px 80px rgba(70,20,0,.35)}
.login-card img{width:74px;display:block;margin:auto}.login-card h1{text-align:center;margin:16px 0 8px}.login-card p{text-align:center;color:var(--muted)}
.login-card label{display:grid;gap:7px;margin:16px 0}.login-card input{padding:13px 14px;border:1px solid var(--line);border-radius:12px}.login-card small{display:block;margin-top:14px;color:var(--muted);line-height:1.6}
.primary{border:0;background:linear-gradient(135deg,var(--orange),var(--orange2));color:#fff;padding:12px 18px;border-radius:12px;font-weight:800;box-shadow:0 9px 18px rgba(232,79,18,.2)}
.secondary{border:1px solid var(--line);background:#fff;padding:10px 14px;border-radius:12px;color:var(--ink);font-weight:700}.danger{background:#fff1f1;color:#a90f0f;border-color:#ffc9c9}.wide{width:100%}

.topbar{height:82px;background:linear-gradient(100deg,var(--orange3),var(--orange),#f1641b);color:#fff;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 22px;position:sticky;top:0;z-index:50;box-shadow:0 8px 22px rgba(140,41,0,.24)}
.brand-zone,.top-actions,.top-center{display:flex;align-items:center;gap:14px}.top-center{justify-content:center;font-size:25px}.top-actions{justify-content:flex-end}
.apps-grid{display:grid;grid-template-columns:repeat(3,10px);gap:7px;background:transparent;border:0;padding:4px}.apps-grid span{width:10px;height:10px;background:#fff;border-radius:1px}
.brand{display:flex;align-items:center;gap:10px}.brand img{width:46px;height:46px;background:#fff;border-radius:11px;padding:5px}.brand strong{display:block;font-size:18px}.brand small{display:block;opacity:.85}
.top-home,.icon-btn{width:43px;height:43px;border:0;border-radius:12px;background:rgba(255,255,255,.15);color:#fff;font-size:25px}.top-home:hover,.icon-btn:hover{background:rgba(255,255,255,.25)}
.top-actions select{padding:10px 34px 10px 12px;border:0;border-radius:10px;background:#fff;color:#333;min-width:120px}
.profile-chip{border:0;background:rgba(255,255,255,.16);border-radius:14px;padding:5px 10px 5px 5px;color:#fff;display:flex;align-items:center;gap:8px;font-weight:800}.profile-chip img{width:35px;height:35px;border-radius:10px;object-fit:cover}
.badge-wrap{position:relative}.badge-wrap b{position:absolute;top:-7px;right:-7px;background:#fff;color:var(--orange);min-width:20px;height:20px;padding:0 5px;border-radius:20px;display:grid;place-items:center;font-size:11px}

.shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 82px)}
body[dir="rtl"] .shell{grid-template-columns:minmax(0,1fr) 250px}.sidebar{background:#fff;border-inline-end:1px solid var(--line);padding:18px 12px;position:sticky;top:82px;height:calc(100vh - 82px);overflow:auto}
body[dir="rtl"] .sidebar{grid-column:2;border-inline-end:0;border-inline-start:1px solid var(--line)}body[dir="rtl"] .main{grid-column:1;grid-row:1}
.side-profile{text-align:center;padding:10px 8px 18px;border-bottom:1px solid var(--line)}.side-profile img{width:74px;height:74px;border-radius:20px;object-fit:cover}.side-profile strong,.side-profile small{display:block}.side-profile small{color:var(--muted);margin-top:4px;word-break:break-all;font-size:11px}
.sidebar nav{display:grid;gap:6px;margin-top:16px}.sidebar nav button{border:0;background:transparent;display:grid;grid-template-columns:34px 1fr auto;align-items:center;text-align:start;padding:10px;border-radius:12px;color:#344054}.sidebar nav button i{width:30px;height:30px;background:#f2f4f7;border-radius:9px;display:grid;place-items:center;font-style:normal}.sidebar nav button b{background:#edf1f7;border-radius:20px;padding:3px 7px;font-size:11px}.sidebar nav button:hover,.sidebar nav button.active{background:#fff0e9;color:#b83200}.sidebar nav button.active i{background:var(--orange);color:#fff}.logout-btn{margin-top:20px;width:100%;border:0;background:#f2f4f7;padding:11px;border-radius:12px;font-weight:800;color:#344054}
.main{min-width:0;padding:22px}.mobile-menu{display:none}

.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.page-head h1{margin:0;font-size:28px}.page-head p{margin:5px 0 0;color:var(--muted)}
.hero-grid{display:grid;grid-template-columns:380px minmax(0,1fr);gap:22px}.welcome-card,.content-card,.stat-card,.job-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.welcome-card{padding:20px}.welcome-top{display:grid;grid-template-columns:1fr 95px;gap:16px;align-items:start}.welcome-top img{width:95px;height:115px;object-fit:cover;border-radius:12px}.welcome-top h2{margin:0 0 8px}.welcome-top p{color:var(--muted);line-height:1.65}
.quick-list{display:grid;gap:2px;margin-top:15px;border-top:1px solid var(--line)}.quick-item{display:grid;grid-template-columns:1fr 64px;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:13px 0}.quick-item button{width:56px;height:56px;border-radius:50%;border:0;background:var(--orange);color:#fff;font-size:24px}.quick-item strong{display:block}.quick-item small{display:block;color:var(--muted);margin-top:5px}
.home-main{display:grid;gap:16px}.search-box{background:#fff;border:1px solid #d3a7a0;padding:16px;border-radius:4px}.search-box label{display:block;color:var(--muted);margin-bottom:8px}.search-row{display:grid;grid-template-columns:1fr auto;gap:8px}.search-row input{padding:14px;border:1px solid #be6d66}.search-row button{border:0;background:var(--orange);color:#fff;padding:0 20px;font-weight:800}
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat-card{padding:16px;display:flex;gap:12px;align-items:center}.stat-card i{width:48px;height:48px;border-radius:15px;background:#fff0e9;display:grid;place-items:center;font-style:normal;font-size:23px}.stat-card b{font-size:25px}.stat-card small{display:block;color:var(--muted)}
.dashboard-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:16px}.content-card{padding:18px}.content-card h3{margin-top:0}.action-list{display:grid;gap:10px}.action-row{border:1px solid var(--line);border-radius:13px;padding:13px;display:flex;justify-content:space-between;gap:12px;align-items:center}.action-row small{color:var(--muted)}.tag{display:inline-block;padding:4px 9px;border-radius:20px;font-size:11px;font-weight:800}.tag.open{background:#fff0e7;color:#b83200}.tag.approved{background:#e9f9ef;color:#147a33}.tag.pending{background:#fff8d9;color:#8a6500}.tag.closed{background:#edf4ff;color:#1853a3}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{font-weight:800}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff}.field textarea{min-height:110px;resize:vertical}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.check-row{display:flex;gap:9px;align-items:center;padding:12px;background:#fff7f2;border:1px solid #ffd8c5;border-radius:11px}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.data-table{width:100%;border-collapse:collapse;min-width:780px}.data-table th,.data-table td{padding:12px;border-bottom:1px solid var(--line);text-align:start}.data-table th{background:#f8fafc}.data-table tr:hover td{background:#fffaf6}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.toolbar input,.toolbar select{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}
.week-header{display:grid;grid-template-columns:150px repeat(7,minmax(100px,1fr)) 100px;min-width:950px}.week-header>div{padding:12px;border:1px solid var(--line);background:#f8fafc;font-weight:800}.week-row{display:grid;grid-template-columns:150px repeat(7,minmax(100px,1fr)) 100px;min-width:950px}.week-row>*{border:1px solid var(--line);border-top:0;padding:10px}.week-row input{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px}.week-total{font-weight:900;background:#fff6ef}
.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.month-grid>div{min-height:90px;border:1px solid var(--line);border-radius:10px;padding:8px;background:#fff}.month-grid .day-name{min-height:auto;background:#f8fafc;text-align:center;font-weight:800}.month-grid .muted-day{opacity:.35}.month-grid .leave-day{background:#fff1e8;border-color:#ffb88d}
.about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.about-section{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px}.about-section h3{margin-top:0}.link-list{display:grid;gap:9px}.link-list button{border:0;background:#f8fafc;border-radius:10px;padding:11px;text-align:start;color:#344054}.link-list button:hover{background:#fff0e9;color:#b83200}
.job-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.job-card{padding:17px;margin-bottom:12px}.job-card h3{margin:0 0 5px}.job-card p{color:var(--muted);line-height:1.5}.job-meta{display:flex;gap:8px;flex-wrap:wrap}.job-meta span{background:#f2f4f7;padding:5px 9px;border-radius:20px;font-size:12px}
.notification-panel{display:grid;gap:10px}.notification-item{border:1px solid var(--line);border-radius:12px;padding:12px}.notification-item.unread{border-color:#ffb589;background:#fff7f2}
.modal{width:min(620px,calc(100% - 24px));border:0;border-radius:20px;padding:24px;box-shadow:0 25px 80px rgba(0,0,0,.25)}.modal::backdrop{background:rgba(17,24,39,.55)}.modal-close{position:absolute;top:10px;right:12px;border:0;background:#f2f4f7;width:34px;height:34px;border-radius:50%;font-size:22px}
.footer-note{text-align:center;color:var(--muted);margin:24px 0 4px;font-size:12px}

@media(max-width:1100px){
 .hero-grid,.dashboard-grid,.job-grid{grid-template-columns:1fr}.welcome-card{order:2}.kpi-grid{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:repeat(2,1fr)}
 .topbar{grid-template-columns:1fr auto}.top-center{display:none}.profile-chip span{display:none}
}
@media(max-width:780px){
 .topbar{height:68px;padding:0 10px}.brand strong{font-size:14px}.brand small{font-size:9px}.brand img{width:39px;height:39px}.apps-grid{display:none}.top-actions{gap:6px}.top-actions select{min-width:92px;padding:8px}
 .shell,body[dir="rtl"] .shell{display:block}.sidebar{position:fixed;z-index:80;top:68px;bottom:0;height:auto;width:280px;inset-inline-start:-300px;transition:.22s;box-shadow:0 20px 50px rgba(0,0,0,.25)}body.menu-open .sidebar{inset-inline-start:0}
 body[dir="rtl"] .sidebar{grid-column:auto}.main{padding:14px}.mobile-menu{display:block;position:fixed;z-index:70;bottom:18px;inset-inline-start:18px;width:52px;height:52px;border:0;border-radius:50%;background:var(--orange);color:#fff;font-size:23px;box-shadow:0 12px 24px rgba(232,79,18,.32)}
 .page-head{align-items:flex-start}.page-head h1{font-size:23px}.hero-grid{grid-template-columns:1fr}.welcome-top{grid-template-columns:1fr 82px}.welcome-top img{width:82px;height:100px}
 .kpi-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.month-grid>div{min-height:62px;padding:5px;font-size:12px}
 .top-actions .icon-btn{width:37px;height:37px;font-size:19px}.profile-chip{padding:2px}.profile-chip img{width:34px;height:34px}
}
@media(max-width:460px){.kpi-grid{grid-template-columns:1fr}.welcome-top{grid-template-columns:1fr}.welcome-top img{display:none}.search-row{grid-template-columns:1fr}.search-row button{padding:12px}.top-actions select{max-width:85px}.brand-zone{gap:6px}}
