:root{--bg:#0b0d10;--panel:#14181d;--panel-2:#1b2027;--line:#262d36;--text:#e7ecf2;--dim:#8b97a6;--accent:#4da3ff;--hot:#ff8a3d;--ever:#ffd23d;--ok:#45d17a;--star:#ffd23d;--sidebar:216px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0;font:14px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar);border-right:1px solid var(--line);background:var(--panel);flex-direction:column;gap:4px;padding:16px 12px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:.4px;padding:4px 10px 14px;font-size:15px;font-weight:700}.sidebar nav{flex-direction:column;gap:2px;display:flex}.nav{color:var(--dim);border-radius:9px;align-items:center;gap:10px;padding:9px 10px;font-size:13.5px;text-decoration:none;display:flex}.nav:hover{background:var(--panel-2);color:var(--text)}.nav.on{background:var(--panel-2);color:var(--text);font-weight:600}.nav-icon{text-align:center;opacity:.8;width:16px}.nav-count{background:var(--line);color:var(--text);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:700}.side-foot{color:var(--dim);border-top:1px solid var(--line);margin-top:auto;padding:10px;font-size:11px;line-height:1.6}.content{margin-left:var(--sidebar);flex:1;min-width:0;padding:20px 22px 70px}.page-head{flex-wrap:wrap;align-items:baseline;gap:14px;display:flex}.page-head h1{margin:0;font-size:19px}.stat{color:var(--dim);font-size:12px}.stat b{color:var(--text);font-weight:600}.toolbar{z-index:8;background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:10px;margin:14px 0 18px;padding:12px 14px;display:flex;position:sticky;top:0}.toolbar-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.toolbar-row.secondary{align-items:center;gap:8px}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field.grow{flex:200px}.field-label{letter-spacing:.8px;text-transform:uppercase;color:var(--dim);padding-left:2px;font-size:10px}select,input[type=search],button{background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:9px;padding:7px 10px;font-family:inherit;font-size:13px}select{min-width:150px}.field.grow input{width:100%}select:focus,input:focus{border-color:var(--accent);outline:none}button{cursor:pointer}.toggle{color:var(--dim);background:0 0;border-radius:999px;padding:6px 13px;font-size:12.5px}.toggle:hover{color:var(--text);border-color:var(--dim)}.toggle.on{color:var(--accent);background:#4da3ff24;border-color:#4da3ff73;font-weight:600}.clear{color:var(--dim);background:0 0;border:none;padding:6px 4px;font-size:12px}.clear:hover{color:var(--accent);text-decoration:underline}.count{color:var(--dim);margin-left:auto;font-size:12px}.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.card-top{align-items:center;gap:8px;padding:10px 12px;display:flex}.page{text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:13px;font-weight:600;text-decoration:none;overflow:hidden}a.page:hover{color:var(--accent);text-decoration:underline}.badges{flex-shrink:0;align-items:center;gap:5px;margin-left:auto;display:flex}.badge{background:var(--panel-2);color:var(--dim);border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700}.badge.days{color:var(--ok);background:#45d17a26}.badge.days.hot{color:var(--hot);background:#ff8a3d29}.badge.days.ever{color:var(--ever);background:#ffd23d29}.badge.scale{color:var(--accent);background:#4da3ff26}.badge.local{color:var(--ok);background:#45d17a26}.star{color:var(--dim);background:0 0;border:none;border-radius:6px;padding:2px 4px;font-size:16px;line-height:1}.star:hover{color:var(--star);background:var(--panel-2)}.star.on{color:var(--star)}.star:disabled{opacity:.6;cursor:wait}.partner{color:var(--dim);background:var(--panel-2);border-bottom:1px solid var(--line);padding:6px 12px;font-size:12px}.partner a{color:var(--accent);text-decoration:none}.partner a:hover{text-decoration:underline}.media{background:#000;position:relative}.media img,.media video{object-fit:contain;background:#000;width:100%;max-height:460px;display:block}.strip{scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.strip>*{scroll-snap-align:start;flex:0 0 100%}.dead{text-align:center;color:var(--dim);background:var(--panel-2);padding:34px 12px;font-size:12px}.body{color:#cfd8e3;white-space:pre-wrap;max-height:132px;padding:10px 12px;font-size:13px;overflow:auto}.body.strong{font-weight:600}.card-foot{border-top:1px solid var(--line);color:var(--dim);align-items:center;gap:8px;margin-top:auto;padding:9px 12px;font-size:12px;display:flex}.card-foot a{color:var(--accent);margin-left:auto;text-decoration:none}.card-foot a:hover{text-decoration:underline}.cta{background:var(--panel-2);border-radius:6px;padding:2px 7px}.empty{color:var(--dim);text-align:center;padding:60px 0}.empty code{background:var(--panel-2);border-radius:5px;padding:2px 6px}.more{margin:26px auto 0;padding:9px 22px;display:block}.profile{flex-wrap:wrap;align-items:flex-start;gap:20px;padding:4px 0 2px;display:flex}.profile-main h1{margin:0 0 6px;font-size:21px}.profile-links{gap:12px;font-size:12.5px;display:flex}.profile-links a{color:var(--accent);text-decoration:none}.profile-links a:hover{text-decoration:underline}.profile-stats{gap:22px;margin-left:auto;display:flex}.profile-stats div{flex-direction:column;align-items:flex-end;display:flex}.profile-stats b{font-size:17px}.profile-stats span{color:var(--dim);font-size:11px}.table{border:1px solid var(--line);border-radius:12px;margin-top:16px;overflow:hidden}.tr{border-bottom:1px solid var(--line);color:var(--text);grid-template-columns:1fr 90px 80px 70px 80px;align-items:center;gap:10px;padding:11px 14px;font-size:13px;text-decoration:none;display:grid}.tr:last-child{border-bottom:none}a.tr:hover{background:var(--panel)}.th{background:var(--panel);color:var(--dim);letter-spacing:.8px;text-transform:uppercase;font-size:10px}.tr .num{text-align:right;color:var(--dim)}.tr .strongnum{color:var(--text);font-weight:600}.tr .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (max-width:760px){.sidebar{border-right:none;border-bottom:1px solid var(--line);flex-direction:row;align-items:center;width:auto;position:static;inset:auto}.shell{flex-direction:column}.sidebar nav{flex-direction:row}.side-foot{display:none}.content{margin-left:0;padding:14px}}.note-btn{color:var(--dim);background:0 0;border:none;border-radius:6px;padding:3px 4px;font-size:13px;line-height:1}.note-btn:hover{color:var(--accent);background:var(--panel-2)}.note-btn.has{color:var(--accent)}.note-btn sup{margin-left:1px;font-size:9px;font-weight:700}.notes{background:var(--panel-2);border-bottom:1px solid var(--line)}.note-list{margin:0;padding:8px 12px 8px 26px;list-style:none}.note-list li{color:#cfd8e3;align-items:baseline;gap:8px;padding:2px 0;font-size:12.5px;display:flex;position:relative}.note-list li:before{content:"•";color:var(--accent);position:absolute;left:-13px}.note-body{overflow-wrap:anywhere;flex:1;min-width:0}.note-date{color:var(--dim);flex-shrink:0;font-size:10.5px}.note-del{color:var(--dim);opacity:0;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:14px;line-height:1;transition:opacity .12s}.note-list li:hover .note-del{opacity:1}.note-del:hover{color:var(--hot)}.note-form{gap:6px;padding:8px 12px 10px;display:flex}.note-form input{flex:1;min-width:0;padding:6px 9px;font-size:12.5px}.note-form button{padding:6px 12px;font-size:12.5px}.keeps{gap:2px;display:flex}.keep{color:var(--dim);background:0 0;border:none;border-radius:6px;min-width:24px;padding:3px 5px;font-size:13px;line-height:1}.keep:hover{color:var(--accent);background:var(--panel-2)}.keep.has{color:var(--ok)}.keep.busy{color:var(--dim);cursor:wait}.keep.done{color:var(--ok)}.keep.fail{color:var(--hot)}.cards{flex-wrap:wrap;gap:12px;margin:16px 0 20px;display:flex}.tile{background:var(--panel);border:1px solid var(--line);border-radius:12px;min-width:132px;padding:14px 18px}.tile b{font-size:22px;line-height:1.2;display:block}.tile span{color:var(--dim);font-size:11.5px}.live{background:#45d17a1a;border:1px solid #45d17a59;border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0;padding:11px 15px;font-size:13px;display:flex}.live.off{background:var(--panel);border-color:var(--line);color:var(--dim)}.dot{background:var(--ok);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.live .spacer{margin-left:auto}.switch{border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:600}.switch.on{color:var(--ok);background:#45d17a29;border-color:#45d17a73}.switch.off{background:var(--panel-2);color:var(--dim)}.bars{align-items:flex-end;gap:3px;height:120px;margin:6px 0 4px;display:flex}.bar{background:var(--accent);opacity:.85;border-radius:3px 3px 0 0;flex:1;min-height:2px}.bar:hover{opacity:1}.bar-labels{color:var(--dim);justify-content:space-between;font-size:10.5px;display:flex}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-bottom:16px;padding:16px 18px}.panel h2{color:var(--dim);text-transform:uppercase;letter-spacing:.8px;margin:0 0 12px;font-size:13px;font-weight:600}.lib{flex-direction:column;gap:10px;margin-top:16px;display:flex}.lib-item{background:var(--panel);border:1px solid var(--line);border-radius:11px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.lib-main{flex:1;min-width:0}.lib-body{color:#cfd8e3;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13.5px}.lib-meta{color:var(--dim);flex-wrap:wrap;gap:10px;margin-top:6px;font-size:11.5px;display:flex}.lib-meta a{color:var(--accent);text-decoration:none}.lib-del{color:var(--dim);background:0 0;border:none;padding:2px 4px;font-size:15px}.lib-del:hover{color:var(--hot)}.lib audio{flex-shrink:0;width:260px;height:34px}.idea.done .lib-body{color:var(--dim);text-decoration:line-through}.tick{border:1px solid var(--line);background:var(--panel-2);width:20px;height:20px;color:var(--ok);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;display:flex}.tick:hover{border-color:var(--ok)}.tick.on{background:#45d17a29;border-color:#45d17a80}.mascot-wrap{z-index:40;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:22px;right:22px}.mascot{border:1px solid var(--line);background:var(--panel);border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;padding:0;transition:transform .18s,border-color .18s;display:flex;box-shadow:0 6px 22px #00000073}.mascot:hover{border-color:var(--accent);transform:translateY(-3px)scale(1.05)}.mascot.open{border-color:var(--accent)}.mascot .m-bulb{transform-origin:32px 6px}.mascot:hover .m-bulb{animation:1.1s ease-in-out infinite blink}.mascot:hover .m-eye{animation:2.4s ease-in-out infinite look}.mascot:hover .m-mouth{d:path("M26 40 q6 7 12 0")}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}@keyframes look{0%,to{transform:translate(0)}30%{transform:translate(2.2px)}60%{transform:translate(-2.2px)}}.mascot-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;width:310px;padding:15px 16px;box-shadow:0 10px 34px #00000080}.mascot-say b{font-size:13.5px}.mascot-say p{color:var(--dim);margin:7px 0 0;font-size:12.5px;line-height:1.6}.mascot-card form{margin-top:12px}.mascot-card textarea{resize:vertical;background:var(--panel-2);width:100%;color:var(--text);border:1px solid var(--line);border-radius:9px;padding:8px 10px;font-family:inherit;font-size:13px}.mascot-card textarea:focus{border-color:var(--accent);outline:none}.mascot-actions{align-items:center;gap:10px;margin-top:9px;display:flex}.mascot-actions .hint{color:var(--dim);font-size:11px}.mascot-actions button{margin-left:auto;padding:6px 14px;font-size:12.5px}@media (max-width:760px){.mascot-wrap{bottom:14px;right:14px}.mascot-card{width:min(310px,100vw - 40px)}}
