:root{color-scheme:dark;--page: #171f1b;--text: #e4e9dd;--muted: #acb7a8;--body-text: #c4cebd;--accent: #d3a46f;--green: #a6c5a5;--card: #202b24;--border: #455347;--divider: #364339;--subtle: #26332a;--composer: #243027;--button: #acc8aa;--button-text: #1b3024;--button-hover: #c4d9ba;--quiet-hover: #344638;--link: #b5cfac;--link-hover: #e0edcd;--focus: #e3b478;--avatar: #354c38;--avatar-text: #c2d9b7;--avatar-tan: #514431;--avatar-tan-text: #edc99b;--avatar-blue: #354452;--avatar-blue-text: #c6d6ea;--warning: #3e3524;--warning-text: #e7cb91;--warning-border: #655536;--connected: #2c402e;--connected-text: #bdd5ab;--connected-border: #486344;--error: #462d26;--error-text: #ffbdab;--table: #514b3a;--table-border: #75674d;--table-text: #e0c69c;--chair: #718667;--chair-border: #91a280;--chair-tan: #b29169;--chair-tan-border: #cfad80;--scrollbar: #667760;--shadow: #00000020;font-family:DM Sans,system-ui,sans-serif;color:var(--text);background:var(--page);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-weight:400}:root[data-theme=light]{color-scheme:light;--page: #f6f5f0;--text: #293d37;--muted: #626e60;--body-text: #566157;--accent: #996b36;--green: #52705c;--card: #fffefa;--border: #d7ddcf;--divider: #e5e8dc;--subtle: #f6f7f1;--composer: #fafbf5;--button: #2d5145;--button-text: #ffffff;--button-hover: #213e34;--quiet-hover: #edf0e6;--link: #536b55;--link-hover: #1d3e2e;--focus: #a46c2c;--avatar: #e9eee2;--avatar-text: #4c6853;--avatar-tan: #f2e8db;--avatar-tan-text: #805d38;--avatar-blue: #e5e9f0;--avatar-blue-text: #56657d;--warning: #faf3e6;--warning-text: #725e36;--warning-border: #e6decb;--connected: #f0f5eb;--connected-text: #4a7056;--connected-border: #d8e3cf;--error: #fff0e9;--error-text: #943d2d;--table: #e9e4d7;--table-border: #d9d2be;--table-text: #76633f;--chair: #b0bfaa;--chair-border: #9fae97;--chair-tan: #c7ac87;--chair-tan-border: #baa17e;--scrollbar: #98a58e;--shadow: #283b2f04}*{box-sizing:border-box}html{scrollbar-color:var(--scrollbar) var(--page)}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;background:var(--subtle);color:var(--muted);border-color:var(--border)}input:disabled,textarea:disabled{color:var(--muted);background:var(--subtle);cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,ol:focus-visible{outline:3px solid var(--focus);outline-offset:4px}button{background:var(--button);color:var(--button-text);border:1px solid var(--button);border-radius:8px;padding:11px 20px;font-size:.86rem;font-weight:600}button:not(:disabled):hover{background:var(--button-hover)}input:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--green)}.app-shell{max-width:1240px;margin:0 auto;padding:0 56px}.site-header{height:101px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--border)}.header-actions{display:flex;align-items:center;gap:24px}.theme-toggle{min-width:64px;min-height:44px;padding:10px 12px;flex-shrink:0}.theme-notice{border:1px solid var(--warning-border);border-radius:8px}.wordmark{display:flex;gap:10px;align-items:center;color:var(--text);text-decoration:none;font-family:Manrope,sans-serif;font-size:23px;font-weight:800;letter-spacing:-1px}.wordmark:hover{color:var(--link)}.wordmark-dot{color:var(--accent);margin-left:-10px}.brand-icon{display:flex;align-items:center;gap:3px;margin-right:3px;width:25px;height:25px}.brand-icon span{width:6px;height:18px;border-radius:4px;background:var(--green);transform:rotate(20deg)}.brand-icon span:nth-child(2){height:25px;background:var(--accent)}.brand-icon span:nth-child(3){height:13px}.header-note,.site-footer span:last-child{color:var(--muted);letter-spacing:1.8px;font-size:10px;font-weight:600}main{max-width:800px;margin:auto}.intro{margin:51px 0 32px;text-align:center}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--green);font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px}.eyebrow span{background:var(--accent);width:6px;height:6px;border-radius:50%}h1{font-family:Manrope,sans-serif;font-size:clamp(32px,5vw,44px);letter-spacing:-1.9px;font-weight:650;margin:12px 0 13px;line-height:1.3}.intro>p{font-size:14px;line-height:1.8;margin:0;color:var(--muted)}.chat-card,.join-card,.setup-card{background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:0 6px 24px var(--shadow);overflow:hidden}.room-header{padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:16px}h2{font-family:Manrope,sans-serif;font-size:16px;font-weight:750;margin:0 0 5px;letter-spacing:-.4px}.room-header p{color:var(--muted);margin:0;font-size:11px}.connection{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--warning-text);border:1px solid var(--warning-border);background:var(--warning);padding:6px 10px;border-radius:30px;white-space:nowrap}.connection>span{width:6px;height:6px;border-radius:50%;background:currentColor}.connection.connected{color:var(--connected-text);background:var(--connected);border-color:var(--connected-border)}.participant-bar{background:var(--subtle);padding:11px 26px;border-block:1px solid var(--divider);display:flex;justify-content:space-between;align-items:center;gap:12px}.participant-bar>p{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;margin:0;min-width:0;flex-wrap:wrap}.participant-bar strong{color:var(--text);overflow-wrap:anywhere}.avatar{width:32px;height:32px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--avatar);color:var(--avatar-text);font-size:12px;font-weight:600}.avatar-small{width:23px;height:23px;border-radius:50%;font-size:10px;margin-right:2px}.text-button{color:var(--link);border:0;padding:3px 0;background:none;font-size:11px;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.text-button:not(:disabled):hover{background:none;color:var(--link-hover)}.error-banner .text-button{color:inherit}.history-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:20px 26px 8px;min-height:48px}.room-caption{font-size:9px;letter-spacing:1.7px;color:var(--muted);font-weight:600}.message-list{list-style:none;margin:0;padding:9px 26px 25px;max-height:400px;min-height:220px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--scrollbar) var(--card);overflow-anchor:none}.message-list:empty{min-height:0;padding:0}.message{display:flex;gap:12px;padding:14px 0}.message+.message{border-top:1px solid var(--divider)}.message:nth-child(3n+2) .avatar{background:var(--avatar-tan);color:var(--avatar-tan-text)}.message:nth-child(3n) .avatar{background:var(--avatar-blue);color:var(--avatar-blue-text)}.message-content{flex:1;min-width:0}.message-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;margin:0 0 6px}.message-meta strong{font-size:12px;font-weight:650;overflow-wrap:anywhere}.message-meta time{font-size:10px;color:var(--muted)}.message-content p{margin:0;font-size:13px;line-height:1.8;color:var(--body-text);white-space:pre-wrap;overflow-wrap:anywhere}.composer{border-top:1px solid var(--divider);background:var(--composer);padding:19px 24px 17px}.composer>label,.name-form>label{display:block;font-size:11px;font-weight:600;margin-bottom:9px}.composer textarea{display:block;resize:vertical;width:100%;min-height:82px;max-height:260px;border:1px solid var(--border);background:var(--card);border-radius:8px;padding:12px 14px;font-size:13px;color:var(--text);line-height:1.65}textarea::placeholder,input::placeholder{color:var(--muted);opacity:1}.composer textarea:disabled,.name-controls input:disabled{background:var(--subtle);color:var(--muted)}.composer-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px}.composer-bottom>p{color:var(--muted);font-size:10px;margin:0;line-height:1.6}.composer-bottom>p span{padding:0 4px}.send-controls{display:flex;align-items:center;gap:12px}.send-controls>span{color:var(--muted);font-size:10px;white-space:nowrap}.send-controls button{display:flex;gap:15px;align-items:center;padding:10px 16px;white-space:nowrap;font-size:11px}.send-controls button span{font-size:17px;line-height:1}.privacy-note{font-size:10px;text-align:center;color:var(--muted);margin:18px 0 45px;line-height:1.8}.privacy-note span{padding-right:4px}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--border);padding:23px 0 28px;color:var(--muted);font-size:11px}.site-footer span:last-child{font-size:9px;letter-spacing:1.5px}.join-card{padding:35px 48px 0;max-width:580px;margin:0 auto;text-align:center}.join-card h2{font-size:21px;margin:6px 0 10px;letter-spacing:-.7px}.join-card>p{color:var(--muted);font-size:13px;margin-bottom:29px}.name-form{text-align:left;width:100%}.name-controls{display:flex;gap:8px}.name-controls input{flex:1;min-width:0;padding:12px;background:var(--card);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px}.name-controls button{flex-shrink:0}.field-note{font-size:10px;color:var(--muted);line-height:1.7;margin:10px 0 0}.join-footer{border-top:1px solid var(--divider);padding:20px 0;font-size:10px;color:var(--muted);margin-top:29px}.join-footer span{margin:0 9px}.button-quiet{color:var(--link);background:transparent;border-color:var(--border)}.button-quiet:not(:disabled):hover{background:var(--quiet-hover)}.table-illustration{position:relative;margin:0 auto 27px;width:125px;height:100px}.table-top{position:absolute;width:99px;height:66px;background:var(--table);border:1px solid var(--table-border);border-radius:50%;top:19px;left:13px;display:flex;align-items:center;justify-content:center;color:var(--table-text);font-family:Georgia,serif;font-style:italic;font-size:18px;box-shadow:0 5px 0 var(--table-border)}.chair{position:absolute;width:27px;height:27px;border-radius:8px;background:var(--chair);border:1px solid var(--chair-border)}.chair-one{left:49px;top:0;transform:rotate(5deg)}.chair-two{left:3px;top:65px;transform:rotate(30deg);background:var(--chair-tan);border-color:var(--chair-tan-border)}.chair-three{right:3px;top:65px;transform:rotate(-30deg)}.empty-state{text-align:center;padding:35px 20px 50px}.empty-symbol{font-family:Georgia,serif;font-size:54px;color:var(--accent);line-height:1}.empty-state h3{font-family:Manrope,sans-serif;font-size:15px;margin:10px 0;font-weight:650}.empty-state p{font-size:12px;color:var(--muted)}.history-state{text-align:center;color:var(--muted);font-size:12px;padding:40px 20px}.notice,.error-banner{margin:0;padding:12px 26px;font-size:12px;line-height:1.7;background:var(--warning);color:var(--warning-text)}.notice.theme-notice{margin-top:16px}.error-banner{background:var(--error);color:var(--error-text);display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.send-error{color:var(--error-text);font-size:12px;line-height:1.6}.setup-card{padding:30px}.setup-card p{color:var(--body-text);font-size:14px;line-height:1.8;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-height:950px){.intro{margin-top:65px}.message-list{max-height:490px}}@media(max-width:650px){.app-shell{padding:0 18px}.site-header{height:76px}.wordmark{font-size:20px}.header-note{display:none}.intro{margin:33px 0 24px}.intro>p{font-size:12px}.eyebrow{font-size:9px}h1{letter-spacing:-1.4px}.room-header{padding:18px 16px}.room-header p{font-size:10px}.participant-bar{padding:11px 16px}.history-toolbar{padding-inline:16px}.message-list{padding-inline:16px;max-height:48dvh}.message{gap:9px}.message-content p{font-size:13px}.composer{padding:16px}.composer textarea,.name-controls input{font-size:16px}.composer-bottom{flex-wrap:wrap}.send-controls{margin-left:auto}.privacy-note{margin-bottom:28px;padding-inline:12px}.site-footer{align-items:flex-start;font-size:10px}.site-footer span:last-child{font-size:8px;max-width:100px;text-align:right;line-height:1.6}.join-card{padding:27px 22px 0}.join-card h2{font-size:18px}.name-controls{flex-wrap:wrap}.name-controls input{flex-basis:100%}.name-controls button{flex:1}.notice,.error-banner{padding-inline:16px}}
