/* Couple-owned guest galleries. */
[hidden] { display:none!important; }
.guest-kicker { font-size:.72rem; font-weight:700; letter-spacing:.16em; color:#7b302c; }
.guest-owner-tools { display:flex; align-items:center; gap:32px; justify-content:space-between; padding:28px; margin:12px 0 30px; background:#f2ece4; border:1px solid #ddd5c8; border-radius:16px; }
.guest-owner-tools h2 { font:1.65rem/1.2 Georgia,serif; margin:10px 0; color:#272c27; }
.guest-owner-tools p { color:#5e655c; max-width:610px; line-height:1.6; margin:0; }
.guest-actions { display:flex; flex-wrap:wrap; gap:10px; }
.guest-owner-tools>.guest-actions { flex-shrink:0; max-width:250px; }
.guest-owner-tools button,.guest-dialog button,.guest-comments button,.guest-review a,.guest-dialog .guest-secondary { min-height:44px; padding:12px 18px; border:1px solid #334d40; background:#334d40; color:#fff; border-radius:8px; font-family:inherit; font-size:.93rem; font-weight:600; line-height:1.4; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; }
.guest-dialog button:disabled,.guest-comments button:disabled { opacity:.55;cursor:wait; }
.guest-owner-tools .guest-secondary,.guest-dialog .guest-secondary,.guest-comments .guest-secondary { color:#334d40; background:transparent; border-color:#c3ccc5; }
.gallery-selection-hint { padding:16px 20px; background:#e7efe9; border-left:3px solid #334d40; line-height:1.6; }
.guest-dialog { width:min(920px,calc(100% - 32px)); max-width:920px; max-height:calc(100dvh - 32px); overflow:auto; padding:30px; border:1px solid #d9ded7; border-radius:18px; color:#25332b; background:#fffdf8; box-shadow:0 25px 90px #0004; }
.guest-dialog::backdrop { background:#14251ec7; backdrop-filter:blur(4px); }
.guest-dialog-top { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; margin-bottom:24px; }
.guest-dialog h2 { font:2rem/1.15 Georgia,serif; margin:8px 0; }
.guest-dialog .guest-close { border:0; background:transparent; color:#435b4d; padding:6px; min-width:44px; font-size:28px; }
.guest-editor-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:30px; }
.guest-dialog label,.guest-comments label { display:grid;gap:9px;margin:0 0 18px;font-size:.9rem;font-weight:600; }
.guest-dialog input:not([type=checkbox]),.guest-dialog select,.guest-dialog textarea,.guest-comments input,.guest-comments textarea { box-sizing:border-box;width:100%;max-width:100%;border:1px solid #b8c4bb;border-radius:8px;background:white;color:#223129;padding:12px;font:inherit;min-height:46px; }
.guest-dialog textarea,.guest-comments textarea { resize:vertical; line-height:1.5; }
.guest-dialog .guest-check { display:flex;align-items:center;gap:12px;line-height:1.5; }
.guest-check input { width:20px;height:20px;accent-color:#334d40;flex-shrink:0; }
.guest-cover-picker img { display:block;width:100%;height:240px;object-fit:cover;border-radius:10px;margin:0 0 16px;background:#e5e4dc; }
.guest-cover-picker p,.guest-help { font-size:.84rem;line-height:1.6;color:#657066; }
.guest-dialog-footer { display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;border-top:1px solid #dce1d8;padding-top:20px; }
#guest-editor-error { color:#a02c2b;line-height:1.5; }
.guest-shared-card { padding:22px 0;border-top:1px solid #dce1d8; }
.guest-shared-card h3 { margin:0 0 8px; }
.guest-shared-card p { line-height:1.5;color:#617064; }
.guest-shared-card input { margin-bottom:14px; }
.guest-cover { position:relative;height:min(65vw,600px);min-height:300px;overflow:hidden;border-radius:10px; background:#314139; }
.guest-cover>img { width:100%;height:100%;object-fit:cover;display:block; }
.guest-cover-caption { position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(24px,5vw,60px);color:white;background:linear-gradient(transparent 38%,#101e17b8); }
.guest-cover-caption span { font-size:.68rem;letter-spacing:.2em; }
.guest-cover-caption p { font:clamp(1.6rem,4vw,3.3rem)/1.15 Georgia,serif;max-width:700px;margin:16px 0 0; }
.is-guest-gallery { --paper:#faf7f0;--ink:#24352b;--accent:#354e3d;--accent-deep:#253c2e; }
.is-guest-gallery .hero { padding:40px 0 24px; }
.is-guest-gallery .hero h1 { font-family:Georgia,serif;font-weight:400;letter-spacing:-.03em; }
.is-guest-gallery .share-message { white-space:pre-wrap;max-width:760px;line-height:1.7; }
.is-guest-gallery .summary-card { display:none; }
.guest-comments { max-width:780px;margin:70px auto;padding:32px 0;border-top:1px solid #d5dacd; }
.guest-comments h2,.guest-review h2 { font:clamp(1.8rem,4vw,2.5rem)/1.2 Georgia,serif;margin:12px 0; }
.guest-comments>p,.guest-review p { color:#62705f;line-height:1.7; }
.guest-comments form { margin:28px 0; }
.guest-honeypot { position:absolute;left:-10000px; }
.guest-comment { padding:22px 0;border-top:1px solid #dce1d8;overflow-wrap:anywhere; }
.guest-comment time { font-size:.8rem;color:#6b756e;margin-left:16px; }
.guest-comment p { white-space:pre-wrap;line-height:1.65;margin:12px 0; }
.guest-review { margin-top:64px;background:#ece8dc;text-align:center;padding:48px 24px;border-radius:12px; }
.guest-review p { max-width:570px;margin:16px auto 26px; }
.guest-review a { background:#752f2b;border-color:#752f2b;gap:20px; }
@media(max-width:720px) {
 .guest-owner-tools { flex-direction:column;align-items:stretch;padding:22px;gap:20px; }
 .guest-owner-tools>.guest-actions { max-width:none; }
 .guest-dialog { padding:20px; }
 .guest-dialog h2 { font-size:1.7rem; }
 .guest-editor-layout { grid-template-columns:1fr;gap:24px; }
 .guest-cover-picker img { height:200px; }
 .guest-dialog-footer { flex-direction:column;align-items:stretch; }
 .guest-cover { min-height:330px;height:65dvh;max-height:550px; }
 .guest-cover-caption { padding:24px; }
 .guest-comments { margin:45px auto;padding:28px 0; }
 .guest-comment time { display:block;margin:6px 0 0; }
}
