/* Soft, restrained homepage panels, consistent with the existing interface. */
.public-site{background:linear-gradient(145deg,#e4f0ee 0%,#eef3fa 48%,#dce9ed 100%);min-height:100vh;}
.public-site .hero-grid{gap:30px;align-items:stretch;margin:38px 0;}
.public-site .hero{background:linear-gradient(145deg,#f9fdfd,#e7f3f1);border:1px solid #bdd8d7;border-radius:20px;padding:38px;box-shadow:0 8px 26px #213e5010;display:flex;flex-direction:column;justify-content:center;}
.public-site .hero h1{font-size:clamp(28px,3.1vw,43px);line-height:1.15;}
.public-site .hero .lead{background:#ffffffb8;border-radius:12px;padding:16px 18px;border:1px solid #c9dedd;}
.public-site .feature-line{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 20px;}
.public-site .feature-line span{background:white;border:1px solid #b7d4d3;border-radius:30px;padding:9px 13px;font-size:12px;box-shadow:0 3px 9px #25475209;}
.public-site .login-card{box-shadow:0 12px 28px #142d4614;border-radius:18px;}
.public-site .announcement-section{border:1px solid #c4d8dd;border-radius:18px;background:#fffffff0;padding:26px;margin-top:28px;box-shadow:0 5px 16px #1b3c4c08;}
.public-site .news-card{border-radius:12px;border:1px solid #d4e1e7;background:#f5fafa;padding:18px;margin:12px 0;}
.live-law-grid{grid-template-columns:130px minmax(130px,1fr) minmax(150px,1.2fr) minmax(160px,1.3fr) 85px auto;gap:10px;}
.live-law-grid input,.live-law-grid select{min-width:0;}
[data-live-results][aria-busy="true"]{opacity:.7;transition:opacity .1s;}
.live-status{min-height:1.2em;}.results-count{margin:8px 0 13px;font-size:13px;}
.law-type-badge{display:inline-block;padding:2px 6px;background:#e7f2f1;color:#145d60;border-radius:4px;font-weight:700;}
.ticket-status{display:inline-block;border-radius:24px;background:#e6f3ed;color:#215847;padding:4px 10px;font-size:12px;white-space:nowrap;}
.ticket-status.replied{background:#e6eef9;color:#254f82;}.ticket-status.closed{background:#eef0f2;color:#56616b;}
.ticket-message{padding:16px 20px;border:1px solid #d2dfe5;border-left:4px solid #6caaa5;border-radius:10px;background:#fbfdfd;margin:16px 0;overflow-wrap:anywhere;}
.ticket-message.private{border-left-color:#b38648;background:#fffaf1;}.ticket-message h4{margin-bottom:3px;}
.source-scroll{max-height:400px;overflow:auto;overflow-wrap:anywhere;}
.document-heading .agency-logo{max-width:60px;max-height:60px;object-fit:contain;margin-right:10px;float:left;}
.instrument-v5 .document-heading{border-bottom:2px solid #294856;padding-bottom:12px;}
.instrument-v5 .document-section-heading{letter-spacing:.015em;border-bottom:1px solid #c6d1d7;padding-bottom:5px;}
.instrument-v5 .document-footer{font-size:8pt;color:#51636b;}
@media(max-width:1150px){.live-law-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:650px){.public-site .hero{padding:22px;}.public-site .hero-grid{margin:20px 0;}.live-law-grid{grid-template-columns:1fr;}.ticket-message{padding:13px;}.public-site .feature-line{gap:6px;}.public-site .feature-line span{font-size:11px;}}
@media print{.instrument-v5{box-shadow:none;}.instrument-v5 .document-heading{border-bottom:1.3pt solid #233c4c;}.agency-logo{max-width:.6in;max-height:.6in;}.document-footer{break-inside:avoid;}}
