/* Content collections. Keep the shared silver/pink theme in neocities-theme.css. */
.collection-heading { margin: 2px 0 12px; font: bold 25px Tahoma,sans-serif; color:#594662; }
.page-intro,.collection-body,.print-controls { font:12px/1.75 Tahoma,sans-serif; }
.page-intro { margin:0 0 18px; }
.collection-section { margin:18px 0; }
.collection-body { padding:14px; }
.collection-body > :first-child { margin-top:0; }
.collection-body > :last-child { margin-bottom:0; }
.collection-body p { margin:10px 0; }
.album-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 14px; }
.album-photo { margin:0; padding:7px; border:1px solid #c1b5c8; background:#fff; box-shadow:0 2px 3px #69557319; }
.photo-open { display:block; width:100%; padding:0; border:0; background:#e9e1ee; cursor:zoom-in; }
.photo-open img { display:block; width:100%; height:205px; object-fit:cover; }
.album-photo figcaption { padding:10px 3px 4px; font:11px/1.5 Tahoma,sans-serif; }
.album-photo small,.graphics-grid small { display:block; margin-top:5px; font-size:10px; font-weight:normal; color:#796a80; }
.photo-viewer { text-align:center; }
.photo-viewer img { display:block; max-width:100%; width:auto; max-height:65vh; margin:0 auto; object-fit:contain; }
.photo-viewer p { font:12px/1.6 Tahoma,sans-serif; }
.viewer-controls { display:flex; gap:16px; align-items:center; justify-content:center; margin-top:14px; }
body:has(.photo-viewer) #modal { width:min(850px,94vw); }
.graphics-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px 9px; }
.graphics-grid figure { margin:0; min-width:0; text-align:center; }
.graphics-grid a { display:block; font:11px/1.5 Tahoma,sans-serif; text-decoration:none; }
.graphic-display { display:flex; min-height:105px; padding:8px; justify-content:center; align-items:center; border:1px solid #e2d9e7; background:linear-gradient(#fff,#f2edf5); }
.graphic-display img { max-width:100%; max-height:115px; object-fit:contain; image-rendering:pixelated; }
.graphics-grid figcaption { padding:7px 0; overflow-wrap:anywhere; }
.file-preview { padding:20px; background:repeating-conic-gradient(#eee8f1 0% 25%,#fff 0% 50%) 0 0/22px 22px; border:1px solid #c9bdcf; }
.file-preview img { display:block; width:100%; height:auto; max-height:250px; object-fit:contain; }
.collection-body .gloss,.control-row .gloss { display:inline-block; font-size:11px; padding:8px 12px; }
.control-row { display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin:12px 0; font:11px Tahoma,sans-serif; }
.control-row [aria-pressed="true"] { background:linear-gradient(#a47eaf,#725681); color:#fff; text-shadow:none; }
.gallery-controls { margin:14px; }
.gallery-original[data-background="pink"] > a { background:linear-gradient(#ffe9f3,#d8a9c0); }
.gallery-original[data-background="dark"] > a { background:linear-gradient(#5e5666,#2f2836); }
.site-directory { margin:0; }
.site-directory dt { font-weight:bold; margin-top:17px; }
.site-directory dt:first-child { margin-top:0; }
.site-directory dd { margin:3px 0 0; color:#77677d; }
.photo-strip { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:12px; }
.photo-strip a { font:11px/1.5 Tahoma,sans-serif; text-decoration:none; }
.photo-strip img { width:100%; height:145px; object-fit:cover; border:1px solid #c8baca; display:block; margin-bottom:7px; }
.section-tail { padding:0 12px 12px; font:11px/1.6 Tahoma,sans-serif; display:flex; flex-wrap:wrap; gap:14px; }
.home-columns { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.home-columns .collection-section { margin-top:0; }
.home-paper { position:relative; display:flex; flex-direction:column; padding:15px; height:150px; background:#faf7fb; border:1px solid #cdbed3; transform:rotate(-2deg); font:12px/2 Georgia,serif; overflow:hidden; text-decoration:none; }
.home-paper img { position:absolute; bottom:7px; right:8px; width:95px; }
.home-graphics { min-height:150px; display:flex; flex-wrap:wrap; gap:15px; align-items:center; justify-content:center; background:linear-gradient(#fefbff,#eee5f3); }
.home-graphics img { max-width:75px; max-height:95px; object-fit:contain; }
.home-index { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; }
.home-index h3 { font:bold 12px Tahoma,sans-serif; margin:0 0 8px; }
.home-index a { display:block; margin:6px 0; font-size:11px; }
.paper-sample { display:flex; position:relative; flex-direction:column; height:210px; padding:20px; background:repeating-linear-gradient(#fffcff 0,#fffcff 25px,#e0d1e6 26px); border:1px solid #cebdd4; font:13px/2.5 Georgia,serif; text-decoration:none; }
.paper-sample img { position:absolute; bottom:18px; right:20px; width:120px; }
.paper-sample span:last-child { margin-top:auto; font:10px Tahoma,sans-serif; }
.mini-bookmarks { display:flex; gap:14px; padding:10px; justify-content:center; }
.mini-bookmarks span { display:flex; flex-direction:column; justify-content:center; gap:18px; width:85px; height:170px; text-align:center; border:1px solid #bbaac5; background:linear-gradient(#fefbff,#ddd1e5); font:11px Georgia,serif; padding:8px; }
.mini-bookmarks img { width:100%; height:auto; }
.shop-faq details { padding:12px 0; border-bottom:1px dotted #cabbcf; }
.shop-faq summary { cursor:pointer; font-weight:bold; }
.shop-faq details:last-child { border-bottom:0; }
.print-area { background:#e5dce9; border:1px solid #c0b2c9; padding:16px; }
.letter-sheet,.cut-sheet { color:#382e3c; background:white; padding:24px; min-height:670px; font:12px/1.7 Georgia,serif; box-shadow:0 2px 6px #79688430; }
.letter-top { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; font-size:10px; border-bottom:1px solid #baa6c4; padding-bottom:12px; }
.writing-lines div { height:25px; border-bottom:1px solid #dcd0e1; }
.letter-sheet:not(.lined) .writing-lines div { border-color:transparent; }
.letter-bottom { display:flex; align-items:flex-end; justify-content:space-between; margin-top:20px; font:10px Tahoma,sans-serif; }
.letter-bottom img { width:155px; max-width:50%; }
.bookmark-sheet { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.rat-bookmark { min-height:365px; border:1px dashed #837087; padding:12px 5px; display:flex; flex-direction:column; justify-content:space-around; align-items:center; text-align:center; background:linear-gradient(#fff,#e4d7eb); }
.rat-bookmark > span { font:bold 17px/1.4 Georgia,serif; overflow-wrap:anywhere; }
.rat-bookmark img { width:100%; }
.rat-bookmark small { writing-mode:vertical-rl; font:10px Tahoma,sans-serif; letter-spacing:1px; }
.bookmark-1,.bookmark-3 { background:linear-gradient(#fff,#f0d6e3); }
.tag-sheet { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 15px; }
.gift-tag { position:relative; border:1px dashed #837087; padding:22px 12px 12px; display:flex; flex-direction:column; font-size:11px; gap:8px; }
.gift-tag i { position:absolute; width:7px; height:7px; border:1px solid #837087; border-radius:50%; top:8px; left:calc(50% - 4px); }
.gift-tag img { width:100px; max-width:100%; margin:0 auto; }
.gift-tag small { font:8px Tahoma,sans-serif; text-align:center; margin-top:5px; }
.cut-sheet h2 { font:18px Georgia,serif; margin:0 0 24px; }
.cut-note { font:10px Tahoma,sans-serif; margin-top:25px; }
[hidden] { display:none !important; }
@media(max-width:680px) {
.main-nav { flex-wrap:wrap; }
.main-nav a { min-width:30%; flex:1 0 30%; box-sizing:border-box; }
.photo-open img { height:160px; }
.graphics-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.photo-strip { gap:7px; padding:8px; }
.photo-strip img { height:100px; }
.home-columns { grid-template-columns:1fr; gap:0; }
.home-index { grid-template-columns:1fr 1fr; }
.print-area { padding:7px; }
.letter-sheet,.cut-sheet { padding:14px; }
.bookmark-sheet { gap:5px; }
.rat-bookmark > span { font-size:12px; }
.tag-sheet { gap:10px; }
.gift-tag { padding:22px 6px 12px; font-size:9px; }
}
@media print {
@page { size:auto; margin:12mm; }
html,body { min-height:0!important; height:auto!important; }
body,body .site { margin:0!important; padding:0!important; width:100%!important; max-width:none!important; background:#fff!important; box-shadow:none!important; border:0!important; overflow:visible!important; }
.topline,header,.main-nav,.left-rail,.right-rail,footer,.print-controls,.collection-heading,.skip,#toast,dialog,.cloud { display:none!important; }
body .layout { display:block!important; margin:0!important; padding:0!important; }
.print-area { border:0; padding:0; background:none; }
.letter-sheet,.cut-sheet { min-height:0; padding:0; box-shadow:none; break-inside:avoid; }
.letter-top { padding-bottom:6mm; }
.writing-lines div { height:8mm; }
.letter-bottom { margin-top:8mm; }
.letter-bottom img { width:48mm; }
.bookmark-sheet { gap:5mm; }
.rat-bookmark { min-height:175mm; padding:6mm 2mm; }
.rat-bookmark > span { font-size:17px; }
.rat-bookmark small { font-size:10px; }
.tag-sheet { gap:8mm; }
.gift-tag { min-height:48mm; padding:8mm 5mm 4mm; font-size:12px; }
.gift-tag img { width:34mm; }
}
