:root{color:#111827;background:#f7f8fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.app-shell{height:100svh;min-height:0;display:grid;grid-template-columns:minmax(400px,440px) minmax(0,1fr);grid-template-rows:48px minmax(0,1fr);overflow:hidden;background:#f7f8fa}.topbar{grid-column:1 / -1;height:48px;display:flex;align-items:center;gap:14px;padding:0 16px;border-bottom:1px solid #e5e7eb;background:#fff}.brand{font-size:14px;font-weight:700;white-space:nowrap}.session-title{min-width:150px;width:260px;border:0;outline:none;color:#374151;font-size:13px}.save-state{margin-left:auto;color:#6b7280;font-size:12px}.save-state.warning,.notice.warning{color:#b45309}.primary-button,.selection-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #2563eb;border-radius:7px;background:#2563eb;color:#fff;font-size:13px;font-weight:650;min-height:34px;padding:0 12px}.primary-button:hover,.selection-button:hover{background:#1d4ed8}.clear-button{flex:0 0 auto}.guide-button{margin-left:4px}.feedback-pane{min-height:0;overflow:auto;background:#fff;border-right:1px solid #e5e7eb}.preview-pane{min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column}.pane-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 13px;border-bottom:1px solid #eef0f2}.eyebrow{margin:0 0 4px;color:#6b7280;font-size:11px}h1{margin:0;font-size:17px;line-height:1.25}.count-chip{padding:3px 7px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:11px}.page-list,.feedback-list{border-bottom:1px solid #eef0f2}.page-item,.feedback-row>button:first-child{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;padding:10px 18px;color:#374151;text-align:left;font-size:12px}.page-item:hover,.feedback-row.selected>button:first-child{background:#f8fafc}.page-item span,.feedback-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-item b{color:#2563eb;font-size:11px}.empty-copy{margin:0;padding:13px 18px;color:#9ca3af;font-size:12px;line-height:1.55}.feedback-row{display:flex;align-items:center;border-top:1px solid #f3f4f6}.feedback-row small{display:block;margin-top:3px;color:#9ca3af;font-size:11px}.icon-button{display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid #dfe3e8;border-radius:6px;color:#4b5563;background:#fff}.icon-button:hover{border-color:#93c5fd;color:#1d4ed8}.icon-button.danger{width:28px;height:28px;margin-right:10px;border-color:transparent}.icon-button.danger:hover{color:#b91c1c;background:#fef2f2}.duplicate-resolution{display:grid;gap:10px;margin:12px 18px 0;padding:11px;border:1px solid #bfdbfe;border-radius:7px;background:#eff6ff;color:#1e3a5f;font-size:12px;line-height:1.55}.duplicate-resolution p{margin:0}.duplicate-resolution>div{display:flex;flex-wrap:wrap;gap:14px}.conversation-area{padding:16px 18px 24px}.selection-summary{display:grid;gap:4px;padding:10px 11px;border-left:3px solid #2563eb;background:#f8fafc;font-size:12px}.selection-summary span{color:#6b7280}.selection-summary strong{color:#1f2937}.target-list{display:flex;flex-wrap:wrap;gap:5px}.target-chip{padding:3px 6px;border:1px solid #dbe2ea;border-radius:999px;background:#fff;color:#4b5563;font-size:11px;line-height:1.35}.selection-actions{display:flex;flex-wrap:wrap;gap:10px}.text-button{display:inline-flex;align-items:center;gap:4px;width:max-content;padding:0;border:0;color:#2563eb;background:transparent;font-size:12px}.chat-history{display:grid;gap:9px;margin:16px 0}.message,.assistant-note{width:fit-content;max-width:92%;margin:0;padding:9px 10px;border-radius:7px;font-size:13px;line-height:1.55}.message.user{justify-self:end;background:#2563eb;color:#fff}.message.assistant,.assistant-note{background:#f3f4f6;color:#374151}.quick-replies{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.quick-replies button,.scope-options button{min-height:30px;padding:0 9px;border:1px solid #dbe2ea;border-radius:6px;background:#fff;color:#374151;font-size:12px}.quick-replies button:hover,.scope-options button:hover,.scope-options button.selected{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}.composer,.confirmation-summary{display:grid;gap:8px}.composer>span,.confirmation-summary>span{color:#374151;font-size:12px;font-weight:650}textarea{width:100%;resize:vertical;padding:9px 10px;border:1px solid #dbe2ea;border-radius:6px;outline:none;color:#111827;line-height:1.5}textarea:focus,.url-control input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f}.confirmation-summary{margin-top:20px;padding:13px;border:1px solid #bfdbfe;border-radius:7px;background:#eff6ff}.confirmation-summary p{margin:0;color:#1f2937;font-size:13px;line-height:1.55}.confirmation-summary small{color:#4b5563;font-size:12px;line-height:1.55}.confirm-button{margin-top:3px;width:100%}.empty-workspace{display:grid;justify-items:center;gap:9px;padding:48px 24px;color:#9ca3af;text-align:center;font-size:13px}.preview-toolbar{position:sticky;top:0;z-index:3;flex:0 0 48px;height:48px;display:flex;align-items:center;gap:12px;padding:0 14px;border-bottom:1px solid #e5e7eb;background:#fff}.url-control{min-width:0;flex:1;display:flex;align-items:center;gap:7px;height:32px;padding-left:9px;border:1px solid #dbe2ea;border-radius:6px;background:#fff;color:#6b7280}.url-control input{min-width:0;flex:1;height:30px;border:0;outline:none;color:#374151;font-size:12px}.url-control button{height:30px;border:0;border-left:1px solid #dbe2ea;background:#f9fafb;color:#374151;padding:0 10px;font-size:12px}.preview-actions{display:flex;align-items:center;gap:6px}.selection-button{min-width:105px;height:32px;padding:0 10px;font-size:12px}.selection-button.active{background:#1d4ed8}.notice{margin:0;padding:8px 14px;border-bottom:1px solid #fde68a;background:#fffbeb;color:#92400e;font-size:12px;line-height:1.45}.feedback-notice{display:none}iframe{flex:1;min-height:0;min-width:0;width:100%;border:0;background:#fff}.mobile-switcher{display:none}.login-shell{min-height:100svh;display:grid;place-items:center;padding:24px;background:#f3f6fb}.login-panel{width:min(100%,390px);display:grid;gap:14px;padding:28px;border:1px solid #dbe2ea;border-radius:8px;background:#fff;box-shadow:0 18px 42px #0f172a14}.login-panel h1{margin-top:8px;font-size:20px}.login-panel p{margin:0;color:#64748b;font-size:13px;line-height:1.55}.login-panel label{display:grid;gap:7px;color:#334155;font-size:12px;font-weight:650}.login-panel input{min-height:38px;padding:8px 10px;border:1px solid #dbe2ea;border-radius:6px;outline:none}.login-panel input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f}.login-panel .primary-button{width:100%}.login-error{color:#b91c1c!important}.guide-overlay{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:20px;background:#0f172a61}.guide-dialog{width:min(100%,440px);padding:24px;border-radius:8px;background:#fff;box-shadow:0 18px 42px #0f172a33}.guide-dialog h1{font-size:18px}.guide-dialog ol{display:grid;gap:11px;margin:18px 0 22px;padding-left:22px;color:#475569;font-size:13px;line-height:1.6}@media(max-width:1023px){.app-shell{display:block;min-height:100svh}.topbar{position:sticky;top:0;z-index:4}.brand{display:none}.session-title{min-width:0;width:1fr;flex:1}.save-state{display:none}.guide-button{margin-left:0}.mobile-switcher{display:grid;grid-template-columns:1fr 1fr;height:42px;background:#fff;border-bottom:1px solid #e5e7eb}.mobile-switcher button{border:0;border-bottom:2px solid transparent;background:transparent;color:#6b7280;font-size:13px}.mobile-switcher button.active{border-color:#2563eb;color:#1d4ed8;font-weight:650}.feedback-pane,.preview-pane{display:none;height:calc(100svh - 90px);border:0}.feedback-pane.mobile-visible,.preview-pane.mobile-visible{display:flex}.feedback-pane.mobile-visible,.feedback-notice{display:block}.preview-toolbar{position:sticky;top:0;z-index:3;flex:0 0 auto;height:auto;flex-wrap:wrap;padding:8px}.url-control{flex-basis:100%}.preview-actions{width:100%;justify-content:space-between}.selection-button{flex:1}}
