/* Summerboard styles — shared by the owner board (board.js) and the public /s/<slug> page. */
#board .board-wrap{width:min(1080px,100%);margin:0 auto}
#board .board-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}
#board .board-title{font-family:Fraunces,Georgia,serif;font-size:clamp(34px,5vw,56px);line-height:.95;letter-spacing:-.05em;font-weight:560;margin:10px 0 0;color:var(--ink-strong,#18120d)}
#board .board-title span{color:var(--hot,#ff4d8d);font-style:italic}
#board .board-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#board .board-counter{font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--soft,#6f6255);background:rgba(255,255,255,.6);border:1px solid rgba(23,21,18,.08);border-radius:999px;padding:8px 12px}

/* seal stamp */
#board .seal-stamp{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font-family:Fraunces,Georgia,serif;font-size:15px;letter-spacing:.02em;color:#fff;background:linear-gradient(135deg,var(--deep,#241f1a),color-mix(in srgb,var(--deep,#241f1a) 70%,var(--hot,#ff4d8d)));border-radius:999px;padding:8px 16px;box-shadow:0 10px 24px rgba(72,45,26,.18);transform:rotate(-1.5deg)}
#board .seal-stamp:before{content:"✦";color:var(--sun,#ffc233)}

/* tabs */
#board .view-tabs{display:inline-flex;gap:4px;background:rgba(255,255,255,.5);border:1px solid rgba(23,21,18,.08);border-radius:999px;padding:4px;margin-bottom:18px}
#board .view-tab{appearance:none;border:0;background:transparent;color:var(--soft,#6f6255);font-weight:800;font-size:13px;border-radius:999px;padding:9px 16px;cursor:pointer}
#board .view-tab.active{background:var(--ink,#18120d);color:#fff}

/* board-level toolbar (owner only) */
#board .board-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
#board .share-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:rgba(255,255,255,.6);border:1px solid rgba(23,21,18,.08);border-radius:16px;padding:10px 12px;margin-bottom:18px}
#board .share-row input{flex:1;min-width:200px;border:1px solid rgba(23,21,18,.12);border-radius:12px;padding:9px 11px;font-size:13px;background:#fff;color:var(--ink,#2c241c)}
#board .share-row .muted{color:var(--soft,#6f6255);font-size:13px}

/* chapters */
#board .chapter{background:rgba(255,250,242,.72);border:1px solid rgba(255,255,255,.88);border-radius:24px;box-shadow:var(--softshadow,0 12px 34px rgba(72,45,26,.09));padding:20px;margin-bottom:18px}
#board .chapter-head{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}
#board .chapter-head b{font-family:Fraunces,Georgia,serif;font-size:24px;letter-spacing:-.03em;color:var(--ink-strong,#18120d)}
#board .chapter-head span{font-size:13px;color:var(--soft,#6f6255)}
#board .chapter-head em{margin-left:auto;font-style:normal;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--faint,#b3a595)}
#board .frame-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
#board .frame{border:1px solid rgba(23,21,18,.08);border-radius:18px;overflow:hidden;background:#fffdf8;display:flex;flex-direction:column;margin:0}
#board .frame-img{aspect-ratio:4/3;background:#f0e8db;overflow:hidden}
#board .frame-img img{width:100%;height:100%;object-fit:cover;display:block}
#board .frame-cap{border:0;border-top:1px solid rgba(23,21,18,.06);outline:0;padding:9px 11px;font-size:13px;background:transparent;color:var(--ink,#2c241c)}
#board .frame-cap:focus{background:#fff}
#board .frame-cap-ro{padding:9px 11px;font-size:13px;color:var(--ink,#2c241c);border-top:1px solid rgba(23,21,18,.06)}
#board .frame-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 11px;border-top:1px solid rgba(23,21,18,.06)}
#board .map-toggle{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--soft,#6f6255);cursor:pointer}
#board .frame-del{border:0;background:transparent;color:#c0392b;font-size:11px;font-weight:800;cursor:pointer;padding:2px 4px;border-radius:8px}
#board .frame-del:hover{background:rgba(192,57,43,.1)}
#board .frame-geo,#board .frame-date{font-size:10px;color:var(--faint,#b3a595);padding:6px 11px 8px;font-weight:700}
#board .slot{appearance:none;cursor:pointer;border:1.5px dashed rgba(23,21,18,.18);background:rgba(255,255,255,.4);border-radius:18px;aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--faint,#b3a595);font-size:13px;font-weight:800}
#board .slot:hover{border-color:var(--hot,#ff4d8d);color:var(--hot,#ff4d8d);background:#fff}
#board .slot .plus{font-size:26px;line-height:1}
#board .frame.busy{opacity:.5;pointer-events:none}

/* map */
#board .board-map{height:520px;border-radius:24px;overflow:hidden;border:1px solid rgba(23,21,18,.1);box-shadow:var(--softshadow,0 12px 34px rgba(72,45,26,.09))}
#board .map-empty,#board .view-empty,#board .tl-empty{background:rgba(255,250,242,.72);border:1px solid rgba(255,255,255,.88);border-radius:24px;padding:40px 24px;text-align:center;color:var(--soft,#6f6255);line-height:1.6}
.pin-svg{filter:drop-shadow(0 2px 3px rgba(0,0,0,.3))}
.leaflet-popup-content{margin:10px 12px;font-family:'DM Sans',system-ui,sans-serif}
.pin-pop img{width:160px;max-width:46vw;height:108px;object-fit:cover;border-radius:10px;display:block;margin-bottom:6px}
.pin-pop b{display:block;font-size:13px;color:#18120d}
.pin-pop span{display:block;font-size:11px;color:#6f6255;margin-top:2px}

/* timeline */
#board .timeline{position:relative;padding-left:18px;margin-left:6px;border-left:2px solid var(--line,#ead9c7)}
#board .tl-row{position:relative;margin-bottom:18px}
#board .tl-row:before{content:"";position:absolute;left:-25px;top:6px;width:11px;height:11px;border-radius:50%;background:var(--hot,#ff4d8d);box-shadow:0 0 0 4px var(--paper,#fffaf2)}
#board .tl-date{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--hot,#ff4d8d);margin-bottom:6px}
#board .tl-card{display:flex;gap:12px;background:rgba(255,250,242,.72);border:1px solid rgba(255,255,255,.88);border-radius:18px;padding:10px;box-shadow:var(--softshadow,0 12px 34px rgba(72,45,26,.09))}
#board .tl-thumb{width:96px;height:72px;flex:0 0 96px;border-radius:12px;overflow:hidden;background:#f0e8db}
#board .tl-thumb img{width:100%;height:100%;object-fit:cover;display:block}
#board .tl-cap{display:flex;flex-direction:column;justify-content:center;font-size:14px;color:var(--ink,#2c241c)}
#board .tl-cap small{color:var(--faint,#b3a595);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-top:4px}
#board .tl-cap .muted{color:var(--faint,#b3a595)}
