/* Public web/app layout refinements and local gazette reader. */
.invite-button svg,.mobile-account{display:none}
.account-control{position:relative}
.account-options,.post-options{position:absolute;z-index:3;background:white;box-shadow:0 0 16px #d9cec0;border:1px solid #e5e9ec;border-radius:4px;min-width:132px;right:0;top:100%;padding:4px}
.account-options button,.post-options button,.post-options span{display:block;width:100%;text-align:left;border:0;background:none;color:var(--blue);padding:7px 10px;white-space:nowrap}
.account-options button:hover,.post-options button:hover{background:var(--pale)}
.post:has(.post-options){overflow:visible}
.post-header{position:relative}
.post-options{top:49px;right:12px}
.post-photo-area{position:relative}
.post-photo-button{display:block;width:100%;border:0;padding:0;background:none;text-align:left;cursor:zoom-in}
.full-page-badge{position:absolute;top:10px;right:35px;background:#0009;color:white;border-radius:30px;padding:4px 13px;font-size:13px;pointer-events:none}
.wall-info{position:relative;padding-inline:36px}
.wall-info button{position:absolute;right:10px}
.gazette-archive{max-width:610px;margin:auto;text-align:center}
.gazette-archive p{margin:12px 0;color:var(--blue)}
.archive-icon svg{width:55px;height:55px;stroke-width:1;stroke:var(--blue)}
.edition-years{display:flex;gap:12px;max-width:490px;overflow:auto;margin:18px auto;justify-content:safe center}
.edition-years button{min-height:30px;min-width:70px;flex:none}
.edition-years button.selected{border-color:var(--cyan);color:var(--blue);background:var(--pale)}
.edition-list{max-width:490px;margin:auto;border-top:1px solid #e6edf0}
.edition-row{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;padding:13px 6px;border:0;border-bottom:1px solid #e6edf0;background:white;color:var(--blue);text-decoration:none;text-align:left}
.edition-row:hover{background:var(--pale)}
.edition-row small,.archive-demo small{color:#617782;font-size:12px;margin-left:8px}
.edition-arrow{font-size:23px;line-height:1;color:#36849e}
.archive-demo{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:32px 0}
.edition-toolbar,.edition-pages{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin:14px auto;color:var(--blue)}
.edition-toolbar select{border:1px solid var(--line);border-radius:16px;padding:4px 8px;background:white;color:inherit}
.edition-pages>span{min-width:52px;text-align:center;font-variant-numeric:tabular-nums}
.edition-viewer{background:#e9e1d4;padding:20px 12px;margin:18px auto;max-width:710px}
.gazette.edition-sheet{width:100%;max-width:620px;aspect-ratio:210/297;margin:0 auto;padding:5%;box-shadow:0 2px 10px #342b2721;color:var(--blue);display:flex;flex-direction:column;background:white}
.edition-sample-label{align-self:flex-start;background:#aab6c1;color:white;font-size:11px;padding:2px 9px;margin-bottom:4%}
.edition-mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3%}
.edition-mosaic img,.edition-mosaic>div{width:100%;aspect-ratio:1;object-fit:cover;min-width:0}
.cover-number{background:#913f36;color:white;display:grid;place-content:center;padding:6px;line-height:1.3;font-size:clamp(10px,2.4vw,17px)}
.cover-blank{background:#f4eee3}
.edition-brand{margin:auto 0;padding:3% 0 4%;text-align:center}
.edition-brand>span{display:block;text-transform:uppercase;letter-spacing:.25em;font-size:clamp(12px,2vw,20px)}
.edition-brand img{display:block;width:96%;margin:3% auto}
.edition-brand h2{font-size:clamp(16px,3vw,24px);font-weight:400;letter-spacing:.08em;text-align:right;margin:0}
.edition-story-stack{display:flex;flex-direction:column;gap:11px;flex:1}
.edition-story{flex:1;min-height:0;border:1px solid #a6c3d2;display:flex;align-items:stretch;overflow-wrap:anywhere}
.edition-story.with-photo{display:grid;grid-template-columns:52% 48%}
.edition-story.with-photo>img{display:block;width:100%;height:100%;min-height:0;max-height:410px;object-fit:cover}
.edition-story.full-story{display:flex;flex-direction:column}
.edition-story.full-story>img{max-height:555px}
.edition-story-body{width:100%;display:flex;flex-direction:column;align-items:center;text-align:center;padding:8% 6%;line-height:1.55}
.edition-story-body time{font-size:clamp(9px,1.8vw,12px)}
.edition-story-body p{color:#242424;margin:auto 0;padding:8% 0 0;white-space:pre-wrap;font-size:clamp(11px,2.3vw,16px)}
.edition-interior footer{text-align:center;margin:12px 0 -13px;font-size:12px}
.edition-interior footer img{width:47px;vertical-align:middle;margin-right:5px}
@media(max-width:960px){
  .top-actions .invite-button{width:26px;height:26px;min-height:26px;padding:4px;display:grid;place-items:center}
  .invite-button span{display:none}
  .invite-button svg{display:block;width:18px;height:18px}
  .top-actions .account-control,.sidebar>.family-cover,.sidebar>.recipient{display:none}
  .mobile-account{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 18px 20px;gap:6px}
  .mobile-account h2{font-size:16px;font-weight:600;margin:3px 0}
  .mobile-account button{background:none;border:0;color:white;text-decoration:underline;font-size:13px}
  .mobile-account small{color:#b9dae5}
  .full-page-badge{right:10px}
}
@media(max-width:480px){
  .edition-viewer{padding:9px 6px}
  .edition-story-body .avatar{width:26px;height:26px;font-size:13px}
  .edition-story-body strong{font-size:11px}
  .edition-interior footer{margin-bottom:-8px}
}
@media print{
  @page{size:A4;margin:0}
  .edition-toolbar,.edition-pages,.toast{display:none!important}
  .edition-viewer{padding:0;margin:0;max-width:none;background:white}
  .edition-viewer .edition-sheet[hidden],.edition-viewer .edition-sheet{display:flex!important;width:210mm;min-height:297mm;max-width:none;box-shadow:none;margin:0;padding:12mm;break-after:page;print-color-adjust:exact}
  .edition-viewer .edition-sheet:last-child{break-after:auto}
}
