/* Guestbook: a third living field, with fixed places to read and write. */
.guestbook-board{--guestbook-ink:var(--paper);position:relative;isolation:isolate;min-height:100svh;padding:clamp(28px,4vw,60px) clamp(20px,5vw,90px);background:var(--black);color:var(--guestbook-ink);scroll-snap-align:start;scroll-margin-top:var(--bar-height,72px);overflow:clip}
#guestbook-scriptboard{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:1}
.guestbook-heading{position:relative;text-align:center;width:fit-content;max-width:100%;margin:0 auto;z-index:2}
.guestbook-register{font:11px/1.5 var(--mono);letter-spacing:.15em;margin:0 0 12px}.guestbook-register span{padding:0 12px;opacity:.55}
.guestbook-heading h2{font:normal clamp(24px,4.5vw,68px)/.95 var(--display);letter-spacing:-.035em;margin:0}
.guestbook-field{position:relative;height:clamp(370px,51svh,620px);margin:14px auto 0;max-width:1440px}
.guestbook-art{position:absolute;width:min(56%,540px,51svh);aspect-ratio:1;container-type:inline-size;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none}
.guestbook-art>.being-orb{left:50%;top:20.5%;width:38%;box-shadow:0 0 38px var(--orb-glow,#ffffff24)}
.guestbook-being{position:absolute;inset:0;z-index:1;background:linear-gradient(150deg,var(--accent),var(--secondary,var(--accent)));mask:url(assets/beings/09-dna.png) center/contain no-repeat;-webkit-mask:url(assets/beings/09-dna.png) center/contain no-repeat}
:root[data-scheme=noir-plus] .guestbook-being{background:radial-gradient(circle at 50% 20.5%,var(--being-inside,#000) 0 19cqw,var(--being-outside,#fff) calc(19cqw + .5px));background-size:100% 100%}
.guestbook-controls{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1200px;margin:18px auto 12px;font:10px/1.5 var(--mono)}
.guestbook-board button{font:11px/1.4 var(--mono);color:var(--paper);border:1px solid var(--rule);background:var(--black);min-height:44px;padding:10px 14px;border-radius:0}
.guestbook-board button:hover:not(:disabled){border-color:var(--paper)}
.guestbook-board button:disabled{opacity:.6;cursor:default}
.guestbook-board :is(button,input,textarea,summary,ol):focus-visible{outline:2px solid var(--paper);outline-offset:4px}
.guestbook-desk{position:relative;display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:clamp(24px,4vw,64px);max-width:1200px;margin:0 auto;padding-top:22px;border-top:1px solid var(--rule);background:var(--black)}
#guestbook-form{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(0,1.7fr);gap:14px;align-items:start;margin:0}
.guestbook-board label{display:block;font:11px/1.5 var(--mono);margin-bottom:8px}.guestbook-board label span{font-size:9px;opacity:.7;float:right;padding-left:8px}
.guestbook-board :is(input,textarea){display:block;width:100%;max-width:100%;border:1px solid var(--rule);border-radius:0;background:var(--black);color:var(--paper);font:14px/1.6 var(--mono);padding:10px 12px;box-shadow:none}
.guestbook-board :is(input,textarea)::placeholder{color:var(--paper);opacity:.58}.guestbook-board textarea{resize:vertical;min-height:90px;max-height:360px}
.guestbook-board .guestbook-submit{grid-column:1/-1;justify-self:start;display:flex;gap:24px;align-items:center;border-color:var(--paper);font-size:12px}.guestbook-submit span{font-size:20px}
#guestbook-status:empty{display:none}
#guestbook-status{grid-column:1/-1;font:11px/1.55 var(--mono);margin:0;min-height:2em;overflow-wrap:anywhere}
.guestbook-archive{min-width:0;font:12px/1.5 var(--mono)}.guestbook-archive summary{cursor:pointer;min-height:44px;padding:8px 0;display:list-item}.guestbook-archive summary span{float:right}.guestbook-archive[open] summary{border-bottom:1px solid var(--rule)}
.guestbook-list{padding:0 8px 0 0;list-style:none;max-height:360px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;margin:0 0 14px}
.guestbook-list li{border-bottom:1px solid var(--rule);padding:16px 0}.guestbook-list p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 12px;font:13px/1.7 var(--mono)}.guestbook-list footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font:10px/1.5 var(--mono)}.guestbook-list footer strong{overflow-wrap:anywhere;max-width:100%}.guestbook-list time{opacity:.72}.guestbook-list-empty{font-size:11px}.guestbook-noscript{max-width:1200px;margin:24px auto;font:12px var(--mono)}
.guestbook-board [hidden]{display:none!important}
@media(max-width:800px){.guestbook-board{padding:32px 24px}.guestbook-field{height:560px}.guestbook-art{width:320px;max-width:92%;top:33%}.guestbook-desk{grid-template-columns:1fr;gap:24px}.guestbook-archive{border-top:1px solid var(--rule);padding-top:12px}.guestbook-heading h2{font-size:clamp(24px,6vw,50px)}}
@media(max-width:420px){.guestbook-board{padding:28px 18px}.guestbook-heading h2{font-size:clamp(22px,6vw,28px)}.guestbook-field{height:510px}.guestbook-art{top:31%}#guestbook-form{grid-template-columns:1fr}.guestbook-board label span{float:none;margin-left:8px}.guestbook-board textarea{min-height:108px}}
@media(forced-colors:active){.guestbook-being{background:CanvasText}.guestbook-art>.being-orb{background:Canvas;border:1px solid CanvasText}.guestbook-board :is(input,textarea,button){border-color:CanvasText}}
