:root{--bg:245 241 234;--fg:45 38 33;--muted:120 110 100;--card:255 252 245;--border:220 210 200;--shadow:0 1px 3px #00000014,0 8px 24px #0000000f;--shadow2:0 4px 6px #00000014,0 10px 20px #0000001a;--accent:0 99 93;--accent-light:0 150 140;--danger:200 50 50;--success:0 150 100}:root[data-theme=dark]{--bg:35 32 28;--fg:240 235 225;--muted:160 150 140;--card:42 38 34;--border:70 65 60;--shadow:0 1px 3px #00000080,0 10px 30px #0006;--shadow2:0 4px 6px #00000080,0 10px 25px #00000080;--accent:0 180 170;--accent-light:0 220 210;--danger:220 80 80;--success:0 200 150}*{box-sizing:border-box}html,body{height:100%}body{background:rgb(var(--bg));color:rgb(var(--fg));margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;transition:background-color .3s,color .3s}a{color:inherit;text-decoration:none}img{display:block}.muted{color:rgb(var(--muted))}.toast{background:rgb(var(--card));border:1px solid rgb(var(--border));max-width:400px;box-shadow:var(--shadow2);z-index:1000;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-size:14px;animation:.3s slideUp;display:flex;position:fixed;bottom:20px;left:20px;right:20px}.toast.error{border-color:rgba(var(--danger),.3);background:rgba(var(--danger),.08);color:rgb(var(--danger))}.toast.success{border-color:rgba(var(--success),.3);background:rgba(var(--success),.08);color:rgb(var(--success))}.toast-close{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:20px;transition:opacity .2s;display:flex}.theme-toggle{border:1px solid rgb(var(--border));background:rgb(var(--card));cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0;transition:all .3s;display:flex}.theme-toggle:hover{border-color:rgb(var(--accent));background:rgba(var(--accent),.08);transform:scale(1.05)}.theme-toggle:active{transform:scale(.95)}.toggle-icon{justify-content:center;align-items:center;font-size:20px;line-height:1;display:flex}mark{color:#004d47;background-color:#b8e6d8;border-radius:4px;padding:2px 6px;font-weight:600;transition:background-color .2s}:root[data-theme=dark] mark{color:#fff;background-color:#00b8a8}.toast-close:hover{opacity:1}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}*{transition-property:background-color,border-color,box-shadow,color;transition-duration:.2s;transition-timing-function:ease}.page{max-width:1100px;margin:0 auto;padding:40px 24px 80px}@media (max-width:768px){.page{padding:24px 16px 60px}}@media (max-width:480px){.page{padding:16px 12px 50px}}.top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:32px;display:flex}@media (max-width:768px){.top{gap:12px;margin-bottom:24px}}@media (max-width:480px){.top{flex-direction:column;align-items:stretch;gap:16px}}.brand{align-items:center;gap:16px;min-width:0;display:flex}@media (max-width:480px){.brand{gap:12px}}.logo{width:48px;height:48px;box-shadow:var(--shadow);background:0 0;border:none;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;padding:4px;display:flex;overflow:hidden}.logo img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}@media (max-width:480px){.logo{border-width:1.5px;border-radius:10px;width:40px;height:40px;font-size:18px}}.title{letter-spacing:-.3px;font-size:22px;font-weight:700}@media (max-width:480px){.title{font-size:18px}}.subtitle{color:rgb(var(--muted));margin-top:4px;font-size:13px}@media (max-width:480px){.subtitle{font-size:12px}}.actions{align-items:center;gap:12px;width:100%;display:flex}@media (max-width:768px){.actions{gap:10px}}@media (max-width:480px){.actions{width:100%}}.searchWrap{width:min(420px,52vw)}@media (max-width:768px){.searchWrap{flex:1;width:100%}}@media (max-width:480px){.searchWrap{width:100%;min-width:0}}.card{background:rgb(var(--card));border:1px solid rgb(var(--border));box-shadow:var(--shadow);border-radius:16px;transition:all .3s}.card:hover{border-color:rgba(var(--accent),.4);box-shadow:var(--shadow2)}.input{border:1px solid rgb(var(--border));background:rgb(var(--card));width:100%;color:rgb(var(--fg));border-radius:12px;outline:none;padding:12px 16px;font-family:inherit;font-size:14px}@media (max-width:480px){.input{padding:11px 14px;font-size:16px}}.input::placeholder{color:rgb(var(--muted));opacity:.6}.input:focus{border-color:rgb(var(--accent));box-shadow:0 0 0 3px rgba(var(--accent),.1),0 0 0 1px rgb(var(--accent))}.btn{border:1px solid rgb(var(--border));color:rgb(var(--fg));cursor:pointer;white-space:nowrap;background:0 0;border-radius:10px;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:600;transition:all .2s}@media (max-width:480px){.btn{padding:8px 12px;font-size:12px}}.btn:hover{border-color:rgb(var(--accent));box-shadow:0 2px 8px rgba(var(--accent),.12);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn.primary{border-color:rgb(var(--accent));background:linear-gradient(135deg,rgba(var(--accent),.15),rgba(var(--accent),.08));color:rgb(var(--accent))}.btn.primary:hover{background:linear-gradient(135deg,rgba(var(--accent),.2),rgba(var(--accent),.12));box-shadow:0 4px 12px rgba(var(--accent),.2)}.btn.primary:disabled{opacity:.5;cursor:not-allowed}.btn.primary:disabled:hover{background:linear-gradient(135deg,rgba(var(--accent),.15),rgba(var(--accent),.08));box-shadow:none}.btn.ghost{background:0 0}.btn.ghost:hover{background:rgba(var(--fg),.05)}.btn.ghost.active{color:rgb(var(--accent));border-color:rgb(var(--accent));background:rgba(var(--accent),.08)}.btn.ghost.read{opacity:.6}.btn.danger{border-color:rgb(var(--danger));background:rgba(var(--danger),.08);color:rgb(var(--danger))}.btn.danger:hover{background:rgba(var(--danger),.12);box-shadow:0 4px 12px rgba(var(--danger),.15)}.filterBar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:0 4px;display:flex}@media (max-width:480px){.filterBar{flex-wrap:wrap;gap:12px;margin-bottom:16px}}.itemStats{color:rgb(var(--muted));font-size:13px;font-weight:500}@media (max-width:480px){.itemStats{flex:1;font-size:12px}}.sortSelect{border:1px solid rgb(var(--border));background:rgb(var(--card));color:rgb(var(--fg));cursor:pointer;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:13px;transition:all .2s}@media (max-width:480px){.sortSelect{flex:1;min-width:120px;padding:7px 10px;font-size:12px}}.sortSelect:hover{border-color:rgb(var(--accent));background:rgba(var(--accent),.04)}.sortSelect:focus{border-color:rgb(var(--accent));box-shadow:0 0 0 3px rgba(var(--accent),.1);outline:none}.composer{background:linear-gradient(135deg,rgba(var(--accent),.05),rgba(var(--accent),.02));margin-bottom:28px;padding:20px}@media (max-width:480px){.composer{margin-bottom:20px;padding:14px}}.composerRow{grid-template-columns:1fr auto;align-items:center;gap:12px;display:grid}@media (max-width:480px){.composerRow{grid-template-columns:1fr;gap:8px}}.hint{color:rgb(var(--muted));letter-spacing:.3px;margin-top:12px;font-size:12px}@media (max-width:480px){.hint{font-size:11px}}.grid{grid-template-columns:1fr;gap:16px;display:grid}@media (max-width:480px){.grid{gap:10px}}.item{grid-template-columns:1fr 260px;display:grid;overflow:hidden}@media (max-width:1024px){.item{grid-template-columns:1fr 200px}}@media (max-width:768px){.item{grid-template-columns:1fr 180px}.thumbWrap{height:150px}}@media (max-width:480px){.item{grid-template-columns:1fr}.thumbWrap{border-left:none;border-top:1px solid rgb(var(--border));height:200px}}.itemBody{padding:20px}@media (max-width:480px){.itemBody{padding:16px}}.metaLine{color:rgb(var(--muted));flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;font-size:12px;display:flex}@media (max-width:480px){.metaLine{gap:5px;margin-bottom:8px;font-size:10px}}.favicon{border-radius:3px;flex-shrink:0;width:16px;height:16px}@media (max-width:480px){.favicon{width:13px;height:13px}}.domain{color:rgb(var(--fg));opacity:.85;font-weight:600}.dot{opacity:.4}.time{opacity:.75}.itemTitle{letter-spacing:-.2px;word-break:break-word;margin-bottom:10px;font-size:16px;font-weight:700;line-height:1.35;display:inline-block}@media (max-width:480px){.itemTitle{margin-bottom:8px;font-size:14px;line-height:1.3}}.itemTitle:hover{color:rgb(var(--accent));transition:color .2s}.desc{color:rgb(var(--muted));margin:0 0 16px;font-size:14px;line-height:1.5}@media (max-width:480px){.desc{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:10px;font-size:12px;line-height:1.4;display:-webkit-box;overflow:hidden}}.row{flex-wrap:wrap;gap:10px;display:flex}@media (max-width:480px){.row{gap:6px}}.thumbWrap{border-left:1px solid rgb(var(--border));background:linear-gradient(135deg,rgba(var(--accent),.05),rgba(var(--accent),.02));min-height:100%;overflow:hidden}.thumbWrap.placeholder{background:radial-gradient(circle at 20% 20%,rgba(var(--accent),.12),transparent 45%),radial-gradient(circle at 70% 60%,rgba(var(--accent),.08),transparent 40%)}.thumb{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.empty{text-align:center;padding:40px 24px}@media (max-width:480px){.empty{padding:32px 16px}}.emptyTitle{letter-spacing:-.2px;margin-bottom:8px;font-size:18px;font-weight:700}@media (max-width:480px){.emptyTitle{font-size:16px}}.emptyText{color:rgb(var(--muted));font-size:14px}@media (max-width:480px){.emptyText{font-size:13px}}.authModal{z-index:2000;background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.authContent{width:100%;max-width:400px;box-shadow:var(--shadow2);position:relative}.closeBtn{cursor:pointer;color:rgb(var(--fg));opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:24px;transition:opacity .2s;display:flex;position:absolute;top:16px;right:16px}.closeBtn:hover{opacity:1}.authHeader{text-align:center;border-bottom:1px solid rgb(var(--border));margin-bottom:24px;padding:24px 24px 16px}.authHeader h2{color:rgb(var(--fg));margin:0 0 8px;font-size:22px;font-weight:600}.authHeader .subtitle{color:rgb(var(--muted));margin:0;font-size:14px}.authForm{margin-bottom:24px;padding:0 24px}.formGroup{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.formGroup label{color:rgb(var(--fg));font-size:13px;font-weight:500}.formGroup input{font-size:14px}.errorText{color:rgb(var(--danger));margin-top:4px;font-size:12px}.successText{color:rgb(var(--success));margin-top:4px;font-size:12px}.passwordRules{background:rgba(var(--accent),.05);border:1px solid rgba(var(--accent),.2);border-radius:8px;margin-bottom:16px;padding:12px}.rulesTitle{color:rgb(var(--fg));margin:0 0 8px;font-size:13px;font-weight:500}.rulesList{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rule{color:rgb(var(--muted));align-items:center;gap:8px;font-size:13px;transition:color .2s;display:flex}.rule.met{color:rgb(var(--success))}.ruleIcon{justify-content:center;align-items:center;width:16px;height:16px;font-size:12px;display:flex}.ruleName{flex:1}.authToggle{text-align:center;border-top:1px solid rgb(var(--border));color:rgb(var(--muted));padding:16px 24px;font-size:13px}.authToggle p{margin:0}.linkBtn{color:rgb(var(--accent));cursor:pointer;background:0 0;border:none;margin-left:4px;padding:0;font-size:13px;font-weight:500;text-decoration:underline;transition:opacity .2s}.linkBtn:hover{opacity:.8}.authButtons{align-items:center;gap:12px;display:flex}.userEmail{color:rgb(var(--muted));padding:0 8px;font-size:14px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:480px){.authContent{max-width:none}.authHeader{padding:20px 20px 12px}.authHeader h2{font-size:18px}.authForm{padding:0 20px}.authToggle{padding:12px 20px}.userEmail{display:none}}
