:root{--bg: #f7f9f9;--surface: #ffffff;--text: #0f1419;--muted: #536471;--border: #e1e8ed;--accent: #1d9bf0;--accent-text: #ffffff;--accent-soft: #e8f5fd;--danger: #d0243a;--radius: 14px;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #000000;--surface: #16181c;--text: #e7e9ea;--muted: #8b98a5;--border: #2f3336;--accent: #1d9bf0;--accent-soft: #0b2a3f;--danger: #f4212e;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);font:15px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:1.5rem;margin:0 0 1rem}h2{font-size:1.15rem;margin:0 0 .5rem}h3{font-size:1rem;margin:0 0 .75rem}p{margin:0 0 .5rem}input,textarea{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:.6rem .75rem;width:100%}input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}textarea{resize:vertical}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:.6rem 16px;background:color-mix(in srgb,var(--surface) 85%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:.5rem;font-weight:700;color:var(--text);font-size:1.1rem}.topbar nav{display:flex;gap:1rem}.topbar nav a{color:var(--muted);font-weight:600}.topbar nav a.active{color:var(--text)}.page{max-width:640px;margin:0 auto;padding:1.25rem 16px 4rem}.page.narrow{max-width:480px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.page-head h1{margin:0;overflow-wrap:anywhere}.center{display:grid;place-items:center;min-height:50vh}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;margin-bottom:.75rem}.card.empty{text-align:center;padding:2rem 1rem}.stack{display:flex;flex-direction:column;gap:.6rem}.row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.grow{flex:1;min-width:0}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--danger)}.back{display:inline-block;margin-bottom:.75rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;font:inherit;font-weight:600;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap}.button:hover{text-decoration:none;background:var(--accent-soft)}.button:disabled{opacity:.5;cursor:default}.button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.button.primary:hover:not(:disabled){filter:brightness(1.08)}.button.subtle{border-color:transparent;background:transparent;color:var(--muted);padding-left:.5rem;padding-right:.5rem}.button.subtle:hover{color:var(--accent);background:var(--accent-soft)}.button.wide{width:100%}.link-button{background:none;border:none;padding:0;font:inherit;color:var(--accent);cursor:pointer}.link-button.danger{color:var(--danger);font-size:.85rem}.auth-page{min-height:100vh;display:grid;place-items:center;padding:16px}.auth-card{width:100%;max-width:380px;text-align:center;display:flex;flex-direction:column;gap:.75rem;padding:2rem 1.5rem}.auth-card h1{margin:0}.auth-card>img{align-self:center}.auth-card form{text-align:left}.field{display:flex;flex-direction:column;gap:.3rem;font-weight:600;font-size:.9rem}.field input{font-weight:400;font-size:1rem}.divider{color:var(--muted);font-size:.85rem}.group-list,.feed,.comment-list,.members-panel ul{list-style:none;margin:0;padding:0}.group-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--text)}.group-row:hover{text-decoration:none;border-color:var(--accent)}.badge{background:var(--accent);color:var(--accent-text);border-radius:999px;padding:.1rem .6rem;font-size:.8rem;font-weight:700;white-space:nowrap}.inline-form{display:flex;gap:.5rem;margin:1rem 0}.inline-form input{flex:1;min-width:0}.avatar{border-radius:50%;object-fit:cover;flex-shrink:0;display:inline-block}.avatar-fallback{display:inline-grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:700}.share-box{display:flex;flex-direction:column;gap:.5rem}.members-panel li{padding:.35rem 0}.members-panel .stack{margin-top:.75rem}.check-row{display:flex;align-items:center;gap:.6rem;font-weight:600}.check-row input{width:auto}.feed-item{padding:.85rem 1rem}.share-meta{display:flex;align-items:center;gap:.5rem;font-size:.9rem;margin-bottom:.5rem}.share-note{font-size:1rem;margin:0 0 .6rem;white-space:pre-wrap;overflow-wrap:anywhere}.feed-actions{display:flex;align-items:center;justify-content:space-between;margin-top:.4rem}.tweet{border:1px solid var(--border);border-radius:12px;padding:.75rem}.tweet-head{display:flex;align-items:center;gap:.6rem}.tweet-author{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.2}.tweet-author>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tweet-name{font-weight:700}.tweet-open{font-size:.85rem;color:var(--muted);white-space:nowrap}.tweet-text{margin:.6rem 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:1rem}.tweet-media{display:grid;gap:2px;margin-top:.6rem;border-radius:12px;overflow:hidden}.tweet-media.n2,.tweet-media.n3,.tweet-media.n4{grid-template-columns:1fr 1fr}.tweet-media.n3>:first-child{grid-row:span 2}.tweet-media img{width:100%;height:100%;max-height:520px;object-fit:cover;display:block;background:#000}.tweet-media.n2 img,.tweet-media.n3 img,.tweet-media.n4 img{aspect-ratio:1}.tweet-embed{min-height:80px}.tweet-embed .twitter-tweet{margin:0 auto!important}.tweet-unavailable{display:block;padding:1rem;border:1px dashed var(--border);border-radius:12px;text-align:center}.comments{margin-top:.75rem;padding-top:.6rem;border-top:1px solid var(--border)}.comment-list{display:flex;flex-direction:column;gap:.55rem;margin-bottom:.6rem}.comment{display:flex;gap:.5rem;align-items:flex-start}.comment .avatar{margin-top:.1rem}.comment-body{flex:1;min-width:0}.comment-body p{white-space:pre-wrap;overflow-wrap:anywhere;margin:.05rem 0 0}.comment-meta{display:flex;align-items:baseline;gap:.35rem;font-size:.88rem;flex-wrap:wrap}.comment-meta .link-button{margin-left:auto}.comment-form{display:flex;gap:.5rem;align-items:flex-end}.comment-form textarea{flex:1;resize:none;border-radius:18px;padding:.45rem .9rem;line-height:1.35;min-height:2.2rem;overflow-y:auto}.comment-form .button{padding:.4rem .9rem}@media(max-width:480px){.inline-form{flex-direction:column}}.notify-toggle{margin-top:.75rem;font-weight:500}.x-button{background:var(--text);color:var(--bg);border-color:var(--text);gap:.5rem;padding:.7rem 1rem}.x-button:hover:not(:disabled){background:var(--text);opacity:.88}.legal{margin-top:.25rem}.x-handle{color:var(--muted);font-weight:400}.x-handle:hover{color:var(--accent)}.legal-page h2{margin-top:1.5rem}.legal-page p,.legal-page li{line-height:1.55}.start-page{max-width:680px}.start-hero{text-align:center;padding:1.5rem 0 1rem;display:flex;flex-direction:column;align-items:center;gap:.6rem}.start-hero h1{margin:0;font-size:1.8rem}.lead{font-size:1.08rem;max-width:34rem;margin:0}.start-page h2{margin-bottom:.6rem}.start-page h3{margin:1rem 0 .3rem;font-size:.95rem}.start-page .card p,.start-page .card li{line-height:1.55}.step{display:flex;gap:1rem;align-items:flex-start}.step>div{flex:1;min-width:0}.step-num{flex-shrink:0;width:2rem;height:2rem;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-text);font-weight:700}.steps{padding-left:1.2rem;margin:.9rem 0;display:flex;flex-direction:column;gap:.45rem}.code-chip{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;padding:.05rem .45rem;cursor:pointer;white-space:nowrap}.code-chip code{font-size:.9em}.status{padding:.5rem .75rem;border-radius:10px;font-size:.92rem}.status.ok{background:color-mix(in srgb,#00ba7c 14%,transparent)}.status.warn{background:color-mix(in srgb,#ffd400 20%,transparent)}.how{width:100%;border-collapse:collapse;margin-bottom:.8rem}.how th,.how td{text-align:left;vertical-align:top;padding:.5rem .5rem .5rem 0;border-bottom:1px solid var(--border);font-size:.95rem}.how th{width:38%;font-weight:600}@media(max-width:480px){.step{gap:.7rem}.how th,.how td{display:block;width:auto;padding:.15rem 0;border:0}.how tr{display:block;padding:.5rem 0;border-bottom:1px solid var(--border)}}.reactions{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.5rem}.comment .reactions{margin-top:.25rem}.reaction-pill{display:inline-flex;align-items:center;gap:.25rem;height:1.75rem;padding:0 .55rem;border-radius:999px;border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;font-size:.85rem;cursor:pointer}.reaction-pill:hover{border-color:var(--accent)}.reaction-pill.mine{border-color:var(--accent);background:var(--accent-soft)}.reaction-emoji{font-size:1rem;line-height:1}.reaction-count{font-weight:600;color:var(--muted)}.reaction-pill.mine .reaction-count{color:var(--accent)}.reaction-add-wrap{position:relative;display:inline-flex}.reaction-add{display:inline-grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:999px;border:1px solid transparent;background:none;color:var(--muted);cursor:pointer;opacity:.7}.reaction-add:hover,.reaction-add[aria-expanded=true]{opacity:1;color:var(--accent);background:var(--accent-soft)}@media(hover:hover){.comment .reaction-add{opacity:0}.comment:hover .reaction-add,.comment .reaction-add:focus-visible,.comment .reaction-add[aria-expanded=true]{opacity:.8}}@media(hover:none){.comment .reaction-add:not([aria-expanded=true]){display:none}}.comment-meta .reaction-add-wrap{align-self:center}.comment-meta .reaction-add{width:1.5rem;height:1.5rem}.reaction-picker{position:absolute;left:0;bottom:calc(100% + 6px);z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:0 6px 24px #00000029;padding:.25rem}.reaction-picker.below{bottom:auto;top:calc(100% + 6px)}.reaction-picker.full{position:fixed;left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%)!important;border-radius:14px;padding:0;overflow:hidden;z-index:50;box-shadow:0 12px 48px #0000004d}.reaction-quick{display:flex;gap:.1rem}.reaction-quick button{width:2.5rem;height:2.5rem;border-radius:999px;border:0;background:none;font-size:1.45rem;cursor:pointer;transition:transform .1s;line-height:1}.reaction-quick button:hover{transform:scale(1.18);background:var(--accent-soft)}.reaction-quick button.selected{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.reaction-quick .reaction-more{font-size:1.3rem;color:var(--muted);font-weight:300}.emoji-picker-host emoji-picker{width:min(360px,calc(100vw - 32px));height:min(400px,calc(100vh - 120px));--border-size: 0}@media(prefers-color-scheme:dark){.emoji-picker-host emoji-picker{--background: var(--surface)}}.xv{position:relative;background:#000;overflow:hidden;outline:none;line-height:0;color:#fff}.xv:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.xv video{display:block;width:100%;max-height:520px;object-fit:contain;background:#000;cursor:pointer}.xv.fill,.xv.fill video{height:100%}.xv.fill{aspect-ratio:1}.xv.fill video{max-height:none;object-fit:cover}.xv.fullscreen{display:grid;place-items:center}.xv.fullscreen video{max-height:100vh;height:100vh;object-fit:contain}.xv button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;display:inline-grid;place-items:center}.xv-bigplay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;background:var(--accent)!important;border:4px solid #fff!important;box-shadow:0 2px 12px #00000059}.xv-bigplay svg{margin-left:4px}.xv-bigplay:hover{filter:brightness(1.08)}.xv-badge{position:absolute;left:10px;bottom:10px;padding:2px 6px;border-radius:4px;background:#000000b3;font-size:13px;font-weight:700;line-height:18px;letter-spacing:.02em;pointer-events:none}.xv-corner{position:absolute;right:10px;bottom:10px;width:32px;height:32px;border-radius:50%;background:#000000b3!important}.xv-corner svg{width:18px;height:18px}.xv-bar{position:absolute;left:0;right:0;bottom:0;padding:18px 12px 6px;line-height:1;background:linear-gradient(to top,#000000bf,#0000)}.xv-row{display:flex;align-items:center;gap:10px;height:34px}.xv-row button{width:32px;height:32px;border-radius:50%}.xv-row button:hover{background:#ffffff26}.xv-time{font-size:13px;font-variant-numeric:tabular-nums}.xv-spacer{flex:1}.xv-scrub{-webkit-appearance:none;appearance:none;width:100%;height:14px;margin:0;padding:0;border:0;background:transparent;cursor:pointer}.xv-scrub::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:linear-gradient(to right,var(--accent) var(--pct),rgba(255,255,255,.35) var(--pct))}.xv-scrub::-moz-range-track{height:4px;border-radius:2px;background:#ffffff59}.xv-scrub::-moz-range-progress{height:4px;border-radius:2px;background:var(--accent)}.xv-scrub::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;margin-top:-4px;border-radius:50%;background:var(--accent);border:0}.xv-scrub::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--accent);border:0}.xv-spinner{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;animation:xv-spin .8s linear infinite;pointer-events:none}@keyframes xv-spin{to{transform:rotate(360deg)}}.xv-error{display:grid;place-items:center;min-height:200px;background-size:cover;background-position:center;line-height:1.4}.xv-error a{background:#000000bf;color:#fff;padding:.6rem .9rem;border-radius:999px;font-size:.9rem}@media(prefers-reduced-motion:reduce){.xv-spinner{animation-duration:2s}}.tweet-quote{margin-top:.6rem;border:1px solid var(--border);border-radius:12px;padding:.6rem .7rem}.tweet-quote-head{display:flex;align-items:center;gap:.35rem;color:var(--text);font-size:.92rem;min-width:0}.tweet-quote-head:hover{text-decoration:none}.tweet-quote-head:hover .tweet-name{text-decoration:underline}.tweet-quote-head>*{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tweet-quote-head .avatar{flex-shrink:0}.tweet-quote .tweet-text{margin-top:.35rem;font-size:.95rem}.tweet-quote .tweet-media{margin-top:.5rem}.tweet-quote .tweet-media img,.tweet-quote .xv video{max-height:360px}.pref-row{font-weight:500}.composer{padding:.8rem 1rem}.composer-main{display:flex;gap:.7rem;align-items:flex-start}.composer-body{flex:1;min-width:0}.composer textarea{border:0;background:transparent;padding:.45rem 0;font-size:1.15rem;line-height:1.4;resize:none;overflow-y:auto}.composer textarea:focus{outline:none}.composer-audience{margin:.15rem 0 .35rem;color:var(--accent);font-size:.9rem;font-weight:600}.composer-actions{display:flex;align-items:center;gap:.6rem;margin-top:.5rem;padding-top:.6rem;border-top:1px solid var(--border)}.composer-actions .button{padding:.45rem 1.1rem}.post-body{font-size:1.05rem;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 .4rem}.comment-meta{flex-wrap:nowrap;min-width:0}.comment-meta>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comment-meta>.x-handle,.comment-meta>.muted,.comment-meta>.reaction-add-wrap,.comment-meta>.link-button{flex-shrink:0;white-space:nowrap}
