.guestbook-reactions { margin-top:13px; }
.guestbook-reactions-toggle { position:relative; display:inline-flex; align-items:center; justify-content:center; min-width:48px; min-height:32px; padding:4px 9px; border:1px solid rgba(45,108,98,.2); border-radius:999px; background:rgba(255,253,248,.8); color:#355d55; cursor:pointer; font:inherit; font-size:.76rem; font-weight:800; font-variant-numeric:tabular-nums; }
.guestbook-reactions-toggle:focus-visible { outline:2px solid #2d6c62; outline-offset:2px; }
.guestbook-reaction-panel { display:grid; grid-template-rows:0fr; margin-top:0; opacity:0; transition:grid-template-rows .28s ease, margin-top .28s ease, opacity .2s ease; }
.guestbook-reactions.is-expanded .guestbook-reaction-panel { grid-template-rows:1fr; margin-top:7px; opacity:1; }
.guestbook-reaction-options { display:flex; flex-wrap:wrap; gap:6px; min-height:0; overflow:hidden; }
.guestbook-reaction { display:inline-flex; align-items:center; justify-content:center; gap:5px; min-height:34px; padding:5px 8px; border:1px solid rgba(45,108,98,.2); border-radius:999px; background:rgba(255,253,248,.8); color:#355d55; cursor:pointer; font:inherit; font-size:.7rem; font-weight:750; line-height:1.2; transition:background-color .18s, border-color .18s, transform .18s; }
.guestbook-reaction:hover, .guestbook-reaction:focus-visible { border-color:#2d6c62; background:#fffdf8; }
.guestbook-reaction:focus-visible { outline:2px solid #2d6c62; outline-offset:2px; }
.guestbook-reaction[aria-pressed="true"] { border-color:#2d6c62; background:#c8e6d9; color:#163f38; }
.guestbook-reaction:disabled { opacity:.65; cursor:wait; }
.guestbook-reaction-icon { font-family:"Segoe UI Emoji","Apple Color Emoji",sans-serif; font-size:1rem; line-height:1; }
.guestbook-reaction-count { min-width:1.2em; font-variant-numeric:tabular-nums; text-align:center; }
body.is-night .guestbook-reaction { border-color:rgba(184,229,217,.3); background:#203750; color:#e1f5ee; }
body.is-night .guestbook-reactions-toggle { border-color:rgba(184,229,217,.3); background:#203750; color:#e1f5ee; }
body.is-night .guestbook-reaction[aria-pressed="true"] { background:#b8e5d9; border-color:#b8e5d9; color:#142439; }
body.is-halloween .guestbook-reaction { border-color:rgba(255,190,110,.3); background:#3b2248; color:#ffddad; }
body.is-halloween .guestbook-reactions-toggle { border-color:rgba(255,190,110,.3); background:#3b2248; color:#ffddad; }
body.is-halloween .guestbook-reaction[aria-pressed="true"] { background:#ffb45e; border-color:#ffb45e; color:#271129; }
@media (max-width:420px) { .guestbook-reaction-options { gap:5px; } .guestbook-reaction { padding:5px 7px; font-size:.68rem; } }
@media (prefers-reduced-motion:reduce) { .guestbook-reaction-panel { transition:none; } }
