:root{--navy:#102b38;--teal:#117965;--copper:#be7957;--line:#e1e8ea}*{box-sizing:border-box}body{font:14px/1.5 Arial,sans-serif;margin:0;background:#f5f8f7;color:#263c47}button,input,select{font:inherit}button{cursor:pointer}.admin-header{height:70px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 30px}.admin-brand{display:flex;align-items:center;gap:9px;color:white;text-decoration:none;font:600 22px Georgia,serif}.admin-brand img{height:38px}.admin-brand span{font:700 11px Arial,sans-serif;letter-spacing:.14em;margin-left:9px;color:#b7d0ce;text-transform:uppercase}.private-label{font-size:10px;letter-spacing:.15em;color:#b7d0ce}.admin-header button{margin-left:25px;border:1px solid #7894a0;background:none;color:white;padding:7px 11px;border-radius:5px}main{max-width:1460px;padding:32px 24px;margin:auto}.login-card{max-width:420px;margin:10vh auto;background:white;padding:38px;border-radius:10px;box-shadow:0 12px 35px #0c243a13}.eyebrow{font-size:10px;letter-spacing:.2em;color:var(--copper);font-weight:700}.login-card h1,.dashboard-title h1{font:600 42px Georgia,serif;color:var(--navy);margin:7px 0}.login-card p,.dashboard-title p{color:#657882}.login-card label,.detail label{display:block;font-weight:700;margin-top:23px}.login-card input,.detail input,.detail select{display:block;width:100%;padding:11px;border:1px solid #cfdce0;border-radius:5px;margin-top:6px}.login-card button,.detail form button{border:0;color:white;background:var(--teal);border-radius:5px;padding:11px 20px;margin-top:18px;font-weight:700}.login-card #login-error{color:#bd4136}.dashboard-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.dashboard-title h1{margin-bottom:0}.dashboard-title p{margin:0}.dashboard-title button{border:1px solid #b7cdd1;color:var(--navy);background:white;padding:10px 17px;border-radius:5px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:24px}.stats>div{background:white;border:1px solid var(--line);border-radius:8px;padding:18px 24px}.stats span{font:600 31px Georgia,serif;display:block;color:var(--navy)}.stats small{letter-spacing:.12em;color:#7c8e97;font-weight:700;font-size:10px}.board{background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden}.board-head{display:flex;justify-content:space-between;align-items:center;padding:14px 19px;border-bottom:1px solid var(--line)}.board-head h2{margin:0;font:600 22px Georgia,serif;color:var(--navy)}.board-head select{padding:7px 12px;border:1px solid #d5e0e3;border-radius:5px;background:white}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:11px;color:#748792;padding:14px 16px;background:#f8fbfa;white-space:nowrap}td{border-top:1px solid var(--line);padding:14px 16px;vertical-align:top;min-width:100px}td:nth-child(2){min-width:250px}td small{display:block;color:#81919a;margin-top:3px}tr[data-index]{cursor:pointer}tr[data-index]:hover{background:#f5fbf8}.status{display:inline-block;padding:4px 9px;border-radius:5px;font-size:11px;font-weight:700;text-transform:capitalize;background:#e5f2ec;color:#126b57}.status.requested{background:#fff1da;color:#96600a}.status.cancelled{background:#fae8e5;color:#ad3d35}.status.completed{background:#e3ebf0;color:#435f70}#empty{padding:30px;color:#768b93;text-align:center}.detail{position:fixed;right:0;top:70px;bottom:0;width:min(430px,100vw);overflow:auto;background:white;box-shadow:-12px 0 35px #102b3826;padding:25px;z-index:4}.detail-top{display:flex;justify-content:space-between}.detail-top h2{font:600 27px Georgia,serif;color:var(--navy);margin:6px 0 10px}.detail-top button{background:none;border:0;font-size:29px;color:#748792}.detail dl{display:grid;grid-template-columns:110px 1fr;gap:10px;margin:30px 0}.detail dt{font-weight:700;color:#6d808a}.detail dd{margin:0;overflow-wrap:anywhere}.detail form{border-top:1px solid var(--line);padding-top:6px}.detail #update-message{color:var(--teal)}@media(max-width:700px){.admin-header{padding:0 13px}.admin-brand{font-size:17px}.admin-brand span,.private-label{display:none}main{padding:20px 10px}.dashboard-title{display:block}.dashboard-title button{margin-top:13px}.stats{gap:5px}.stats>div{padding:13px}.stats small{font-size:9px}}
