:root{--accent: #ff9f0a;--accent-soft: #fff3e0;--bg: #fff;--bg-muted: #f5f5f5;--border: #e6e6e6;--text: #111;--muted: #6b6b6b;--danger: #d92d20;--radius: 14px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text)}@media (prefers-color-scheme: dark){:root{--accent-soft: #3a2a0a;--bg: #111;--bg-muted: #1d1d1d;--border: #2b2b2b;--text: #eee;--muted: #9a9a9a}}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text)}body{font-size:16px;line-height:1.4}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2{margin:0}.muted{color:var(--muted)}.error{color:var(--danger);margin:8px 0}.pad{padding:16px}.grow{flex:1;min-width:0}.spacer{flex:1}.btn{background:var(--accent);color:#fff;border:0;border-radius:999px;padding:8px 20px;font-weight:700}.btn:disabled{opacity:.45;cursor:default}.btn.secondary{background:var(--bg-muted);color:var(--text)}.btn.danger{background:var(--danger)}.btn.wide{width:100%;padding:12px}.icon-btn{background:none;border:0;padding:6px;border-radius:50%;color:var(--muted);display:inline-flex}.icon-btn:hover,.icon-btn[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.avatar{width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;display:grid;place-items:center;flex:none}.avatar.small{width:32px;height:32px}.avatar.faded{opacity:.45}.shell{min-height:100vh}.sidebar,.rail{display:none}.main{padding-bottom:80px;min-height:100vh}.tabbar{position:fixed;inset:auto 0 0 0;display:flex;justify-content:space-around;background:var(--bg);border-top:1px solid var(--border);padding:8px 0 calc(8px + env(safe-area-inset-bottom));z-index:5}.tabbar a{padding:6px 14px;color:var(--muted);border-radius:12px}.tabbar a.active{color:var(--accent)}.fab{position:fixed;right:16px;bottom:calc(76px + env(safe-area-inset-bottom));width:56px;height:56px;border-radius:50%;border:0;background:var(--accent);color:#fff;display:grid;place-items:center;box-shadow:0 4px 14px #00000040;z-index:6}@media (min-width: 800px){.shell{display:grid;grid-template-columns:240px minmax(0,600px);justify-content:center}.sidebar{display:flex;flex-direction:column;gap:12px;padding:16px;position:sticky;top:0;height:100vh}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar nav a{display:flex;align-items:center;gap:14px;padding:10px 16px;border-radius:999px;font-size:18px}.sidebar nav a.active{background:var(--accent-soft);font-weight:700}.sidebar nav a:hover{background:var(--bg-muted)}.main{border-inline:1px solid var(--border);padding-bottom:0}.tabbar,.fab{display:none}}@media (min-width: 1100px){.shell{grid-template-columns:240px 600px 320px}.rail{display:flex;flex-direction:column;gap:16px;padding:12px 20px;position:sticky;top:0;height:100vh;overflow-y:auto}}.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;padding:4px 8px 12px}.logo-mark{width:32px;height:32px;border-radius:9px;background:var(--accent);color:#fff;display:grid;place-items:center}.user{display:flex;align-items:center;gap:10px}.user strong{flex:1}.page-head{position:sticky;top:0;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:4;border-bottom:1px solid var(--border)}.page-head h1{font-size:20px;padding:14px 16px}.page-head h1+.tabs{margin-top:-4px}.tabs{display:flex}.tabs button{flex:1;background:none;border:0;padding:12px;color:var(--muted);font-weight:600;border-bottom:3px solid transparent}.tabs button.active{color:var(--text);border-bottom-color:var(--accent)}.searchbox{display:flex;align-items:center;gap:10px;background:var(--bg-muted);border-radius:999px;padding:10px 16px;color:var(--muted)}.searchbox input{flex:1;background:none;border:0;outline:0;min-width:0}.card{background:var(--bg-muted);border-radius:var(--radius);padding:14px 16px}.card h2{font-size:18px;margin-bottom:8px}.card p{margin:0;font-size:14px}.snippet{display:block;padding:6px 0;font-size:14px}.topic{display:flex;flex-direction:column;padding:6px 0}.topic span{font-size:13px}.composer{display:flex;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);align-items:flex-start}.editor textarea{width:100%;border:0;outline:0;resize:none;background:none;font-size:18px;padding:8px 0;min-height:44px;max-height:50vh}.editor textarea.large{min-height:90px}.thumbs{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 8px}.thumb{position:relative;width:84px;height:84px;border-radius:10px;overflow:hidden;background:var(--bg-muted);display:grid;place-items:center}.thumb img{width:100%;height:100%;object-fit:cover}.thumb button{position:absolute;top:4px;right:4px;border:0;border-radius:50%;width:22px;height:22px;background:#000000a6;color:#fff;display:grid;place-items:center;padding:0}.entry{display:flex;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border)}.entry.in-thread{border-bottom:0}.avatar-col{display:flex;flex-direction:column;align-items:center}.line{width:2px;flex:1;background:var(--border);margin-top:4px;min-height:16px}.entry header{display:flex;justify-content:space-between;align-items:center;min-height:28px}.meta{display:flex;gap:12px;align-items:center;color:var(--muted);font-size:14px}.date:hover{text-decoration:underline}.thread-link{display:inline-flex;gap:4px;align-items:center;color:var(--accent);font-weight:600}.body{margin:2px 0 6px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:17px}.hashtag{color:var(--accent);font-weight:600}.hashtag:hover{text-decoration:underline}.images{display:grid;gap:4px;border-radius:var(--radius);overflow:hidden;margin:6px 0}.images.n2,.images.n4,.images.n3{grid-template-columns:1fr 1fr}.images.n3 a:first-child{grid-row:span 2}.images img{width:100%;height:100%;max-height:420px;object-fit:cover;display:block}.actions{display:flex;gap:32px;margin-top:4px}.actions button{background:none;border:0;padding:4px 0;color:var(--muted);display:inline-flex;gap:6px;align-items:center;font-size:14px}.actions button:hover,.actions button.active{color:var(--accent)}.menu-wrap{position:relative}.menu{position:absolute;right:0;top:100%;background:var(--bg);border:1px solid var(--border);border-radius:10px;box-shadow:0 6px 20px #0000002e;z-index:3;overflow:hidden;min-width:120px}.menu button{display:block;width:100%;text-align:left;padding:10px 14px;background:none;border:0}.menu button:hover{background:var(--bg-muted)}.menu .danger,.menu .danger:hover{color:var(--danger)}.confirm{display:flex;gap:8px;align-items:center;background:var(--bg-muted);padding:8px 12px;border-radius:10px;margin:6px 0}.confirm .btn{padding:4px 14px}.edit-actions{display:flex;gap:8px;align-items:center;margin-top:8px;flex-wrap:wrap}.sentinel{padding:24px;text-align:center;color:var(--muted)}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;z-index:20}.modal{background:var(--bg);width:100%;height:100%;display:flex;flex-direction:column;padding-top:env(safe-area-inset-top)}.modal-close{align-self:flex-start;margin:10px}.modal-note{margin:0 16px 4px;font-size:14px}.modal-body{flex:1;overflow-y:auto;padding:0 16px}.thread-row{display:flex;gap:12px}.add-to-thread{display:flex;align-items:center;gap:12px;background:none;border:0;padding:8px 0 16px;color:var(--muted)}.add-to-thread:disabled{opacity:.5;cursor:default}.modal-footer{display:flex;align-items:center;gap:8px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border);flex-wrap:wrap}.hint{display:none;font-size:12px;color:var(--muted);background:var(--bg-muted);padding:2px 8px;border-radius:6px}@media (min-width: 640px){.backdrop{align-items:center}.modal{width:600px;height:auto;max-height:85vh;min-height:360px;border-radius:18px;padding-top:0}.hint{display:inline}}.filters{padding:12px 16px;display:flex;flex-direction:column;gap:10px;border-bottom:1px solid var(--border)}.filter-row{display:flex;gap:10px;flex-wrap:wrap}.filter-row label{display:flex;flex-direction:column;font-size:13px;color:var(--muted);gap:2px;flex:1;min-width:120px}input[type=date],input[type=datetime-local],.filter-row input{border:1px solid var(--border);background:var(--bg);border-radius:8px;padding:6px 8px}.calendar{padding:12px 16px;border-bottom:1px solid var(--border)}.cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.cal-wd{font-size:12px;color:var(--muted)}.cal-day{aspect-ratio:1;max-height:46px;border:0;border-radius:10px;background:none;position:relative}.cal-day:hover{background:var(--bg-muted)}.cal-day.today{font-weight:800;color:var(--accent)}.cal-day.has:after{content:"";position:absolute;bottom:5px;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--accent)}.cal-day.selected{background:var(--accent);color:#fff}.cal-day.selected:after{background:#fff}.day-title{font-size:15px;font-weight:600;color:var(--muted);padding:12px 16px 4px}.login{max-width:340px;margin:18vh auto 0;padding:0 16px;display:flex;flex-direction:column;gap:12px}.login input{border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:12px}.link{color:var(--accent);text-decoration:underline;text-underline-offset:2px}
