:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft Yahei",Arial,sans-serif;background:#fff;color:#19191c;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100dvh}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}.hide{display:none!important}.app{height:100dvh;display:flex;flex-direction:column;max-width:920px;margin:auto;background:#fff}.topbar{height:56px;flex-shrink:0;padding:0 16px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #f0f0f0}.brand{display:flex;gap:8px;align-items:baseline;margin:auto}.brand strong{font-size:20px;letter-spacing:1px}.brand span{font-size:11px;color:#8e8e94}.icon-button{border:0;background:transparent;font-size:23px;padding:7px 9px;color:#3d3d44;border-radius:12px}.icon-button:hover{background:#f4f4f5}.status-strip{background:#f8f8f8;color:#69696f;font-size:11px;text-align:center;padding:7px 12px;flex-shrink:0}.status-strip.warn{background:#fff8e8;color:#765000}.chat-panel{flex:1;overflow-y:auto;padding:16px 17px 6px;scroll-behavior:smooth}.empty-state{text-align:center;max-width:500px;margin:clamp(22px,10vh,90px) auto 20px}.brand-round{width:60px;height:60px;display:grid;place-items:center;border-radius:50%;background:#161616;color:white;font-weight:600;font-size:28px;margin:auto auto 24px}.empty-state h2{font-size:24px;letter-spacing:-.5px;margin:0}.empty-state p{font-size:14px;color:#8b8b91;line-height:1.8;margin:13px auto 20px;max-width:300px}.suggestions{display:grid;gap:8px;text-align:left}.suggest{background:#fafafa;border:1px solid #ececef;padding:12px 14px;border-radius:12px;color:#3f3f46;text-align:left;font-size:13px}.suggest:hover{border-color:#bbb}.messages{display:flex;flex-direction:column;gap:19px;max-width:760px;margin:auto}.msg{display:flex;flex-direction:column;gap:6px;max-width:100%;overflow-wrap:anywhere}.msg.user{align-items:flex-end}.msg.assistant{align-items:stretch}.bubble{font-size:14px;line-height:1.82;white-space:pre-wrap;padding:14px 16px;max-width:min(85%,620px)}.msg.user .bubble{background:#f0f0f2;border-radius:19px 19px 4px 19px}.msg.assistant .bubble{padding:5px 1px;max-width:100%;line-height:1.9}.role{font-size:11px;color:#999}.msg.error .bubble{background:#fff1ee;color:#a02c1f;border:1px solid #f5d8d1;border-radius:12px}.retry{border:1px solid #ddd;border-radius:15px;background:#fff;padding:8px 12px;margin-top:6px;align-self:flex-start}.thinking{font-size:13px;color:#888;padding:18px 10px;max-width:760px;margin:auto}.pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:#111;margin-right:5px;animation:pulse 1.2s infinite}@keyframes pulse{50%{opacity:.2}}.composer-wrap{padding:8px 12px max(12px,env(safe-area-inset-bottom));background:#fff;flex-shrink:0}.project-select{max-width:760px;display:flex;align-items:center;gap:8px;margin:0 auto 8px;font-size:11px;color:#777}.project-select label{white-space:nowrap}.project-select select{flex:1;min-width:0;background:#fff;color:#606069;border:1px solid #eee;border-radius:9px;padding:6px;font-size:12px}.project-select button{border:1px solid #ddd;background:#fff;border-radius:9px;font-size:17px;line-height:20px}.composer{max-width:760px;margin:auto;border:1px solid #e5e5e7;border-radius:19px;padding:12px;box-shadow:0 2px 8px #0000000a}.composer:focus-within{border-color:#bebec2}.composer textarea{resize:none;width:100%;max-height:180px;min-height:46px;outline:0;border:0;background:transparent;color:#222;font-size:15px;line-height:1.5}.composer-actions{display:flex;align-items:center;justify-content:space-between}.composer-actions span{font-size:11px;color:#aaa}.send{border:0;border-radius:12px;background:#171719;color:#fff;width:35px;height:35px;font-size:24px}.footer-hint{text-align:center;color:#a4a4a9;font-size:10px;padding-top:8px}.shade{position:fixed;inset:0;background:#0005;z-index:10}.drawer{position:fixed;inset:0 auto 0 0;background:#fff;z-index:11;width:min(350px,90vw);box-shadow:5px 0 30px #0002;display:flex;flex-direction:column;transform:translateX(-105%);transition:transform .19s}.drawer.open{transform:translateX(0)}.drawer-header{height:55px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #eee}.nav-list{display:grid;gap:4px;padding:13px}.nav-list button{border:0;text-align:left;background:transparent;color:#444;padding:12px;border-radius:10px;font-size:14px}.nav-list button.active{background:#f3f3f4;font-weight:600}.drawer-content{flex:1;overflow-y:auto;padding:12px 16px}.drawer-bottom{padding:16px;font-size:11px;color:#aaa;border-top:1px solid #eee}.list-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 15px}.list-heading h3{font-size:15px;margin:0}.small-btn{font-size:12px;border:1px solid #ddd;background:#fff;padding:7px 10px;border-radius:10px}.item{border:1px solid #ececee;border-radius:12px;padding:12px;margin-bottom:9px;word-break:break-word}.item h4{font-size:13px;margin:0 0 6px}.item p{font-size:12px;line-height:1.6;color:#777;margin:4px 0}.item .tiny{font-size:10px;color:#aaa}.item button{border:1px solid #ddd;border-radius:8px;padding:6px 8px;background:#fff;font-size:11px;margin:5px 6px 0 0}.tag{font-size:10px;border-radius:10px;padding:2px 7px;background:#f2f2f3;color:#6d6d74}.muted{font-size:12px;line-height:1.75;color:#888}.auth-layer{position:fixed;inset:0;background:#fafafa;display:grid;place-items:center;padding:22px;z-index:20}.auth-card{background:#fff;max-width:410px;width:100%;padding:32px 25px;border-radius:20px;border:1px solid #eee}.wordmark{font-size:26px;font-weight:700;letter-spacing:1px}.mark-dot{display:inline-block;background:#171717;width:6px;height:6px;border-radius:50%;margin-left:3px}.auth-card h1{font-size:20px;margin:25px 0 9px}.auth-card p{font-size:13px;color:#777}.auth-card form{margin-top:28px;display:grid;gap:12px}.auth-card label{font-size:13px}.auth-card input, dialog input, dialog textarea, dialog select{width:100%;border:1px solid #ddd;padding:11px;border-radius:10px;background:#fff;color:#222}.primary{background:#19191b!important;color:#fff!important;border:0;border-radius:11px;padding:12px 15px}.auth-card small{display:block;color:#aaa;line-height:1.8;margin-top:18px}.error{color:#aa2828!important}.modal-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:19px}dialog{border:0;border-radius:18px;box-shadow:0 12px 50px #0003;padding:25px;width:min(400px,92vw);max-height:85dvh;overflow-y:auto}dialog::backdrop{background:#0007}dialog h3{margin:0 0 18px}dialog form label{font-size:12px;display:block;margin-bottom:4px;color:#555}dialog form .field{margin:0 0 12px}dialog form textarea{min-height:95px;resize:vertical}dialog #cancelModal{border:1px solid #ddd;background:white;border-radius:10px;padding:9px 14px}#toast{position:fixed;bottom:120px;left:50%;transform:translateX(-50%);padding:11px 15px;z-index:50;background:#242424;color:#fff;border-radius:10px;opacity:0;pointer-events:none;transition:opacity .2s;font-size:13px;max-width:90vw}#toast.show{opacity:1}@media(min-width:800px){.app{border-left:1px solid #eee;border-right:1px solid #eee}.topbar{height:62px}.chat-panel{padding-top:25px}}@media(prefers-color-scheme:dark){:root{background:#111114;color:#eee}.app,.topbar,.composer-wrap,.drawer,dialog,.auth-card{background:#171719;color:#eee}.topbar,.drawer-header,.drawer-bottom{border-color:#303034}.status-strip{background:#222225;color:#aaa}.status-strip.warn{background:#393020;color:#f6d691}.composer{border-color:#424246}.composer textarea,.project-select select,dialog input,dialog select,dialog textarea{background:#171719;color:#eee}.msg.user .bubble,.item,.suggest,.nav-list button.active{background:#27272b;color:#ddd}.item,.suggest{border-color:#3a3a3e}.item p{color:#aaa}.composer:focus-within{border-color:#777}.send,.primary{background:#eee!important;color:#1a1a1c!important}.icon-button,.small-btn,.item button,.project-select button,dialog #cancelModal{color:#eee;background:#252528;border-color:#444}.auth-layer{background:#111114}.auth-card{border-color:#38383b}.auth-card input{background:#222;color:white;border-color:#444}.drawer{box-shadow:5px 0 30px #000b}}

.work-card{border:1px solid #dedee2;border-radius:14px;padding:15px;font-size:13px;line-height:1.75;overflow-wrap:anywhere;background:#fafafa}.work-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.work-card p{margin:7px 0;white-space:pre-wrap}.work-card details{border-top:1px solid #e6e6e9;padding:10px 0 2px;margin-top:10px}.work-card summary{cursor:pointer;color:#63636d;font-size:12px}.work-section h4{font-size:13px;margin:12px 0 6px}.work-action{border-left:2px solid #d1d1d6;padding:4px 0 4px 11px;margin:9px 0}.work-action p{font-size:12px}.work-controls{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:15px}.work-controls .primary{font-size:12px}.workflow-warning{border-radius:9px;padding:9px 11px;background:#fff4d9;color:#775400;font-size:12px;white-space:pre-wrap}.raw-model{max-height:320px;overflow:auto;white-space:pre-wrap;font:11px/1.7 ui-monospace,monospace}.action-choice{display:flex;align-items:flex-start;gap:10px;margin:12px 0!important;line-height:1.7}.action-choice input{width:18px;min-width:18px;height:18px;margin-top:3px;accent-color:#222}.action-choice span{flex:1}@media(prefers-color-scheme:dark){.work-card{background:#202024;border-color:#404046}.work-card details{border-color:#404046}.work-card summary{color:#b5b5bd}.workflow-warning{background:#393020;color:#f6d691}}
