.message-page{max-width:760px;margin:55px auto 80px;padding:0 24px}.message-page h1{font-size:clamp(38px,7vw,60px);letter-spacing:-1.5px}.message-page .intro{color:var(--muted);margin:0 0 30px}.message-list{display:grid;gap:26px}.message-note{background:#fffdfc;border:1px solid #efd5df;box-shadow:0 8px 28px #9761750c;border-radius:16px;padding:28px 30px}.message-note time{display:block;color:#a16e81;font-size:14px;margin-bottom:15px}.message-note p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:17px;line-height:1.85}.message-status{color:var(--muted);padding:20px 0}.message-form{display:grid;gap:15px}.message-form label{font-size:18px}.message-form textarea{width:100%;min-height:240px;resize:vertical;border:1px solid #deb2c3;border-radius:16px;background:#fffdfc;color:var(--ink);font:inherit;padding:20px}.message-form textarea:focus{outline:2px solid var(--rose);outline-offset:3px}.message-form button{justify-self:start}.message-form button:disabled{opacity:.65;cursor:wait}.message-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-bottom:28px;font-size:14px}.message-hint{font-size:14px;color:var(--muted)}.header-message-link{font-size:14px;text-decoration:none;color:var(--rose);border:1px solid #ead0d9;padding:9px 15px;border-radius:30px}.header-message-link:hover{background:#fbe8ee}@media(max-width:720px){.site-header{gap:12px}.wordmark{font-size:20px}.header-message-link{font-size:14px;padding:8px 10px}.message-note{padding:24px}.message-page{margin-top:35px}}
.new-note-badge{display:inline-block;margin-left:6px;background:var(--rose);color:white;border-radius:20px;padding:2px 8px;font-size:12px;white-space:nowrap}.new-note-badge[hidden]{display:none}.header-message-link{display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:3px}.open-when{padding-block:64px 20px}.open-when h2{font-family:var(--serif);font-size:clamp(32px,5vw,44px);font-weight:400;margin:12px 0 26px;color:var(--rose)}.open-when-letters{display:grid;gap:14px;max-width:800px;margin:auto}.little-letter{background:#fff9fb;border:1px solid #ecd3de;border-radius:16px}.little-letter summary{cursor:pointer;padding:20px 24px;font-family:var(--serif);font-size:23px}.little-letter summary span{float:right;color:var(--rose)}.little-letter summary:focus-visible{outline:3px solid var(--rose);outline-offset:3px;border-radius:16px}.little-letter[open] summary{border-bottom:1px solid #efd5df}.little-letter>div{padding:22px 26px}.little-letter p{font-size:16px;line-height:1.85;margin-bottom:16px}.little-letter p:last-child{margin-bottom:0}@media(max-width:720px){.open-when{padding-top:45px}.little-letter summary{font-size:21px;padding:18px}.little-letter>div{padding:20px}.header-right{gap:8px}.header-message-link{max-width:185px}}

.visit-permission{position:fixed;bottom:55px;right:16px;left:16px;max-width:580px;margin-left:auto;padding:22px;background:#fff9fb;border:1px solid #dca7ba;border-radius:16px;box-shadow:0 8px 40px #69414d30;z-index:1000}.visit-permission[hidden]{display:none}.visit-permission p{font-size:16px;line-height:1.6}.visit-permission button,.visit-privacy{background:#f8e2eb;border:1px solid #dca7ba;border-radius:20px;padding:9px 15px;font-size:14px;margin:14px 8px 0 0}.visit-privacy{display:block;margin:20px auto}.visit-permission button:focus-visible{outline:3px solid var(--rose)}

.visit-permission details{margin-top:14px}.visit-permission summary{cursor:pointer;font-size:14px;text-decoration:underline;text-underline-offset:3px}.visit-permission details p{margin-top:12px}.visit-permission summary:focus-visible{outline:3px solid var(--rose);outline-offset:3px}
