@font-face{font-family:Cairo;src:url('assets/Cairo.woff2') format('woff2');font-style:normal;font-weight:200 1000;font-display:swap}
:root{--gold:#b9852c;--gold-dark:#805916;--gold-soft:#f5ecd9;--paper:#f9f6f0;--line:#e9e4da;--ink:#111;--gray:#626873;--green:#35694f;--red:#964b49;color-scheme:light}
*{box-sizing:border-box}
html{font-family:Cairo,Tahoma,Arial,sans-serif;font-size:14px;line-height:1.8;background:#f9f6f0;background:var(--paper);color:#111;color:var(--ink);font-synthesis:none}
body{margin:0;min-width:300px}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:rgba(185,133,44,.15)}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:#805916;color:var(--gold-dark);text-decoration:none}a:hover{text-decoration:underline}button:focus,a:focus,input:focus,select:focus,textarea:focus,summary:focus{outline:3px solid #b9852c;outline-offset:3px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}h1,h2,h3,p,dl,dd{margin:0}h1,h2,h3,strong{font-weight:700}h1{font-size:28px;letter-spacing:-.5px;line-height:1.6}h2{font-size:19px;line-height:1.7;margin-bottom:10px}h3{font-size:15px}p{max-width:80ch}img{display:block;max-width:100%;object-fit:contain}small{display:block;font-size:11px;color:#626873;color:var(--gray)}[hidden]{display:none!important}.skip{position:fixed;top:-100px;right:16px;z-index:20;background:#fff;padding:10px}.skip:focus{top:8px}.initial{padding:40px;text-align:center}.muted{color:#626873;color:var(--gray);font-size:12px}.identifier{font-family:Cairo,Tahoma,Arial,sans-serif;font-size:11px;overflow-wrap:break-word;word-break:break-all}.full{width:100%}.narrow{max-width:760px}
.masthead{background:#fff;border-bottom:1px solid #e9e4da}.masthead-inner{max-width:1260px;margin:auto;min-height:104px;padding:14px 40px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:block;width:225px;flex-shrink:0}.brand img{width:220px;height:auto}.brand:hover{text-decoration:none}.account-actions{display:flex;align-items:center;gap:12px}.account{padding:0 8px}.account strong{display:block;font-size:13px}.account small{font-size:10px}.account-actions .button{font-size:11px;min-height:36px;padding:6px 12px}.main-nav{max-width:1180px;margin:auto;display:flex;gap:22px;align-items:stretch;overflow-x:auto;padding:0 0 1px;scrollbar-width:thin}.main-nav a{position:relative;display:flex;align-items:center;flex-shrink:0;padding:12px 0 16px;font-size:12px;color:#626873}.main-nav a.is-active{color:#805916;font-weight:700}.main-nav a.is-active:after{position:absolute;content:'';bottom:0;left:0;right:0;height:3px;border-radius:3px;background:#b9852c}.main-nav a:hover{text-decoration:none;color:#805916}.workspace{max-width:1260px;margin:auto;min-height:calc(100vh - 225px);padding:25px 40px 40px}.workspace:focus{outline:0}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 25px}.breadcrumb{font-size:11px;color:#626873;margin-bottom:4px}.page-heading .muted{margin-top:5px}
.panel{padding:24px 28px;background:#fff;border:1px solid #e9e4da;border-radius:14px;margin-bottom:22px;min-width:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.section-heading h2{margin:0}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px}.dashboard-grid>.panel{margin-bottom:22px}.hero-panel h2{font-size:28px;margin:6px 0}.shift-fact{border-top:1px solid #e9e4da;border-bottom:1px solid #e9e4da;padding:18px 0;margin:20px 0}.shift-fact>p{font-size:13px;margin-top:4px}.summary>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #eee9e1}.summary>div:last-child{border:0}.summary dt{font-size:12px;color:#626873}.summary dd{font-size:13px;text-align:end}.summary dd.identifier{font-size:11px;max-width:65%}.task-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.task-layout>.panel{min-width:0}.task-layout aside>p{margin-top:16px;font-size:12px}.aside-emblem{width:120px;height:120px;margin:4px auto 22px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:16px 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:43px;gap:8px;border:1px solid #b9852c;border-radius:9px;background:#b9852c;color:#111;padding:10px 18px;font-size:12px;font-weight:700;line-height:1.6;text-decoration:none;text-align:center}.button:hover{background:#a97624;text-decoration:none}.button.secondary{background:#fff;border-color:#ded6c7;color:#805916}.button.secondary:hover{background:#f9f6f0}.field{display:block;margin:15px 0}.field>span{display:block;font-size:12px;margin-bottom:6px;color:#50545b}.field input,.field select,.field textarea{display:block;width:100%;min-height:45px;border:1px solid #dcd6ca;border-radius:8px;background:#fdfcf9;padding:9px 12px;font-size:13px}.field textarea{resize:vertical;min-height:90px}.field input[readonly]{background:#f5f3ee;color:#626873}.field input[type=date],.field input[type=time]{min-width:0}.field input:disabled,.field select:disabled{opacity:.6}.field select{padding-inline-end:28px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 16px}.check{display:flex;align-items:flex-start;gap:8px;font-size:12px;margin:14px 0;line-height:1.8}.check input{margin:4px 0 0;accent-color:#b9852c;width:16px;height:16px;flex-shrink:0}fieldset{border:1px solid #e9e4da;border-radius:9px;padding:10px 16px 16px;margin:18px 0;min-width:0}legend{font-size:13px;font-weight:700;padding:0 8px}.columns{display:flex;flex-wrap:wrap;gap:0 20px}.columns .check{margin:7px 0}.notice{background:#f9f3e7;color:#705322;border:1px solid #ede1c9;padding:12px 14px;border-radius:8px;font-size:12px;margin:16px 0;line-height:1.9}.message{font-size:12px;line-height:1.9;white-space:pre-line;overflow-wrap:break-word;max-width:80ch}.message:empty{display:none}.message:not(:empty){padding:11px 14px;margin:12px 0;border:1px solid #e9e4da;background:#f9f6f0;border-radius:8px}.message.error{color:#873f3d;background:#fbf1ef;border-color:#ebd2cd}.message.success{color:#35694f;background:#f2f7f2;border-color:#d8e6d8}.empty{text-align:center;color:#626873;padding:32px 14px;font-size:13px}.badge{display:inline-block;font-size:11px;padding:3px 9px;border-radius:6px;white-space:nowrap;line-height:1.8;background:#f5ecd9;color:#805916}.badge.good{color:#35694f;background:#eef5ef}.badge.bad{color:#964b49;background:#f8efed}.badge.warn{color:#805916;background:#f9f0dc}
.login-layout{max-width:950px;margin:35px auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,450px);gap:75px;align-items:center}.login-intro h1{font-size:36px;line-height:1.65}.login-intro>p{font-size:15px;color:#626873;line-height:2;margin:12px 0 26px}.login-emblem{display:flex;align-items:center;gap:15px;border-top:1px solid #e1d7c4;padding-top:22px}.login-emblem img{width:105px;height:105px;flex-shrink:0}.login-emblem p{font-size:10px;color:#626873;line-height:2}.login-panel{padding:28px 32px;margin-bottom:0}.login-panel h2{font-size:23px;margin-top:20px}.auth-tabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid #e9e4da;padding-bottom:14px}.auth-tabs button{font-size:11px;line-height:1.7;min-height:36px;border:0;background:transparent;padding:7px 9px;color:#626873;border-radius:6px}.auth-tabs button.selected{background:#f5ecd9;color:#805916;font-weight:700}.auth-tabs button:last-child{font-size:10px}.scan-instruction{font-size:12px;line-height:1.9;background:#f9f6f0;border:1px solid #e9e4da;padding:14px;border-radius:9px;margin-top:20px}.scan-box{background:#111;border-radius:10px;overflow:hidden;max-width:600px;margin:12px 0}.scan-box video{display:block;width:100%;max-height:420px;object-fit:cover}.receipt{border-color:#d4c098;border-inline-start:5px solid #b9852c}.receipt h3{margin-top:14px}.server-reasons{font-size:13px;padding-inline-start:22px}.metrics{font-size:11px;margin-top:20px;border-top:1px solid #e9e4da;padding-top:10px}.metrics summary{cursor:pointer;color:#626873}.metrics .summary dd,.metrics .summary dt{font-size:11px}.qr-panel{max-width:760px;text-align:center;margin-inline:auto}.qr-panel .field{text-align:start;max-width:430px;margin:12px auto}.qr-panel .actions{justify-content:center}.live-qr{width:320px;height:320px;background:white;border:1px solid #e9e4da;border-radius:10px;margin:20px auto;max-width:100%;object-fit:contain}#qr-countdown{margin:auto;color:#805916;font-weight:700}
.table-scroll{overflow:auto;max-width:100%;-webkit-overflow-scrolling:touch;margin-top:14px}table{border-collapse:collapse;width:100%;font-size:12px;text-align:start}th{font-weight:700;text-align:start;color:#626873;background:#faf8f4}th,td{padding:13px 12px;border-bottom:1px solid #ece7de;vertical-align:top;line-height:1.9}td{min-width:95px}td strong{font-size:12px}td small{font-size:10px;margin-top:2px}.table-scroll .button{font-size:11px;min-height:35px;padding:7px 10px}.reason-cell{min-width:150px;max-width:300px}.url-cell{max-width:250px;word-break:break-all;font-size:11px}.totals{display:flex;flex-wrap:wrap;gap:12px 24px;padding:14px 0;font-size:12px;border-block:1px solid #e9e4da}.totals strong{color:#805916;padding-inline-start:6px}.person-row{display:flex;align-items:start;justify-content:space-between;gap:30px;padding:22px 0;border-bottom:1px solid #e9e4da}.person-row:last-child{border:0}.person-row p{font-size:12px;color:#626873;margin-bottom:8px}.person-row form{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;max-width:70%}.person-row .field,.person-row .check{margin:4px 0}.person-row .field select{min-height:39px}.person-row .message{flex-basis:100%}.request-row{padding:24px 0;border-bottom:1px solid #e9e4da}.request-row:last-child{border:0}.request-row>p{margin:6px 0}.request-row form{max-width:650px}.request-row .identifier{font-size:11px}.audit-event{border-bottom:1px solid #e9e4da;padding:16px 0}.audit-event p{font-size:13px}
.modal-open{overflow:hidden}.dialog-backdrop{position:fixed;top:0;bottom:0;left:0;right:0;z-index:30;overflow-y:auto;background:rgba(38,30,18,.5);padding:35px 16px;display:flex;align-items:flex-start;justify-content:center}.dialog{width:100%;max-width:820px;padding:24px 28px;background:#fff;border:1px solid #e9e4da;border-radius:14px;margin:auto;box-shadow:0 15px 60px rgba(38,30,18,.15)}.dialog>.section-heading{position:relative;padding-bottom:14px;border-bottom:1px solid #e9e4da}.dialog .section-heading .button{font-size:11px;min-height:35px;padding:6px 12px}.dialog .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.json{overflow:auto;white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word;font:12px/1.8 Tahoma,Arial,sans-serif;background:#f9f6f0;border:1px solid #e9e4da;padding:14px;border-radius:8px;max-height:450px}details{margin:15px 0}summary{cursor:pointer;font-size:12px;color:#805916}
@supports not (display:grid){.dashboard-grid>.panel,.task-layout>.panel,.login-layout>section{width:100%}.form-grid{display:flex;flex-wrap:wrap}.form-grid>.field{flex:1 1 180px;margin-inline:8px}}
@media(min-width:1000px){.main-nav{padding-inline:0}}
@media(max-width:1259px){.main-nav{padding-inline:40px}}
@media(max-width:960px){.masthead-inner{padding:14px 24px}.workspace{padding:24px}.main-nav{padding-inline:24px}.login-layout{gap:35px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 260px}.task-layout{grid-template-columns:minmax(0,1fr) 260px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:22px}.account-actions{gap:7px}}
@media(max-width:700px){h1{font-size:24px}.masthead-inner{min-height:88px;padding:12px 16px;gap:12px;align-items:flex-start}.brand{width:180px}.brand img{width:180px}.account-actions{justify-content:flex-end;flex-wrap:wrap;max-width:52%;gap:6px}.account{flex-basis:100%;padding:0;text-align:end}.account strong{font-size:11px}.account small{font-size:9px}.account-actions .button{font-size:10px;min-height:32px;padding:5px 8px}.main-nav{padding-inline:16px;gap:20px}.main-nav a{font-size:11px;padding-block:10px 13px}.workspace{padding:20px 16px}.page-heading{margin-bottom:18px;align-items:flex-start;gap:12px}.panel{padding:20px 18px;border-radius:12px;margin-bottom:18px}.dashboard-grid,.task-layout,.login-layout{display:block}.dashboard-grid>.panel{margin-bottom:18px}.hero-panel h2{font-size:25px}.login-layout{margin:10px auto}.login-intro{margin-bottom:25px}.login-intro h1{font-size:28px}.login-intro>p{font-size:13px;margin-bottom:14px}.login-emblem{padding-top:14px;gap:12px}.login-emblem img{width:75px;height:75px}.login-emblem p{font-size:10px}.login-panel{padding:22px}.aside-emblem{width:90px;height:90px}.task-layout>aside{margin-top:18px}.task-layout aside>p{font-size:11px}.form-grid{gap:0 12px}.field{margin:11px 0}.field>span{font-size:11px}.field input,.field select,.field textarea{font-size:16px;min-height:46px}.person-row{display:block;padding:18px 0}.person-row form{max-width:100%;margin-top:15px}.person-row form .field select{font-size:14px}.button{min-height:44px;font-size:12px;padding:10px 14px}.dialog-backdrop{padding:12px 8px}.dialog{padding:20px 16px;border-radius:12px}.dialog .form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dialog h2{font-size:18px}.table-scroll{margin-inline:-8px}th,td{padding:10px 9px;font-size:11px}.summary dd.identifier{max-width:60%;font-size:10px}.live-qr{width:290px;height:290px}}
@media(max-width:390px){.brand{width:150px}.brand img{width:150px}.form-grid,.dialog .form-grid{grid-template-columns:minmax(0,1fr)}.page-heading{display:block}.actions .button{font-size:11px}.login-panel{padding:19px 16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{.masthead,.actions,form,.skip{display:none!important}.workspace{padding:0;max-width:none}.panel{border:0;padding:0}.table-scroll{overflow:visible}table{font-size:10px}th,td{padding:7px}tr{break-inside:avoid}thead{display:table-header-group}.dialog-backdrop{position:static;background:#fff;padding:0}.dialog{box-shadow:none;border:0}}

@media(max-width:720px){.attendance-layout>aside{display:none}}

.manager-summary{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.manager-summary>div,.manager-summary>div:last-child{display:block;flex:1 1 120px;border:1px solid #e9e4da;border-radius:9px;padding:12px;background:#fdfcf9}.manager-summary dd{font-size:24px;text-align:inherit;margin-top:5px}

#report-preview:empty{display:none}

.attendance-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
#punch-form button:disabled{cursor:not-allowed}
#punch-form[aria-busy=true] button:disabled{cursor:wait}
@media(max-width:700px){.attendance-choices{grid-template-columns:minmax(0,1fr)}}

.person-row h3,.person-row p{overflow-wrap:break-word;overflow-wrap:anywhere}
@media(max-width:1180px){.field input,.field select,.field textarea,.person-row form .field select{font-size:16px}}

.showcase-panel>details{margin:0}.showcase-panel>details>summary{font-weight:700;font-size:14px}.showcase-actions{margin-block:12px}.showcase-actions>.actions{margin:0}.showcase-panel .selection-cell{min-width:44px;width:44px;vertical-align:middle}.selection-cell input{width:20px;height:20px;accent-color:#805916;cursor:pointer}.button.danger,[data-action=showcase-delete]:not(:disabled){background:#922c2c;border-color:#922c2c;color:#fff}.button.danger:focus-visible,[data-action=showcase-delete]:focus-visible{outline:3px solid #bb8f53;outline-offset:3px}.showcase-panel>details:not([open])>*:not(summary){display:none}
