*,:before,:after{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}#root{flex-direction:column;height:100vh;display:flex}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#1a1a1a;--bg-sidebar:#141414;--bg-card:#222;--bg-hover:#2a2a2a;--border:#333;--text:#e0e0e0;--text-sub:#888;--text-muted:#555;--accent:#61ff3b;--accent-hover:#86ff64;--accent-rgb:97, 255, 59;--read-text:#555;color:var(--text);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;font:inherit;background:0 0;border:none}input,select{border:1px solid var(--border);color:var(--text);font:inherit;background:#2a2a2a;border-radius:4px;width:100%;padding:6px 10px}input:focus,select:focus{outline:1px solid var(--accent)}ul{list-style:none}.loading-screen{height:100vh;color:var(--text-sub);justify-content:center;align-items:center;display:flex}.login-page{justify-content:center;align-items:center;height:100vh;display:flex}.login-card{text-align:center;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;width:320px;padding:48px 40px}.login-card h1{margin-bottom:6px;font-size:22px}.login-card p{color:var(--text-sub);margin-bottom:28px}.btn-google{color:#333;background:#fff;border-radius:4px;align-items:center;gap:10px;padding:10px 20px;font-size:14px;font-weight:500;transition:background .15s;display:inline-flex}.btn-google:hover{background:#f0f0f0}.app{flex-direction:column;height:100vh;display:flex;overflow:hidden}.header{border-bottom:1px solid var(--border);background:var(--bg-sidebar);flex-shrink:0;justify-content:space-between;align-items:center;height:44px;padding:0 16px;display:flex}.header-logo{font-size:15px;font-weight:700}.header-user{align-items:center;gap:0;min-width:0;display:flex}.avatar{border-radius:50%}.worker-health-stream{align-items:center;gap:12px;min-width:0;max-width:min(62vw,760px);display:flex}.worker-health-badge{border:1px solid var(--border);height:24px;color:var(--text-sub);background:#ffffff08;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:600;display:inline-flex}.worker-health-dot{background:var(--text-sub);border-radius:999px;width:7px;height:7px}.worker-health-badge.is-healthy{color:#e8fce2;background:#61ff3b29;border-color:#61ff3b8c}.worker-health-badge.is-healthy .worker-health-dot{background:#61ff3b}.worker-health-badge.is-warning{color:#fff1b0;background:#ffdc5c29;border-color:#ffdc5cad}.worker-health-badge.is-warning .worker-health-dot{background:#ffd84a}.worker-health-badge.is-error{color:#ffd0d0;background:#ff636324;border-color:#ff636394}.worker-health-badge.is-error .worker-health-dot{background:#ff6363}.worker-health-badge.is-unknown .worker-health-dot{background:#8b8b8b}.worker-health-ticker{border:1px solid var(--border);min-width:clamp(240px,34vw,520px);max-width:520px;height:24px;color:var(--text-sub);background:#ffffff08;border-radius:7px;align-items:center;font-size:11px;display:flex;position:relative;overflow:hidden}.worker-health-ticker:before,.worker-health-ticker:after{content:"";z-index:1;pointer-events:none;width:16px;position:absolute;top:0;bottom:0}.worker-health-ticker:before{background:linear-gradient(90deg,#141414f2 0%,#14141400 100%);left:0}.worker-health-ticker:after{background:linear-gradient(270deg,#141414f2 0%,#14141400 100%);right:0}.worker-health-ticker-track{white-space:nowrap;will-change:transform;align-items:center;min-width:max-content;animation:16s linear infinite workerTickerMarquee;display:inline-flex}.worker-health-ticker-group{white-space:nowrap;flex:none;align-items:center;display:inline-flex}.worker-health-ticker-spacer{flex:none;width:48px;display:inline-block}@keyframes workerTickerMarquee{0%{transform:translate(0)}to{transform:translateX(calc(-1 * var(--worker-ticker-shift,0px)))}}.header-logout-button{margin-left:12px}.layout{flex:1;display:flex;overflow:hidden}.sidebar-shell{flex-shrink:0;min-width:0;height:100%}.sidebar-shell.collapsed{overflow:hidden}.layout-resize-handle{cursor:col-resize;background:0 0;flex-shrink:0;justify-content:center;align-items:center;width:8px;display:flex;position:relative}.layout-resize-handle.collapsed{cursor:default;width:12px}.layout-resize-handle:after{content:"";background:#ffffff0a;width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.layout-resize-handle:hover:after,.layout-resize-handle:active:after{background:rgba(var(--accent-rgb), .45)}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border);flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.sidebar.collapsed{align-items:stretch}.sidebar-collapse-slot{flex-shrink:0;justify-content:flex-end;align-items:center;height:32px;padding:6px 8px 2px;display:flex}.sidebar-collapse-button{border:1px solid var(--border);width:24px;height:24px;color:var(--text-sub);background:#ffffff08;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-collapse-button:hover{color:#fff;border-color:rgba(var(--accent-rgb), .44);background:rgba(var(--accent-rgb), .14)}.sidebar-collapse-icon{font-size:16px;line-height:1;display:block;transform:translateY(-1px)}.sidebar-content{flex-direction:column;flex:1;min-height:0;display:flex}.sidebar-pane{flex-direction:column;min-height:0;display:flex}.sidebar-pane-overview{border-bottom:1px solid var(--border);flex:0 0 42%}.sidebar-pane-detail{flex:1}.sidebar-split-handle{cursor:row-resize;background:0 0;flex-shrink:0;height:8px;position:relative}.sidebar-split-handle:after{content:"";background:#ffffff0d;height:1px;position:absolute;top:50%;left:20px;right:20px;transform:translateY(-50%)}.sidebar-split-handle:hover:after,.sidebar-split-handle:active:after{background:rgba(var(--accent-rgb), .45)}.sidebar-nav{scrollbar-color:#000 #191919;scrollbar-width:thin;min-height:0;padding:6px 0;overflow-y:auto}.sidebar-nav-overview{flex-direction:column;flex:1;padding-top:0;display:flex}.sidebar-nav-detail{flex:1;padding-top:0}.sidebar-nav::-webkit-scrollbar{width:10px}.sidebar-nav::-webkit-scrollbar-track{background:#191919}.sidebar-nav::-webkit-scrollbar-thumb{background:#000;border:2px solid #191919;border-radius:999px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#222}.sidebar-item{text-align:left;width:100%;color:var(--text-sub);border-radius:0;align-items:center;gap:6px;padding:6px 12px;font-size:13px;transition:background .1s,color .1s;display:flex;overflow:hidden}.sidebar-item:hover{background:var(--bg-hover);color:var(--text)}.sidebar-item.active{background:rgba(var(--accent-rgb), .17);color:#f4ffe6}.sidebar-item[data-drop-target=true]{background:rgba(var(--accent-rgb), .24);box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb), .5);color:#f6ffea}.sidebar-feed-item[data-dragging=true]{opacity:.5}.sidebar-all{color:var(--text);font-weight:600}.sidebar-overview-pinned{z-index:2;background:var(--bg-sidebar);border-bottom:1px solid var(--border);position:sticky;top:0}.sidebar-overview-pinned .sidebar-item{margin-bottom:0}.sidebar-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sidebar-badges{align-items:center;gap:4px;margin-left:auto;display:inline-flex}.unread-badge{background:rgba(var(--accent-rgb), .2);color:var(--accent);text-align:center;border-radius:8px;flex-shrink:0;min-width:16px;padding:0 5px;font-size:10px;font-weight:700;line-height:16px}.error-badge{color:#ffd38a;text-align:center;background:#ffba492e;border-radius:8px;flex-shrink:0;min-width:16px;padding:0 5px;font-size:10px;font-weight:700;line-height:16px}.sidebar-folder-header{color:var(--text);font-weight:600}.sidebar-folder-list{flex-direction:column;gap:2px;padding-top:4px;display:flex}.sidebar-feed-item,.sidebar-feed-item.compact{padding-left:14px}.feed-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.favicon{border-radius:2px;flex-shrink:0}.sidebar-detail-header{border-bottom:1px solid var(--border);flex-shrink:0;padding:10px 12px 8px}.sidebar-detail-title{color:#f1f1f1;font-size:13px;font-weight:700;line-height:1.2}.sidebar-detail-subtitle{color:var(--text-sub);margin-top:3px;font-size:10px}.sidebar-empty-detail{color:var(--text-muted);padding:16px 12px;font-size:12px}.sidebar-actions{border-top:1px solid var(--border);flex-direction:column;gap:4px;padding:8px 12px;display:flex;position:relative}.sidebar-context-menu{z-index:250;border:1px solid var(--border);background:#1f1f1f;border-radius:8px;flex-direction:column;gap:2px;min-width:132px;padding:4px;display:flex;position:fixed;box-shadow:0 8px 26px #00000073}.sidebar-context-menu button{text-align:left;color:var(--text);border-radius:6px;padding:7px 9px;font-size:12px}.sidebar-context-menu button:hover:not(:disabled){background:var(--bg-hover)}.sidebar-context-menu button:disabled{opacity:.55;cursor:default}.sidebar-context-menu button.danger{color:#ff9f9f}.sidebar-context-menu button.danger:hover:not(:disabled){background:#ff5a5a24}.sidebar.collapsed .sidebar-content,.sidebar.collapsed .sidebar-actions{display:none}.btn-text{color:var(--text-sub);text-align:left;padding:3px 0;font-size:12px}.btn-text:hover{color:var(--accent)}.import-status{color:var(--accent);padding:2px 0;font-size:11px}.sidebar-menu-button{border:1px solid var(--border);width:100%;color:var(--text);background:#ffffff08;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:inline-flex}.sidebar-menu-button:hover,.sidebar-menu-button.open{background:rgba(var(--accent-rgb), .14);border-color:rgba(var(--accent-rgb), .44)}.sidebar-menu-caret{color:var(--text-sub);font-size:10px}.sidebar-menu-dropdown{border:1px solid var(--border);z-index:20;background:#1b1b1b;border-radius:10px;padding:6px;position:absolute;bottom:calc(100% + 8px);left:12px;right:12px;box-shadow:0 14px 36px #00000059}.sidebar-menu-item{text-align:left;width:100%;color:var(--text-sub);border-radius:6px;padding:8px 10px;font-size:12px}.sidebar-menu-item:hover{background:var(--bg-hover);color:var(--text)}.article-list-container{scrollbar-gutter:stable;flex-direction:column;flex:1;display:flex;overflow-y:auto}.article-list-header{border-bottom:1px solid var(--border);background:var(--bg);z-index:10;flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:14px 16px 0;display:flex;position:sticky;top:0}.article-title-group{flex-direction:column;gap:22px;min-width:0;display:flex}.article-page-title{letter-spacing:-.02em;color:#f2f2f2;font-size:21px;font-weight:700;line-height:1}.article-tabs{gap:22px;display:flex;position:relative}.article-tabs button{color:var(--text-sub);letter-spacing:.01em;padding:0 0 10px;font-size:13px;font-weight:600;transition:color .12s;position:relative}.article-tabs button:hover{color:var(--text)}.article-tabs button.active{color:#fff}.article-tabs button.active:after{content:"";background:var(--accent);z-index:1;border-radius:999px;height:2px;position:absolute;bottom:-1px;left:0;right:0}.article-header-actions{align-items:center;gap:10px;padding-top:3px;display:flex}.action-pill,.action-solid,.action-icon{border:1px solid var(--border);border-radius:8px;justify-content:center;align-items:center;height:30px;transition:background .12s,color .12s,border-color .12s,opacity .12s;display:inline-flex}.action-pill{color:var(--text-sub);background:#ffffff08;padding:0 11px}.action-pill:hover{color:var(--text);border-color:var(--accent);background:rgba(var(--accent-rgb), .14)}.action-pill.active{color:#f6ffea;border-color:rgba(var(--accent-rgb), .6);background:rgba(var(--accent-rgb), .22)}.sort-toggle,.hidden-toggle,.mark-all-button{width:92px}.hidden-toggle.active{border-color:rgba(var(--accent-rgb), .6);background:rgba(var(--accent-rgb), .24);color:#f6ffea}.hidden-toggle.active:hover{border-color:rgba(var(--accent-rgb), .78);background:rgba(var(--accent-rgb), .3)}.undo-button{width:92px}.undo-button:disabled{opacity:.45;cursor:default;color:var(--text-sub);background:#ffffff08}.undo-button.active{border-color:rgba(var(--accent-rgb), .6);background:rgba(var(--accent-rgb), .24);color:#f6ffea}.undo-button.active:hover{border-color:rgba(var(--accent-rgb), .78);background:rgba(var(--accent-rgb), .3)}.action-solid{color:#102006;border-color:rgba(var(--accent-rgb), .7);background:linear-gradient(#8dff5b 0%,#40d91d 100%);padding:0 11px;box-shadow:inset 0 1px #ffffff29}.action-solid:hover{background:linear-gradient(#a2ff73 0%,#55e22f 100%)}.action-solid:disabled{opacity:.45;cursor:default}.action-icon{width:30px;color:var(--text-sub);background:#ffffff08;font-size:15px;position:relative;overflow:hidden}.action-icon:hover{border-color:rgba(var(--accent-rgb), .6);background:rgba(var(--accent-rgb), .22);color:#f6ffea}.refresh-button{border-radius:999px}.refresh-indicator{pointer-events:none;position:absolute;inset:0}.refresh-ring{width:100%;height:100%;transform:rotate(-90deg)}.refresh-ring-track{fill:none;stroke:#fff3;stroke-width:2px}.refresh-ring-progress{fill:none;stroke:rgba(var(--accent-rgb), .95);stroke-width:2px;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--refresh-progress,0));transition:stroke-dashoffset .4s linear}.refresh-icon{z-index:2;font-size:14px;line-height:1;position:relative}.empty{text-align:center;color:var(--text-muted);padding:40px}.article-list{flex:1}.article-item{border-bottom:1px solid var(--border);align-items:center;height:25px;padding-right:3px;transition:background .1s;display:flex}.article-item:hover{background:var(--bg-hover)}.article-item.read .article-feed,.article-item.read .article-title{color:var(--read-text)}.article-item.read .article-date{color:var(--text-muted)}.article-link{text-align:left;min-width:0;height:100%;color:var(--text);flex:1;grid-template-columns:128px 1fr 42px;align-items:center;gap:8px;padding:0 7px 0 12px;text-decoration:none;display:grid}.article-link:hover{color:var(--accent)}.article-feed{color:inherit;opacity:.62;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.25;overflow:hidden}.article-title{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.25;overflow:hidden}.article-item.unread .article-title{font-weight:600}.article-date{color:inherit;opacity:.58;text-align:right;white-space:nowrap;justify-self:end;width:42px;font-size:12px;line-height:1.2}.article-item.read .article-link{color:var(--read-text)}.btn-read,.btn-mark-above,.btn-open-above{border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:color .1s,background .1s;display:flex}.btn-read{color:var(--text-muted);font-size:13px}.btn-read:hover:not(:disabled){color:#4caf50;background:#1b2e1b}.btn-read.done{color:#2e7d32}.btn-read:disabled{cursor:default}.btn-mark-above,.btn-open-above{color:var(--text-muted);opacity:0;font-size:13px;transition:color .1s,background .1s,opacity .15s}.article-item:hover .btn-mark-above,.article-item:hover .btn-open-above{opacity:1}.btn-mark-above:hover{color:var(--accent);background:var(--bg-hover)}.btn-open-above:hover{color:#4caf50;background:#1b2e1b}.loader{text-align:center;color:var(--text-muted);padding:16px;font-size:12px}.end-mark{color:var(--text-muted)}.modal.fm-modal{flex-direction:column;width:min(98vw,1560px);max-width:min(98vw,1560px);height:min(94vh,980px);max-height:min(94vh,980px);padding:0;display:flex;overflow:hidden}.fm-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px 14px;display:flex}.fm-header h3{margin-bottom:4px;font-size:16px}.fm-header p{color:var(--text-sub);max-width:720px;font-size:12px;line-height:1.5}.fm-close{color:var(--text-sub);border-radius:3px;padding:2px 6px;font-size:18px;line-height:1}.fm-close:hover{background:var(--bg-hover);color:var(--text)}.fm-overview{flex-shrink:0;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;padding:12px 20px 0;display:grid}.fm-stat{border:1px solid var(--border);background:#ffffff05;border-radius:10px;padding:10px 12px}.fm-stat span{color:var(--text-sub);margin-bottom:4px;font-size:11px;display:block}.fm-stat strong{letter-spacing:-.02em;color:#fff;font-size:18px;display:block}.fm-toolbar{flex-wrap:wrap;flex-shrink:0;align-items:end;gap:10px;padding:12px 20px 14px;display:flex}.fm-search,.fm-control{flex-direction:column;gap:4px;display:flex}.fm-search{flex:1;min-width:min(320px,100%)}.fm-search span,.fm-control span{color:var(--text-sub);font-size:11px}.fm-refresh{border:1px solid var(--border);color:var(--text);background:#ffffff08;border-radius:10px;padding:9px 14px;font-size:12px}.fm-refresh:hover:not(:disabled){background:rgba(var(--accent-rgb), .14);border-color:rgba(var(--accent-rgb), .44)}.fm-refresh:disabled{opacity:.45;cursor:default}.fm-grid{flex:1;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:12px;min-height:0;padding:0 20px 18px;display:grid}.fm-column{border:1px solid var(--border);background:#ffffff05;border-radius:14px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.fm-column-header{border-bottom:1px solid var(--border);color:var(--text-sub);background:#ffffff05;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:12px;display:flex}.fm-subtitle{color:var(--text-sub);font-size:11px}.fm-pill{border:1px solid var(--border);color:var(--text-sub);border-radius:999px;padding:4px 10px;font-size:11px}.fm-pill.active{color:#f6ffea;border-color:rgba(var(--accent-rgb), .6);background:rgba(var(--accent-rgb), .22)}.fm-folder-list,.fm-feed-list{scrollbar-gutter:stable;flex:1;min-height:0;overflow-y:auto}.fm-folder-list{padding:10px}.fm-feed-list{padding:4px 0}.fm-folder-list::-webkit-scrollbar{width:10px}.fm-feed-list::-webkit-scrollbar{width:10px}.fm-folder-list::-webkit-scrollbar-track{background:#191919}.fm-feed-list::-webkit-scrollbar-track{background:#191919}.fm-folder-list::-webkit-scrollbar-thumb{background:#000;border:2px solid #191919;border-radius:999px}.fm-feed-list::-webkit-scrollbar-thumb{background:#000;border:2px solid #191919;border-radius:999px}.fm-folder-card{border:1px solid var(--border);background:#ffffff05;border-radius:12px;flex-direction:column;gap:8px;margin-bottom:8px;padding:10px;display:flex}.fm-folder-card.selected{border-color:rgba(var(--accent-rgb), .55);box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb), .2)}.fm-folder-row{align-items:center;gap:8px;display:flex}.fm-folder-name{text-align:left;color:#f1f1f1;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;font-weight:700;overflow:hidden}.fm-folder-name:hover{color:var(--accent)}.fm-no-folder{cursor:default;color:var(--text-muted)}.fm-no-folder:hover{color:var(--text-muted)}.fm-folder-edit{flex-shrink:0}.fm-folder-meta{color:var(--text-sub);flex-wrap:wrap;gap:8px;font-size:11px;display:flex}.fm-folder-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.fm-folder-select-btn{text-align:left;border:1px solid var(--border);color:var(--text-sub);background:#ffffff05;border-radius:8px;flex:1;padding:7px 10px;font-size:12px}.fm-folder-select-btn:hover{color:var(--text);background:var(--bg-hover)}.fm-feed-row{border-bottom:1px solid #ffffff0a;grid-template-columns:18px minmax(0,1fr) 156px 24px;align-items:flex-start;gap:10px;padding:10px 16px;display:grid}.fm-feed-row:hover{background:var(--bg-hover)}.fm-favicon{border-radius:3px;flex-shrink:0;margin-top:2px}.fm-feed-main{flex-direction:column;gap:5px;min-width:0;display:flex}.fm-feed-title-line{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.fm-name{text-align:left;color:#f4f4f4;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;font-weight:700;overflow:hidden}.fm-name:hover{color:var(--accent)}.fm-edit-input{background:var(--bg);border:1px solid var(--accent);min-width:0;color:var(--text);font-size:13px;font:inherit;border-radius:8px;flex:1;padding:5px 8px}.fm-folder-select{background:var(--bg);border:1px solid var(--border);color:var(--text-sub);border-radius:8px;flex-shrink:0;align-self:start;width:100%;padding:7px 8px;font-size:11px}.fm-delete{width:24px;height:24px;color:var(--text-muted);border-radius:6px;flex-shrink:0;justify-content:center;align-self:start;align-items:center;font-size:14px;transition:color .1s,background .1s;display:flex}.fm-delete:hover:not(:disabled){color:#ef5350;background:#ef53501f}.fm-delete:disabled{opacity:.4}.fm-feed-meta{min-width:0;color:var(--text-sub);flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;display:flex}.fm-feed-url,.fm-feed-folder{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.fm-feed-url{max-width:360px}.fm-feed-folder{color:var(--text)}.fm-feed-time{color:var(--text-sub);flex-shrink:0}.fm-feed-meta-sep{color:var(--text-muted);flex-shrink:0}.fm-feed-error{color:#ff9c9c;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;line-height:1.5;overflow:hidden}@media (height<=860px){.fm-header{padding:14px 18px 10px}.fm-overview{gap:6px;padding:10px 18px 0}.fm-stat{padding:8px 10px}.fm-stat strong{font-size:16px}.fm-toolbar{padding:10px 18px 12px}.fm-grid{gap:10px;padding:0 18px 14px}.fm-feed-row{padding:8px 12px}}.fm-badge{border:1px solid #0000;border-radius:999px;flex-shrink:0;align-items:center;padding:3px 8px;font-size:10px;line-height:1;display:inline-flex}.fm-badge-danger{color:#ffb4b4;background:#ff5c5c1f;border-color:#ff5c5c38}.fm-badge-warn{color:#fff0aa;background:#ffd95b1f;border-color:#ffd95b3d}.fm-badge-muted{color:var(--text-sub);background:#ffffff0a;border-color:#ffffff14}.fm-badge-ok{color:#9ce5ad;background:#46aa5c1f;border-color:#46aa5c3d}.fm-badge-neutral{color:var(--text-sub);background:#ffffff0a;border-color:#ffffff14}.fm-badge-accent{color:#f4ffe4;border-color:rgba(var(--accent-rgb), .4);background:rgba(var(--accent-rgb), .24)}.fm-empty{text-align:center;color:var(--text-muted);padding:22px 14px;font-size:12px}.modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:12px;width:340px;padding:24px;display:flex}.modal.fm-modal{border-radius:12px}.modal h3{font-size:15px}.confirm-modal{width:380px}.confirm-text{color:var(--text-sub);font-size:13px;line-height:1.6}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.modal-actions button{border:1px solid var(--border);color:var(--text-sub);border-radius:4px;padding:6px 16px;font-size:13px}.modal-actions button:hover{background:var(--bg-hover)}.btn-primary{font-weight:700;background:var(--accent)!important;border-color:var(--accent)!important;color:#132407!important}.btn-primary:hover:not(:disabled){background:var(--accent-hover)!important}.btn-primary:disabled{opacity:.5;cursor:default}.error{color:#ef5350;font-size:12px}
