/* Responsive layout: semantic table on desktop, readable cards on phones. */
@media(max-width:1100px){
.search-form{flex-wrap:wrap}.search-form .search-field{flex-basis:100%}.search-form>div:not(.search-field){flex:1}.heading h1{font-size:39px}.source-card{min-width:250px;padding:18px}
}
@media(max-width:760px){
.topbar{padding:16px;gap:12px;flex-wrap:wrap}.brand{font-size:15px}.brand small{font-size:8px;letter-spacing:1px}.private{font-size:10px;margin-left:58px;padding:4px 10px}.brand-mark{width:43px;height:43px}
main{padding:27px 16px}.heading{display:block}.heading h1{font-size:38px;line-height:1.12;letter-spacing:-1.2px}.eyebrow{font-size:9px;letter-spacing:1.7px}.intro{font-size:14px;max-width:340px}.muted{font-size:11px;overflow-wrap:anywhere}.source-card{margin-top:20px;padding:16px;gap:14px;min-width:0}.document-icon{width:35px;height:43px}
.stats{grid-template-columns:repeat(2,minmax(0,1fr));margin:22px 0}.stats>div{padding:18px}.stats>div:nth-child(3),.stats>div:nth-child(4){border-top:1px solid var(--line)}.stats>div:nth-child(3):before{display:none}.stats strong{font-size:26px}.stats span{font-size:10px}
.workspace{border-radius:13px}.search-heading{padding:20px 16px 0;display:block}.search-heading h2{font-size:18px}.search-heading>span{display:block;margin-top:3px;font-size:11px}
.search-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;padding:18px 16px 20px}.search-form>div,.search-form .search-field{min-width:0;width:100%}.search-form .search-field{grid-column:1/-1}label{font-size:11px}input,select{font-size:16px;min-height:50px;padding:10px}.search-form button{min-height:50px}.clear{justify-content:center;min-height:50px;border:1px solid var(--line);border-radius:9px;text-decoration:none;font-size:13px}.notice{padding:14px 16px;font-size:11px}
.results-heading{padding:21px 16px;flex-wrap:wrap}.results-heading h2{font-size:15px}.results-heading span{font-size:11px}.table-scroll{overflow:visible;padding:0 10px 1px;background:var(--bg)}table,tbody{display:block;width:100%}thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}tbody{padding-top:10px}tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:#fff;border:1px solid var(--line);border-radius:11px;padding:18px;margin-bottom:10px}td{display:block;border:0;padding:0;min-width:0}.receipt,.subject{grid-column:1/-1;width:auto;min-width:0}.receipt strong{font-size:12px}.receipt small{font-size:10px}.subject{font-size:13px;line-height:1.8;margin:14px 0 18px}.badge,.translation-badge{font-size:10px}.date,.range{white-space:normal;font-size:12px;padding:13px 0;border-top:1px solid var(--line)}.date{padding-right:8px}.mobile-label{display:block;color:var(--muted);font-size:9px;margin-bottom:5px;text-transform:uppercase;letter-spacing:.6px}.document-action{grid-column:1/-1;margin-top:3px}.document-action .open-link{width:100%;min-height:46px;font-size:13px;justify-content:space-between;padding:11px 16px}
.pagination{padding:18px 16px;gap:14px;flex-wrap:wrap}.pagination a{min-height:46px}.pagination div{margin-left:auto}footer{display:block;font-size:10px;line-height:1.8}footer span{display:block;margin-top:7px}
.viewer-main{padding-top:22px}.record-card,.document-card{padding:21px 17px;border-radius:12px;margin-bottom:18px}.record-title{font-size:20px;line-height:1.65;letter-spacing:-.3px}.viewer-main .eyebrow{overflow-wrap:anywhere}.record-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px;padding-top:20px;margin-top:22px}.record-meta dd{font-size:14px}.record-meta dt{font-size:10px}.document-card h2{font-size:18px}.viewer-toolbar{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.viewer-toolbar a{display:flex;align-items:center;justify-content:center;min-height:48px}.preview-help{font-size:12px}.document-preview summary{font-size:12px;padding:14px}.pdf-frame{height:65vh;height:65dvh;min-height:320px}
}
@media(max-width:360px){main{padding-inline:10px}.topbar{padding:14px 10px}.brand{font-size:14px}.heading h1{font-size:34px}.search-form{padding-inline:12px}tbody tr{padding:14px}.search-form label{font-size:10px}}
