:root{--fog-top: #eef0f5;--fog-bottom: #ffffff;--text: #0f1115;--text-soft: rgba(15, 17, 21, .6);--glass: rgba(255, 255, 255, .72);--glass-strong: rgba(255, 255, 255, .94);--glass-border: rgba(0, 0, 0, .07);--hairline: rgba(0, 0, 0, .08);--hover: rgba(0, 0, 0, .04);--accent: #16c784;--accent-strong: #0f9f66;--accent-soft: rgba(39, 223, 153, .16);--danger: #ff3b30;--danger-soft: rgba(255, 59, 48, .12);--warn: #e08600;--warn-soft: rgba(255, 159, 10, .15);--shadow: 0 10px 30px rgba(15, 17, 21, .06);--shadow-lg: 0 24px 60px rgba(15, 17, 21, .18);--radius: 22px;--side-w: 256px;--rail-w: 76px;--appbar-h: 56px;--tabbar-h: 62px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--fog-top: #2c2d31;--fog-bottom: #0b0b0d;--text: #f5f6f8;--text-soft: rgba(245, 246, 248, .6);--glass: rgba(255, 255, 255, .06);--glass-strong: rgba(30, 31, 35, .96);--glass-border: rgba(255, 255, 255, .09);--hairline: rgba(255, 255, 255, .08);--hover: rgba(255, 255, 255, .05);--accent-strong: #3ddc97;--accent-soft: rgba(74, 222, 128, .16);--warn: #ffb340;--shadow: 0 10px 30px rgba(0, 0, 0, .35);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .55);color-scheme:dark}}:root[data-theme=dark]{--fog-top: #2c2d31;--fog-bottom: #0b0b0d;--text: #f5f6f8;--text-soft: rgba(245, 246, 248, .6);--glass: rgba(255, 255, 255, .06);--glass-strong: rgba(30, 31, 35, .96);--glass-border: rgba(255, 255, 255, .09);--hairline: rgba(255, 255, 255, .08);--hover: rgba(255, 255, 255, .05);--accent-strong: #3ddc97;--accent-soft: rgba(74, 222, 128, .16);--warn: #ffb340;--shadow: 0 10px 30px rgba(0, 0, 0, .35);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .55);color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body,#root{min-height:100%}body{margin:0;font:15px/1.45 -apple-system,BlinkMacSystemFont,SF Pro Text,Inter,Segoe UI,Roboto,sans-serif;color:var(--text);background:linear-gradient(180deg,var(--fog-top) 0%,var(--fog-bottom) 520px) fixed,var(--fog-bottom);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overflow-x:hidden}body.locked{overflow:hidden}a{color:var(--accent-strong);text-decoration:none}h1{font-size:30px;font-weight:800;letter-spacing:-.5px;margin:0 0 18px}h2{font-size:17px;font-weight:700;margin:0 0 12px;display:flex;align-items:center;gap:8px}.sub-title{font-size:14px;font-weight:700;margin:8px 0 0;color:var(--text-soft);text-transform:uppercase;letter-spacing:.4px}.section-title{margin:22px 0 12px}.soft{color:var(--text-soft)}.small{font-size:13px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.nowrap{white-space:nowrap}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.minw0{min-width:0}.clamp2,.clamp3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.clamp2{-webkit-line-clamp:2}.clamp3{-webkit-line-clamp:3}kbd{font:600 11px ui-monospace,Menlo,monospace;padding:2px 6px;border-radius:6px;border:1px solid var(--glass-border);background:var(--glass-strong);color:var(--text-soft)}.icon{flex:none}.glass{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%)}.shell{display:grid;grid-template-columns:var(--side-w) minmax(0,1fr);min-height:100vh;transition:grid-template-columns .2s ease}.shell.rail{grid-template-columns:var(--rail-w) minmax(0,1fr)}.side{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:2px;padding:calc(16px + var(--safe-top)) 12px 12px calc(12px + var(--safe-left));background:var(--glass);border-right:1px solid var(--glass-border);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);overflow:hidden;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;padding:4px 6px 14px;min-height:48px}.brand img{width:30px;height:30px;flex:none}.brand .label{flex:1}.collapse-btn{margin-left:auto}.nav-scroll{flex:1;overflow-y:auto;overflow-x:hidden;margin:0 -4px;padding:0 4px;scrollbar-width:thin}.nav-section{padding:6px 0}.nav-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-soft);padding:8px 12px 4px}.nav{position:relative;display:flex;align-items:center;gap:12px;padding:10px 12px;min-height:42px;border-radius:13px;color:var(--text);cursor:pointer;border:0;background:none;font:inherit;text-align:left;width:100%;white-space:nowrap}.nav:hover{background:var(--hover)}.nav.on{background:var(--accent-soft);color:var(--accent-strong);font-weight:650}.nav .label{overflow:hidden;text-overflow:ellipsis}.search-nav{border:1px solid var(--glass-border);background:var(--glass-strong);color:var(--text-soft);margin-bottom:6px}.search-nav kbd{margin-left:auto}.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--danger);color:#fff;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.side-foot{border-top:1px solid var(--hairline);padding-top:10px;display:flex;flex-direction:column;gap:2px}.me{display:flex;align-items:center;gap:10px;padding:6px 8px;min-width:0}.me-text{min-width:0}.shell.rail .label,.shell.rail .nav-title{display:none}.shell.rail .nav{justify-content:center;padding:10px 0}.shell.rail .brand{flex-direction:column;padding:4px 0 10px}.shell.rail .collapse-btn{margin:4px 0 0}.shell.rail .nav-badge{position:absolute;top:3px;right:6px;min-width:16px;height:16px;font-size:10px;padding:0 4px}.shell.rail .nav-section+.nav-section{border-top:1px solid var(--hairline)}.shell.rail .me{justify-content:center;padding:6px 0}.main{padding:calc(26px + var(--safe-top)) clamp(16px,3vw,36px) 64px;max-width:1360px;width:100%;min-width:0}.appbar{position:fixed;top:0;left:0;right:0;z-index:30;height:calc(var(--appbar-h) + var(--safe-top));padding:var(--safe-top) calc(8px + var(--safe-right)) 0 calc(14px + var(--safe-left));display:flex;align-items:center;gap:4px;background:var(--glass-strong);border-bottom:1px solid var(--glass-border);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%)}.appbar-logo{width:26px;height:26px;margin-right:6px}.appbar-title{font-weight:750;font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;height:calc(var(--tabbar-h) + var(--safe-bottom));padding:4px calc(4px + var(--safe-right)) var(--safe-bottom) calc(4px + var(--safe-left));background:var(--glass-strong);border-top:1px solid var(--glass-border);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%)}.tabbtn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:0;background:none;font:600 11px/1.1 inherit;font-family:inherit;color:var(--text-soft);cursor:pointer;min-height:44px;border-radius:12px}.tabbtn.on{color:var(--accent-strong)}.tabicon{position:relative;display:inline-flex}.tabicon .nav-badge{position:absolute;top:-6px;right:-12px;min-width:16px;height:16px;font-size:10px;padding:0 4px}.mobile-only{display:none!important}@media(max-width:640px){.shell,.shell.rail{display:block}.main{padding:calc(var(--appbar-h) + var(--safe-top) + 14px) calc(14px + var(--safe-right)) calc(var(--tabbar-h) + var(--safe-bottom) + 24px) calc(14px + var(--safe-left))}.mobile-only{display:inline-flex!important}.desktop-only{display:none!important}.hide-sm{display:none}h1{font-size:24px;margin-bottom:12px}}.pagehead{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;flex-wrap:wrap}.pagehead h1{margin:0}.pagehead .actions{flex-wrap:wrap}.live{display:inline-flex;align-items:center;gap:6px}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 var(--accent);animation:ping 2s infinite}@keyframes ping{0%{box-shadow:0 0 #16c78480}70%{box-shadow:0 0 0 8px #16c78400}to{box-shadow:0 0 #16c78400}}.toolbar{position:sticky;top:0;z-index:15;display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 -6px 14px;padding:8px 6px;background:linear-gradient(var(--fog-bottom) 70%,transparent)}@media(max-width:640px){.toolbar{top:calc(var(--appbar-h) + var(--safe-top));margin:-6px -14px 12px;padding:8px 14px 10px;background:var(--glass-strong);border-bottom:1px solid var(--glass-border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.toolbar .searchbox{flex-basis:100%}.toolbar .pills{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-width:100%}.toolbar .pills::-webkit-scrollbar{display:none}}.searchbox{display:flex;align-items:center;gap:8px;padding:0 14px;border-radius:14px;background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text-soft);min-width:0}.searchbox:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.searchbox input{border:0;background:none;box-shadow:none!important;padding:11px 0;flex:1;min-width:0}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.grow{flex:1;min-width:0}.stack{display:flex;flex-direction:column;gap:10px}.stack.gap{gap:16px}input,select,textarea{font:inherit;color:var(--text);background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:14px;padding:11px 14px;outline:none;min-width:0;min-height:44px}textarea{resize:vertical;line-height:1.45}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input:disabled,textarea:disabled{opacity:.6}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}.field{display:flex;flex-direction:column;gap:6px}.field>span:first-child{font-size:13px;font-weight:600;color:var(--text-soft)}.btn{font:inherit;font-weight:650;border:1px solid var(--glass-border);cursor:pointer;padding:10px 16px;min-height:42px;border-radius:999px;background:var(--glass-strong);color:var(--text);display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;transition:transform .06s ease,opacity .15s ease,background .15s ease}.btn:hover{background:var(--glass-strong);filter:brightness(.98)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.danger{background:var(--danger-soft);border-color:transparent;color:var(--danger)}.btn.ghost{background:transparent;border-color:transparent}.btn.ghost:hover{background:var(--hover)}.btn.sm{padding:6px 12px;min-height:34px;font-size:13px}.btn.icon-btn{padding:0;width:42px;height:42px;min-height:42px;border-radius:50%}@media(pointer:coarse){.btn.sm{min-height:40px;padding:8px 14px}.btn.icon-btn{width:44px;height:44px}}.action-row .btn{flex:0 0 auto}@media(max-width:640px){.action-row .btn{flex:1 1 auto}}.pills{display:flex;gap:6px;flex-wrap:wrap}.pill{padding:8px 14px;min-height:38px;border-radius:999px;border:1px solid var(--glass-border);background:var(--glass);cursor:pointer;font:inherit;font-size:14px;color:var(--text);white-space:nowrap}.pill.on{background:var(--text);color:var(--fog-bottom);border-color:var(--text)}.chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:var(--glass-strong);border:1px solid var(--glass-border);font-size:13px;color:var(--text);margin:0 6px 6px 0}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--hairline);overflow-x:auto;scrollbar-width:none;margin-bottom:12px}.tabs::-webkit-scrollbar{display:none}.tab{border:0;background:none;font:inherit;font-weight:600;color:var(--text-soft);padding:10px 12px;min-height:44px;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;display:inline-flex;gap:6px;align-items:center}.tab.on{color:var(--text);border-bottom-color:var(--accent)}.tab .count{font-size:11px;padding:1px 7px;border-radius:999px;background:var(--hover)}.toggle{display:flex;align-items:center;gap:12px;padding:6px 0;cursor:pointer;position:relative;min-height:44px}.toggle.disabled{opacity:.55;cursor:default}.toggle input{position:absolute;opacity:0;width:1px;height:1px}.switch{width:48px;height:28px;border-radius:999px;background:var(--hairline);position:relative;flex:none;transition:background .2s}.switch:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #00000040;transition:transform .2s}.toggle input:checked+.switch{background:var(--accent)}.toggle input:checked+.switch:after{transform:translate(20px)}.toggle input:focus-visible+.switch{box-shadow:0 0 0 3px var(--accent-soft)}.grid{display:grid;gap:14px}.stats{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.two{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}.three{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}@media(max-width:900px){.split{grid-template-columns:minmax(0,1fr)}}.card{padding:18px;min-width:0}.card.tight{padding:12px 14px;border-radius:16px;box-shadow:none}.clickable{cursor:pointer;transition:transform .1s ease}.clickable:active{transform:scale(.99)}.stat{display:flex;flex-direction:column;gap:6px}.stat-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.stat .lbl{color:var(--text-soft);font-size:13px;display:flex;align-items:center;gap:6px;min-width:0}.stat-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:8px}.stat .num{font-size:28px;font-weight:800;letter-spacing:-.5px;line-height:1.1}.delta{display:inline-flex;align-items:center;gap:2px;font-size:12px;font-weight:700;padding:2px 7px;border-radius:999px}.delta.up{color:var(--accent-strong);background:var(--accent-soft)}.delta.down{color:var(--danger);background:var(--danger-soft)}.spark{flex:none}.spark-line{fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.spark-area{fill:var(--accent-soft);stroke:none}@media(max-width:640px){.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:14px}.stat .num{font-size:22px}.stat .spark{width:56px}}.minis{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px}.mini{padding:10px 12px;border-radius:14px;background:var(--hover)}.mini-num{font-size:22px;font-weight:800}.mini-num.red{color:var(--danger)}.banner{padding:12px 16px;border-radius:16px;margin-bottom:14px;font-weight:600}.banner.red{background:var(--danger-soft);color:var(--danger)}.hrow{display:flex;flex-direction:column;gap:6px;padding:4px 0}.meter{height:8px;border-radius:999px;background:var(--hover);overflow:hidden}.meter span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .3s}.meter.amber span{background:var(--warn)}.meter.red span{background:var(--danger)}.barlist{display:flex;flex-direction:column;gap:6px}.barrow{position:relative;display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:10px;overflow:hidden}.barrow .bar{position:absolute;inset:0 auto 0 0;background:var(--accent-soft);border-radius:inherit}.barrow .lbl,.barrow .val{position:relative}.barrow .val{font-weight:700}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:12.5px;font-weight:600;color:var(--text-soft);padding:12px 14px;border-bottom:1px solid var(--hairline);white-space:nowrap}.table td{padding:11px 14px;border-bottom:1px solid var(--hairline);vertical-align:middle;max-width:380px}.table tr:last-child td{border-bottom:0}.table tbody tr{cursor:pointer}.table tbody tr.static{cursor:default}.table tbody tr:hover{background:var(--hover)}.tablewrap{overflow-x:auto}.dim{opacity:.6;transition:opacity .2s}.cards{display:flex;flex-direction:column;gap:8px}.rowcard{display:flex;align-items:center;gap:12px;padding:12px 8px 12px 14px;border-radius:18px;min-height:64px;box-shadow:none}.rowcard:active{background:var(--hover)}.rowcard-lead{flex:none}.rowcard-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.rowcard-title{font-weight:600;min-width:0;overflow:hidden}.rowcard-title .person>div{min-width:0}.rowcard-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rowcard-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;color:var(--text-soft)}.rowcard-meta:empty{display:none}.avatar{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:#fff;flex:none;background:linear-gradient(135deg,#8e9bb5,#5f6b83);font-size:13px}.person{display:flex;align-items:center;gap:10px;min-width:0}.post-cell{display:flex;gap:10px;align-items:center;min-width:0;max-width:460px}.thumb{width:44px;height:44px;border-radius:10px;object-fit:cover;flex:none;background:var(--hover)}.pager{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;flex-wrap:wrap}.tag{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:650;background:var(--glass-strong);border:1px solid var(--glass-border);white-space:nowrap}.tag.green{background:var(--accent-soft);color:var(--accent-strong);border-color:transparent}.tag.red{background:var(--danger-soft);color:var(--danger);border-color:transparent}.tag.amber{background:var(--warn-soft);color:var(--warn);border-color:transparent}.empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 12px;color:var(--text-soft);text-align:center}.skeleton-list{display:flex;flex-direction:column;gap:14px;padding:6px 0}.skeleton{border-radius:8px;background:linear-gradient(90deg,var(--hover) 0%,var(--hairline) 50%,var(--hover) 100%);background-size:200% 100%;animation:shimmer 1.3s infinite linear}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.errbox{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:14px;background:var(--danger-soft);color:var(--danger);margin-bottom:12px;flex-wrap:wrap}.err{color:var(--danger);font-size:14px}.scrim{position:fixed;inset:0;background:#00000059;z-index:40;animation:fade .15s ease}.drawer{position:fixed;top:12px;right:12px;bottom:12px;width:min(520px,calc(100vw - 24px));z-index:41;display:flex;flex-direction:column;background:var(--glass-strong);animation:slide .2s ease;box-shadow:var(--shadow-lg);padding:0;overflow:hidden}.drawer-head{display:flex;align-items:center;gap:6px;padding:10px 10px 0 14px;min-height:52px}.drawer-title{font-weight:700}.drawer-body{flex:1;overflow-y:auto;padding:6px 22px 28px;overscroll-behavior:contain}@media(max-width:640px){.drawer{inset:0;width:100%;border-radius:0;border:0;animation:up .22s ease}.drawer-head{padding:calc(6px + var(--safe-top)) calc(8px + var(--safe-right)) 6px calc(6px + var(--safe-left));border-bottom:1px solid var(--hairline)}.drawer-body{padding:14px calc(16px + var(--safe-right)) calc(28px + var(--safe-bottom)) calc(16px + var(--safe-left))}}.dialog{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-y:auto;z-index:51;padding:22px;background:var(--glass-strong);animation:pop .16s ease;box-shadow:var(--shadow-lg)}.dialog-scrim{z-index:50}.dialog-actions{justify-content:flex-end}@media(max-width:640px){.dialog{inset:auto 0 0;transform:none;width:100%;border-radius:24px 24px 0 0;padding:22px calc(18px + var(--safe-right)) calc(18px + var(--safe-bottom)) calc(18px + var(--safe-left));animation:up .2s ease}.dialog-actions .btn{flex:1}}.sheet{position:fixed;z-index:46;left:50%;bottom:24px;transform:translate(-50%);width:min(380px,calc(100vw - 24px));padding:8px;background:var(--glass-strong);box-shadow:var(--shadow-lg);animation:upc .18s ease;max-height:80vh;overflow-y:auto}.sheet-scrim{z-index:45}.sheet-grip{width:38px;height:5px;border-radius:3px;background:var(--hairline);margin:4px auto 8px}.sheet-title{padding:2px 12px 8px;text-align:center}.sheet-item{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;min-height:48px;border:0;background:none;font:inherit;font-size:16px;color:var(--text);border-radius:14px;cursor:pointer;text-align:left}.sheet-item:hover{background:var(--hover)}.sheet-item.danger{color:var(--danger)}.sheet-item.cancel{justify-content:center;font-weight:650;margin-top:4px;border-top:1px solid var(--hairline);border-radius:0 0 14px 14px}.sheet-item:disabled{opacity:.4}@media(max-width:640px){.sheet{left:0;right:0;bottom:0;transform:none;width:100%;border-radius:24px 24px 0 0;padding-bottom:calc(8px + var(--safe-bottom));animation:up .2s ease}}.palette{position:fixed;z-index:51;left:50%;top:12vh;transform:translate(-50%);width:min(620px,calc(100vw - 24px));background:var(--glass-strong);box-shadow:var(--shadow-lg);padding:10px;animation:popc .15s ease}.palette-input{border:0;background:var(--hover)}.palette-list{max-height:55vh;overflow-y:auto;margin-top:8px}.palette-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;min-height:46px;border:0;background:none;font:inherit;color:var(--text);border-radius:12px;cursor:pointer;text-align:left}.palette-item .soft{max-width:45%}.palette-item.on{background:var(--accent-soft)}.palette-hint{padding:12px}@media(max-width:640px){.palette{inset:0;transform:none;width:100%;border-radius:0;border:0;padding:calc(8px + var(--safe-top)) calc(10px + var(--safe-right)) 10px calc(10px + var(--safe-left));display:flex;flex-direction:column;animation:fade .15s ease}.palette-list{max-height:none;flex:1}}#toasts{position:fixed;z-index:60;left:50%;transform:translate(-50%);bottom:22px;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;width:min(420px,calc(100vw - 24px))}@media(max-width:640px){#toasts{bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 12px)}}.toast{padding:12px 18px;background:var(--glass-strong);box-shadow:var(--shadow-lg);border-radius:16px;animation:upc .2s ease;pointer-events:auto;max-width:100%}.toast.error{color:var(--danger)}.toast.out{opacity:0;transform:translateY(6px);transition:all .25s ease}.savebar{position:sticky;bottom:14px;display:flex;align-items:center;gap:10px;padding:10px 12px 10px 18px;margin-top:16px;z-index:10;box-shadow:var(--shadow-lg)}@media(max-width:640px){.savebar{bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 10px)}}@keyframes fade{0%{opacity:0}}@keyframes slide{0%{transform:translate(24px);opacity:0}}@keyframes up{0%{transform:translateY(30px);opacity:0}}@keyframes upc{0%{opacity:0;margin-bottom:-12px}}@keyframes pop{0%{transform:translate(-50%,-46%);opacity:0}}@keyframes popc{0%{transform:translate(-50%,-8px);opacity:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.kv{display:grid;grid-template-columns:130px minmax(0,1fr);gap:8px 12px;margin:14px 0;font-size:14px}.kv dt{color:var(--text-soft)}.kv dd{margin:0;word-break:break-word}@media(max-width:400px){.kv{grid-template-columns:minmax(0,1fr);gap:2px}.kv dd{margin-bottom:8px}}.timeline{display:flex;flex-direction:column;gap:14px;padding-left:4px}.tl-item{display:flex;gap:12px}.tl-dot{width:10px;height:10px;border-radius:50%;margin-top:6px;flex:none}.tl-dot.red{background:var(--danger)}.tl-dot.green{background:var(--accent)}.post-text,.report-preview{white-space:pre-wrap;word-break:break-word;line-height:1.55}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.media-grid img,.media-grid video{width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px;background:var(--hover);display:block}.media-grid video{aspect-ratio:auto;max-height:360px;object-fit:contain;background:#000}.comment{align-items:flex-start}.push-preview{padding:18px;border-radius:24px;background:linear-gradient(160deg,#6d83a8,#2d3a52)}.push-card{display:flex;gap:10px;padding:12px;border-radius:18px;background:#ffffffd1;color:#111;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.push-card img{width:36px;height:36px;border-radius:9px;flex:none}.push-card .soft{color:#00000080}.push-card .minw0{flex:1}.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:calc(24px + var(--safe-top)) 16px calc(24px + var(--safe-bottom))}.auth .glass{width:min(400px,100%);padding:30px}.auth h1{font-size:26px;text-align:center}.auth .logo{display:block;width:56px;height:56px;margin:0 auto 14px}.pulse{animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.45;transform:scale(.94)}}.chart{position:relative}.chart svg{width:100%;height:170px;display:block;touch-action:pan-y}.chart-readout{min-height:20px;margin-bottom:4px}.chart .axis{fill:var(--text-soft);font-size:10px}.chart .line{fill:none;stroke:var(--accent);stroke-width:2.5}.chart .area{fill:var(--accent-soft)}.chart .bar{fill:var(--accent);opacity:.85}.chart .grid-line{stroke:var(--hairline);stroke-dasharray:3 4}.chart .cursor{stroke:var(--text-soft);stroke-width:1}.chart .dot{fill:var(--accent);stroke:var(--fog-bottom);stroke-width:2}.list{display:flex;flex-direction:column}.list .item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--hairline);color:var(--text);min-height:44px;min-width:0}.list .item:last-child{border-bottom:0}.list a.item:hover{color:var(--accent-strong)}.spoiler{background:var(--glass-strong);color:transparent;border-radius:4px;transition:color .2s;cursor:pointer}.spoiler:hover{color:inherit}.doc-preview{line-height:1.6;font-size:15px;word-break:break-word}.doc-preview h1,.doc-preview h2,.doc-preview h3{margin:18px 0 8px}.doc-preview ul,.doc-preview ol{padding-left:22px}.doc-preview a{color:var(--accent-strong)}img,video{max-width:100%}
