:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#272631;background:#f6f5f1;font-synthesis:none;--purple:#6c4ce4;--muted:#6e6b7b;--line:#e2dfeb}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible{outline:3px solid #b4a1fa;outline-offset:4px}[hidden]{display:none!important}.shell{max-width:1200px;padding:0 48px;margin:auto}.topbar{height:110px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{text-decoration:none;color:inherit;font-weight:750;font-size:27px;letter-spacing:-1px;display:flex;align-items:center;gap:10px}.mark{color:var(--purple);font-size:42px;font-weight:400}.brand-dot{color:var(--purple);margin-left:-9px}.byline{color:var(--muted);font-size:13px;text-decoration:none}main{display:grid;grid-template-columns:1fr 1.15fr;gap:65px;align-items:start;padding:76px 0 80px}.eyebrow,label{font-size:10px;font-weight:750;letter-spacing:1.7px}.eyebrow{color:var(--purple);margin:0 0 24px}h1{font-size:clamp(42px,4.6vw,60px);line-height:1.1;letter-spacing:-2.7px;font-weight:650;margin:0 0 27px}h1 span{color:var(--purple)}.lede{font-size:16px;line-height:1.7;color:var(--muted);max-width:330px;margin:0 0 32px}.facts{display:flex;flex-direction:column;gap:12px;font-size:12px;color:#555260}.facts span:before{content:"✓";color:var(--purple);margin-right:10px}.footnote{color:var(--muted);font-size:11px;margin-top:15px}.workspace{background:white;border:1px solid var(--line);border-radius:20px;padding:29px;box-shadow:0 12px 36px #29213b05}.tabs{display:flex;gap:5px;background:#f3f1f8;border-radius:10px;padding:4px;margin-bottom:29px}.tab{width:50%;border:0;background:transparent;padding:12px 10px;border-radius:7px;font-size:13px;color:var(--muted)}.tab.active{background:white;color:var(--purple);font-weight:650;box-shadow:0 2px 6px #21152b0a}label{display:block;margin:0 0 9px;color:#696574}.input-row{display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.input-row:focus-within{border-color:var(--purple);box-shadow:0 0 0 3px #6c4ce410}input{border:0;width:100%;min-width:0;padding:13px 12px;outline:none;background:transparent;font-size:14px}input::placeholder,textarea::placeholder{color:#a6a1b0}.subtle{border:0;background:transparent;color:var(--muted);font-size:12px;padding:10px;white-space:nowrap}.field-hint{color:var(--muted);font-size:11px;line-height:1.6;margin:9px 0 24px}.text-button{border:0;background:none;color:var(--purple);font-size:11px;padding:10px 0;margin-bottom:23px}.primary{border:0;background:var(--purple);color:white;padding:14px 18px;border-radius:8px;font-size:13px;font-weight:650}.primary:hover:not(:disabled){background:#5b3dd0}#enter-button{width:100%}.entry-note{color:var(--muted);font-size:11px;line-height:1.8;margin:19px 0 0}.room-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.room-heading .eyebrow{margin:0 0 5px}h2{font-size:24px;letter-spacing:-.6px;overflow-wrap:anywhere;margin:0}.room-meta{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;padding:10px 0 12px;gap:6px 12px;flex-wrap:wrap;align-items:center}.editor-label{font-size:9px;letter-spacing:1px}.editor-label span{font-size:10px;letter-spacing:0;display:inline;margin-left:8px;font-weight:400}textarea{display:block;width:100%;resize:vertical;min-height:260px;padding:14px;border:1px solid var(--line);border-radius:8px;line-height:1.6;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;color:inherit;outline:none}textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #6c4ce410}.editor-meta{font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:10px;padding:12px 0 19px}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions .primary{flex:1}.secondary{border:1px solid var(--line);background:white;color:#575060;padding:12px 15px;border-radius:8px;font-size:12px}.conflict{padding:15px;background:#faf6ef;border:1px solid #ede0c7;border-radius:10px;margin-bottom:19px}.conflict h3{font-size:13px;margin:0 0 7px}.conflict p{font-size:11px;line-height:1.6;color:var(--muted)}.conflict textarea{min-height:100px;max-height:250px;background:white;margin-bottom:12px}.conflict label{font-size:9px}#status{font-size:12px;line-height:1.6;margin:18px 0 0;overflow-wrap:anywhere}#status:empty{display:none}#status[data-error="true"]{color:#a72d45}footer{display:flex;justify-content:space-between;gap:15px;padding:25px 0 35px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}@media(max-width:850px){.shell{padding:0 24px}main{gap:35px;grid-template-columns:1fr 1.2fr;padding-top:50px}h1{font-size:42px}.workspace{padding:21px}}@media(max-width:650px){.topbar{height:85px}main{grid-template-columns:1fr;padding:38px 0;gap:28px}.intro h1{font-size:44px}.lede{max-width:100%;margin-bottom:19px}.facts{flex-direction:row;flex-wrap:wrap;gap:12px 17px;font-size:10px}.footnote{font-size:10px}.eyebrow{margin-bottom:18px}.workspace{padding:22px}footer{flex-direction:column;gap:9px}.shell{padding:0 20px}}
.room-password{margin-bottom:14px}.room-password label{margin-bottom:6px}.room-password .input-row input{font-size:12px;padding:10px 12px}.room-password .subtle{padding:10px 8px}
.entry-heading{margin-bottom:9px}.entry-description{font-size:12px;line-height:1.7;color:var(--muted);margin:0 0 26px}.over-limit{color:#a72d45}
.save-details{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}
main.in-room{grid-template-columns:minmax(0,720px);justify-content:center;gap:0;padding:36px 0 48px}
#copy,#refresh{flex:0 0 44px;width:44px;height:44px}
.share-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.share-actions button{white-space:nowrap;padding:9px 12px;font-size:11px}.share-hint{font-size:10px;line-height:1.6;color:var(--muted);margin:7px 0 0}#share-room{width:120px}#share-password{width:180px}
.top-links{display:flex;align-items:center;gap:20px}.danger-outline{color:#a72d45;border-color:#d7acb6;margin-top:16px}.danger-outline:hover:not(:disabled){background:#fff5f7}.danger{border:0;border-radius:8px;background:#a72d45;color:white;padding:12px 15px;font-size:12px}.danger:hover:not(:disabled){background:#8c2439}#destroy-confirmation{margin:14px 0 0}.directory-main{grid-template-columns:minmax(0,820px);justify-content:center;padding:36px 0 48px}.directory-title{font-size:30px;letter-spacing:-1px;margin:0}.directory-description{margin:18px 0 12px}.table-scroll{overflow-x:auto}.room-table{width:100%;border-collapse:collapse;font-size:13px}.room-table th{text-align:left;color:var(--muted);font-size:10px;letter-spacing:1px;padding:12px 10px;border-bottom:1px solid var(--line)}.room-table td{padding:16px 10px;border-bottom:1px solid var(--line)}.room-table td:first-child{font-weight:650;overflow-wrap:anywhere}.room-table td:last-child{text-align:right;white-space:nowrap}.room-table a,.entry-note a{color:var(--purple);text-decoration:none}.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(max-width:650px){.top-links{gap:12px}.room-table th,.room-table td{padding-left:4px;padding-right:4px;font-size:11px}.directory-title{font-size:26px}.directory-main .room-heading{align-items:flex-start}.room-table td:first-child{max-width:110px}}

.icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;flex-shrink:0}.icon-button svg{display:block;flex-shrink:0;transform-origin:center}.icon-button:hover:not(:disabled){color:var(--purple);background:#f6f4fc}.icon-button[aria-busy="true"] svg{animation:refresh-spin 1s linear infinite}@keyframes refresh-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.icon-button[aria-busy="true"] svg{animation:none}}

.admin-entry{margin:0 0 18px;font-size:12px;color:var(--muted)}.admin-entry .entry-note{margin:5px 0 14px}.admin-entry label{margin-top:12px}

#copy .copied-icon{display:none}#copy[data-copied="true"] .copy-icon{display:none}#copy[data-copied="true"] .copied-icon{display:block}#copy[data-copied="true"]{color:var(--purple)}

#reconnecting{min-height:220px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px}

.room-error{color:#8c2439;background:#fff5f7;border:1px solid #d7acb6;border-radius:10px;padding:14px;margin-bottom:18px;font-size:13px;line-height:1.6}

#refresh,#refresh-rooms{position:relative}.refresh-wait{position:absolute;top:calc(100% + 5px);right:0;font-size:10px;line-height:12px;white-space:nowrap;color:var(--muted);pointer-events:none}.refresh-wait:empty{display:none}

.passwordless-label{display:block;font-size:10px;font-weight:750;letter-spacing:1.7px;color:#696574;margin:0 0 6px}.room-password .input-row{min-height:38px}.passwordless-row{gap:12px;justify-content:space-between;padding:10px 12px;font-size:12px;line-height:16px;color:var(--muted)}.passwordless-value{color:#272631;white-space:nowrap}.passwordless-note{font-size:11px;text-align:right}
