@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');
:root{--green:#0b5d45;--green2:#13865f;--mint:#e7f5ef;--ink:#17231f;--muted:#6b7b75;--line:#dfe8e4;--bg:#f4f7f6;--amber:#eaa72b;--white:#fff;--red:#bf3b3b}*{box-sizing:border-box}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}.shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{background:#093e31;color:#fff;padding:25px 18px;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh}.brand,.login-brand{display:flex;gap:12px;align-items:center}.brand-mark{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;background:var(--amber);color:#17372e;font:800 16px Manrope}.brand strong,.login-brand strong{display:block;font:700 15px Manrope}.brand span,.login-brand span{display:block;font-size:11px;opacity:.72;margin-top:2px}.program{font-size:10px;letter-spacing:.07em;text-transform:uppercase;background:rgba(255,255,255,.08);margin:25px 0;padding:10px;border-radius:8px}.program span{display:inline-block;width:7px;height:7px;border-radius:50%;background:#55d098;margin-right:7px}nav{display:grid;gap:6px}nav a{color:#c2d9d1;text-decoration:none;padding:12px 13px;border-radius:9px;font-size:14px;font-weight:600}nav a:hover,nav a.active{color:white;background:rgba(255,255,255,.11)}.ico{display:inline-block;width:18px;margin-right:11px}.ico:after{content:'•';font-size:20px}.sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:18px 8px 0;display:grid}.sidebar-foot small,.sidebar-foot span{color:#91b2a7;font-size:11px}.sidebar-foot strong{font-size:13px;margin:4px 0}.logout{margin-top:14px;border:1px solid rgba(255,255,255,.2);background:transparent;color:white;border-radius:7px;padding:8px;width:100%;cursor:pointer}main{min-width:0}header{height:84px;background:#fff;border-bottom:1px solid var(--line);padding:0 34px;display:flex;align-items:center;gap:14px}header h1{font:800 21px Manrope;margin:0}header p{font-size:12px;color:var(--muted);margin:3px 0 0}.today{margin-left:auto;font-size:13px;color:var(--muted)}.menu{display:none;background:none;border:0;font-size:22px}.content{padding:28px 34px;max-width:1500px;margin:auto}.welcome{background:linear-gradient(105deg,#0b5d45,#117c5a);color:white;border-radius:16px;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 10px 25px #0b5d4526}.welcome span{font-size:10px;letter-spacing:.14em;color:#a9dec9}.welcome h2{font:800 24px Manrope;margin:8px 0}.welcome p{margin:0;color:#cbe5db;font-size:13px}.button,button.primary{display:inline-block;border:0;border-radius:8px;padding:10px 15px;text-decoration:none;font-weight:700;font-size:13px;cursor:pointer}.primary{background:var(--green);color:#fff}.light{background:#fff;color:var(--green)}.secondary{background:#edf2f0;color:#4f635c}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.stat{background:white;border:1px solid var(--line);border-radius:13px;padding:19px;border-top:3px solid var(--green2)}.stat.amber{border-top-color:var(--amber)}.stat span,.stat small{display:block;color:var(--muted);font-size:11px}.stat strong{display:block;font:800 23px Manrope;margin:8px 0}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.quick-actions a{background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:11px}.quick-actions b{width:32px;height:32px;border-radius:8px;background:var(--mint);color:var(--green);display:grid;place-items:center}.quick-actions span{font-size:12px;font-weight:700}.quick-actions small{display:block;color:var(--muted);font-weight:400;margin-top:2px}.dashboard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 2px 6px #1b46380a}.panel-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.panel h3{font:700 14px Manrope;margin:0}.panel-head p{font-size:11px;color:var(--muted);margin:4px 0 0}.panel-head a{color:var(--green);font-size:11px;font-weight:700;text-decoration:none}.mini-list>div{display:flex;align-items:center;padding:12px 18px;border-bottom:1px solid #edf2f0;gap:11px}.mini-list>div:last-child{border:0}.avatar{width:36px;height:36px;border-radius:8px;background:var(--mint);display:grid;place-items:center}.amber-bg{background:#fff3db}.mini-list p{margin:0;display:grid;flex:1}.mini-list strong{font-size:12px}.mini-list small,.mini-list time{font-size:10px;color:var(--muted);margin-top:3px}.badge{display:inline-block;border-radius:20px;background:#eef2f1;padding:5px 9px;font-size:10px;font-weight:700;color:#53665f}.badge.active,.badge.available,.badge.completed,.badge.assigned{background:#ddf4e9;color:#087048}.badge.maintenance,.badge.in-progress,.badge.scheduled{background:#fff0d4;color:#946006}.badge.out-of-service,.badge.cancelled,.badge.inactive{background:#fde5e5;color:#a93131}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.toolbar h2,.form-heading h2{font:800 20px Manrope;margin:0}.toolbar p,.form-heading p{color:var(--muted);font-size:12px;margin:4px 0 0}.table-panel{overflow:hidden}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;background:#f9fbfa;color:#61736c;text-transform:uppercase;letter-spacing:.04em;font-size:9px;padding:13px 15px;border-bottom:1px solid var(--line)}td{padding:14px 15px;border-bottom:1px solid #eaf0ed;white-space:nowrap}tbody tr:hover{background:#fbfdfc}.actions{display:flex;gap:9px;justify-content:flex-end}.actions a,.actions button{border:0;background:none;color:var(--green);font-weight:700;font-size:11px;text-decoration:none;padding:0;cursor:pointer}.actions button{color:var(--red)}.empty{text-align:center;padding:65px 20px}.empty.compact{padding:45px 20px;color:var(--muted);font-size:12px}.empty div{font-size:30px}.empty h3{font:700 16px Manrope;margin:10px 0 4px}.empty p{color:var(--muted);font-size:12px;margin:0 0 15px}.form-heading{margin-bottom:20px}.form-heading>a{font-size:11px;color:var(--green);text-decoration:none;font-weight:700;display:block;margin-bottom:12px}.record-form{padding:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.record-form label,.login-card label{font-size:12px;font-weight:700;color:#40534c;display:grid;gap:7px}.record-form input,.record-form select,.record-form textarea,.login-card input{width:100%;border:1px solid #cfdcd7;border-radius:8px;padding:11px 12px;background:white;color:var(--ink);outline:none}.record-form input:focus,.record-form select:focus,.record-form textarea:focus,.login-card input:focus{border-color:var(--green2);box-shadow:0 0 0 3px #13865f18}.full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.alert{padding:11px 14px;border-radius:8px;margin-bottom:17px;font-size:12px;font-weight:600}.success{background:#dff4e9;color:#086944}.danger{background:#fde7e7;color:#9f3030}.login-page{min-height:100vh;background:#083f31}.login-wrap{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;max-width:1300px;margin:auto}.login-hero{padding:10%;color:white;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 10% 80%,#168d6455,transparent 35%)}.hero-badge{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#9cd6bf}.login-hero h1{font:800 45px/1.13 Manrope;margin:20px 0;max-width:650px}.login-hero>p{font-size:16px;line-height:1.7;color:#b7d7cb;max-width:570px}.hero-program{margin-top:55px;border-left:3px solid var(--amber);padding-left:15px}.hero-program span,.hero-program strong{display:block}.hero-program span{font-size:10px;color:#8fbcab;text-transform:uppercase}.hero-program strong{margin-top:3px}.login-card{background:white;align-self:center;margin:35px;border-radius:18px;padding:43px;box-shadow:0 30px 80px #001f1544}.login-brand{margin-bottom:40px}.login-brand span{color:var(--muted)}.login-card h2{font:800 25px Manrope;margin:0}.login-card>p{color:var(--muted);font-size:13px;margin:6px 0 25px}.login-card form{display:grid;gap:18px}.wide{width:100%;padding:12px!important}.security{display:block;text-align:center;color:#8b9994;margin-top:25px;font-size:10px}
@media(max-width:1000px){.stats,.quick-actions{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.login-wrap{grid-template-columns:1fr}.login-hero{display:none}.login-card{max-width:480px;width:calc(100% - 30px);margin:auto}}
@media(max-width:760px){.shell{display:block}.sidebar{position:fixed;z-index:10;width:250px;left:-260px;transition:.2s}.sidebar.open{left:0}.menu{display:block}.content{padding:20px 15px}header{padding:0 15px}.today{display:none}.welcome{align-items:flex-start;gap:20px}.welcome .button{display:none}.stats,.quick-actions{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.toolbar{align-items:flex-start;gap:10px}.toolbar .button{white-space:nowrap}}
@media(max-width:450px){.stats,.quick-actions{grid-template-columns:1fr}.login-card{padding:28px 23px}.toolbar{display:grid}}
.nav-section{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#7da397;padding:22px 13px 5px}.language{margin-left:auto;display:flex;border:1px solid var(--line);border-radius:7px;overflow:hidden}.language a{font-size:10px;text-decoration:none;color:var(--muted);padding:6px 8px}.language a.selected{background:var(--green);color:white}.language+.today{margin-left:0}.toolbar-actions{display:flex;gap:8px}.record-form .check{display:flex;align-items:center;gap:8px}.record-form .check input{width:auto}.brand-preview{display:flex;align-items:center;gap:12px;background:#f3f8f6;padding:16px;border-radius:10px;margin-bottom:20px}.brand-preview span{display:block;font-size:11px;color:var(--muted)}.role-help{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.role-help div{background:white;border:1px solid var(--line);padding:15px;border-radius:10px}.role-help strong,.role-help span{display:block;font-size:11px}.role-help span{color:var(--muted);margin-top:4px}.role-badge{font-size:10px;font-weight:700;color:var(--green)}
.print-page{background:#e8eeeb;padding:30px}.print-sheet{background:#fff;max-width:850px;min-height:1050px;margin:auto;padding:45px;box-shadow:0 5px 30px #183c3025}.print-header{height:auto;padding:0 0 22px;border-bottom:3px solid var(--green);display:flex;align-items:center;gap:12px}.print-header h1{font-size:20px;margin:0}.print-header p{margin:4px 0 0}.print-header .print-id{margin-left:auto;font-weight:700}.print-title{display:flex;justify-content:space-between;align-items:center;margin:35px 0 20px}.print-title h2{font:800 22px Manrope}.print-title span{font-size:11px;color:var(--muted)}.record-details{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin:0}.record-details div{padding:18px 10px;border-bottom:1px solid var(--line)}.record-details dt{font-size:10px;color:var(--muted);text-transform:uppercase}.record-details dd{margin:6px 0 0;font-weight:700}.print-sheet footer{margin-top:100px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:10px}.print-controls{text-align:center;margin:18px}.print-controls button{padding:9px 16px;margin:3px;border:0;border-radius:7px;background:var(--green);color:white}
[dir=rtl] body{font-family:'Segoe UI',Tahoma,sans-serif}[dir=rtl] .ico{margin-right:0;margin-left:11px}[dir=rtl] .language{margin-left:0;margin-right:auto}[dir=rtl] th{text-align:right}[dir=rtl] .print-header .print-id{margin-left:0;margin-right:auto}
@media print{body{background:#fff}.sidebar,main>header,.toolbar .button,.no-print{display:none!important}.shell{display:block}.content{padding:0}.panel{border:0;box-shadow:none}.table-scroll{overflow:visible}table{font-size:9px}th,td{padding:8px}.print-page{padding:0}.print-sheet{box-shadow:none;max-width:none;min-height:auto;padding:20px}@page{size:A4;margin:12mm}}
