/* Sagebrush State Contractors Board (fictional) – styles modeled on a classic state licensing portal */
* { box-sizing: border-box; }
body { margin: 0; font: 14px/1.45 Arial, Helvetica, sans-serif; color: #222; background: #e9edf2; }
a { color: #1a4f8b; }
#hdr { background: linear-gradient(180deg, #1f4e79 0%, #173b5c 100%); color: #fff; }
#hdr .in { max-width: 1100px; margin: 0 auto; display: flex; align-items: center; gap: 16px; padding: 14px 20px; }
#hdr .t1 { font: 700 11px/14px Arial; letter-spacing: .16em; color: #c9dcef; text-transform: uppercase; }
#hdr .t2 { font: 700 24px/30px Georgia, "Times New Roman", serif; }
#hdr .t3 { font-size: 12px; color: #c9dcef; }
#hdr .right { margin-left: auto; text-align: right; font-size: 12px; }
#hdr .right a { color: #fff; margin-left: 14px; }
#nav { background: #f4f6f8; border-bottom: 1px solid #c8d0da; }
#nav .in { max-width: 1100px; margin: 0 auto; padding: 0 20px; display: flex; flex-wrap: wrap; }
#nav a { display: block; padding: 9px 14px; color: #173b5c; text-decoration: none; font-weight: bold; font-size: 13px; border-right: 1px solid #dde3ea; }
#nav a:hover, #nav a.on { background: #fff; }
#main { max-width: 1100px; margin: 18px auto; padding: 0 20px; }
.panel { background: #fff; border: 1px solid #c8d0da; padding: 18px 22px; margin-bottom: 18px; }
h1 { font: 700 22px/28px Georgia, serif; color: #173b5c; margin: 0 0 12px; }
h2 { font: 700 16px/22px Arial; color: #173b5c; margin: 18px 0 8px; border-bottom: 1px solid #dde3ea; padding-bottom: 4px; }
.help { color: #333; margin: 0 0 10px; max-width: 860px; }
.form { display: grid; grid-template-columns: 140px 340px; gap: 10px 12px; align-items: center; margin: 16px 0; }
.form label { font-weight: bold; text-align: right; }
select, input[type=text] { font: 14px Arial; padding: 4px 6px; border: 1px solid #8a96a6; border-radius: 0; width: 100%; }
.btns { grid-column: 2; display: flex; gap: 8px; }
.btn { font: bold 13px Arial; padding: 5px 16px; border: 1px solid #173b5c; background: linear-gradient(#2a6197, #1f4e79); color: #fff; cursor: pointer; }
.btn.alt { background: linear-gradient(#fff, #dde3ea); color: #173b5c; }
.err { color: #b00020; font-weight: bold; margin: 8px 0; }
table.grid { width: 100%; border-collapse: collapse; font-size: 13px; }
table.grid th { background: #dde5ee; color: #173b5c; text-align: left; padding: 6px 8px; border: 1px solid #c3ccd7; white-space: nowrap; }
table.grid td { padding: 6px 8px; border: 1px solid #d5dce4; vertical-align: top; }
table.grid tr:nth-child(even) td { background: #f6f8fa; }
.crit { background: #f6f8fa; border: 1px solid #d5dce4; padding: 8px 12px; margin-bottom: 12px; }
.count { margin: 10px 0; color: #444; }
dl.kv { display: grid; grid-template-columns: 240px 1fr; margin: 0; border-top: 1px solid #e3e8ee; }
dl.kv dt, dl.kv dd { margin: 0; padding: 6px 8px; border-bottom: 1px solid #e3e8ee; }
dl.kv dt { font-weight: bold; background: #f6f8fa; }
.st-Active { color: #166534; font-weight: bold; }
.st-Revoked, .st-Suspended { color: #b45309; font-weight: bold; }
.disclaimer { font-size: 12px; color: #555; margin-top: 16px; }
#ftr { background: #173b5c; color: #c9dcef; font-size: 12px; }
#ftr .in { max-width: 1100px; margin: 0 auto; padding: 16px 20px; display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
#ftr a { color: #fff; }
.home-tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.tile { border: 1px solid #c8d0da; padding: 14px; background: #f9fbfd; }
.tile h3 { margin: 0 0 6px; font: bold 15px Arial; color: #173b5c; }
@media print { #nav, #ftr, .btns { display: none; } }
