:root{
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  color:#1d1d1f;background:#f5f5f7;font-synthesis:none;text-rendering:optimizeLegibility;
  --bg:#f5f5f7;--panel:rgba(255,255,255,.88);--panel-solid:#fff;--text:#1d1d1f;--muted:#6e6e73;--line:#e5e5e7;--blue:#0071e3;--blue2:#0066cc;--danger:#d92d20;--green:#16803c;--shadow:0 12px 40px rgba(0,0,0,.07);--radius:22px;
}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;background:radial-gradient(circle at 50% -20%,#fff 0,#f5f5f7 38%,#f5f5f7 100%);color:var(--text)}button,input,textarea,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(0,113,227,.25);outline-offset:2px}a{color:var(--blue2)}
.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:50;height:64px;background:rgba(250,250,252,.78);backdrop-filter:saturate(180%) blur(22px);border-bottom:1px solid rgba(0,0,0,.06)}.topbar-inner{max-width:1220px;height:100%;margin:auto;padding:0 20px;display:flex;align-items:center;gap:26px}.brand{border:0;background:none;padding:0;display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;cursor:pointer;white-space:nowrap}.brand-mark{width:31px;height:31px;border-radius:10px;background:#1d1d1f;color:#fff;display:grid;place-items:center;font-size:12px;letter-spacing:.5px}.nav-links{display:flex;align-items:center;gap:6px;flex:1}.nav-links button{border:0;background:transparent;border-radius:999px;padding:8px 13px;color:#5f5f63;font-size:14px;cursor:pointer}.nav-links button:hover,.nav-links button.active{background:rgba(0,0,0,.055);color:#111}.top-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.user-pill{border:0;background:rgba(0,0,0,.045);display:flex;align-items:center;gap:8px;border-radius:999px;padding:4px 9px 4px 4px;cursor:pointer}.user-pill>span:not(.role-badge){font-size:13px;font-weight:600}.icon-btn{width:36px;height:36px;border:0;border-radius:50%;background:rgba(0,0,0,.055);display:grid;place-items:center;cursor:pointer}.icon-btn:hover{background:rgba(0,0,0,.09)}.icon-btn.subtle{background:transparent;color:#777}.icon-btn.subtle:hover{background:#f1f1f3}.mobile-only{display:none}
.primary-btn,.dark-btn,.soft-btn,.mini-btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;transition:.18s ease}.primary-btn{background:var(--blue);color:#fff;border-radius:999px;padding:10px 17px;font-weight:600}.primary-btn:hover{background:#0077ed;transform:translateY(-1px)}.primary-btn:disabled,.dark-btn:disabled,.soft-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.dark-btn{background:#1d1d1f;color:#fff;border-radius:999px;padding:10px 16px;font-weight:600}.dark-btn:hover{background:#000}.soft-btn{background:#f2f2f4;border-radius:999px;padding:9px 13px;color:#424245;font-size:13px}.soft-btn:not(:disabled):hover{background:#e9e9ec}.mini-btn{background:#ededf0;border-radius:8px;padding:7px 9px;font-size:12px}.mini-btn.danger{color:var(--danger);background:#fff0ef}.full{width:100%}.link-btn{border:0;background:none;color:var(--blue2);cursor:pointer;padding:0}.link-btn small{color:#777}.danger-icon{color:var(--danger);background:#fff1f0}
.feed-layout{max-width:1140px;margin:34px auto 80px;padding:0 20px;display:grid;grid-template-columns:minmax(0,760px) 300px;gap:24px}.feed-main{min-width:0}.feed-side{display:flex;flex-direction:column;gap:16px}.composer,.post-card,.side-card,.welcome-card,.empty-card,.bootstrap-card,.settings-card,.table-card,.metric-card,.info-panel,.warning-panel,.report-card,.content-list,.log-list{background:var(--panel);backdrop-filter:blur(14px);border:1px solid rgba(0,0,0,.055);box-shadow:0 1px 0 rgba(255,255,255,.7) inset;border-radius:var(--radius)}.composer{padding:22px;margin-bottom:18px}.composer-top{display:flex;align-items:center;gap:11px;margin-bottom:14px}.composer-top>div:last-child{display:flex;flex-direction:column;gap:2px}.composer-top b{font-size:14px}.composer-top span{font-size:12px;color:var(--muted)}.composer input,.composer textarea,.settings-card textarea,.settings-card input,.form-stack input,.bootstrap-form input,.search-box input,.comment-compose textarea{width:100%;border:1px solid #dedee2;background:#fff;border-radius:13px;color:#1d1d1f}.composer-title{padding:12px 13px;font-size:18px;font-weight:650;margin-bottom:9px}.composer textarea{resize:vertical;min-height:104px;padding:13px;line-height:1.65}.composer-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:13px}.composer-submit-icon{width:40px;height:40px;min-width:40px;flex:0 0 40px;padding:0;border-radius:50%}.composer-submit-icon .glyph-icon{display:grid;place-items:center;line-height:1}.media-actions{display:flex;gap:7px;flex-wrap:wrap}.off-dot{font-size:9px;font-weight:800;background:#d9d9de;color:#777;padding:2px 5px;border-radius:99px}.media-chip{margin-top:10px;display:inline-flex;align-items:center;gap:7px;background:#edf5ff;color:#075ba8;padding:7px 10px;border-radius:10px;font-size:12px}.media-chip button{border:0;background:none;padding:0;display:grid;place-items:center;color:inherit;cursor:pointer}.restricted-banner{display:flex;align-items:center;gap:8px;background:#fff2f0;color:#9f261b;border-radius:12px;padding:9px 11px;font-size:13px;margin-bottom:12px}
.post-card{padding:22px;margin-bottom:15px}.post-card header{display:flex;justify-content:space-between;align-items:flex-start}.author-row{display:flex;gap:11px;align-items:center}.author-row>div:last-child{display:flex;flex-direction:column;gap:4px}.author-row>div:last-child>span{font-size:12px;color:var(--muted)}.name-line{display:flex;align-items:center;gap:8px}.name-line b{font-size:14px}.post-menu{display:flex;gap:3px}.post-card h2{font-size:22px;letter-spacing:-.3px;margin:17px 0 7px}.post-content{white-space:pre-wrap;line-height:1.72;color:#3c3c40;margin:0}.post-media{display:block;width:100%;max-height:520px;object-fit:contain;background:#111;border-radius:16px;margin-top:16px}.post-audio{width:100%;margin-top:16px}.post-card footer{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:18px;padding-top:10px}.post-card footer button{border:0;background:none;display:flex;align-items:center;justify-content:center;gap:6px;color:#6e6e73;padding:8px;border-radius:10px;cursor:pointer}.post-card footer button:hover{background:#f3f3f5}.post-card footer button.active{color:#e24960}.post-card footer span{font-size:12px;font-weight:600}.post-card footer em{font-style:normal;font-size:12px}.repost-note{display:flex;align-items:center;gap:5px;background:#f4f4f6;padding:8px 10px;border-radius:10px;color:#6b6b70;font-size:12px;margin-top:13px}.role-badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:999px;font-size:9px;font-weight:700;white-space:nowrap;background:#ececef;color:#68686d}.role-moderator{background:#eaf3ff;color:#1564b5}.role-advanced_admin{background:#eee9ff;color:#6550b8}.role-operator{background:#1d1d1f;color:#fff}.role-restricted{background:#fff0ef;color:#b03228}.avatar{object-fit:cover;border-radius:50%;flex:0 0 auto}.avatar-fallback{display:grid;place-items:center;background:linear-gradient(145deg,#e1e6ef,#b9c5d6);color:#2f3a4b;font-weight:750}
.welcome-card{padding:38px;margin-bottom:18px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(245,248,255,.96))}.welcome-card h1{font-size:35px;line-height:1.08;letter-spacing:-1.15px;margin:8px 0 14px}.welcome-card p{max-width:540px;line-height:1.65;color:var(--muted);margin:0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.25px;color:#777b82}.feed-heading{display:flex;align-items:center;justify-content:space-between;margin:28px 2px 13px}.feed-heading h2{font-size:18px;margin:0}.feed-heading span{font-size:12px;color:var(--muted)}.feed-heading>div{display:flex;align-items:baseline;gap:9px}.empty-card{padding:60px 20px;text-align:center;color:#777}.empty-card h3{color:#333;margin:10px 0 4px}.empty-card p{margin:0}.side-card{padding:18px}.side-head{display:flex;align-items:center;gap:8px;font-size:14px}.side-card>p{font-size:13px;line-height:1.6;color:var(--muted)}.feature-list{display:flex;flex-direction:column;gap:8px}.feature-list span{display:flex;align-items:center;gap:6px;font-size:12px}.feature-list svg{color:var(--green)}.media-status{display:flex;flex-direction:column;margin-top:12px}.media-status>span{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-top:1px solid #eee;font-size:12px}.toggle{width:38px;height:22px;border:0;border-radius:999px;background:#d5d5da;padding:2px;cursor:pointer;transition:.2s}.toggle span{display:block;width:18px;height:18px;background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:.2s}.toggle.on{background:#35c759}.toggle.on span{transform:translateX(16px)}.toggle:disabled{cursor:default;opacity:.8}
.bootstrap-card{padding:24px;margin-bottom:18px;display:grid;grid-template-columns:auto 1fr 1fr;gap:18px;align-items:center;background:linear-gradient(135deg,#1d1d1f,#333338);color:#fff}.bootstrap-icon{width:50px;height:50px;border-radius:16px;background:rgba(255,255,255,.1);display:grid;place-items:center}.bootstrap-copy h2{margin:5px 0 8px;font-size:19px}.bootstrap-copy p{margin:0;color:#c8c8cc;font-size:12px;line-height:1.55}.bootstrap-form{display:flex;flex-direction:column;gap:7px}.bootstrap-form input{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff;border-radius:10px;padding:9px 10px}.bootstrap-form input::placeholder{color:#9a9aa0}.bootstrap-form .dark-btn{background:#fff;color:#111}.bootstrap-card .eyebrow{color:#aaaab1}
.modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(10,10,12,.36);backdrop-filter:blur(8px);display:grid;place-items:center;padding:22px}.modal-card{width:min(460px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:24px;box-shadow:0 30px 100px rgba(0,0,0,.25);padding:24px}.modal-wide{width:min(760px,100%)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.modal-head h2{margin:4px 0 0;font-size:24px;letter-spacing:-.45px}.segmented{background:#f0f0f2;padding:3px;border-radius:11px;display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:20px 0}.segmented button{border:0;background:transparent;border-radius:8px;padding:8px;cursor:pointer;color:#6b6b70}.segmented button.active{background:#fff;color:#111;box-shadow:0 1px 4px rgba(0,0,0,.08);font-weight:600}.segmented.compact{display:flex;margin:0}.segmented.compact button{padding:7px 14px}.form-stack{display:flex;flex-direction:column;gap:13px}.form-stack label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600}.form-stack input{padding:11px 12px}.inline-error{display:flex;align-items:center;gap:7px;background:#fff1ef;color:#a62a1e;border-radius:10px;padding:9px 10px;font-size:12px}.muted-note{display:flex;align-items:center;gap:6px;margin-top:12px;color:#777;font-size:11px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.drop-zone{height:250px;margin-top:18px;border:1.5px dashed #c9c9ce;border-radius:18px;background:#fafafd;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;cursor:pointer}.drop-zone span{font-size:12px;color:#777}.crop-wrap{position:relative;width:280px;height:280px;margin:20px auto;border-radius:18px;overflow:hidden;background:#151518;touch-action:none}.crop-wrap canvas{display:block;width:280px;height:280px;cursor:grab}.crop-circle{position:absolute;inset:24px;border:2px solid rgba(255,255,255,.92);border-radius:50%;pointer-events:none;box-shadow:0 0 0 80px rgba(0,0,0,.38)}.zoom-row{display:grid;grid-template-columns:45px 1fr 45px;align-items:center;gap:8px;font-size:12px;color:#666}.thread-summary{margin:14px 0;background:#f7f7f9;border-radius:12px;padding:12px 14px;color:#555;font-size:13px;line-height:1.55}.comments-scroll{max-height:48vh;overflow:auto;padding:5px 2px}.comment{display:flex;gap:9px;margin:12px 0}.comment-body{flex:1;min-width:0}.comment-meta{display:flex;align-items:center;gap:6px}.comment-meta b{font-size:12px}.comment-meta>span:last-child{color:#888;font-size:10px}.comment-body p{font-size:13px;line-height:1.55;margin:5px 0 4px;white-space:pre-wrap}.comment-actions{display:flex;gap:3px}.comment-actions button{border:0;background:none;color:#777;padding:3px 6px;border-radius:7px;display:flex;gap:4px;align-items:center;cursor:pointer;font-size:10px}.comment-actions button:hover{background:#f2f2f4}.comment-actions button.active{color:#e24960}.comment-compose{border-top:1px solid #eee;padding-top:13px;margin-top:12px}.comment-compose>div:last-child{display:flex;align-items:flex-end;gap:8px}.comment-compose textarea{padding:9px 10px;resize:none}.replying{display:flex;align-items:center;gap:5px;font-size:11px;color:#777;margin-bottom:7px}.replying button{border:0;background:none;padding:0;display:grid;place-items:center}.empty-state{padding:30px;text-align:center;color:#888;font-size:13px}
.page-width{max-width:920px;margin:40px auto 90px;padding:0 20px}.profile-shell{display:flex;flex-direction:column;gap:18px}.profile-hero{padding:30px 10px;display:flex;align-items:center;gap:25px}.profile-hero h1{font-size:40px;letter-spacing:-1.2px;margin:5px 0 8px}.profile-avatar-wrap{position:relative}.profile-avatar-wrap>button{position:absolute;right:2px;bottom:2px;width:34px;height:34px;border-radius:50%;border:3px solid var(--bg);background:#1d1d1f;color:#fff;display:grid;place-items:center;cursor:pointer}.profile-role{display:flex;align-items:center;gap:10px}.profile-role>span:last-child{font-size:12px;color:#777}.settings-card{padding:24px}.settings-card h3{margin:0;font-size:17px}.settings-card>p{margin:6px 0 14px;color:#777;font-size:12px}.settings-card textarea{padding:12px;resize:vertical}.form-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.form-footer span{font-size:11px;color:#888}.permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.permission-grid>div{background:#f7f7f9;border-radius:13px;padding:15px;display:flex;flex-direction:column;gap:5px}.permission-grid span{font-size:10px;color:#888}.permission-grid b{font-size:13px}
.admin-width{max-width:1320px;margin:28px auto 80px;padding:0 20px}.admin-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px}.admin-side{position:sticky;top:86px;height:max-content;background:#1d1d1f;color:#fff;border-radius:20px;padding:10px}.admin-title{display:flex;align-items:center;gap:9px;padding:12px 11px 16px;font-size:13px;font-weight:700}.admin-side>button{width:100%;border:0;background:transparent;color:#bfbfc5;border-radius:11px;padding:10px 11px;display:flex;align-items:center;gap:9px;text-align:left;cursor:pointer;font-size:12px}.admin-side>button:hover,.admin-side>button.active{background:#333337;color:#fff}.admin-main{min-width:0}.admin-head{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin:4px 2px 22px}.admin-head h1{font-size:30px;letter-spacing:-.7px;margin:5px 0 5px}.admin-head p{margin:0;color:#777;line-height:1.5;font-size:12px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric-card{padding:18px;display:grid;grid-template-columns:auto 1fr;gap:9px 10px;align-items:center}.metric-card svg{color:#74747a}.metric-card span{font-size:11px;color:#777}.metric-card strong{grid-column:1/-1;font-size:30px;letter-spacing:-1px}.info-panel,.warning-panel{margin-top:15px;padding:18px;display:flex;gap:12px;align-items:flex-start}.info-panel svg{color:#2e78c6}.info-panel b,.warning-panel b{font-size:13px}.info-panel p,.warning-panel p{margin:5px 0 0;color:#777;font-size:12px;line-height:1.6}.warning-panel{background:#fffaf1}.warning-panel svg{color:#c78b19}.search-box{display:flex;align-items:center;gap:7px;background:#fff;border:1px solid #dddde1;border-radius:12px;padding-left:10px}.search-box input{border:0;background:transparent;padding:9px 4px;min-width:190px}.search-box input:focus{outline:0}.search-box button{border:0;background:#1d1d1f;color:#fff;border-radius:9px;margin:3px;padding:6px 10px;cursor:pointer;font-size:11px}.table-card{overflow:auto}.table-card table{width:100%;border-collapse:collapse;min-width:950px}.table-card th{text-align:left;padding:11px 13px;color:#8b8b90;font-size:10px;font-weight:700;border-bottom:1px solid #ececef}.table-card td{padding:11px 13px;border-bottom:1px solid #f0f0f2;font-size:11px;vertical-align:middle}.table-card tr:last-child td{border-bottom:0}.table-user{display:flex;align-items:center;gap:9px}.table-user>div{display:flex;flex-direction:column;gap:2px}.table-user b{font-size:12px}.table-user span{font-size:9px;color:#999;max-width:155px;overflow:hidden;text-overflow:ellipsis}.status-dot{display:inline-flex;align-items:center;gap:5px;font-size:10px;border-radius:99px;padding:4px 7px;background:#f0f0f2;color:#666}.status-active{background:#eaf8ee;color:#267544}.status-restricted,.status-banned,.status-open{background:#fff0ef;color:#aa3329}.status-reviewing{background:#fff6e6;color:#9c6e17}.status-resolved{background:#eaf8ee;color:#267544}.row-actions{display:flex;align-items:center;gap:5px}.row-actions select{border:1px solid #dddde1;background:#fff;border-radius:8px;padding:6px;font-size:10px;max-width:120px}.ip-list{margin-top:15px;display:flex;flex-direction:column;gap:8px}.ip-list>div{background:#f7f7f9;border-radius:12px;padding:11px;display:grid;grid-template-columns:1fr auto;gap:3px}.ip-list b{font-size:12px}.ip-list span{font-size:10px;color:#555}.ip-list small{grid-column:1/-1;color:#999;font-size:9px}.content-list{overflow:hidden}.content-row{display:flex;justify-content:space-between;gap:20px;padding:17px 18px;border-bottom:1px solid #eee}.content-row:last-child{border-bottom:0}.content-row.deleted{opacity:.45}.content-row h3{font-size:14px;margin:6px 0}.content-row p{max-width:850px;margin:4px 0;color:#555;line-height:1.55;font-size:12px;white-space:pre-wrap}.content-row small{color:#999;font-size:9px}.content-meta{display:flex;align-items:center;gap:8px}.content-meta b{font-size:11px}.content-meta span{font-size:10px;color:#888}.deleted-tag{background:#eee;padding:2px 5px;border-radius:99px}.report-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-card{padding:18px}.report-top{display:flex;justify-content:space-between}.report-top small{color:#888;font-size:10px}.report-card h3{font-size:15px;margin:12px 0 6px}.report-card>p{font-size:12px;color:#555;line-height:1.5}.report-target{background:#f6f6f8;border-radius:10px;padding:9px;font-size:10px;color:#777;line-height:1.6}.report-actions{display:flex;gap:6px;margin-top:10px}.field-row{display:grid;grid-template-columns:1fr 280px;gap:20px;align-items:center;padding-bottom:18px;border-bottom:1px solid #eee}.field-row>div,.setting-row>div:nth-child(2){display:flex;flex-direction:column;gap:4px}.field-row b,.setting-row b{font-size:13px}.field-row span,.setting-row span{font-size:10px;color:#888}.field-row input{padding:9px 10px}.setting-row{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:15px 0;border-bottom:1px solid #eee}.setting-icon{width:34px;height:34px;border-radius:10px;background:#f1f1f3;display:grid;place-items:center}.settings-save{display:flex;justify-content:flex-end;padding-top:17px}.log-list{overflow:hidden}.log-row{display:grid;grid-template-columns:10px 1fr auto;gap:10px;padding:14px 16px;border-bottom:1px solid #eee;align-items:start}.log-row:last-child{border-bottom:0}.log-dot{width:8px;height:8px;border-radius:50%;background:#7c7c82;margin-top:5px}.log-row>div:nth-child(2){display:flex;flex-direction:column;gap:3px}.log-row b{font-size:11px}.log-row span,.log-row time{font-size:9px;color:#888}.log-row code{font-size:9px;color:#555;background:#f3f3f5;width:max-content;padding:2px 5px;border-radius:5px}
.toast{position:fixed;right:24px;bottom:24px;z-index:150;background:#1d1d1f;color:#fff;border-radius:14px;padding:12px 14px;box-shadow:var(--shadow);display:flex;align-items:center;gap:9px;font-size:12px;max-width:380px}.toast.error{background:#a92d24}.loading-page{min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.loading-orb{width:32px;height:32px;border-radius:50%;border:3px solid #ddd;border-top-color:#1d1d1f;animation:spin 1s linear infinite}.loading-page h2{font-size:18px;margin:15px 0 5px}.loading-page p{font-size:12px;color:#888;margin:0}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:980px){.feed-layout{grid-template-columns:1fr;max-width:780px}.feed-side{display:grid;grid-template-columns:1fr 1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}.admin-layout{grid-template-columns:1fr}.admin-side{position:static;display:flex;overflow:auto;align-items:center}.admin-title{white-space:nowrap}.admin-side>button{width:auto;white-space:nowrap}.report-list{grid-template-columns:1fr}.bootstrap-card{grid-template-columns:auto 1fr}.bootstrap-form{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.bootstrap-form .dark-btn,.bootstrap-form .inline-error{grid-column:1/-1}}
@media(max-width:720px){.topbar{height:58px}.topbar-inner{padding:0 13px;gap:10px}.brand>span:last-child{font-size:14px}.nav-links{position:absolute;top:58px;left:10px;right:10px;background:rgba(255,255,255,.96);box-shadow:var(--shadow);border-radius:16px;padding:7px;display:none;flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links button{text-align:left}.mobile-only{display:grid}.user-pill .role-badge,.user-pill>span:not(.role-badge){display:none}.feed-layout,.page-width,.admin-width{margin-top:20px;padding:0 12px}.feed-side{grid-template-columns:1fr}.welcome-card{padding:26px;display:block}.welcome-card h1{font-size:29px}.welcome-card .primary-btn{margin-top:20px}.composer,.post-card{padding:17px;border-radius:18px}.composer-bottom{align-items:flex-end}.media-actions .soft-btn span:not(.off-dot){display:none}.post-card h2{font-size:19px}.post-card footer em{display:none}.profile-hero{align-items:flex-start}.profile-hero h1{font-size:32px}.permission-grid{grid-template-columns:1fr}.admin-head{display:block}.admin-head>*:last-child{margin-top:13px}.search-box{width:100%}.search-box input{min-width:0}.field-row{grid-template-columns:1fr}.metric-grid{grid-template-columns:1fr 1fr}.bootstrap-card{display:block}.bootstrap-icon{margin-bottom:12px}.bootstrap-form{display:flex;margin-top:16px}.modal-backdrop{padding:10px}.modal-card{padding:18px;border-radius:20px}.post-card footer{grid-template-columns:repeat(4,1fr)}.crop-wrap{transform:scale(.9);margin:-2px auto}.toast{left:12px;right:12px;bottom:12px;max-width:none}}
@media(max-width:430px){.metric-grid{grid-template-columns:1fr}.post-card footer button{gap:3px}.role-badge{font-size:8px}.profile-hero{gap:16px}.profile-avatar-wrap .avatar{width:86px!important;height:86px!important}.admin-side{border-radius:15px}.admin-title{display:none}}
.glyph-icon{display:inline-flex;align-items:center;justify-content:center;min-width:1em;font-style:normal;font-weight:700}.mobile-nav{display:none}.open-desktop{display:flex}@media(max-width:720px){.open-desktop{display:none}.mobile-nav.open{display:flex;position:absolute;top:58px;left:10px;right:10px;background:rgba(255,255,255,.98);box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.06);border-radius:16px;padding:7px;flex-direction:column}.mobile-nav button{border:0;background:transparent;border-radius:10px;padding:10px 12px;text-align:left}.mobile-nav button:hover{background:#f2f2f4}}

.post-card footer button:disabled,.comment-actions button:disabled{opacity:.36;cursor:not-allowed;pointer-events:none}

.role-restore-hint{display:block;margin-top:4px;color:var(--muted);font-size:11px;white-space:nowrap}

/* v0.2 governance additions */
.quota-grid .metric-card small{grid-column:1/-1;color:#8b8b90;font-size:10px}.governance-card{margin-top:16px}.governance-card>p{color:#666;font-size:12px}.approval-inline{margin-top:14px;padding:13px 14px;border-radius:12px;background:#f4f4f6;display:flex;flex-direction:column;gap:5px}.approval-inline b{font-size:12px}.approval-inline span{font-size:10px;color:#777}.muted-cell{font-size:10px;color:#999}.numeric-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:18px}.numeric-settings label{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:12px;background:#f7f7f9}.numeric-settings span{font-size:10px;color:#666}.numeric-settings input{border:1px solid #dddde1;border-radius:9px;padding:8px 9px;background:#fff}.status-approved{background:#eaf8ee;color:#267544}.status-rejected,.status-expired,.status-cancelled{background:#f2f2f4;color:#666}.mini-btn.danger{background:#fff0ef;color:#a5362d;border-color:#f0c9c5}@media(max-width:720px){.numeric-settings{grid-template-columns:1fr}.quota-grid{grid-template-columns:1fr}}

/* v0.2.0-alpha2.5 · D1 post images */
.media-hint{align-self:center;color:#94949a;font-size:10px;white-space:nowrap}.media-provider-note{font-size:10px!important;color:#8b8b90!important;padding-left:2px}.image-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px}.image-upload-grid:empty{display:none}.image-upload-card{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr) 28px;gap:10px;align-items:center;padding:8px;background:#f6f6f8;border-radius:13px;min-width:0}.image-upload-card.failed{background:#fff1f0}.image-upload-preview{width:72px;height:72px;border-radius:10px;overflow:hidden;background:#ececef;display:grid;place-items:center}.image-upload-preview img{width:100%;height:100%;object-fit:cover}.image-processing{animation:imageSpin 1.1s linear infinite;color:#777}.image-upload-state{min-width:0;display:flex;flex-direction:column;gap:6px}.image-upload-state>span{font-size:10px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.image-upload-state small{font-size:9px;color:#8a8a90;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-progress{height:4px;border-radius:99px;overflow:hidden;background:#dedee3}.upload-progress i{display:block;height:100%;border-radius:inherit;background:#1d1d1f;transition:width .18s ease}.image-upload-card.failed .upload-progress i{background:#b6473d}.image-remove{border:0;background:transparent;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:#777}.image-remove:hover{background:#e4e4e8;color:#111}.image-remove:disabled{opacity:.35;cursor:default}@keyframes imageSpin{to{transform:rotate(360deg)}}
.post-image-grid{display:grid;gap:4px;margin:14px 0 3px;border-radius:16px;overflow:hidden;background:#f1f1f3}.post-image-tile,.legacy-image-button{border:0;padding:0;margin:0;background:#ececef;cursor:zoom-in;overflow:hidden;display:block;min-width:0}.post-image-tile img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s ease}.post-image-tile:hover img{transform:scale(1.012)}.post-image-grid.count-1{grid-template-columns:1fr;max-height:640px}.post-image-grid.count-1 .post-image-tile{max-height:640px}.post-image-grid.count-1 img{height:auto;max-height:640px;object-fit:contain;background:#f6f6f8}.post-image-grid.count-2{grid-template-columns:repeat(2,1fr);height:min(420px,52vw)}.post-image-grid.count-3{grid-template-columns:2fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));height:min(500px,58vw)}.post-image-grid.count-3 .post-image-tile:first-child{grid-row:1/3}.post-image-grid.count-4{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,minmax(0,1fr));height:min(520px,64vw)}.post-image-grid.count-5,.post-image-grid.count-6,.post-image-grid.count-7,.post-image-grid.count-8,.post-image-grid.count-9{grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(110px,190px)}.post-image-grid.count-5 .post-image-tile:first-child,.post-image-grid.count-5 .post-image-tile:nth-child(2){grid-column:span 1}.legacy-image-button{border-radius:15px;margin:14px 0 3px}.legacy-image-button .post-media{margin:0}.image-viewer{min-height:220px;display:grid;place-items:center;background:#111;border-radius:15px;overflow:hidden}.image-viewer img{max-width:100%;max-height:78vh;display:block;object-fit:contain}.image-viewer-head{margin-bottom:12px}
@media(max-width:900px){.image-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.image-upload-grid{grid-template-columns:1fr}.image-upload-card{grid-template-columns:62px minmax(0,1fr) 28px}.image-upload-preview{width:62px;height:62px}.media-hint{display:none}.post-image-grid{border-radius:13px}.post-image-grid.count-2{height:58vw}.post-image-grid.count-3,.post-image-grid.count-4{height:70vw}.post-image-grid.count-5,.post-image-grid.count-6,.post-image-grid.count-7,.post-image-grid.count-8,.post-image-grid.count-9{grid-auto-rows:minmax(90px,30vw)}}


/* v0.2.0-alpha2.7: Safari-safe user management list.
   Dynamic table markup was replaced with explicit grid rows so every API item
   has its own layout box and cannot disappear through table parsing/layout. */
.user-admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 2px 10px;color:#7d7d82;font-size:11px}.user-admin-toolbar b{color:#1d1d1f}.compact-btn{padding:6px 9px!important;font-size:10px!important}.user-admin-list{background:var(--panel);backdrop-filter:blur(14px);border:1px solid rgba(0,0,0,.055);box-shadow:0 1px 0 rgba(255,255,255,.7) inset;border-radius:var(--radius);overflow:hidden}.user-admin-header,.user-admin-row{display:grid;grid-template-columns:minmax(210px,1.35fr) minmax(140px,.85fr) minmax(90px,.55fr) minmax(170px,1fr) minmax(110px,.7fr) minmax(160px,1fr);align-items:center}.user-admin-header{color:#8b8b90;font-size:10px;font-weight:700;border-bottom:1px solid #ececef;background:rgba(248,248,250,.72)}.user-admin-header>span{padding:11px 13px}.user-admin-row{min-height:58px;border-bottom:1px solid #f0f0f2}.user-admin-row:last-child{border-bottom:0}.user-admin-row:hover{background:rgba(247,247,249,.72)}.user-admin-cell{padding:10px 13px;min-width:0;font-size:11px}.user-admin-identity{display:flex;align-items:center;gap:9px}.user-admin-identity>div{display:flex;flex-direction:column;gap:2px;min-width:0}.user-admin-identity b{font-size:12px}.user-admin-identity span{font-size:9px;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role-stack{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.user-admin-security{overflow:hidden}.user-admin-security .link-btn{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-admin-cell .row-actions{flex-wrap:wrap}
@media(max-width:1050px){.user-admin-list{overflow-x:auto}.user-admin-header,.user-admin-row{min-width:980px}}
@media(max-width:720px){.user-admin-header{display:none}.user-admin-list{overflow:visible;background:transparent;border:0;box-shadow:none}.user-admin-row{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--panel);border:1px solid rgba(0,0,0,.055);border-radius:15px;margin-bottom:9px;overflow:hidden}.user-admin-row:last-child{border-bottom:1px solid rgba(0,0,0,.055)}.user-admin-row:hover{background:var(--panel)}.user-admin-cell{padding:10px 12px;border-bottom:1px solid #f1f1f3}.user-admin-cell::before{content:attr(data-label);display:block;color:#999;font-size:9px;font-weight:700;margin-bottom:5px}.user-admin-identity{grid-column:1/-1}.user-admin-cell:last-child{grid-column:1/-1;border-bottom:0}.user-admin-toolbar{align-items:flex-start}.user-admin-toolbar span{line-height:1.5}}


/* v0.2.0-alpha2.8: favorites, rich reposts, region policy and D1 observability */
.repost-embed{margin:14px 0 2px;padding:14px;border:1px solid #e5e5e8;border-radius:14px;background:rgba(248,248,250,.78)}.repost-embed.unavailable{display:flex;gap:10px;align-items:center;color:#777}.repost-embed.unavailable div{display:flex;flex-direction:column}.repost-embed.unavailable span{font-size:11px}.repost-source{display:flex;align-items:center;gap:8px;margin-bottom:10px}.repost-source>div{display:flex;flex-direction:column;min-width:0;flex:1}.repost-source>div span{font-size:10px;color:#999}.repost-embed h3{font-size:14px;margin:0 0 7px}.repost-embed>p{font-size:12px;color:#4d4d50;line-height:1.65;margin:0 0 10px}.repost-minimal{font-size:10px;color:#999}.repost-compose-preview{padding:12px;border:1px solid #ececef;background:#fafafa;border-radius:12px;margin-bottom:12px}.repost-compose-preview b{font-size:12px}.repost-compose-preview p{max-height:90px;overflow:hidden;font-size:11px;color:#666;line-height:1.55}.repost-compose-preview>span{font-size:10px;color:#777}.form-label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:650}.form-label textarea{width:100%;box-sizing:border-box}.repost-options{display:grid;gap:8px;margin:12px 0}.repost-options label{display:flex;gap:9px;align-items:flex-start;padding:10px;border:1px solid #e8e8eb;border-radius:12px}.repost-options label>span{display:flex;flex-direction:column;gap:2px}.repost-options small{font-size:9px;color:#999}.disabled-option{opacity:.5}.favorites-page{padding-top:24px}.favorites-feed{display:grid;gap:14px;max-width:780px}.region-policy-card{display:grid;gap:16px}.current-region{display:flex;align-items:center;gap:10px;padding:12px;border-radius:12px;background:#f7f7f8}.current-region>div{display:flex;flex-direction:column}.current-region span{font-size:10px;color:#888}.region-mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.region-mode{border:1px solid #e4e4e7;border-radius:13px;padding:12px;display:grid;grid-template-columns:auto 1fr;column-gap:8px;cursor:pointer}.region-mode input{grid-row:1/3}.region-mode b,.region-mode span{display:block}.region-mode span{font-size:10px;color:#888;margin-top:3px}.region-mode.active{border-color:#777;background:#f7f7f8}.region-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.country-search{display:flex;align-items:center;gap:6px;flex:1;min-width:200px;border:1px solid #e4e4e7;border-radius:12px;padding:0 10px}.country-search input{border:0;background:transparent;padding:9px 0;width:100%;outline:none}.region-tools>span{font-size:10px;color:#777}.country-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;max-height:440px;overflow:auto;padding-right:3px}.country-option{display:flex;align-items:center;gap:8px;padding:8px 9px;border:1px solid #ececef;border-radius:10px;cursor:pointer}.country-option:has(input:checked){background:#f4f4f6;border-color:#bdbdc3}.country-option span{display:flex;flex-direction:column;min-width:0}.country-option b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.country-option small{font-size:9px;color:#999}.database-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.db-usage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.db-usage-head h3{margin:0}.db-usage-head p{font-size:10px;color:#888}.db-usage-head>b{font-size:20px}.db-progress{height:12px;border-radius:999px;background:#ececef;overflow:hidden;margin-top:14px}.db-progress span{display:block;height:100%;background:currentColor;border-radius:inherit}.db-scale{display:flex;justify-content:space-between;color:#999;font-size:9px;margin-top:4px}.db-count-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.db-count-grid>div{padding:10px;border:1px solid #ededf0;border-radius:11px;display:flex;flex-direction:column}.db-count-grid span{font-size:9px;color:#888}.db-count-grid b{font-size:16px;margin-top:3px}
@media(max-width:900px){.country-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.db-count-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.database-metrics{grid-template-columns:1fr}}
@media(max-width:620px){.region-mode-grid{grid-template-columns:1fr}.country-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.db-count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v0.2.0-alpha3.0: D1 post video upload and playback */
.video-upload-slot:empty{display:none}.video-upload-slot{margin-top:10px}.video-upload-card{display:grid;grid-template-columns:128px minmax(0,1fr) 28px;gap:11px;align-items:center;padding:9px;background:#f6f6f8;border-radius:14px}.video-upload-card.failed{background:#fff1f0}.video-upload-preview{width:128px;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#111;display:grid;place-items:center}.video-upload-preview video{width:100%;height:100%;display:block;object-fit:cover}.video-upload-state{min-width:0;display:flex;flex-direction:column;gap:6px}.video-upload-state>span{font-size:10px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.video-upload-state small{font-size:9px;color:#8a8a90;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.video-upload-card.failed .upload-progress i{background:#b6473d}.post-video-wrap{margin-top:16px}.post-video-wrap .post-media{margin-top:0}.post-video-meta{display:block;margin:6px 4px 0;color:#8a8a90;font-size:9px}.post-video{background:#111}
@media(max-width:620px){.video-upload-card{grid-template-columns:96px minmax(0,1fr) 28px}.video-upload-preview{width:96px}}

/* v0.2.0-alpha3.1: account recovery */
.recovery-settings{display:flex;align-items:center;justify-content:space-between;gap:18px}.recovery-settings>div{min-width:0}.recovery-settings p{margin-bottom:0}.auth-recovery-link{align-self:center;margin-top:-2px}.recovery-code-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.recovery-code-grid>div{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--line,#e8e8ec);border-radius:11px;background:#f7f7f9}.recovery-code-grid span{color:#999;font-size:9px;min-width:14px}.recovery-code-grid code,.admin-recovery-token code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;letter-spacing:.04em;user-select:all}.recovery-account-found{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:10px 0 15px;border-radius:13px;background:#f4f7f4}.recovery-account-found>div{display:flex;flex-direction:column;gap:2px}.recovery-account-found span,.recovery-account-found small,.recovery-status span{font-size:9px;color:#8b8b90}.recovery-account-found b{font-size:14px}.recovery-status{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 14px}.recovery-status>div{display:flex;flex-direction:column;gap:4px;padding:11px 12px;border-radius:12px;background:#f7f7f9}.recovery-status b{font-size:12px}.admin-recovery-token{padding:16px;margin:14px 0;border:1px dashed #c9c9cf;border-radius:13px;background:#f7f7f9;text-align:center}.admin-recovery-token code{font-size:14px;font-weight:700}
@media(max-width:620px){.recovery-settings{align-items:flex-start;flex-direction:column}.recovery-code-grid{grid-template-columns:1fr}.recovery-status{grid-template-columns:1fr}}


/* v0.2.0-alpha3.2: readable country names + account-wide D1 observability */
.country-name-grid .country-option{min-height:42px}.country-name-grid .country-option b{font-size:11px;white-space:normal;line-height:1.35}.selected-country-summary{display:flex;flex-wrap:wrap;gap:6px;padding:0 1px}.selected-country-summary>span:not(.muted-note){display:inline-flex;padding:5px 8px;border:1px solid #e7e7ea;border-radius:999px;background:#f7f7f8;font-size:9px}.account-d1-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.d1-database-list{display:grid;gap:7px;margin-top:10px}.d1-database-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #ededf0;border-radius:11px}.d1-database-row>div{display:flex;min-width:0;flex-direction:column;gap:2px}.d1-database-row b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.d1-database-row span{font-size:9px;color:#8b8b90}.d1-database-row strong{font-size:12px;white-space:nowrap}.database-api-warning{margin-bottom:12px}
@media(max-width:900px){.account-d1-metrics{grid-template-columns:1fr}.country-name-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.country-name-grid{grid-template-columns:1fr}.d1-database-row{align-items:flex-start;flex-direction:column}.d1-database-row strong{align-self:flex-end}}


/* v0.2.0-alpha3.2.1: region picker checkbox/radio layout hotfix.
   Generic .settings-card input rules must not stretch native selection controls. */
.region-mode input[type="radio"],
.country-option input[type="checkbox"]{
  width:auto;
  min-width:0;
  height:auto;
  margin:0;
  padding:0;
  flex:0 0 auto;
  border:0;
  border-radius:0;
  background:transparent;
}
.country-option{
  min-width:0;
}
.country-option>span{
  flex:1 1 auto;
  min-width:0;
}
.country-option b{
  display:block;
  color:#1d1d1f;
  overflow:visible;
  text-overflow:clip;
}


/* v0.2.0-alpha3.2.2: D1 overview cards use text + metrics only.
   Decorative Unicode icons were removed to avoid inconsistent browser glyph rendering. */
.d1-summary-card{
  align-content:center;
}


/* v0.2.0-alpha3.3: abuse-control / device-ban console */
.risk-filter-card{display:flex;flex-direction:column;gap:16px}.blocked-words-field{display:flex;flex-direction:column;gap:7px}.blocked-words-field>span{font-size:11px;font-weight:700}.blocked-words-field textarea{width:100%;resize:vertical;min-height:112px}.blocked-words-field small,.risk-device-head p,.risk-device-row small{color:#8b8b90;font-size:9px}.risk-device-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.risk-device-head h3{margin:0 0 3px}.risk-device-list{display:flex;flex-direction:column}.risk-device-row{display:grid;grid-template-columns:minmax(190px,1.1fr) minmax(150px,1fr) minmax(130px,.8fr) minmax(130px,.7fr);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #ededf0}.risk-device-row:last-child{border-bottom:0}.risk-device-row>div{display:flex;flex-direction:column;gap:4px;min-width:0}.risk-device-row .row-actions{align-items:flex-end;flex-direction:row;justify-content:flex-end;flex-wrap:wrap}.risk-device-code b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.tiny-chip{display:inline-flex;align-self:flex-start;border:1px solid #dedee3;border-radius:999px;padding:2px 6px;color:#666;font-size:8px}.risk-note{margin:14px 0}
@media(max-width:820px){.risk-device-row{grid-template-columns:1fr 1fr}.risk-device-row .row-actions{justify-content:flex-start;align-items:flex-start}}
@media(max-width:560px){.risk-device-row{grid-template-columns:1fr}.risk-device-row .row-actions{justify-content:flex-start}}


/* v0.2.0-alpha3.3.1: risk/content-filter layout repair.
   Do not reuse .setting-row here: it reserves an icon column and was collapsing
   the copy into a narrow strip on wide screens. */
.risk-filter-card{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.risk-filter-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  padding-bottom:18px;
  border-bottom:1px solid #ededf0;
}
.risk-filter-copy{
  min-width:0;
}
.risk-filter-kicker{
  display:block;
  margin-bottom:6px;
  color:#8a8a90;
  font-size:9px;
  font-weight:800;
  letter-spacing:1.15px;
}
.risk-filter-copy h3{
  margin:0 0 7px;
  font-size:18px;
}
.risk-filter-copy p{
  max-width:680px;
  margin:0;
  color:#76767c;
  font-size:11px;
  line-height:1.7;
}
.risk-filter-switch{
  min-width:190px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:13px;
  padding:11px 12px;
  border:1px solid #e4e4e8;
  border-radius:13px;
  background:#f8f8fa;
}
.risk-filter-switch>div{
  display:flex;
  flex-direction:column;
  gap:3px;
  text-align:right;
}
.risk-filter-switch b{
  font-size:11px;
}
.risk-filter-switch span{
  color:#8b8b90;
  font-size:9px;
  white-space:nowrap;
}
.blocked-words-field{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.blocked-words-label{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
}
.blocked-words-label>span{
  font-size:12px;
  font-weight:700;
}
.blocked-words-label small{
  color:#8b8b90;
  font-size:9px;
}
.blocked-words-field textarea{
  width:100%;
  min-height:132px;
  resize:vertical;
  padding:13px 14px;
  line-height:1.6;
}
.risk-filter-example{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:11px 13px;
  border-radius:12px;
  background:#f7f7f9;
}
.risk-filter-example b{
  flex:0 0 auto;
  font-size:10px;
}
.risk-filter-example span{
  color:#77777d;
  font-size:10px;
  line-height:1.55;
}
.risk-filter-save{
  padding-top:0;
}
@media(max-width:760px){
  .risk-filter-head{
    grid-template-columns:1fr;
    gap:14px;
  }
  .risk-filter-switch{
    width:100%;
    min-width:0;
    justify-content:space-between;
  }
  .risk-filter-switch>div{
    text-align:left;
  }
  .blocked-words-label{
    align-items:flex-start;
    flex-direction:column;
    gap:3px;
  }
}


/* v0.2.0-alpha3.3.2: flat multi-level comment tree.
   Replies are sibling rows with visual indentation, rather than recursively
   nested flex boxes that progressively collapse available width. */
.comment-flat{
  margin-left:calc(var(--comment-depth,0) * 20px);
  width:calc(100% - (var(--comment-depth,0) * 20px));
  position:relative;
}
.comment-flat.comment-is-reply::before{
  content:"";
  position:absolute;
  left:-11px;
  top:-6px;
  bottom:8px;
  width:1px;
  background:#e5e5e8;
}
.comment-reply-context{
  display:flex;
  align-items:center;
  gap:4px;
  margin:0 0 3px;
  color:#8a8a90;
  font-size:9px;
}
.comment-orphan-tag{
  color:#9a6b24!important;
  background:#fff6e7;
  border-radius:99px;
  padding:2px 5px;
  font-size:8px!important;
}
@media(max-width:620px){
  .comment-flat{
    margin-left:calc(var(--comment-depth,0) * 12px);
    width:calc(100% - (var(--comment-depth,0) * 12px));
  }
}


/* v0.2.0-alpha3.3.3: fixed four-level comment tree */
.comment-depth-cap{
  display:inline-flex;
  align-items:center;
  padding:3px 6px;
  color:#9a9aa0;
  font-size:9px;
}
.comment-reply-context>span:last-child{
  margin-left:auto;
  color:#aaaab0;
  font-size:8px;
}


/* v0.2.0-alpha3.3.4: repost card layout hotfix.
   The old `.repost-source>div { flex:1 }` also matched avatar-fallback <div>,
   stretching fallback avatars into a wide oval. */
.repost-source{
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto;
  gap:9px;
  align-items:center;
  margin-bottom:11px;
}
.repost-source>div{
  min-width:0;
}
.repost-avatar-slot{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  flex:none!important;
}
.repost-avatar-slot .avatar{
  width:32px!important;
  height:32px!important;
  min-width:32px;
  max-width:32px;
  min-height:32px;
  max-height:32px;
  border-radius:50%;
  aspect-ratio:1/1;
  object-fit:cover;
  flex:none!important;
}
.repost-author-meta{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
  flex:none!important;
}
.repost-author-meta b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
}
.repost-author-meta span{
  color:#999;
  font-size:10px;
}
.repost-role-slot{
  justify-self:end;
  align-self:center;
  display:flex;
  min-width:0;
  flex:none!important;
}
.repost-role-slot .role-badge{
  max-width:180px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.repost-body{
  min-width:0;
}
.repost-body h3{
  margin:0 0 7px;
  font-size:14px;
}
.repost-content{
  margin:0;
  color:#4d4d50;
  font-size:12px;
  line-height:1.65;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.repost-images{
  margin-top:10px;
}
.repost-images .post-image-grid{
  margin-top:0;
}
.repost-images .post-media{
  margin-top:0;
}
@media(max-width:560px){
  .repost-source{
    grid-template-columns:32px minmax(0,1fr);
  }
  .repost-role-slot{
    grid-column:2;
    justify-self:start;
    margin-top:2px;
  }
}


/* v0.2.0-alpha3.3.5: platform-independent inline SVG icon system */
svg.glyph-icon{
  width:1em;
  height:1em;
  min-width:1em;
  display:inline-block;
  vertical-align:-0.125em;
  flex:0 0 auto;
  overflow:visible;
  pointer-events:none;
}
button>svg.glyph-icon,
a>svg.glyph-icon{
  width:1.05em;
  height:1.05em;
}
.composer-submit-icon svg.glyph-icon{
  width:18px;
  height:18px;
  vertical-align:0;
}
.setting-icon svg.glyph-icon{
  width:16px;
  height:16px;
}
.admin-side svg.glyph-icon,
.admin-title svg.glyph-icon{
  width:14px;
  height:14px;
}
