/* Public library and student/teacher borrowing registers. */
.public-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.65fr);align-items:center;gap:32px;padding:36px 40px;border-radius:18px;background:linear-gradient(118deg,#073b83 0%,#0752b8 75%,#007d9d 100%);color:#fff;margin-bottom:24px;overflow:hidden}
.public-hero .eyebrow{color:#a3f2ff;font-size:13px;letter-spacing:1px;font-weight:600}
.public-hero h1{color:#fff;font-size:40px;line-height:1.25;margin:16px 0}
.public-hero p{max-width:640px;font-size:17px;line-height:1.8;color:#f0f7ff}
.public-hero img{justify-self:center;width:100%;max-width:360px}
.public-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 20px}
.btn-accent{background:#00c4dc;border:1px solid #00c4dc;color:#003449;font-weight:700}
.btn-accent:hover{background:#55ddea;border-color:#55ddea;color:#003449}
.btn-hero-outline{background:transparent;border:1px solid #a1cfff;color:#fff}
.btn-hero-outline:hover{background:rgba(255,255,255,.12);color:#fff}
.public-hero-note{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:#e0f8ff}
.public-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:28px}
.public-stats .stat-card{min-height:145px}
.public-stats .stat-value{display:block;line-height:1.3;margin-top:12px}
.register-group-tabs{padding:16px 20px 0;margin:0;border-bottom:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:4px}
.register-group-tabs .tab{white-space:normal;display:flex;align-items:center;gap:8px;padding:12px 16px;font-size:15px}
.register-table{min-width:1060px}
.register-table td{vertical-align:middle}
.register-table th:first-child,.register-table td:first-child{width:64px;text-align:center}
.register-table td:nth-child(3){min-width:210px}
.register-table td:nth-child(4),.register-table td:nth-child(5){white-space:nowrap;min-width:122px}
.register-table .row-actions{flex-wrap:nowrap}
.register-subline{display:block;font-size:14px;line-height:1.6;color:var(--color-muted);margin-top:4px}
.register-codes{font-size:14px;line-height:1.8;color:var(--color-primary-dark);white-space:nowrap}
.public-categories{margin-top:32px}
.public-categories .section-heading{margin-bottom:18px;gap:18px}
.public-categories .section-heading p{margin-bottom:0}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.category-card{display:flex;align-items:center;gap:14px;padding:22px;text-align:left;border:1px solid var(--color-border);border-radius:14px;background:#fff;color:var(--color-foreground);min-width:0;transition:transform 140ms ease,border-color 140ms ease}
.category-card:hover{transform:translateY(-2px);border-color:var(--color-primary)}
.category-card>span:nth-child(2){min-width:0;flex:1}
.category-card strong{display:block;overflow-wrap:anywhere;font-size:17px;line-height:1.5}
.category-card small{display:block;color:var(--color-muted);margin-top:4px;font-size:14px}
.category-card-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:52px;height:52px;border-radius:12px;background:var(--color-blue-tint);color:var(--color-primary)}
.category-tone-1 .category-card-icon{background:var(--color-cyan-tint);color:var(--color-accent-ink)}
.category-tone-2 .category-card-icon{background:var(--color-green-tint);color:var(--color-green)}
.category-tone-3 .category-card-icon{background:var(--color-purple-tint);color:var(--color-purple)}
.request-form-card{max-width:1000px}
.request-form-card .card-body{padding:28px}
.request-form-card .form-grid{gap:20px}
.request-form-card .picker-results{max-height:310px;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;margin-top:12px}
.request-form-card .picker-item{width:100%;min-height:72px;padding:14px 16px;gap:16px;align-items:center}
.request-form-card .picker-item>span{display:flex;flex:1;flex-direction:column;align-items:stretch;gap:4px;min-width:0}
.request-form-card .picker-item strong{font-size:16px;font-weight:600;line-height:1.6;color:var(--color-primary-dark);white-space:normal;overflow-wrap:break-word}
.request-form-card .picker-item small{font-size:14px;line-height:1.6;white-space:normal;overflow-wrap:break-word}
.request-form-card .picker-item:disabled{opacity:.8;background:var(--color-blue-tint)}
.request-form-card .picker-item:focus-visible{outline-offset:-3px}
.request-book-selection{display:flex;gap:10px;flex-wrap:wrap}
.request-book-chip{display:inline-flex;align-items:center;gap:8px;background:var(--color-blue-tint);border:1px solid var(--color-border);padding:6px 8px 6px 12px;border-radius:10px;max-width:100%;overflow-wrap:anywhere;font-size:15px}
.request-book-chip .icon-button{flex-shrink:0}
.request-form-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin-top:24px}
.request-success{text-align:center;max-width:650px;margin:24px auto;padding:12px}
.request-success>svg{color:var(--color-green);margin-bottom:18px}
.request-success .btn{margin:8px 4px}
.request-reference{display:block;font-size:23px;color:var(--color-primary);background:var(--color-blue-tint);padding:16px;border-radius:10px;margin:16px 0;overflow-wrap:anywhere}
.request-review-summary{background:var(--color-blue-tint);padding:18px;border-radius:12px;margin-bottom:22px}
.request-review-summary p:last-child{margin-bottom:0}
.existing-reader-picker{padding:12px 16px;background:var(--color-subtle);border:1px solid var(--color-border);border-radius:10px}
.existing-reader-picker summary{cursor:pointer;font-weight:600;color:var(--color-primary)}
.existing-reader-picker[open] summary{margin-bottom:14px}
@media(min-width:1001px) and (max-width:1350px){.public-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-hero{padding:30px;gap:20px}.public-hero h1{font-size:36px}}
@media(max-width:1000px){.public-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.public-home-link{display:none}}
@media(max-width:760px){
 .public-hero{grid-template-columns:1fr;padding:26px 22px;gap:0}.public-hero h1{font-size:32px}.public-hero img{display:none}.public-hero .eyebrow{font-size:12px;line-height:1.8}.public-hero p{font-size:16px}
 .public-hero-actions{margin:20px 0 16px}.public-hero-actions .btn{width:100%;justify-content:center}.public-hero-note{font-size:13px;line-height:1.8}
 .public-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.public-stats .stat-card{min-height:145px}.public-stats .stat-value{font-size:34px}
 .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.category-card{padding:16px;flex-wrap:wrap;gap:10px}.category-card>svg{display:none}.category-card strong{font-size:16px}.category-card-icon{width:40px;height:40px}
 .register-group-tabs{padding:12px 10px 0}.register-group-tabs .tab{font-size:14px;padding:10px;flex:1;justify-content:center}.register-group-tabs .tab:first-child{flex:0 0 auto}.register-group-tabs .tab svg{display:none}
 .public-categories .section-heading{align-items:flex-start;flex-wrap:wrap}.request-form-card .card-body{padding:22px 18px}.request-form-actions .btn{width:100%;justify-content:center}.request-success{padding:0}.request-reference{font-size:19px}
 .topbar-breadcrumb{min-width:0;flex:1}.topbar-breadcrumb strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-actions{flex-shrink:0}
}
@media(max-width:380px){.category-grid{grid-template-columns:1fr}.public-hero h1{font-size:29px}.register-group-tabs .tab:first-child{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.category-card{transition:none}.category-card:hover{transform:none}}
@media print{.public-hero,.public-hero-actions,.request-form-actions{display:none}.register-table{min-width:0}.register-codes,.register-subline{font-size:10px}.register-group-tabs{padding:0}}
