.visitors-page{width:100%;max-width:720px;margin-inline:auto;padding:24px 24px 64px}.visitors-invitation{color:var(--foreground);text-align:center;margin:0 0 16px;font-size:16px;line-height:24px}.visitor-board{--board-card:#242424;--board-field:#292929;isolation:isolate;border:1px solid var(--nav-border);background:var(--background);border-radius:9px;position:relative;overflow:hidden}:root[data-theme=light] .visitor-board{--board-card:#f4e5cc;--board-field:#eadcc4}.board-toolbar{background:var(--board-card);border-bottom:1px solid var(--nav-border);justify-content:space-between;align-items:center;gap:12px;min-height:65px;padding:12px;display:flex}.board-toolbar-start{align-items:center;gap:16px;display:flex}.board-button{border:1px solid var(--nav-border);min-height:40px;color:var(--foreground);font:inherit;cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:8px 14px;font-size:14px;line-height:20px;display:inline-flex}.board-button:hover{background:var(--nav-hover)}.board-button:disabled,.drawing-tool:disabled{opacity:.4;cursor:not-allowed}.board-primary{background:var(--foreground);color:var(--background);border-color:#0000;font-weight:500}.board-primary:hover{background:color-mix(in srgb, var(--foreground) 85%, var(--background))}.board-icon-button{width:40px;padding:0}.board-note-count{font-variant-numeric:tabular-nums;align-items:center;gap:9px;font-size:14px;display:flex}.board-note-count span{background:var(--muted);opacity:.5;border-radius:50%;width:9px;height:9px}.board-note-count:where([data-connected=true]) span{opacity:1;background:#43b991}.board-notice{color:var(--muted);margin:0;padding:8px 12px;font-size:13px;line-height:20px}.board-cursors{z-index:999;pointer-events:none;position:absolute;inset:0;overflow:hidden}.board-cursor{align-items:flex-start;transition:left 90ms linear,top 90ms linear;display:flex;position:absolute}.board-cursor>span{background:var(--background);white-space:nowrap;border-radius:4px;margin-top:20px;margin-left:-6px;padding:2px 5px;font-size:10px;line-height:16px}.visitor-polaroid[data-selected=true]{outline:2px solid var(--selection-color);outline-offset:2px}.board-thanks{font-size:14px}.board-surface{background-image:linear-gradient(var(--nav-surface) 1px, transparent 1px), linear-gradient(90deg, var(--nav-surface) 1px, transparent 1px);background-size:30px 30px;height:700px;position:relative;overflow:hidden}.board-layout{height:100%;position:relative;overflow:hidden}.board-grid{scrollbar-gutter:stable;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:16px;padding:56px 32px 32px;display:grid;overflow-y:auto}.board-empty{text-align:center;color:var(--muted);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px;font-size:15px;line-height:24px;display:flex;position:absolute;inset:0}.board-empty button{pointer-events:auto}.board-shuffle{z-index:1000;background:var(--background);width:36px;height:36px;color:var(--foreground);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:10px;right:28px}.board-shuffle:disabled{opacity:.35;cursor:default}.visitor-polaroid{border:1px solid var(--nav-border);background:var(--board-card);min-width:0;color:var(--foreground);text-align:left;transform:rotate(var(--note-angle));border-radius:10px;flex-direction:column;gap:5px;padding:8px;font-family:inherit;display:flex;box-shadow:0 3px 8px #0003}.board-scattered .visitor-polaroid{--polaroid-width:150px;left:calc(24px + (100% - var(--polaroid-width) - 48px) * var(--note-x));top:calc(40px + (100% - 310px) * var(--note-y));width:var(--polaroid-width);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;position:absolute}.board-scattered .visitor-polaroid:active{cursor:grabbing}.visitor-polaroid:focus-visible{outline:2px solid var(--foreground);outline-offset:4px}.note-art{aspect-ratio:1;pointer-events:none;background:#c5c5c5;border-radius:4px;width:100%;display:block}.note-name{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;font-size:12px;line-height:16px}.note-message{overflow-wrap:anywhere;font-size:13px;font-weight:500;line-height:18px}.board-more{z-index:1000;background:var(--board-card);margin:0;position:absolute;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 2px 10px #0003}.board-grid[data-has-more=true]{padding-bottom:80px}.note-dialog{--board-card:#242424;--board-field:#292929;border:1px solid var(--nav-border);background:var(--board-card);width:min(443px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--foreground);border-radius:8px;margin:auto;padding:8px;overflow:auto;box-shadow:0 20px 80px #0008}:root[data-theme=light] .note-dialog{--board-card:#f4e5cc;--board-field:#eadcc4}.note-dialog::backdrop{background:#000c}.note-fields{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.drawing-toolbar{justify-content:space-between;gap:8px;margin-bottom:0;display:flex}.drawing-colors,.drawing-actions{flex:1;justify-content:space-between;align-items:center;display:flex}.drawing-colors{flex:1.6}.drawing-actions{border-left:1px solid var(--nav-border);padding-left:8px}.drawing-tool{min-width:28px;height:32px;color:var(--foreground);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:4px;display:grid}.drawing-tool[aria-pressed=true],.drawing-tool[aria-expanded=true],.drawing-tool:hover{background:var(--nav-hover)}.color-tool span{border:1px solid #8885;border-radius:50%;width:20px;height:20px;display:block}.brush-size{align-items:center;gap:12px;padding:8px;font-size:13px;display:flex}.brush-size input{min-width:0;accent-color:var(--foreground);flex:1}.brush-size output{width:24px}.drawing-canvas{aspect-ratio:1;touch-action:none;cursor:crosshair;background:#c5c5c5;border-radius:4px;flex-shrink:0;width:100%;display:block}.note-fields>input{border:1px solid var(--nav-border);background:var(--board-field);width:100%;min-height:40px;color:var(--foreground);font:inherit;border-radius:6px;padding:8px 12px;font-size:14px;line-height:20px}.note-fields>input::placeholder{color:var(--muted)}.editor-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:8px;display:flex}.editor-footer>div{gap:8px;display:flex}.character-counter{border:3px solid var(--nav-border);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:32px;height:32px;font-size:12px;display:grid}.board-error{color:var(--error);margin:8px 0;font-size:14px;line-height:20px}.visitor-privacy-note{color:var(--muted);text-align:center;margin:8px 0 0;font-size:11px;line-height:16px}@media (max-width:639px){.visitors-page{padding:20px 16px 48px}.board-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:56px 20px 24px}.board-surface{height:620px}.board-scattered .visitor-polaroid{--polaroid-width:135px}.board-toolbar{gap:8px;padding:10px}.board-toolbar-start{gap:10px}.note-dialog{width:100%;max-width:480px;max-height:calc(100dvh - 16px);padding:12px max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));border-radius:14px 14px 0 0;margin:auto auto 0}.drawing-toolbar{flex-wrap:wrap;gap:4px}.drawing-colors{flex:1 0 100%}.drawing-actions{border:0;flex:1 0 100%;justify-content:flex-end;gap:8px;padding:0}.drawing-tool{min-width:36px;height:36px}.note-fields>input{font-size:16px}.board-button{min-height:44px}}@media (prefers-reduced-motion:reduce){.board-cursor{transition:none}}
