body{font-family:'Lato',Arial,Helvetica,sans-serif;font-size:16px;color:#333;background:#f5f5f5;margin:0}
header{position:sticky;top:0;z-index:1000}
.top-bar{background:#fff;padding:10px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ccc}
.top-bar .logo{height:50px}
.back-to-search-btn{background:#fff;color:#575e67;font-size:14px;font-weight:bold;padding:5px 10px;text-decoration:none;border:none;border-radius:4px}
.back-to-search-btn:hover{background:#f5f5f5}
.blue-banner{background:#3E679F;color:#fff;padding:20px;text-align:center}
.welcome-message h1{margin:0;font-size:40px;font-weight:700;line-height:1.5}
.container{max-width:1200px;margin:0 auto;padding:20px}
.section{background:#fff;padding:20px;margin-bottom:20px;border-radius:5px;box-shadow:0 2px 5px rgba(0,0,0,.1)}
footer{background:#3E679F;color:#fff;text-align:center;padding:10px;font-size:12px}
.court-block{margin-bottom:40px}
.offense-item{margin-bottom:20px}
.offense-header{background:#f5f5f5;color:#333;padding:15px;border-radius:4px;font-size:28px;font-weight:bold;text-align:center}
.disclaimer{font-size:13px;color:#666;font-style:italic;margin:12px 0;padding:10px;background:#f9f9f9;border-left:3px solid #3E679F;border-radius:0 4px 4px 0}
.no-results{padding:20px;color:#555;font-style:italic}
.error-message{padding:20px;color:#c62828;background:#ffebee;border-left:4px solid #c62828;border-radius:0 4px 4px 0;margin-bottom:20px}
.search-summary{margin-bottom:20px;font-size:14px;color:#555}
.search-summary strong{color:#333}

.court-info{display:flex;justify-content:space-between;align-items:flex-start;background:#f1f5f9;padding:16px 20px;border-radius:5px;border:1px solid #ddd;margin-bottom:20px;flex-wrap:wrap;gap:20px}
.court-left h2{color:#3E679F;font-size:20px;margin:0 0 6px 0;font-weight:bold}
.court-right{text-align:right;font-size:16px;line-height:1.5}

.aligned-table{width:100%;border-collapse:collapse;background:#fff;border-radius:4px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.aligned-table th,.aligned-table td{padding:12px 15px;font-size:14px;border-bottom:1px solid #eee}
.aligned-table th{background:#3E679F;color:#fff;font-weight:bold;text-align:left}
.aligned-table tr:nth-child(even){background:#f9f9f9}
.col-docket{width:12%}.col-date{width:12%}.col-description{width:48%;white-space:normal}
.col-status{width:13%;text-align:center}.col-amount,.col-clearance{width:15%;text-align:right}
.status-open{color:#d32f2f;font-weight:bold}.status-closed{color:#2e7d32;font-weight:bold}.amount{color:#d32f2f;font-weight:bold}

@media (max-width:768px){
  .welcome-message h1{font-size:20px}
  .container{padding:10px}
  .court-info{display:block;text-align:center;padding:20px}
  .court-left h2{font-size:22px;margin-bottom:10px}
  .court-right{text-align:center;margin-top:12px}
  .aligned-table,.aligned-table thead,.aligned-table tbody,
  .aligned-table th,.aligned-table td,.aligned-table tr{display:block}
  .aligned-table thead tr{display:none}
  .aligned-table tr{margin-bottom:15px;border:1px solid #ccc;border-radius:4px;padding:10px}
  .aligned-table td{border:none;position:relative;padding-left:50%;text-align:right;font-size:13px;white-space:normal}
  .aligned-table td:before{content:attr(data-label);position:absolute;left:15px;width:45%;font-weight:bold;text-align:left;color:#3E679F}
}
