.soc-gate{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.soc-gate p{color:var(--muted);max-width:34ch}.soc-avatar{background:color-mix(in srgb, var(--c,var(--lav)) 22%, transparent);width:42px;height:42px;color:var(--c,var(--lav));font:700 16px var(--head);border:1px solid color-mix(in srgb, var(--c,var(--lav)) 30%, transparent);border-radius:50%;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.soc-avatar img{object-fit:cover;width:100%;height:100%;display:block}.soc-avatar.lg{width:72px;height:72px;font-size:28px}.soc-avatar.sm{width:30px;height:30px;font-size:13px}.soc-form{gap:10px;display:flex}.soc-form input[type=text],.soc-input{background:var(--glass-2);border:1px solid var(--line);min-width:0;height:42px;color:var(--fg);border-radius:14px;flex:1;padding:0 14px}.soc-input.area{resize:none;height:auto;min-height:42px;padding:10px 14px;line-height:1.4}.soc-note{color:var(--muted);font-size:13px}.soc-note.err{color:#ff8f8f}.soc-note.ok{color:var(--mint)}.soc-list{flex-direction:column;gap:10px;display:flex}.soc-row{border-radius:var(--r-row);background:var(--glass);border:1px solid var(--line);align-items:center;gap:12px;padding:12px;display:flex}.soc-row.link{cursor:pointer;text-align:left;width:100%;transition:background .2s}.soc-row.link:hover{background:var(--glass-2)}.soc-row .body{flex:1;min-width:0}.soc-row h4{font:700 14px/1.3 var(--head);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.soc-row p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;overflow:hidden}.soc-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:8px;display:flex}.btn.sm{border-radius:12px;height:34px;padding:0 12px;font-size:13px}.soc-empty{color:var(--muted);text-align:center;padding:18px 0;font-size:14px}.soc-thread{flex-direction:column;height:calc(100dvh - 150px);min-height:360px;display:flex}.soc-thread-head{align-items:center;gap:10px;padding-bottom:12px;display:flex}.soc-thread-head h2{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.soc-msgs{flex-direction:column;flex:1;gap:8px;padding:6px 2px 10px;display:flex;overflow-y:auto}.soc-msg{background:var(--glass-2);border:1px solid var(--line);overflow-wrap:anywhere;white-space:pre-wrap;border-radius:18px;max-width:82%;padding:9px 13px}.soc-msg.mine{background:color-mix(in srgb, var(--lime) 18%, transparent);border-color:color-mix(in srgb, var(--lime) 32%, transparent);align-self:flex-end}.soc-msg b{font:700 11px var(--head);color:var(--lav);margin-bottom:2px;display:block}.soc-msg time{color:var(--muted);margin-top:3px;font-size:10px;display:block}.soc-compose{align-items:flex-end;gap:10px;padding-top:10px;display:flex}.soc-compose .soc-input{flex:1}.soc-pick{flex-direction:column;gap:8px;display:flex}.soc-pick label{background:var(--glass);border:1px solid var(--line);cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.soc-pick input{width:18px;height:18px;accent-color:var(--lime)}.soc-hero{align-items:center;gap:16px;display:flex}.soc-hero h1{font-size:26px}.soc-weekdots{text-align:center;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:14px;display:grid}.soc-weekdots span{color:var(--muted);letter-spacing:.1em;flex-direction:column;align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.soc-weekdots i{background:#ffffff12;border-radius:50%;width:28px;height:28px;display:block}.soc-weekdots .on i{background:var(--lime);box-shadow:0 0 12px #ccff0059}.soc-hist{align-items:center;gap:12px;display:flex}.soc-hist .body{flex:1;min-width:0}.soc-hist .bar{margin-top:8px}.soc-hist .pct{font:700 16px var(--mono)}.soc-tab-note{margin-top:4px}
