
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&display=swap');
:root{--ink:#193b35;--green:#216750;--muted:#7a8581;--line:#e6ebe7;--bg:#f6f8f5}*{box-sizing:border-box}body{margin:0;font:14px 'IBM Plex Sans Arabic',Tahoma,sans-serif;color:var(--ink);background:var(--bg)}button,input,select{font:inherit}button{cursor:pointer}aside{position:fixed;right:0;top:0;bottom:0;width:236px;background:white;border-left:1px solid var(--line);padding:32px 22px;display:flex;flex-direction:column}.brand{font-size:32px;font-weight:700;display:flex;align-items:center;gap:10px}.logo{background:var(--green);color:#dcf2b4;border-radius:12px;width:42px;height:42px;text-align:center;line-height:42px;font-size:29px}.brand small{display:block;font-size:11px;color:var(--muted);font-weight:400}.workspace{margin:32px 0 25px;background:#f7f9f6;border:1px solid var(--line);padding:12px;border-radius:9px}.navlabel{font-size:11px;color:#98a19a;margin:0 12px 10px}nav button{width:100%;background:none;border:0;text-align:right;padding:13px 15px;margin:3px 0;color:#69766f;border-radius:8px;display:flex;gap:13px;align-items:center}nav button.active{background:#eaf3eb;color:var(--green);font-weight:600}.navicon{font-size:19px;width:21px}.sidefoot{margin-top:auto;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.avatar{display:inline-flex;width:34px;height:34px;background:#e7eedc;color:#507144;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-weight:600}main{margin-right:236px}header{height:82px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px}.crumb{color:#929b95;font-size:12px}.headerleft{display:flex;gap:19px;align-items:center}.pill{background:#f2f6ee;color:#68815b;border:1px solid #e3ebdb;border-radius:20px;padding:5px 12px;font-size:11px}.content{max-width:1500px;margin:auto;padding:32px 36px}h1{font-size:27px;margin:0 0 5px;font-weight:600}p{margin:0;color:var(--muted)}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.actions{display:flex;gap:10px}.btn{border:1px solid #dce3dc;border-radius:7px;padding:10px 16px;background:white;color:var(--ink)}.btn.primary{background:var(--green);color:white;border-color:var(--green)}.welcome{background:#eaf1df;border:1px solid #e1ead6;border-radius:12px;min-height:128px;padding:24px 28px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;overflow:hidden}.welcome h2{margin:0 0 8px;font-size:21px}.welcome p{color:#647459}.welcome .art{font-size:60px;line-height:1;color:#88a76c;transform:rotate(-15deg);padding-left:28px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:24px}.stat{background:#fff;border:1px solid var(--line);border-radius:10px;padding:19px}.stathead{display:flex;justify-content:space-between;color:#7a867f;font-size:12px}.stathead i{font-style:normal;background:#f0f5ec;padding:3px 8px;color:#678751;border-radius:6px}.number{font-size:32px;font-weight:600;margin:8px 0 4px}.stat small{font-size:11px;color:#8a958d}.stat small b{font-weight:500;color:#468265}.grid{display:grid;grid-template-columns:1.9fr 1fr;gap:22px}.card{border:1px solid var(--line);background:white;border-radius:11px;overflow:hidden;margin-bottom:22px}.cardhead{padding:19px 21px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eef1ed}.cardhead h2{font-size:16px;font-weight:600;margin:0}.link{border:0;background:none;color:var(--green);font-size:12px}.filters{padding:16px 20px;display:flex;gap:10px}.filters input{flex:1;min-width:80px}.filters input,.filters select{border:1px solid var(--line);border-radius:6px;background:#fcfdfb;padding:8px 11px;color:#627269;outline-color:#7d9d68}table{border-collapse:collapse;width:100%;text-align:right;font-size:12px}th{font-weight:400;color:#8a948c;background:#fafbf8;padding:11px 19px}td{padding:16px 19px;border-bottom:1px solid #f0f2ee}td:first-child{font-weight:500}.badge{border-radius:5px;padding:4px 9px;font-size:11px;white-space:nowrap}.progress{background:#eff2df;color:#8b8d3d}.done{background:#e8f4ea;color:#438567}.late{background:#fbeae6;color:#bc7865}.statusselect{border:0;cursor:pointer;max-width:112px}.person{display:flex;align-items:center;gap:8px}.person .avatar{width:25px;height:25px;font-size:10px}.priority{color:#c48a64}.project{padding:18px 21px;border-bottom:1px solid #eef1ed}.projecttitle{display:flex;justify-content:space-between;margin-bottom:7px}.project p{font-size:11px}.bar{height:6px;background:#edf1e8;border-radius:5px;margin:13px 0 8px;overflow:hidden}.bar span{display:block;background:#84a56e;height:100%;border-radius:5px}.projectmeta{display:flex;justify-content:space-between;font-size:11px;color:#89947f}.activity{padding:17px 21px;display:flex;gap:12px;align-items:start}.activity p{font-size:11px;line-height:1.9}.activity strong{font-weight:500;color:var(--ink)}.activity small{color:#9ba49e;font-size:10px}.bottom{display:flex;justify-content:space-between;color:#98a198;font-size:11px;padding:5px 0}.reportbody{padding:24px}.chart{display:flex;gap:18px;align-items:end;height:190px;margin:22px 0 30px;border-bottom:1px solid var(--line)}.col{flex:1;text-align:center;background:#a6bd8d;border-radius:5px 5px 0 0;position:relative;min-height:10px}.col span{position:absolute;bottom:-25px;right:0;left:0;font-size:11px}.teamgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.teammember{padding:25px}.teammember .avatar{width:52px;height:52px;margin-bottom:12px;font-size:18px}.teammember h3{margin:0 0 5px}.teammember p{font-size:12px}dialog{border:0;border-radius:14px;width:460px;padding:27px;box-shadow:0 20px 100px #172e3a30;color:var(--ink)}dialog::backdrop{background:#142d2855;backdrop-filter:blur(3px)}dialog h2{margin:0 0 22px}label{display:block;font-size:12px;margin:14px 0 6px}dialog input,dialog select{width:100%;border:1px solid #dce4da;border-radius:7px;padding:10px;background:#fff}dialog .actions{margin-top:24px;justify-content:end}.toast{position:fixed;bottom:25px;left:25px;background:var(--ink);color:white;padding:13px 24px;border-radius:9px;display:none;z-index:10}.empty{text-align:center;padding:30px;color:var(--muted)}@media(max-width:1100px){.grid{grid-template-columns:1fr}.stats{gap:10px}.content{padding:25px}aside{width:205px}main{margin-right:205px}td,th{padding:12px}}@media(max-width:700px){aside{position:static;width:100%;padding:16px}.brand{font-size:25px}.workspace,.sidefoot,.navlabel{display:none}nav{display:flex;overflow:auto;margin-top:15px}nav button{white-space:nowrap;width:auto;font-size:12px;padding:10px}.navicon{display:none}main{margin:0}header{height:55px;padding:0 19px}.headerleft .pill{display:none}.content{padding:22px 16px}.heading{align-items:start;gap:12px}.heading .actions{flex-direction:column}.stats{grid-template-columns:repeat(2,1fr)}h1{font-size:22px}.welcome{padding:20px}.welcome .art{display:none}.tablewrap{overflow:auto}table{min-width:570px}.teamgrid{grid-template-columns:1fr}.bottom{font-size:10px}.filters{padding:12px}.headerleft{gap:10px}}
textarea{font:inherit;resize:vertical;min-height:90px}button:disabled{opacity:.45;cursor:not-allowed}a{color:var(--green)}.login{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.loginstory{background:#193f36;color:#fff;padding:65px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.loginstory:after{content:'↗';position:absolute;font-size:500px;left:-50px;bottom:-230px;opacity:.05}.loginstory .brand{margin-bottom:80px}.loginstory h1{font-size:43px;line-height:1.6;font-weight:500;max-width:520px}.loginstory p{color:#b7cbbd;line-height:2;font-size:16px;margin-top:20px;max-width:430px}.loginbody{padding:60px;display:flex;align-items:center;justify-content:center}.loginpanel{width:100%;max-width:440px}.eyebrow{font-size:12px;color:#7d986e;margin-bottom:10px}.loginpanel h2{font-size:27px;margin:0 0 8px}.notice{background:#faf5e9;border:1px solid #eee3c7;padding:12px 15px;border-radius:8px;font-size:12px;line-height:1.9;color:#8a7450;margin:22px 0}.account{display:flex;gap:12px;align-items:center;text-align:right;width:100%;padding:15px;border:1px solid var(--line);background:#fff;margin-top:10px;border-radius:9px}.account:hover{border-color:#769a6b;background:#f6f9f2}.account .label{flex:1}.account small{color:var(--muted);display:block;font-size:11px}.demofoot{font-size:11px;color:#929b91;margin-top:24px;line-height:1.9}.brandname{font-size:21px}.sidebtn{background:none;border:0;color:#8a6454;margin-top:12px;font-size:12px}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin:3px 0 25px;overflow:auto}.tabs button{padding:12px 3px;border:0;border-bottom:2px solid transparent;background:none;white-space:nowrap;color:#899385}.tabs button.selected{color:var(--green);border-color:var(--green);font-weight:600}.departmentgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:24px}.dept{background:#fff;border:1px solid var(--line);padding:23px;border-radius:11px;position:relative;display:flex;flex-direction:column;gap:14px}.dept.locked{background:#f9faf7}.dept h3{margin:0;font-size:17px}.dept p{font-size:12px;line-height:1.8;min-height:44px}.dept .symbol{width:44px;height:44px;background:#edf3e4;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#6b8f52}.dept .btn{margin-top:auto;font-size:12px}.sectionhint{font-size:12px;line-height:1.9;margin-bottom:20px}.tag{font-size:10px;color:#6e8a60;background:#edf4e7;border-radius:5px;padding:3px 8px}.tag.gray{background:#f1f2ed;color:#979d91}.tag.red{background:#faede8;color:#b27763}.empty h3{color:#526b5b;font-size:16px}.empty p{font-size:12px;margin-top:6px}.empty .btn{margin-top:18px}.record{padding:20px;border-bottom:1px solid var(--line)}.recordtop{display:flex;justify-content:space-between;gap:15px;align-items:start}.record h3{font-size:15px;margin:0 0 4px}.record p{font-size:12px;line-height:1.9}.recordmeta{font-size:11px;color:#96a08e;margin:7px 0}.recordactions{display:flex;gap:8px;flex-wrap:wrap}.recordactions button{font-size:11px;padding:6px 11px}.metricrow{display:flex;gap:22px;margin:17px 0;color:#718666;font-size:12px}.reportdetail{background:#fafbf8;padding:14px;border-radius:8px;margin-top:12px}.reportdetail h4{margin:7px 0;font-size:12px}.reportdetail p{white-space:pre-wrap;color:#76816e}.reportdetail table{background:#fff}.permissiontable select{border:1px solid var(--line);padding:7px;border-radius:6px;background:white;color:var(--ink);font-size:12px}.permissiontable td{vertical-align:middle}.helptext{font-size:11px;color:#9a9f91;line-height:1.9}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.full{grid-column:1/-1}dialog.wide{width:760px;max-width:94vw;max-height:90vh;overflow:auto}dialog textarea{width:100%;border:1px solid #dce4da;border-radius:7px;padding:10px;background:white}dialog .formsection{border-top:1px solid var(--line);padding-top:15px;margin-top:22px;font-size:14px}.visitrow{padding:14px;background:#f6f8f3;border-radius:8px;margin-top:12px}.visithead{display:flex;justify-content:space-between;align-items:center;font-size:12px}.err{color:#b96d57;font-size:12px;margin-top:14px}.taskcheck{border:1px solid #c7d7ba;color:#71945a;border-radius:6px;background:white;width:25px;height:25px}.rowtitle{display:flex;gap:10px;align-items:center}.requestbox{padding:18px 22px;display:flex;gap:16px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.requestbox p{font-size:12px}.currentuser{padding:12px;background:#eaf2e5;border-radius:7px;font-size:12px;color:#547044;margin-bottom:20px}.range{width:100%;accent-color:var(--green)}.fieldval{font-size:13px;color:#526b47;font-weight:500}.mobilebrand{display:none}.reset{font-size:11px;background:none;border:0;color:#8c9784;padding:0}.permissionbanner{background:#edf4e7;color:#70815d;border:1px solid #dfe9d4;border-radius:8px;padding:12px 16px;font-size:12px;display:flex;justify-content:space-between;margin-bottom:20px}.notebox{background:#fafbf8;border:1px dashed #d9e2d2;border-radius:8px;padding:22px;color:#819073;font-size:12px;line-height:2}.record .bar{max-width:500px}.viewtoggle{display:flex;gap:8px;align-items:center}.viewtoggle select{border:1px solid var(--line);padding:7px 10px;border-radius:6px;font:inherit;color:#76826e;background:#fff}.lockview{max-width:540px;margin:35px auto;padding:40px;text-align:center}.lockview .symbol{font-size:42px;color:#9ca98a;margin-bottom:20px}.lockview h2{font-size:20px}.lockview p{line-height:2;font-size:13px;margin-bottom:20px}.loginbrand{margin-bottom:36px}.loginbrand small{font-size:11px;color:#9da893}.record details summary{cursor:pointer;font-size:12px;color:#6d8c54;margin-top:10px}.controls{display:flex;gap:10px}.miniempty{padding:25px;color:#9aa28e;font-size:12px;text-align:center}input[type=checkbox]{width:16px;height:16px;accent-color:var(--green)}.inlinecheck{display:flex;gap:7px;align-items:center;margin-top:18px}.inlinecheck label{margin:0}.financial{color:#507b5c}#storageWarning{background:#fbe8e4;color:#975c4e;padding:10px;text-align:center;font-size:12px}.loginpanel .btn{width:100%}@media(max-width:1050px){.departmentgrid{grid-template-columns:repeat(2,1fr)}.loginbody,.loginstory{padding:35px}.loginstory h1{font-size:34px}}@media(max-width:700px){.login{grid-template-columns:1fr}.loginstory{display:none}.loginbody{padding:32px 22px;min-height:100vh}.loginbrand{display:block}.departmentgrid{gap:12px}.dept{padding:17px}.dept p{font-size:11px}.formgrid{grid-template-columns:1fr}.full{grid-column:auto}.recordtop,.requestbox{flex-wrap:wrap}.sidefoot{display:block;padding:10px 0;margin-top:10px;display:flex;justify-content:space-between;align-items:center}.workspace{display:block;margin:15px 0 0}.sidefoot .person{display:none}.sidebtn{margin:0}.brandname{font-size:24px}.recordactions{margin-top:8px}.heading{flex-wrap:wrap}.heading .actions{flex-direction:row}.tabs{gap:20px}.metricrow{gap:12px;flex-wrap:wrap}.permissionbanner{font-size:11px}.stats .number{font-size:27px}.viewtoggle{flex-wrap:wrap}.cardhead{gap:10px;flex-wrap:wrap}}

/* DIMOVA company logo, extracted from the supplied brand reference. */
.brand-logo{display:block;width:132px;height:88px;object-fit:contain;flex-shrink:0}
aside>.brand{flex-direction:column;align-items:flex-start;gap:7px}
aside>.brand .brand-logo{width:126px;height:84px}
aside>.brand .brandname{font-size:19px}
.loginstory>.brand{flex-direction:column;align-items:flex-start;gap:15px;margin-bottom:45px}
.loginstory .brand-logo{width:220px;height:147px;background:#f6f2e9;border-radius:14px;padding:18px}
.loginbrand{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:28px}
.loginbrand .brand-logo{width:170px;height:113px}
@media(max-width:700px){aside>.brand{flex-direction:row;align-items:center;gap:16px}aside>.brand .brand-logo{width:95px;height:64px}aside>.brand .brandname{font-size:23px}.loginbrand .brand-logo{width:145px;height:97px}}
/* Attendance, daily evidence, and the approval inbox. */
aside{overflow-y:auto}nav button{padding:10px 13px}.inbox-count{margin-right:auto;background:#e5edda;color:#6c8757;border-radius:12px;min-width:22px;text-align:center;font-size:10px}.attendance-home{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#fff;border:1px solid #dee8d4;border-radius:10px;padding:20px 23px;margin-bottom:22px}.attendance-home strong{font-weight:600;font-size:16px}.attendance-home p{font-size:12px;margin-top:6px}.attendance-today{padding:28px}.attendance-today h2{font-size:23px;margin:5px 0 10px}.attendance-today>div>p{font-size:13px}.clock-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:25px 0}.clock-summary>div{border:1px solid #e6ebdf;background:#fafbf8;border-radius:9px;padding:18px}.clock-summary small{display:block;color:#8d9981;font-size:12px}.clock-summary b{display:block;font-size:25px;margin-top:8px;font-weight:500}.attendance-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.day-checklist{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid var(--line);padding:20px 0 13px;margin-top:25px;color:#a2aa97;font-size:12px}.day-checklist .checked{color:#6b8f56}.attendance-gentle{background:#fcf7e8;color:#a18a54;padding:12px 16px;font-size:12px;border-radius:7px;margin-top:16px}.attendance-event{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:17px 0;border-bottom:1px solid #edf0e7}.attendance-event p{font-size:11px;line-height:1.9;margin-top:5px}.attendance-event b{font-size:13px;font-weight:500}.map-link{font-size:11px}.consent{display:flex;gap:8px;align-items:center}.consent input{width:18px!important;height:18px;accent-color:var(--green)}.attachment-list{margin-top:17px}.attachment-list h4{font-size:13px}.attachment-item{border:1px solid #e2e8dc;border-radius:8px;background:#fff;display:flex;gap:14px;justify-content:space-between;align-items:center;padding:12px 15px;margin:9px 0}.attachment-item b{font-size:12px;overflow-wrap:anywhere;font-weight:500}.attachment-item small{display:block;color:#9ba58d;font-size:10px}.attachment-item .btn{font-size:11px;padding:6px 10px;margin-right:5px}.attachment-preview{display:block;max-width:100%;max-height:65vh;object-fit:contain;margin:20px auto}.previewhead{display:flex;justify-content:space-between;gap:10px;align-items:center}.previewhead h2{font-size:17px;overflow-wrap:anywhere}.weekday-options{display:flex;gap:15px;flex-wrap:wrap}.weekday-options label{display:flex;gap:5px;align-items:center;margin:5px 0!important}.weekday-options input{width:17px;height:17px;accent-color:var(--green)}.viewtoggle input{border:1px solid var(--line);padding:7px 10px;border-radius:6px;background:white;color:var(--ink)}.inbox-item{display:flex;gap:15px;padding:22px;border-bottom:1px solid var(--line);align-items:center;background:#f9fcf5}.inbox-item.read{background:#fff}.inbox-item>div{flex:1}.inbox-item h3{font-size:14px;font-weight:500;margin:0 0 7px}.inbox-item p{font-size:12px;line-height:1.9}.inbox-item small{font-size:10px;color:#9ba78e}.notification-dot{width:7px;height:7px;border-radius:50%;background:#8fae6f;flex-shrink:0}.inbox-item.read .notification-dot{background:#e5e9de}input[type=file]{font-size:12px}button:focus-visible,a:focus-visible{outline:3px solid #b5cfa0;outline-offset:3px}.attendance-today .record{padding:10px 0 0}.notice b{font-weight:600}@media(max-width:700px){.attendance-home{flex-direction:column;align-items:flex-start;padding:18px}.attendance-home .btn{width:100%}.attendance-today{padding:21px 17px}.clock-summary{gap:8px;padding:20px 0}.clock-summary>div{padding:12px 9px}.clock-summary b{font-size:18px}.clock-summary small{font-size:10px}.attendance-actions{display:grid;grid-template-columns:1fr;width:100%}.attendance-actions .btn{width:100%}.day-checklist{gap:12px;font-size:11px}.attendance-event{flex-direction:column}.attachment-item{align-items:flex-start;flex-direction:column}.inbox-item{padding:17px 13px;gap:10px}.inbox-item .btn{font-size:11px;padding:8px}.inbox-item h3{font-size:13px}.inbox-item p{font-size:11px}.tabs{gap:18px}.tabs button{font-size:12px}.heading p{font-size:12px}.stats .number{font-size:25px}header .headerleft>span:not(.avatar){display:none}.filters{flex-wrap:wrap}.filters select{max-width:100%}}
.retain-file{display:flex;gap:8px;align-items:center;font-size:12px;overflow-wrap:anywhere}.retain-file input{width:17px;height:17px;accent-color:var(--green)}

.official-login{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;background:radial-gradient(at top right,#ece9d9,#f6f8f5 65%)}.official-login-card{width:100%;max-width:460px;border:1px solid #e3e8dd;border-radius:16px;background:#fff;padding:35px;margin-bottom:25px;box-shadow:0 15px 60px #213c3010}.official-logo{width:170px;height:114px;object-fit:contain;display:block;margin-bottom:25px}.official-login-card h1{font-size:25px}.official-login-card p{font-size:12px;line-height:1.9}.official-login-card input{width:100%;border:1px solid #dfe7d8;border-radius:7px;padding:11px;font:inherit;outline-color:#adc393}.official-login-card label{margin-top:20px}.server-saving:after{content:'جارٍ الحفظ الآمن…';position:fixed;bottom:20px;left:20px;z-index:100;background:#193b35;color:white;border-radius:9px;padding:12px 23px;font:13px Tahoma}.server-saving #app{pointer-events:none}@media(max-width:700px){.official-login{padding:20px}.official-login-card{padding:27px 22px}.official-logo{width:145px;height:97px}}
