/* Compact archive layouts; existing article content remains available on demand. */
.paper-page .archive-page{padding-top:30px;padding-bottom:56px}
.archive-header{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin:0 0 28px}
.archive-header .eyebrow{font-size:10px;font-weight:700;letter-spacing:.14em;margin:0 0 12px;color:var(--blue)}
.paper-page .archive-header h1{font-size:42px;line-height:1.08;margin:0 0 12px;letter-spacing:-.03em}
.archive-intro{font-size:15px;line-height:1.7;color:var(--muted);margin:0;max-width:720px}
.archive-filter{flex:0 0 180px;display:flex;flex-direction:column;gap:6px}
.archive-filter label{font-size:11px;font-weight:650;color:var(--muted)}
.archive-filter select{width:100%;height:43px;padding:8px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;cursor:pointer}
.archive-filter select:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.archive-page .archive-card{min-width:0;display:flex;flex-direction:column;background:var(--surface);border:1px solid color-mix(in srgb,var(--blue) 17%,var(--line));border-radius:18px;box-shadow:0 4px 18px rgba(0,75,125,.045);overflow:hidden;scroll-margin-top:110px;transition:border-color .2s,box-shadow .2s}
.archive-page .archive-card:hover{border-color:color-mix(in srgb,var(--blue) 50%,var(--line));box-shadow:0 8px 24px rgba(0,75,125,.09)}
.archive-card-body{padding:22px;display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0}
.archive-meta{font-size:10px;font-weight:700;letter-spacing:.07em;line-height:1.5;color:var(--blue);margin:0 0 13px;text-transform:uppercase}
.paper-page .archive-card h2{font-size:23px;line-height:1.15;letter-spacing:-.02em;margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.archive-excerpt{font-size:13px;line-height:1.75;color:var(--muted);margin:0 0 20px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.news-compact-card{min-height:265px}
.paper-page .archive-action{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;margin-top:auto;border:1px solid color-mix(in srgb,var(--blue) 33%,var(--line));border-radius:9px;background:transparent;color:var(--blue);padding:8px 13px;font-size:12px;font-weight:650;line-height:1.3;text-decoration:none;cursor:pointer}
.archive-action:hover{background:var(--soft);border-color:var(--blue)}
.archive-action:focus-visible,.blog-thumbnail:focus-visible,.poster-preview button:focus-visible{outline:2px solid var(--blue);outline-offset:-4px}
.blog-thumbnail{display:block;border:0;padding:0;margin:0;width:100%;height:178px;background:var(--soft);overflow:hidden;cursor:pointer;color:var(--blue)}
.blog-thumbnail img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.blog-compact-card .archive-card-body{padding:20px}
.paper-page .blog-compact-card h2{font-size:23px}
.blog-compact-card .archive-excerpt{-webkit-line-clamp:3}
.story-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:var(--soft);color:var(--blue)}
.story-placeholder>span{font-size:10px;letter-spacing:.14em;font-weight:700}
.media-compact-card{min-height:300px;border-top:3px solid color-mix(in srgb,var(--blue) 50%,var(--line))!important}
.media-compact-card .archive-excerpt{-webkit-line-clamp:3;margin-bottom:18px}
.media-date{font-size:11px;color:var(--muted);margin:0 0 14px}
.media-compact-card .archive-action{margin-top:auto}
.poster-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.poster-preview{height:252px;padding:14px;background:var(--soft);border-bottom:1px solid var(--line);display:grid;place-items:center}
.poster-preview button{width:100%;height:100%;min-height:0;max-height:100%;overflow:hidden;display:block;border:0;background:transparent;padding:0;cursor:zoom-in}
.poster-preview img{display:block;width:100%;height:224px;max-height:100%;object-fit:contain;filter:drop-shadow(0 3px 5px rgba(10,30,55,.13))}
.poster-compact-card .archive-card-body{padding:18px}
.paper-page .poster-compact-card h2{font-size:18px;line-height:1.25;margin-bottom:17px}
.poster-compact-card .archive-meta{font-size:9px;margin-bottom:10px}
.poster-unavailable{display:grid;place-items:center;width:100%;height:100%;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:12px}
.poster-file-note{font-size:11px;line-height:1.6;color:var(--muted);margin:0}
.archive-pagination{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);margin-top:30px;padding-top:20px}
.archive-pagination>p{font-size:12px;color:var(--muted);margin:0}
.archive-pagination>div{display:flex;align-items:center;gap:14px}
.archive-pagination button{font-size:12px;font-weight:600;color:var(--blue);padding:8px 13px;border:1px solid var(--line);border-radius:9px;background:var(--surface);cursor:pointer}
.archive-pagination button:disabled{opacity:.35;cursor:default}
#archive-page-label{font-size:11px;color:var(--muted);white-space:nowrap}
.archive-page [data-entry][hidden]{display:none!important}
.story-dialog{padding:0;width:min(890px,calc(100% - 40px));max-width:890px;max-height:86vh;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--ink);box-shadow:0 20px 90px rgba(0,15,35,.3)}
.story-dialog::backdrop{background:rgba(5,20,35,.58);backdrop-filter:blur(3px)}
.story-dialog-toolbar{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 26px;border-bottom:1px solid var(--line);background:var(--surface)}
.story-dialog-toolbar>span{font-size:10px;letter-spacing:.12em;font-weight:700;color:var(--blue)}
.story-dialog-toolbar button{border:1px solid var(--line);border-radius:9px;padding:7px 12px;background:var(--surface);color:var(--ink);font-size:12px;cursor:pointer}
.dialog-copy{padding:27px 30px 30px}
.paper-page .dialog-copy h2{font-size:31px;line-height:1.15;margin:0 0 22px}
.dialog-copy p,.dialog-copy li{font-size:14px;line-height:1.8;color:var(--muted)}
.dialog-copy li{margin-bottom:13px}
.dialog-copy a{color:var(--blue)}
.dialog-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0 0}
.dialog-gallery img{display:block;width:100%;height:240px;max-width:100%;object-fit:contain;background:var(--soft);border-radius:12px}
.dialog-gallery img:only-child{grid-column:1/-1;height:360px}
.poster-full-image{display:block;max-width:100%;width:auto;height:auto;max-height:65vh;margin:0 auto 20px;object-fit:contain}
body.archive-dialog-open{overflow:hidden}
@media(max-width:1050px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.poster-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){
 .paper-page .archive-page{padding-top:23px}
 .archive-header{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:22px}
 .paper-page .archive-header h1{font-size:36px}
 .archive-filter{flex:auto;width:100%;max-width:260px}
 .archive-grid{grid-template-columns:minmax(0,1fr);gap:18px}
 .poster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .poster-preview{height:205px;padding:10px}
 .poster-preview img{height:185px}
 .poster-compact-card .archive-card-body{padding:14px}
 .paper-page .poster-compact-card h2{font-size:16px}
 .archive-pagination{align-items:flex-start;flex-direction:column;gap:15px}
 .story-dialog{width:calc(100% - 24px);max-height:89vh;border-radius:17px}
 .story-dialog-toolbar{padding:13px 18px}
 .dialog-copy{padding:22px 20px}
 .paper-page .dialog-copy h2{font-size:27px}
 .dialog-gallery{grid-template-columns:minmax(0,1fr)}
 .dialog-gallery img{height:260px}
 .dialog-gallery img:only-child{height:auto;max-height:400px}
}
@media(max-width:380px){.poster-grid{grid-template-columns:minmax(0,1fr)}.poster-preview{height:280px}}
