
:root{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:#f4f6f8;
  color:#1e293b
}
*{box-sizing:border-box}
body{margin:0}
.top{
  background:#0f3d5e;color:#fff;padding:14px 20px;
  display:flex;gap:18px;align-items:center;flex-wrap:wrap
}
.top a{color:#fff;text-decoration:none;font-weight:650}
.brand{font-size:20px;font-weight:800;margin-right:auto}
.container{max-width:1380px;margin:24px auto;padding:0 16px}
.narrow{max-width:760px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.card{
  background:#fff;border:1px solid #dde3e8;border-radius:12px;
  padding:18px;box-shadow:0 2px 10px #0000000a
}
.card h2,.card h3{margin-top:0}
.biglink{display:block;text-decoration:none;color:inherit}
.biglink:hover{border-color:#0f3d5e}
.stat{font-size:34px;font-weight:800}
.muted{color:#64748b}
.warn{background:#fff7ed;border:1px solid #fdba74;padding:12px;border-radius:8px}
.success{background:#ecfdf5;border:1px solid #86efac;padding:12px;border-radius:8px;margin-bottom:12px}
.error{background:#fef2f2;border:1px solid #fca5a5;padding:12px;border-radius:8px;margin-bottom:12px}
form{display:grid;gap:12px}
label{font-weight:700;display:grid;gap:5px}
input,select,textarea{
  width:100%;padding:10px;border:1px solid #cbd5e1;
  border-radius:7px;background:#fff
}
textarea{min-height:120px}
textarea.tall{min-height:180px}
button,.btn{
  display:inline-block;padding:10px 15px;border-radius:7px;border:0;
  background:#0f3d5e;color:#fff;text-decoration:none;font-weight:700;cursor:pointer
}
.btn.secondary{background:#475569}
.btn.danger{background:#b91c1c}
.btn.green{background:#166534}
.actions{display:flex;gap:8px;flex-wrap:wrap}
.tablewrap{overflow:auto}
.table{width:100%;border-collapse:collapse;background:#fff}
.table th,.table td{padding:9px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top}
.table th{background:#eaf0f5}
.badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#e2e8f0;font-size:12px;font-weight:700}
.urgent{background:#fee2e2}
.high{background:#ffedd5}
.today{background:#fef9c3}
.overdue{background:#fee2e2}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.section-title{
  background:#334155;color:#fff;padding:8px 10px;
  font-weight:800;border-radius:6px;margin:8px 0
}
.paper{
  background:#fff;max-width:1050px;margin:0 auto;
  padding:22px;border:1px solid #cbd5e1
}
.paper-head{display:grid;grid-template-columns:1.1fr 1.7fr .6fr;gap:10px;align-items:start}
.paper-box{border:1px solid #334155;padding:8px;min-height:48px}
.paper-title{
  background:#334155;color:#fff;text-align:center;
  font-weight:800;padding:6px;margin:10px 0 4px
}
.paper-grid{width:100%;border-collapse:collapse}
.paper-grid td,.paper-grid th{border:1px solid #475569;padding:6px;vertical-align:top}
.signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:35px}
.signature-line{border-top:1px solid #111;padding-top:6px;text-align:center}
.small{font-size:12px}
.nowrap{white-space:nowrap}
@media(max-width:760px){
  .two,.three,.paper-head{grid-template-columns:1fr}
  .top{align-items:flex-start}
}
@media print{
  body{background:#fff}
  .top,.no-print,.container>h1,.success,.error,.warn{display:none!important}
  .container{max-width:none;margin:0;padding:0}
  .paper{border:0;max-width:none;padding:0}
  @page{size:A4;margin:8mm}
}


.checklist-table .checkmark{text-align:center;width:55px}
.checklist-table .checkmark input{width:24px;height:24px}
.checklist-table .check-section{background:#334155;color:#fff;font-size:14px}
.checklist-table select{min-width:120px}
.check-note{min-height:64px;min-width:220px}
