@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-SemiBold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-BoldItalic.woff2)format("woff2");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Prosto One;src:url(/fonts/ProstoOne-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--bg:#fefdf8;--fg:#1a1a1a;--muted:#6b6b6b;--line:#d8d6cf;--accent:#1a1a1a;--primary:#2563eb;--danger:#b8362a;--font-text:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-display:"Prosto One", "IBM Plex Mono", sans-serif;--tap:44px;--nav-h:64px;--content-w:720px;--nav-w:540px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--fg);font-family:var(--font-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px) + 16px);font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}.app{flex-direction:column;min-height:100dvh;display:flex}.app-main{flex-direction:column;flex:auto;display:flex}.bottom-nav{max-width:calc(var(--content-w) - 32px);min-height:var(--nav-h);background:var(--bg);border-top:1px solid var(--line);border-left:1px solid var(--line);border-right:1px solid var(--line);z-index:100;padding-bottom:env(safe-area-inset-bottom,0);grid-template-columns:repeat(4,1fr);margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}@media (max-width:720px){.bottom-nav{border-left:0;border-right:0}}.bottom-nav a{min-height:var(--tap);font-family:var(--font-display);letter-spacing:.02em;color:var(--muted);border-bottom:3px solid #0000;justify-content:center;align-items:center;font-size:15px;transition:color .12s,background-color .12s,border-color .12s;display:flex}.bottom-nav a+a{border-left:1px solid var(--line)}.bottom-nav a:active{background:#0000000a}.bottom-nav a.is-active{color:var(--fg);border-bottom-color:var(--primary)}.page{max-width:var(--content-w);width:100%;padding:16px 16px calc(var(--nav-h) + env(safe-area-inset-bottom,0px) + 24px);flex-direction:column;flex:auto;margin:0 auto;display:flex}.page h1{font-family:var(--font-display);letter-spacing:.01em;margin-bottom:12px;font-size:22px}.muted{color:var(--muted)}.placeholder{text-align:center;color:var(--muted);flex:1;justify-content:center;align-items:center;padding:24px;font-style:italic;display:flex}.btn-primary,.btn-ghost{min-height:var(--tap);font-family:var(--font-display);letter-spacing:.02em;border-radius:2px;justify-content:center;align-items:center;padding:0 18px;font-size:15px;display:inline-flex}.btn-primary{background:var(--fg);color:var(--bg);border:1px solid var(--fg)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:var(--bg);color:var(--fg);border:1px solid var(--line)}.btn-ghost:hover{border-color:var(--fg)}.login-wrap{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.login-form{flex-direction:column;gap:14px;width:100%;max-width:360px;display:flex}.login-form h1{font-family:var(--font-display);letter-spacing:.01em;font-size:28px}.login-form label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.login-form input{font:inherit;color:var(--fg);border:1px solid var(--line);min-height:var(--tap);background:#fff;border-radius:2px;padding:0 14px;font-size:16px}.login-form input:focus{border-color:var(--fg);outline:none}.login-error{color:var(--danger);font-size:13px}.chat{flex-direction:column;flex:auto;width:100%;max-width:720px;margin:0 auto;display:flex}.chat-header{border-bottom:1px solid var(--line);background:var(--bg);z-index:10;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;top:0}.agent-switch{border:1px solid var(--line);border-radius:2px;gap:0;display:inline-flex;overflow:hidden}.agent-switch button{min-height:var(--tap);font-family:var(--font-display);letter-spacing:.02em;color:var(--muted);border-right:1px solid var(--line);background:var(--bg);padding:0 14px;font-size:14px}.agent-switch button:last-child{border-right:0}.agent-switch button.is-active{background:var(--fg);color:var(--bg)}.agent-switch button:disabled{opacity:.35;cursor:not-allowed}.chat-feed{flex-direction:column;flex:auto;gap:12px;padding:12px 16px 16px;display:flex}.msg{flex-direction:column;gap:8px;max-width:100%;display:flex}.msg-user{align-items:flex-end}.msg-assistant{align-items:flex-start}.msg-bubble{border:1px solid var(--line);white-space:pre-wrap;background:#fff;border-radius:6px;max-width:86%;padding:10px 12px;font-size:14.5px}.msg-user .msg-bubble{background:var(--fg);color:var(--bg);border-color:var(--fg)}.msg-bubble.pending{color:var(--muted);font-style:italic}.cards{flex-direction:column;gap:8px;width:100%;display:flex}.card{border:1px solid var(--line);background:#fff;border-radius:4px;padding:10px 12px}.card-title{font-family:var(--font-display);margin-bottom:4px;font-size:15px}.card-desc{color:#333;margin-bottom:8px;font-size:13.5px}.card-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.btn-accept,.btn-reject{min-height:var(--tap);font-family:var(--font-display);letter-spacing:.02em;border-radius:2px;justify-content:center;align-items:center;padding:0 16px;font-size:14px;display:inline-flex}.btn-accept{background:var(--fg);color:var(--bg);border:1px solid var(--fg)}.btn-reject{background:var(--bg);color:var(--fg);border:1px solid var(--line)}.btn-reject:hover{border-color:var(--fg)}.card-status{font-size:13px;font-style:italic}.card-status.accepted{color:#1b6f2c}.card-status.rejected{color:var(--danger)}.card-accepted{background:#f5fbf6}.card-rejected{opacity:.85;background:#fbf6f5}.apply-all{min-height:var(--tap);border:1px dashed var(--line);color:var(--muted);border-radius:2px;align-self:flex-start;padding:0 16px;font-size:14px}.apply-all:hover{color:var(--fg);border-color:var(--fg)}.chat-input{border-top:1px solid var(--line);background:var(--bg);bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));gap:8px;padding:12px 16px;display:flex;position:sticky}.chat-input textarea{resize:none;font:inherit;min-height:var(--tap);border:1px solid var(--line);color:var(--fg);background:#fff;border-radius:2px;flex:1;padding:10px 12px;font-size:16px;line-height:1.4}.chat-input textarea:focus{border-color:var(--fg);outline:none}.chat-error{color:var(--danger);padding:0 16px 6px;font-size:13px}.chat-subheader{border-bottom:1px solid var(--line);background:var(--bg);top:var(--nav-h);z-index:9;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex;position:sticky}.writer-subheader .writer-meta{flex-direction:column;flex:1;gap:2px;min-width:0;font-size:13px;line-height:1.3;display:flex}.writer-subheader .writer-meta>div{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.writer-closed{color:#1b6f2c;background:#eef7f0;border:1px solid #b8d8c1;border-radius:4px;margin:12px 16px;padding:10px 12px;font-size:13px}.msg-bubble.article-bubble{white-space:pre-wrap;word-wrap:break-word;max-width:100%;font-size:14px;line-height:1.55}.msg-assistant .msg-bubble.article-bubble{width:100%}.accept-article-btn{align-self:flex-start;margin-top:8px}.accept-confirm{border:1px solid var(--line);background:#fff;border-radius:4px;flex-direction:column;align-self:flex-start;gap:10px;margin-top:8px;padding:12px 14px;font-size:14px;display:flex}.accept-confirm-actions{gap:8px;display:flex}.writer-form{flex-direction:column;gap:14px;width:100%;padding:16px;display:flex}.writer-form h2{font-family:var(--font-display);letter-spacing:.01em;font-size:20px}.writer-form label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.writer-form select{font:inherit;min-height:var(--tap);border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:2px;padding:0 32px 0 12px;font-size:16px}.writer-form select:focus{border-color:var(--fg);outline:none}.writer-form-actions{gap:10px;display:flex}.settings-form{flex-direction:column;gap:12px;display:flex}.settings-form textarea{width:100%;font:inherit;border:1px solid var(--line);color:var(--fg);resize:vertical;background:#fff;border-radius:2px;padding:10px 12px;font-size:14px;line-height:1.5}.settings-form textarea:focus{border-color:var(--fg);outline:none}.settings-actions{align-items:center;gap:12px;display:flex}.settings-tabs{border:1px solid var(--line);border-radius:2px;grid-template-columns:1fr 1fr;margin-bottom:16px;display:grid;overflow:hidden}.settings-tabs button{min-height:var(--tap);font-family:var(--font-display);letter-spacing:.02em;background:var(--bg);color:var(--muted);border-right:1px solid var(--line);font-size:15px}.settings-tabs button:last-child{border-right:0}.settings-tabs button.is-active{background:var(--fg);color:var(--bg)}.settings-pane{flex-direction:column;display:flex}.prompts{flex-direction:column;gap:12px;display:flex}.prompts-picker{align-items:center;gap:8px;font-size:14px;display:flex}.prompts-picker select{font:inherit;min-height:var(--tap);border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:2px;padding:0 32px 0 12px;font-size:16px}.prompts-picker select:focus{border-color:var(--fg);outline:none}.profile{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.profile-row{flex-direction:column;gap:2px;font-size:14px;display:flex}.ideas-filter{margin-bottom:12px;font-size:14px}.ideas-filter select{font:inherit;min-height:var(--tap);border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:2px;padding:0 32px 0 12px;font-size:16px}.ideas-filter select:focus{border-color:var(--fg);outline:none}.card.status-new{background:#f5fbf6}.card.status-material_in_progress{background:#f7f5fb}.card.status-material_ready{background:#eef7f0}.card.status-material_failed{background:#fbf2f0}.card.status-banned{opacity:.85;background:#fbf6f5}.card.status-published{background:#f5f8fb}.card-error{color:var(--danger);margin-top:4px;font-size:13px}.material-progress{flex-direction:column;gap:2px;width:100%;font-size:13px;display:flex}.material-progress .progress-step{word-break:break-word;font-style:italic}.idea-detail .back-btn{align-self:flex-start;margin-bottom:12px}.idea-desc{margin-bottom:8px}.idea-status{font-family:var(--font-display);letter-spacing:.02em;color:var(--muted);margin-bottom:16px;font-size:13px}.article-source{white-space:pre-wrap;word-wrap:break-word;font:inherit;border:1px solid var(--line);background:#fff;border-radius:2px;padding:16px;font-size:14px;line-height:1.55;overflow-x:auto}.detail-actions{gap:10px;margin-top:16px;display:flex}.editor-picker{margin-bottom:14px;font-size:14px}.editor-picker select{font:inherit;min-height:var(--tap);border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:2px;max-width:100%;padding:0 32px 0 12px;font-size:16px}.editor-picker select:focus{border-color:var(--fg);outline:none}.editor-textarea{width:100%;font:inherit;border:1px solid var(--line);color:var(--fg);resize:vertical;background:#fff;border-radius:2px;min-height:60vh;padding:14px;font-size:14px;line-height:1.55}.editor-textarea:focus{border-color:var(--fg);outline:none}.editor-textarea:disabled{color:var(--muted);background:#fafafa}.editor-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;display:flex}.image-thumb-btn{cursor:zoom-in;background:0 0;border:0;align-self:flex-start;max-width:100%;padding:0}.image-thumb{border:1px solid var(--line);background:#fff;border-radius:4px;width:480px;max-width:100%;height:auto;display:block}.image-download{align-self:flex-start;margin-top:4px;font-size:13px;text-decoration:underline}.image-download:hover{color:var(--fg)}.image-lightbox{z-index:1000;cursor:zoom-out;background:#000000d9;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.image-lightbox img{object-fit:contain;border-radius:4px;max-width:100%;max-height:100%}.image-lightbox-download{background:var(--bg);color:var(--fg);font-family:var(--font-display);cursor:pointer;border-radius:2px;padding:10px 18px;font-size:14px;text-decoration:none;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.image-lightbox-close{background:var(--bg);width:44px;height:44px;color:var(--fg);cursor:pointer;border:0;border-radius:50%;font-size:20px;position:absolute;top:16px;right:16px}
