*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}button,a,[role=button]{touch-action:manipulation}:root{--bg: #faf9f7;--sidebar-bg: #f0ede7;--surface: #ffffff;--accent: #cc785c;--accent-soft: rgba(204,120,92,.13);--text: #1a1211;--text-muted: #73726e;--border: rgba(0,0,0,.08);--shadow-sm: 0 1px 4px rgba(0,0,0,.06);--shadow-md: 0 4px 20px rgba(0,0,0,.09);--shadow-lg: 0 12px 40px rgba(0,0,0,.13);--radius: 14px;--radius-sm: 8px;--font: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", "Courier New", monospace;--tr: .22s cubic-bezier(.16,1,.3,1)}[data-theme=dark]{--bg: #18181b;--sidebar-bg: #111113;--surface: #27272a;--accent: #d4896a;--accent-soft: rgba(212,137,106,.15);--text: #e4e4e7;--text-muted: #71717a;--border: rgba(255,255,255,.07);--shadow-sm: 0 1px 4px rgba(0,0,0,.4);--shadow-md: 0 4px 20px rgba(0,0,0,.5);--shadow-lg: 0 12px 40px rgba(0,0,0,.6)}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body{height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);height:100vh;width:100%;display:flex;overflow:hidden;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background var(--tr),color var(--tr)}@supports (height: 100dvh){body{height:100dvh}}body.no-anim *,body.no-anim *:before,body.no-anim *:after{animation:none!important;transition:none!important}body.compact-ui .msg-row{margin-bottom:7px;gap:8px}body.compact-ui .msg-text{line-height:1.5;font-size:.9rem}body.compact-ui .msg-actions{margin-top:5px}body.project-landing .input-wrap{display:none}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#80808040;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#80808066}.sidebar{width:258px;min-width:258px;max-width:258px;background:var(--sidebar-bg);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:12px 8px;overflow:hidden;position:fixed;left:0;top:0;bottom:0;z-index:250;transform:translate(-100%);box-shadow:var(--shadow-lg);transition:transform .24s cubic-bezier(.16,1,.3,1),background var(--tr),border-color var(--tr)}body.sidebar-open .sidebar{transform:translate(0)}.sidebar-logo{display:flex;align-items:center;gap:10px;padding:6px 8px 14px}.sidebar-close-btn{display:inline-flex;margin-left:auto;flex-shrink:0;width:30px;height:30px;border-radius:var(--radius-sm);border:none;background:none;color:var(--text-muted);cursor:pointer;align-items:center;justify-content:center;font-size:1rem;transition:background .15s,color .15s}.sidebar-close-btn:hover{background:#8080801a;color:var(--text)}.logo-icon{width:30px;height:30px;border-radius:8px;background:transparent;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;flex-shrink:0;overflow:hidden}.logo-icon img{width:100%;height:100%;object-fit:cover;display:block}.logo-name{font-weight:700;font-size:1rem;letter-spacing:-.02em}.new-chat-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:var(--font);font-size:.85rem;font-weight:500;cursor:pointer;transition:filter var(--tr),transform var(--tr);margin-bottom:12px}.new-chat-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.new-chat-btn:active{transform:translateY(0);filter:brightness(.96)}.sidebar-search-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:8px 11px;margin:-3px 0 10px;border-radius:11px;border:1px solid var(--border);background:color-mix(in oklab,var(--surface) 88%,transparent);color:var(--text);cursor:pointer;font-family:var(--font);font-size:.84rem;transition:border-color var(--tr),background var(--tr),transform var(--tr),box-shadow var(--tr)}.sidebar-search-main{display:inline-flex;align-items:center;gap:8px;min-width:0}.sidebar-search-main i{color:var(--accent);font-size:.82rem}.sidebar-search-btn:hover{border-color:color-mix(in oklab,var(--accent) 42%,var(--border));background:color-mix(in oklab,var(--accent-soft) 72%,var(--surface) 28%);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.sidebar-search-kbd{flex-shrink:0;padding:2px 7px;border-radius:999px;border:1px solid var(--border);background:#80808014;color:var(--text-muted);font-size:.7rem;letter-spacing:.03em}.sb-label{font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);padding:4px 8px 5px}.chats-sec{flex:1 1 auto;min-height:0;margin-top:2px;display:flex;flex-direction:column;overflow:hidden}.chats-head{width:100%;border:none;background:transparent;color:var(--text-muted);font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;justify-content:space-between;padding:4px 8px 5px;cursor:pointer;font-weight:700}.chats-chevron{font-size:.66rem;opacity:.65;transition:transform .2s ease}.chats-sec.collapsed .chats-chevron{transform:rotate(-90deg)}.chats-panel{flex:1 1 auto;min-height:0;overflow:hidden;max-height:1000px;transition:max-height .24s ease,opacity .2s ease,transform .2s ease;opacity:1;transform:translateY(0)}.chats-sec.collapsed .chats-panel{max-height:0;opacity:0;transform:translateY(-3px);pointer-events:none}.history-list{flex:1;overflow-y:auto}.chats-panel .history-list{height:100%}.history-item{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-muted);font-size:.84rem;transition:background .15s,color .15s;min-width:0}.history-item i{font-size:.75rem;flex-shrink:0;opacity:.55}.history-title{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-del{width:20px;height:20px;border-radius:5px;border:none;background:transparent;color:var(--text-muted);opacity:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:opacity .15s,background .15s,color .15s;flex-shrink:0}.history-item:hover .history-del{opacity:.9}.history-del:hover{background:#e055551f;color:#e05555}.history-item:hover{background:#80808012;color:var(--text)}.history-item.active{background:var(--accent-soft);color:var(--accent);font-weight:500}.history-item.active i{opacity:1}.projects-sec{margin:8px 0 10px;padding:0 6px;display:grid;gap:6px}.projects-head{width:100%;border:none;background:transparent;color:var(--text-muted);font-size:.95rem;letter-spacing:.01em;display:flex;align-items:center;justify-content:space-between;padding:3px 2px 2px;cursor:pointer;font-weight:500}.projects-chevron{font-size:.66rem;opacity:.65;transition:transform .2s ease}.projects-sec.collapsed .projects-chevron{transform:rotate(-90deg)}.projects-panel{display:grid;gap:5px;max-height:360px;overflow:hidden;transition:max-height .25s ease,opacity .2s ease,transform .2s ease;opacity:1;transform:translateY(0)}.projects-sec.collapsed .projects-panel{max-height:0;opacity:0;transform:translateY(-3px)}.project-new-btn{border:1px dashed var(--border);background:color-mix(in oklab,var(--surface) 85%,transparent);color:var(--text);border-radius:10px;height:36px;padding:0 11px;display:inline-flex;align-items:center;gap:8px;font-size:.88rem;font-family:var(--font);cursor:pointer;transition:border-color .15s,background .15s,color .15s;justify-content:flex-start}.project-new-btn:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.projects-list{display:grid;gap:3px}.project-item{display:flex;align-items:center;gap:9px;width:100%;min-width:0;border:none;background:transparent;color:var(--text);border-radius:10px;padding:8px;cursor:pointer;transition:background .15s,color .15s;text-align:left;font-family:var(--font);font-size:.94rem}.project-item:hover{background:#80808017}.project-item.active{background:var(--accent-soft);color:var(--accent)}.project-row{position:relative;display:flex;align-items:center;border-radius:10px;transition:background .15s}.project-row:hover{background:#8080800d}.project-row .project-item{flex:1;border-radius:10px}.project-row:hover .project-item{background:transparent}.project-item-actions{display:flex;align-items:center;gap:2px;opacity:0;pointer-events:none;transition:opacity .15s;padding-right:4px;flex-shrink:0}.project-row:hover .project-item-actions{opacity:1;pointer-events:auto}.project-act{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:transparent;color:var(--text-muted);border-radius:7px;cursor:pointer;font-size:.78rem;transition:background .13s,color .13s}.project-act:hover{background:#80808024;color:var(--text)}.project-act.danger:hover{background:#ef44441f;color:#ef4444}.project-row.drag-target{background:var(--accent-soft);outline:2px dashed var(--accent);outline-offset:-2px}.history-item.is-dragging,.ph-chat-item.is-dragging{opacity:.45}.project-ic{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;flex-shrink:0;font-size:.88rem}.project-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.project-empty{font-size:.76rem;color:var(--text-muted);padding:2px 2px 6px}.project-overlay{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:clamp(16px,4vh,40px) 16px;background:#0706085c;backdrop-filter:blur(10px);opacity:0;pointer-events:none;transition:opacity .22s ease}.project-overlay.active{opacity:1;pointer-events:all}.project-modal{width:min(660px,calc(100vw - 24px));max-height:min(88vh,820px);display:flex;flex-direction:column;border-radius:22px;border:1px solid color-mix(in oklab,var(--border) 76%,transparent);background:linear-gradient(180deg,color-mix(in oklab,var(--surface) 78%,transparent),color-mix(in oklab,var(--surface) 88%,transparent));backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 26px 80px #00000038,var(--shadow-lg);overflow:hidden;transform:translateY(12px) scale(.985);transition:transform .26s cubic-bezier(.16,1,.3,1)}.project-overlay.active .project-modal{transform:translateY(0) scale(1)}.pm-body{overflow-y:auto;flex:1;min-height:0}.pm-section-last{padding-bottom:16px}.pm-hdr{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 0;flex-shrink:0}.pm-hdr-left{flex:1;min-width:0}.pm-title{font-size:1.55rem;letter-spacing:-.025em;font-weight:700;line-height:1.15;color:var(--text)}.pm-subtitle{font-size:.84rem;color:var(--text-muted);margin-top:3px;line-height:1.4}.pm-icon-btn{width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:color-mix(in oklab,var(--sidebar-bg) 80%,transparent);color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:.92rem;flex-shrink:0;transition:border-color .15s,color .15s,background .15s}.pm-icon-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.pm-section{padding:16px 20px 0}.pm-label{display:block;font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:8px}.pm-label-opt{font-weight:500;text-transform:none;letter-spacing:0;opacity:.75}.pm-name{width:100%;height:52px;border-radius:14px;border:1px solid var(--border);background:color-mix(in oklab,var(--sidebar-bg) 90%,transparent);color:var(--text);font-size:1rem;font-family:var(--font);padding:0 14px;outline:none;transition:border-color .15s,box-shadow .15s,background var(--tr)}.pm-name::placeholder{color:var(--text-muted);opacity:.72}.pm-name:focus{border-color:color-mix(in oklab,var(--accent) 55%,var(--border));box-shadow:0 0 0 4px color-mix(in oklab,var(--accent-soft) 55%,transparent)}.pm-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.pm-chip{border:1px solid var(--border);color:var(--text-muted);background:color-mix(in oklab,var(--sidebar-bg) 85%,transparent);border-radius:12px;padding:10px 8px 9px;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:.78rem;font-weight:600;cursor:pointer;font-family:var(--font);transition:border-color .15s,background .15s,color .15s,transform .15s,box-shadow .15s;line-height:1.2;text-align:center}.pm-chip i{font-size:1.15rem;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.pm-chip span{font-size:.74rem;font-weight:600}.pm-chip:hover{transform:translateY(-2px);border-color:color-mix(in oklab,var(--accent) 40%,var(--border));box-shadow:0 4px 12px #00000014}.pm-chip:hover i{transform:scale(1.18)}.pm-chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent-soft) 60%,transparent)}.pm-chip[data-cat=investing] i{color:#22c55e}.pm-chip[data-cat=homework] i{color:#3b82f6}.pm-chip[data-cat=writing] i{color:#8b5cf6}.pm-chip[data-cat=travel] i{color:#f59e0b}.pm-chip[data-cat=code] i{color:#06b6d4}.pm-chip[data-cat=design] i{color:#ec4899}.pm-chip[data-cat=health] i{color:#ef4444}.pm-chip[data-cat=cooking] i{color:#f97316}.pm-chip[data-cat=music] i{color:#6366f1}.pm-chip[data-cat=business] i{color:#14b8a6}.pm-chip[data-cat=research] i{color:#eab308}.pm-chip[data-cat=gaming] i{color:#a855f7}.pm-chip.active i{color:inherit}.pm-instr{width:100%;min-height:80px;border-radius:14px;border:1px solid var(--border);background:color-mix(in oklab,var(--sidebar-bg) 90%,transparent);color:var(--text);padding:11px 14px;resize:vertical;font-family:var(--font);font-size:.88rem;line-height:1.55;outline:none;transition:border-color .15s,box-shadow .15s,background var(--tr)}.pm-instr::placeholder{color:var(--text-muted);opacity:.65}.pm-instr:focus{border-color:color-mix(in oklab,var(--accent) 55%,var(--border));box-shadow:0 0 0 4px color-mix(in oklab,var(--accent-soft) 55%,transparent)}.pm-ftr{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:16px 20px 20px;flex-shrink:0;border-top:1px solid color-mix(in oklab,var(--border) 70%,transparent);margin-top:16px}.pm-cancel-btn{height:40px;padding:0 16px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:.88rem;font-weight:600;font-family:var(--font);cursor:pointer;transition:background .15s,color .15s}.pm-cancel-btn:hover{background:color-mix(in oklab,var(--sidebar-bg) 80%,transparent);color:var(--text)}.pm-create{height:40px;padding:0 20px;border-radius:10px;border:1px solid transparent;background:color-mix(in oklab,var(--text-muted) 22%,transparent);color:var(--text-muted);font-size:.88rem;font-weight:600;font-family:var(--font);cursor:not-allowed;transition:background .18s,color .18s,transform .18s,box-shadow .18s}.pm-create.ready{background:var(--accent);color:#fff;cursor:pointer;box-shadow:0 2px 10px color-mix(in oklab,var(--accent) 38%,transparent)}.pm-create.ready:hover{transform:translateY(-1px);filter:brightness(1.06)}@media(max-width:600px){.project-modal{border-radius:18px}.pm-hdr{padding:16px 16px 0}.pm-section{padding:14px 16px 0}.pm-ftr{padding:14px 16px 16px}.pm-title{font-size:1.3rem}.pm-cats{grid-template-columns:repeat(3,1fr);gap:6px}.pm-chip{padding:9px 6px 8px}}@media(max-width:400px){.pm-cats{grid-template-columns:repeat(2,1fr)}}.sidebar-footer{border-top:1px solid var(--border);padding-top:8px;display:flex;flex-direction:column;gap:1px}.sb-btn{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);background:none;border:none;cursor:pointer;font-family:var(--font);font-size:.84rem;color:var(--text-muted);text-align:left;width:100%;transition:background .15s,color .15s}.sb-btn i{width:15px;text-align:center;opacity:.65}.sb-btn:hover{background:#80808012;color:var(--text)}.sb-btn.sb-btn-logout{color:#e05555}.sb-btn.sb-btn-logout i{opacity:.95}.sb-btn.sb-btn-logout:hover{background:#e055551f;color:#e05555}.user-chip{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s}.user-chip:hover{background:#80808012}.user-av{width:26px;height:26px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent),#e8a98a);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.72rem;font-weight:700;overflow:hidden}.user-name-txt{font-size:.84rem;font-weight:500;line-height:1.2}.user-plan-txt{font-size:.72rem;color:var(--text-muted)}.main-content{flex:1 1 0;min-width:0;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:margin-left .24s cubic-bezier(.16,1,.3,1)}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:0 18px;height:52px;flex-shrink:0;border-bottom:1px solid var(--border);background:var(--bg);transition:background var(--tr),border-color var(--tr);position:relative;z-index:20}.hdr-left{display:flex;align-items:center}.chat-proj-crumb{display:flex;align-items:center;gap:2px;margin-right:6px}.chat-proj-btn{display:flex;align-items:center;gap:5px;background:none;border:none;padding:4px 8px;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font);font-size:.82rem;color:var(--text-muted);transition:background .15s,color .15s}.chat-proj-btn:hover{background:#8080801a;color:var(--accent)}.chat-proj-btn i{font-size:.72rem}.chat-proj-sep{font-size:.66rem;color:var(--text-muted);opacity:.4}.model-sel-wrap{position:relative}.model-selector{display:flex;align-items:center;gap:7px;padding:5px 11px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);cursor:pointer;font-family:var(--font);font-size:.84rem;font-weight:500;color:var(--text);transition:border-color .15s,background var(--tr)}.model-selector:hover{border-color:var(--accent)}.model-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;flex-shrink:0}.model-chevron{font-size:.65rem;color:var(--text-muted)}.model-dropdown{position:absolute;top:calc(100% + 6px);left:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:5px;box-shadow:var(--shadow-lg);z-index:200;min-width:210px;display:none}.model-dropdown.open{display:block;animation:dropIn .15s ease}@keyframes dropIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}.mdl-opt{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s}.mdl-opt:hover{background:var(--sidebar-bg)}.mdl-opt.selected{background:var(--accent-soft)}.mdl-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.mdl-info strong{display:block;font-size:.84rem}.mdl-info span{font-size:.75rem;color:var(--text-muted)}.mdl-opt.coming-soon{opacity:.5;cursor:default}.mdl-opt.coming-soon:hover{background:transparent}.hdr-actions{display:flex;align-items:center;gap:4px}.hdr-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:background .15s,color .15s}.hdr-btn:hover{background:#8080801a;color:var(--text)}.hdr-btn.active{color:var(--accent)}.chat-body{flex:1 1 0;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.welcome-icon{width:88px;height:88px;border-radius:22px;background:transparent;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;margin:0 auto 22px;box-shadow:none;overflow:visible}.welcome-icon .msg-av-img{object-fit:contain;border-radius:22px}.welcome-title{font-size:1.85rem;font-weight:700;letter-spacing:-.03em;margin-bottom:10px;background:linear-gradient(135deg,var(--text) 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-sub{color:var(--text-muted);font-size:.95rem;max-width:380px;margin:0 auto 32px}.suggestions{display:grid;grid-template-columns:1fr 1fr;gap:9px;max-width:520px;width:100%}.sug-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;text-align:left;cursor:pointer;transition:border-color var(--tr),box-shadow var(--tr),transform var(--tr)}.sug-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.sug-card i{color:var(--accent);margin-bottom:7px;font-size:.95rem;display:block}.sug-card strong{font-size:.87rem;color:var(--text);display:block;margin-bottom:3px}.sug-card p{font-size:.8rem;color:var(--text-muted);line-height:1.4}.project-home{width:min(1120px,100%);margin:0 auto;padding:24px 26px 32px;display:grid;gap:14px;animation:msgIn .22s cubic-bezier(.16,1,.3,1) both}.ph-top{display:flex;align-items:center;gap:13px;min-height:48px}.ph-top-actions{margin-left:auto;display:inline-flex;align-items:center;gap:8px}.ph-icon{width:40px;height:40px;border-radius:999px;border:2px solid currentColor;display:inline-flex;align-items:center;justify-content:center;font-size:1.06rem;flex-shrink:0;background:transparent;color:var(--accent)}.ph-title{font-size:clamp(1.55rem,1.4rem + 1.2vw,2.22rem);line-height:1.14;letter-spacing:-.03em;margin:0;font-weight:600;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ph-rule{font-size:.86rem;color:var(--text-muted);line-height:1.45;max-width:860px;margin-top:-2px}.ph-compose-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;gap:9px;padding:12px 14px;box-shadow:var(--shadow-md);transition:border-color .2s,box-shadow .2s,background var(--tr)}.ph-compose-card:focus-within{border-color:#cc785c66;box-shadow:0 4px 24px #cc785c1a,var(--shadow-md)}.ph-compose-input{width:100%;border:none;resize:none;outline:none;font-family:var(--font);font-size:.93rem;background:transparent;min-height:24px;max-height:200px;color:var(--text);line-height:1.6}.ph-compose-input::placeholder{color:var(--text-muted)}.ph-compose-row{display:flex;justify-content:space-between;align-items:center}.ph-left-controls{display:flex;align-items:center;gap:5px}.ph-right-controls{display:flex;align-items:center;gap:7px}.ph-mini-btn{width:30px;height:30px;border-radius:var(--radius-sm);background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:background .15s,color .15s}.ph-mini-btn:hover{background:#80808017;color:var(--text)}.ph-think-lbl{display:flex;align-items:center;gap:5px;cursor:pointer;user-select:none;background:none;border:none;padding:0;font-family:var(--font)}.ph-think-lbl .think-lbl-txt{font-size:.78rem;color:var(--text-muted);font-weight:500}.ph-think-lbl:hover .think-lbl-txt{color:var(--text)}.ph-think-sw{position:relative;width:30px;height:17px;display:inline-block;background:#8080804d;border-radius:99px;flex-shrink:0;transition:background .28s}.ph-think-sw:before{content:"";position:absolute;width:11px;height:11px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:transform .28s;box-shadow:0 1px 3px #0003}.ph-think-lbl.active .ph-think-sw{background:var(--accent)}.ph-think-lbl.active .ph-think-sw:before{transform:translate(13px)}.ph-send-btn{width:34px;height:34px;border-radius:var(--radius-sm);background:var(--accent);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:filter .15s,transform .15s}.ph-send-btn:hover{filter:brightness(1.1);transform:scale(1.05)}.ph-send-btn:active{transform:scale(.95)}.ph-tabs{display:inline-flex;align-items:center;gap:8px}.ph-tab{border:1px solid transparent;background:transparent;color:var(--text-muted);border-radius:999px;height:38px;padding:0 16px;font-size:.92rem;font-family:var(--font);font-weight:600;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.ph-tab.active{color:var(--text);border-color:var(--border);background:color-mix(in oklab,var(--surface) 92%,var(--bg) 8%)}.ph-tab-count{font-size:.74rem;padding:2px 7px;border-radius:999px;color:var(--accent);background:var(--accent-soft);line-height:1}.ph-pane{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden;transition:border-color var(--tr),background var(--tr)}.ph-chat-list{display:grid}.ph-chat-item{display:grid;grid-template-columns:1fr auto auto;gap:8px;width:100%;border:none;border-bottom:1px solid var(--border);background:transparent;text-align:left;padding:11px 13px;cursor:pointer;transition:background .15s;font-family:var(--font);color:var(--text)}.ph-chat-item:last-child{border-bottom:none}.ph-chat-item:hover{background:#80808014}.ph-chat-main{min-width:0}.ph-chat-title{font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.ph-chat-sub{font-size:.78rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ph-chat-open{align-self:center;font-size:.74rem;color:var(--text-muted);display:inline-flex;align-items:center;gap:4px}.ph-empty{padding:15px 13px;color:var(--text-muted);font-size:.85rem;line-height:1.5}.ph-chat-del{width:26px;height:26px;align-self:center;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:6px;font-size:.78rem;opacity:0;transition:opacity .15s,background .15s,color .15s}.ph-chat-item:hover .ph-chat-del{opacity:1}.ph-chat-del:hover{background:#ef44441f;color:#ef4444}.ph-chats-toolbar{display:none;align-items:center;justify-content:flex-end;padding:4px 13px;gap:8px}.ph-chats-toolbar.show{display:flex}.ph-toolbar-btn{font-family:var(--font);font-size:.77rem;cursor:pointer;padding:3px 9px;border-radius:var(--radius-sm);border:1px solid var(--border);background:none;color:var(--text-muted);transition:background .15s,color .15s;display:inline-flex;align-items:center;gap:4px}.ph-toolbar-btn:hover{background:#8080801a;color:var(--text)}.ph-toolbar-btn.active{background:var(--accent-soft);color:var(--accent);border-color:#cc785c40}.ph-del-sel-btn{display:none}.ph-del-sel-btn.show{display:inline-flex}.ph-del-sel-btn:hover{background:#ef44441f!important;color:#ef4444!important;border-color:#ef44444d!important}.ph-del-sel-btn:disabled{opacity:.4;cursor:default}.ph-chat-check{display:none;width:15px;height:15px;cursor:pointer;accent-color:var(--accent);align-self:center;flex-shrink:0}.ph-list-select .ph-chat-check{display:block}.ph-list-select .ph-chat-item{grid-template-columns:20px 1fr auto auto;gap:8px}@media(max-width:880px){.project-home{padding:18px 14px 24px}.ph-tab{height:34px;padding:0 13px;font-size:.86rem}}.msg-row{display:flex;gap:12px;max-width:760px;margin:0 auto;width:100%;padding:5px 22px;animation:msgIn .32s cubic-bezier(.16,1,.3,1) both}@keyframes msgIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.msg-av{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:12px;margin-top:3px}.msg-av.ai{background:transparent;color:#fff;overflow:hidden}.msg-av.user{background:#80808026;color:var(--text);font-weight:600}.msg-av-img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}.msg-body{flex:1;min-width:0}.msg-sender{font-size:.77rem;font-weight:600;margin-bottom:5px;color:var(--text-muted);letter-spacing:.01em}.msg-sender.ai{color:var(--accent)}.msg-search-indicator{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:1px 7px 1px 5px;border-radius:999px;border:1px solid rgba(204,120,92,.28);background:#cc785c1c;color:var(--accent);vertical-align:middle}.msg-search-icon{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center}.msg-search-icon-svg{width:14px;height:14px;transform:translate(0)}.msg-search-label{font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.msg-search-indicator:hover .msg-search-icon-svg,.msg-search-indicator.is-animating .msg-search-icon-svg{animation:msgSearchIconFloat 1s cubic-bezier(.34,1.56,.64,1)}.msg-search-indicator.is-looping .msg-search-icon-svg{animation:msgSearchIconFloat 1s cubic-bezier(.34,1.56,.64,1) infinite}.thinking-live.web-searching .t-orb{opacity:.38}.thinking-search-icon{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--accent)}.thinking-search-icon-svg{width:14px;height:14px;animation:msgSearchIconFloat 1s cubic-bezier(.34,1.56,.64,1) infinite}@keyframes msgSearchIconFloat{0%{transform:translate(0)}25%{transform:translateY(-4px)}50%{transform:translate(-3px)}75%{transform:translate(0)}to{transform:translate(0)}}.chat-web-meta-wrap{margin-top:8px}.chat-web-meta{border:1px solid var(--border);background:var(--sidebar-bg);border-radius:10px;padding:9px 11px}.chat-web-notes{display:grid;gap:4px}.chat-web-note{font-size:.76rem;color:var(--text-muted);line-height:1.45}.chat-web-sources-title{margin-top:6px;font-size:.73rem;font-weight:700;color:var(--accent);letter-spacing:.02em;text-transform:uppercase}.chat-web-sources-list{margin:6px 0 0 15px;display:grid;gap:3px}.chat-web-sources-list li{font-size:.79rem;line-height:1.45}.chat-web-sources-list a{color:var(--accent);text-decoration:none}.chat-web-sources-list a:hover{text-decoration:underline}.msg-text{font-size:.93rem;color:var(--text);line-height:1.72;overflow-wrap:break-word;word-break:break-word}.user-row .msg-text{background:var(--surface);border:1px solid var(--border);border-radius:3px var(--radius) var(--radius) var(--radius);padding:11px 15px;box-shadow:var(--shadow-sm);display:inline-block;max-width:100%;transition:background var(--tr),border-color var(--tr)}.msg-text strong{font-weight:600}.msg-text em{font-style:italic;color:var(--text-muted)}.msg-text code{font-family:var(--font-mono);font-size:.82em;background:#8080801a;padding:1px 6px;border-radius:4px;color:var(--accent)}.msg-text pre{background:#80808014;border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;overflow-x:auto;margin:8px 0}.msg-code-wrap{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;margin:8px 0;background:#8080800d}.msg-code-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border-bottom:1px solid var(--border);background:#80808014;font-size:.74rem}.msg-code-lang{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.02em;text-transform:uppercase}.msg-code-open{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:6px;padding:3px 8px;font-size:.72rem;font-family:var(--font);cursor:pointer;transition:border-color .15s,color .15s,background .15s}.msg-code-open:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.msg-code-open-static{opacity:.8;cursor:default;pointer-events:none}.msg-text pre code{display:block;background:transparent;border-radius:0;padding:0;color:var(--text);font-size:.84em;line-height:1.55;white-space:pre}.msg-text pre code.hljs,.msg-code-wrap pre code.hljs{color:inherit;background:transparent;padding:10px 12px;font-size:.84em;line-height:1.55}.msg-code-wrap pre{background:transparent;border:none;padding:0;margin:0;overflow-x:auto}.msg-code-lines>span{display:block;white-space:pre}.msg-text h2{font-size:1.02rem;font-weight:700;margin:12px 0 6px}.msg-text h3{font-size:.95rem;font-weight:700;margin:10px 0 5px}.msg-text p{margin-bottom:9px}.msg-text p:last-child{margin-bottom:0}.msg-text ul,.msg-text ol{padding-left:18px;margin:6px 0}.msg-text li{margin-bottom:3px}.chat-plan-card{border:1px solid var(--border);background:#8080800f;border-radius:var(--radius-sm);padding:10px 12px}.chat-plan-card.chat-plan-card-sent{animation:planCardSentPulse .48s cubic-bezier(.2,.8,.2,1)}@keyframes planCardSentPulse{0%{transform:scale(1);border-color:var(--border);box-shadow:0 0 #0000}45%{transform:scale(1.01);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}to{transform:scale(1);border-color:var(--border);box-shadow:0 0 #0000}}.chat-plan-row+.chat-plan-row{margin-top:8px}.chat-plan-k{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px}.chat-plan-v{font-size:.9rem;color:var(--text)}.chat-plan-targets{display:flex;flex-direction:column;gap:6px}.chat-plan-target-btn{width:100%;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:8px 9px;text-align:left;display:flex;align-items:center;gap:8px;font-family:var(--font);cursor:pointer;transition:border-color .16s,background .16s,color .16s,transform .16s}.chat-plan-target-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.chat-plan-target-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.chat-plan-target-idx{width:20px;height:20px;flex-shrink:0;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;border:1px solid var(--border);color:var(--text-muted)}.chat-plan-target-btn.active .chat-plan-target-idx{border-color:var(--accent);color:var(--accent)}.chat-plan-target-title{line-height:1.35}.chat-plan-hint{margin-top:9px;font-size:.75rem;color:var(--text-muted)}.chat-plan-form{margin-top:10px;border-top:1px dashed var(--border);padding-top:10px}.chat-plan-form-title{font-size:.8rem;font-weight:600;color:var(--text);margin-bottom:8px}.chat-plan-form-question{font-size:.78rem;color:var(--text-muted);margin-bottom:8px}.chat-plan-form-field+.chat-plan-form-field{margin-top:8px}.chat-plan-form-field>label{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:5px}.chat-plan-chips{display:flex;flex-wrap:wrap;gap:6px}.chat-plan-chip{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:999px;padding:4px 10px;font-size:.75rem;cursor:pointer;font-family:var(--font);transition:border-color .15s,color .15s,background .15s}.chat-plan-chip:hover{border-color:var(--accent);color:var(--accent)}.chat-plan-chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.chat-plan-input,.chat-plan-textarea{width:100%;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-family:var(--font);padding:8px 9px;font-size:.83rem}.chat-plan-other-input{margin-top:6px}.chat-plan-textarea{min-height:68px;resize:vertical}.chat-plan-submit-wrap{display:flex;justify-content:flex-start}.chat-plan-submit{margin-top:10px;border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent);border-radius:8px;padding:7px 12px;font-size:.8rem;font-family:var(--font);cursor:pointer}.chat-plan-submit:hover{filter:brightness(1.03)}.chat-plan-submit:disabled{opacity:.6;cursor:not-allowed;filter:none}body.no-anim .chat-plan-target-btn,body.no-anim .chat-plan-chip{transition:none!important}body.no-anim .chat-plan-card.chat-plan-card-sent{animation:none!important}.msg-actions{display:flex;gap:3px;margin-top:8px;opacity:0;transition:opacity .18s}.msg-row:hover .msg-actions{opacity:1}.act-btn{display:flex;align-items:center;gap:5px;background:none;border:1px solid var(--border);border-radius:6px;padding:3px 8px;font-size:.73rem;color:var(--text-muted);cursor:pointer;font-family:var(--font);transition:border-color .15s,color .15s,background .15s}.act-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.act-btn .copy-svg{display:block;flex-shrink:0}.act-btn .copy-svg-rect,.act-btn .copy-svg-path{transition:transform .22s cubic-bezier(.34,1.56,.64,1)}.act-btn:hover .copy-svg-rect,.act-btn.copy-active .copy-svg-rect{transform:translate(-3px,-3px)}.act-btn:hover .copy-svg-path,.act-btn.copy-active .copy-svg-path{transform:translate(3px,3px)}.thinking-live{padding:4px 0 10px;overflow:visible}.thinking-hdr{display:inline-flex;align-items:center;gap:8px;font-size:.79rem;color:var(--text-muted);line-height:1.5;overflow:visible}.t-orb{width:13px;height:13px;border-radius:50%;border:1.8px solid rgba(128,128,128,.25);border-top-color:var(--text-muted);border-right-color:var(--text-muted);flex-shrink:0;animation:thinkSpin 1.05s cubic-bezier(.22,1,.36,1) infinite}@keyframes thinkSpin{0%,12%{transform:rotate(0)}52%{transform:rotate(202deg)}88%,to{transform:rotate(360deg)}}.t-label{font-weight:500;color:transparent;background:linear-gradient(104deg,var(--text-muted) 30%,var(--text) 50%,var(--text-muted) 70%);background-size:240% 100%;-webkit-background-clip:text;background-clip:text;animation:thinkShimmer 1.95s ease-in-out infinite}@keyframes thinkShimmer{0%{background-position:140% 0}to{background-position:-40% 0}}.t-timer{opacity:.62;font-size:.75rem;letter-spacing:.01em;font-variant-numeric:tabular-nums;min-width:22px}.live-think{margin-top:6px;margin-bottom:0}.live-think .think-expand-hdr{font-size:.75rem;padding-top:2px;padding-bottom:2px}.live-think .think-expand-inner{max-height:none;padding-top:2px;padding-bottom:2px}.think-empty{opacity:.6;font-size:.76rem;font-style:italic}.think-expand{margin-bottom:10px}.think-expand-hdr{display:inline-flex;align-items:center;gap:7px;padding:4px 8px 4px 0;cursor:pointer;user-select:none;font-size:.77rem;color:var(--text-muted);border-radius:6px;transition:color .15s}.think-expand-hdr:hover{color:var(--text)}.think-expand-hdr:hover .t-chevron{opacity:.85}.think-dots{display:flex;gap:3px;align-items:center;flex-shrink:0}.think-dots span{width:4px;height:4px;border-radius:50%;background:var(--text-muted);animation:thinkDot 1.05s ease-in-out infinite}.think-dots span:nth-child(2){animation-delay:.12s}.think-dots span:nth-child(3){animation-delay:.24s}@keyframes thinkDot{0%,80%,to{opacity:.26;transform:translateY(0)}40%{opacity:.9;transform:translateY(-1px)}}.think-label{font-weight:500}.think-meta{opacity:.65;font-weight:400;font-variant-numeric:tabular-nums}.t-chevron{transition:transform .28s ease;font-size:.64rem;opacity:.4}.think-expand.open .t-chevron{transform:rotate(90deg)}.think-expand-body{max-height:0;overflow:hidden;opacity:0;transform:translateY(-4px);transition:max-height .4s cubic-bezier(.16,1,.3,1),opacity .2s ease,transform .2s ease}.think-expand.open .think-expand-body{max-height:20000px;opacity:1;transform:translateY(0)}.think-expand-inner{margin-top:3px;border-left:1px solid var(--border);padding:4px 0 4px 11px;overflow-y:visible;max-height:none}.thought-line{display:flex;align-items:flex-start;gap:8px;font-size:.79rem;color:var(--text-muted);line-height:1.6;padding:2px 0}.thought-line-dot{flex-shrink:0;margin-top:8px;width:3px;height:3px;border-radius:50%;background:var(--text-muted);opacity:.5}@media(prefers-reduced-motion:reduce){.t-orb,.t-label,.think-dots span{animation:none!important}.think-expand-body{transition:none}}.cursor{display:inline-block;width:2px;height:.9em;background:var(--accent);border-radius:1px;margin-left:1px;vertical-align:text-bottom;animation:blink .85s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.input-wrap{flex-shrink:0;padding:10px 20px 18px;padding-bottom:max(18px,env(safe-area-inset-bottom,0px));background:linear-gradient(transparent,var(--bg) 20%);transition:background var(--tr)}.input-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:9px;padding:12px 14px;box-shadow:var(--shadow-md);transition:border-color .2s,box-shadow .2s,background var(--tr);position:relative;overflow:hidden}.input-box:focus-within{border-color:#cc785c66;box-shadow:0 4px 24px #cc785c1a,var(--shadow-md)}@keyframes dragPulse{0%,to{box-shadow:0 0 #cc785c59,var(--shadow-md)}50%{box-shadow:0 0 0 6px #cc785c00,var(--shadow-md)}}.input-box.drag-over{border-color:var(--accent)!important;background:var(--accent-soft)!important;animation:dragPulse 1.1s ease infinite}body.no-anim .input-box.drag-over{animation:none}.drop-hint{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;gap:8px;background:color-mix(in oklab,var(--surface) 60%,var(--accent-soft));color:var(--accent);font-size:.84rem;font-weight:600;pointer-events:none;opacity:0;transition:opacity .18s ease;border-radius:inherit}.input-box.drag-over .drop-hint{opacity:1}.chips{display:flex;gap:5px;flex-wrap:wrap}.chip{display:flex;align-items:center;gap:5px;background:var(--sidebar-bg);border:1px solid var(--border);border-radius:6px;padding:3px 9px;font-size:.78rem;color:var(--text-muted)}.chip .rm{cursor:pointer;opacity:.6}.chip .rm:hover{opacity:1;color:#e05555}.chip .ci{color:var(--accent)}@keyframes chipIn{0%{opacity:0;transform:scale(.6) translateY(6px)}60%{opacity:1;transform:scale(1.07) translateY(-1px)}to{opacity:1;transform:scale(1) translateY(0)}}.chip-new{animation:chipIn .36s cubic-bezier(.34,1.56,.64,1) both}body.no-anim .chip-new{animation:none}textarea{width:100%;border:none;resize:none;outline:none;font-family:var(--font);font-size:.93rem;background:transparent;min-height:24px;max-height:200px;color:var(--text);line-height:1.6}textarea::placeholder{color:var(--text-muted)}.input-ctrls{display:flex;justify-content:space-between;align-items:center}.input-left{display:flex;align-items:center;gap:5px}.input-right{display:flex;align-items:center;gap:7px}.ctrl-btn{width:30px;height:30px;border-radius:var(--radius-sm);background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;transition:background .15s,color .15s}.ctrl-btn:hover{background:#80808017;color:var(--text)}.think-lbl{display:flex;align-items:center;gap:5px;cursor:pointer;user-select:none}.think-lbl-txt{font-size:.78rem;color:var(--text-muted);font-weight:500}.think-lbl:hover .think-lbl-txt{color:var(--text)}.sw{position:relative;width:30px;height:17px;display:inline-block}.sw input{opacity:0;width:0;height:0}.sw-sl{position:absolute;inset:0;background:#8080804d;border-radius:99px;cursor:pointer;transition:.28s}.sw-sl:before{content:"";position:absolute;width:11px;height:11px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.28s;box-shadow:0 1px 3px #0003}.sw input:checked+.sw-sl{background:var(--accent)}.sw input:checked+.sw-sl:before{transform:translate(13px)}.send-btn{width:34px;height:34px;border-radius:var(--radius-sm);background:var(--accent);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.85rem;transition:filter var(--tr),transform var(--tr);flex-shrink:0;position:relative}.send-btn:hover{filter:brightness(1.1);transform:scale(1.05)}.send-btn:active{transform:scale(.95)}.send-btn:disabled{background:var(--border);color:var(--text-muted);cursor:not-allowed;filter:none;transform:none}@keyframes sendSpin{to{transform:rotate(360deg)}}.send-btn.busy{background:var(--accent)!important;cursor:wait!important;filter:none!important;transform:none!important}.send-btn.busy i{opacity:0}.send-btn.busy:after{content:"";position:absolute;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:sendSpin .68s linear infinite}body.no-anim .send-btn.busy:after{animation:none;border-top-color:#fff}.input-hint{font-size:.7rem;color:var(--text-muted);text-align:center;margin-top:5px;max-width:760px;margin-left:auto;margin-right:auto}.input-hint a{color:var(--text-muted);text-decoration:underline;text-underline-offset:2px}.input-hint a:hover{color:var(--accent)}.artifact-panel{width:0;min-width:0;max-width:520px;flex-shrink:0;overflow:hidden;border-left:0px solid var(--border);background:var(--surface);display:flex;flex-direction:column;transition:width .38s cubic-bezier(.16,1,.3,1),border-width .38s,background var(--tr)}.artifact-panel.open{width:clamp(320px,44vw,520px);border-left-width:1px}.art-topbar{display:flex;align-items:center;gap:7px;padding:10px 14px;border-bottom:1px solid var(--border);background:var(--sidebar-bg);flex-shrink:0;min-width:0;transition:background var(--tr),border-color var(--tr)}.art-badge{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 7px;border-radius:99px;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.art-fname{flex:1;font-size:.84rem;font-weight:500;font-family:var(--font-mono);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.art-tabs{display:flex;gap:2px;flex-shrink:0}.art-tab{padding:3px 9px;border-radius:5px;font-size:.77rem;color:var(--text-muted);cursor:pointer;border:none;background:none;font-family:var(--font);transition:background .15s,color .15s}.art-tab.active{background:#8080801a;color:var(--text);font-weight:500}.art-acts{display:flex;gap:2px;flex-shrink:0}.art-btn{width:28px;height:28px;border-radius:6px;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:background .15s,color .15s}.art-btn:hover{background:#80808017;color:var(--text)}.canvas-version-bar{display:flex;align-items:center;gap:3px;padding:6px 12px;background:var(--bg);border-bottom:1px solid var(--border);flex-shrink:0}.cvb-btn{padding:3px 11px;border-radius:5px;font-size:.75rem;font-weight:500;color:var(--text-muted);background:transparent;border:none;cursor:pointer;transition:background .15s,color .15s}.cvb-btn:hover{background:var(--accent-soft);color:var(--accent)}.cvb-btn.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.canvas-mode-btn{width:auto!important;padding:0 8px!important;gap:4px;font-size:.78rem}.canvas-mode-btn .canvas-mode-lbl{color:var(--text-muted);font-weight:500}.canvas-mode-btn.canvas-mode-active,.canvas-mode-btn.canvas-mode-active .canvas-mode-lbl{color:var(--accent)}.plan-mode-btn{width:auto!important;padding:0 8px!important;gap:4px;font-size:.78rem;transition:background .2s,color .2s,transform .2s,box-shadow .2s}.plan-mode-btn .plan-mode-lbl{color:var(--text-muted);font-weight:500}.plan-mode-btn.plan-mode-active{color:var(--accent);background:#cc785c24;box-shadow:inset 0 0 0 1px #cc785c4d;transform:scale(1.03)}.plan-mode-btn.plan-mode-active .plan-mode-lbl{color:var(--accent)}.plan-mode-btn.plan-mode-disabled{opacity:.65}body.no-anim .plan-mode-btn{transition:none!important}body.no-anim .plan-mode-btn.plan-mode-active{transform:none}.web-search-btn{width:auto!important;padding:0 8px!important;gap:4px;font-size:.78rem;transition:background .2s,color .2s,transform .2s,box-shadow .2s}.web-search-btn .web-search-lbl{color:var(--text-muted);font-weight:500}.web-search-btn.web-search-active{color:var(--accent);background:#cc785c24;box-shadow:inset 0 0 0 1px #cc785c4d;transform:scale(1.03)}.web-search-btn.web-search-active .web-search-lbl{color:var(--accent)}body.no-anim .web-search-btn{transition:none!important}body.no-anim .web-search-btn.web-search-active{transform:none}.art-edit-status{font-size:.72rem;color:var(--accent);font-style:italic;flex-shrink:0;margin-right:2px}.canvas-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;background:var(--accent-soft);border:1px solid rgba(204,120,92,.22);border-radius:var(--radius-sm);cursor:pointer;font-size:.84rem;color:var(--accent);font-weight:500;margin:6px 0;transition:background .15s;user-select:none}.canvas-chip:hover{background:#cc785c33}.canvas-chip-fname{font-family:var(--font-mono);font-size:.78rem;color:var(--text-muted);margin-left:2px}.cl>.diff-line-add{background:#22c55e29;border-left:3px solid #22c55e;padding-left:13px}.cl>.diff-line-remove{background:#ef444429;border-left:3px solid #ef4444;padding-left:13px;text-decoration:line-through;text-decoration-color:#ef4444b3}.ln .diff-ln-add{color:#4ade80!important;font-weight:700}.ln .diff-ln-remove{color:#f87171!important;font-weight:700}.cl>.diff-line-edit-old{background:#fb923c1f;border-left:3px solid #fb923c;padding-left:13px;text-decoration:line-through;text-decoration-color:#fb923c99}.cl>.diff-line-edit-new{background:#fb923c33;border-left:3px solid #fb923c;padding-left:13px}.ln .diff-ln-edit{color:#fb923c!important;font-weight:700}.canvas-edit-dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:5px;vertical-align:middle;flex-shrink:0;animation:canvasEditDot 2s ease-in-out infinite}@keyframes canvasEditDot{0%,to{opacity:.25;transform:scale(.75)}50%{opacity:1;transform:scale(1)}}.artifact-panel.canvas-resolving .cl>span{transition:opacity .25s ease,background .25s ease;opacity:.4}.chip-svg{width:17px;height:17px;flex-shrink:0;overflow:visible}.canvas-chip-live{cursor:default}.canvas-chip-live:hover{background:var(--accent-soft)!important}.canvas-chip-live .svg-pen{animation:penWiggle .55s ease-in-out infinite;transform-box:fill-box;transform-origin:center}.canvas-chip-live .svg-pen-line{animation:lineExtend .55s ease-in-out infinite}@keyframes penWiggle{0%,to{transform:rotate(0) translate(0)}25%{transform:rotate(-1.5deg) translateY(.6px)}50%{transform:rotate(.8deg) translate(.6px,-.4px)}75%{transform:rotate(-.6deg) translate(-.3px,.2px)}}@keyframes lineExtend{0%,to{d:path("M8 18h1")}50%{d:path("M8 18h5")}}.svg-check{stroke-dasharray:14;stroke-dashoffset:14;animation:checkDraw .45s .05s ease-out forwards}@keyframes checkDraw{to{stroke-dashoffset:0}}.art-body{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.code-view{flex:1;overflow:auto;background:#1a1b1e;color:#abb2bf;font-family:var(--font-mono);font-size:.8rem;line-height:1.68}.cv-inner{display:flex;min-height:100%;padding:18px 0}.ln{padding:0 14px;text-align:right;color:#3e4154;user-select:none;flex-shrink:0;min-width:48px;border-right:1px solid rgba(255,255,255,.05)}.ln span{display:block}.cl{padding:0 18px;flex:1;min-width:0}.cl>span{display:block;white-space:pre}.kw{color:#c792ea;font-weight:500}.str{color:#b8e994}.cmt{color:#7f8fa6;font-style:italic}.num{color:#f8c291}.fn{color:#82ccdd}.cls{color:#f6e58d}.op{color:#7ed6df}.blt{color:#ff9ff3}.dec{color:#74b9ff;font-style:italic}.atr{color:#ffbe76}.preview-pane{flex:1;background:var(--bg);border-top:1px solid var(--border);display:none;transition:background var(--tr)}.preview-pane iframe{width:100%;height:100%;border:none}#smPyTerm{font-family:Cascadia Code,Fira Code,JetBrains Mono,Consolas,Courier New,monospace;font-size:13px;background:#0d1117;color:#e6edf3;overflow:hidden}.smt-header{background:#161b22;border-bottom:1px solid #30363d;padding:7px 12px;display:flex;align-items:center;gap:8px;flex-shrink:0;user-select:none}.smt-dots{display:flex;gap:5px;align-items:center}.smt-dot{width:11px;height:11px;border-radius:50%;display:inline-block}.smt-r{background:#ff5f57}.smt-y{background:#ffbd2e}.smt-g{background:#28c840}.smt-title{flex:1;text-align:center;font-size:11px;color:#8b949e;letter-spacing:.02em}.smt-brand{color:#cc785c;font-weight:700;letter-spacing:.02em}.smt-run-btn{background:#238636;border:1px solid rgba(240,246,252,.1);color:#fff;padding:3px 11px;border-radius:5px;cursor:pointer;font-size:12px;font-family:inherit;font-weight:500;display:flex;align-items:center;gap:5px;transition:background .12s,transform .08s}.smt-run-btn:hover:not(:disabled){background:#2ea043}.smt-run-btn:active:not(:disabled){transform:scale(.96)}.smt-run-btn:disabled{opacity:.4;cursor:not-allowed}.smt-run-btn.smt-busy{background:#6e40c9}.smt-bar{height:2px;background:linear-gradient(90deg,#79c0ff,#3fb950,#cc785c);background-size:200%;width:0;flex-shrink:0;transition:width .4s}.smt-bar.smt-on{width:100%;animation:smt-slide 1.8s linear infinite}@keyframes smt-slide{0%{background-position:0}to{background-position:200%}}.smt-out{flex:1;overflow-y:auto;padding:10px 14px 4px;line-height:1.65;font-size:13px;min-height:0}.smt-out::-webkit-scrollbar{width:5px}.smt-out::-webkit-scrollbar-thumb{background:#30363d;border-radius:3px}.smt-ln{white-space:pre-wrap;word-break:break-word;animation:smt-fi .1s ease}@keyframes smt-fi{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:none}}.smt-ln.smt-info{color:#8b949e}.smt-ln.smt-err{color:#f85149}.smt-ln.smt-ok{color:#3fb950}.smt-ln.smt-e1{color:#f85149}.smt-ln.smt-prm{color:#79c0ff}.smt-ln.smt-cmd{display:flex;gap:6px;align-items:baseline}.smt-ln.smt-cmd .smt-ps{color:#cc785c;font-weight:700;flex-shrink:0}.smt-ln.smt-cmd .smt-cv{color:#e6edf3}.smt-ln.smt-echo{display:flex;gap:6px;align-items:baseline}.smt-ln.smt-echo .smt-ps{color:#79c0ff;flex-shrink:0}.smt-ln.smt-echo .smt-cv{color:#e6edf3}.smt-irow{border-top:1px solid #30363d;background:#161b22;padding:7px 14px;align-items:center;gap:8px;flex-shrink:0}.smt-ips{color:#79c0ff;flex-shrink:0;font-size:13px;font-weight:600}#smtIEl{flex:1;background:transparent;border:none;outline:none;color:#e6edf3;font-family:inherit;font-size:13px;caret-color:#e6edf3}.smt-hint{font-size:10px;color:#8b949e;opacity:.7;flex-shrink:0}.smt-sbar{background:#161b22;border-top:1px solid #30363d;padding:3px 14px;font-size:10.5px;color:#8b949e;display:flex;justify-content:space-between;align-items:center;flex-shrink:0;user-select:none}.smt-sbar .smt-ok{color:#3fb950}.smt-sbar .smt-e1{color:#f85149}.overlay{position:fixed;inset:0;background:#00000073;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:999;opacity:0;pointer-events:none;transition:opacity .22s}.overlay.active{opacity:1;pointer-events:all}.overlay.active .modal-box{transform:scale(1) translateY(0)}.modal-box{background:var(--surface);border-radius:18px;width:min(700px,94vw);max-height:88vh;display:flex;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--border);transform:scale(.96) translateY(8px);transition:transform .25s cubic-bezier(.16,1,.3,1),background var(--tr)}.confirm-overlay{position:fixed;inset:0;background:#00000059;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100;opacity:0;pointer-events:none;transition:opacity .18s}.confirm-overlay.active{opacity:1;pointer-events:all}.confirm-box{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-lg);padding:24px 26px 20px;width:min(360px,92vw);transform:scale(.95) translateY(10px);transition:transform .22s cubic-bezier(.16,1,.3,1),background var(--tr)}.confirm-overlay.active .confirm-box{transform:scale(1) translateY(0)}.confirm-title{font-size:.96rem;font-weight:700;color:var(--text);margin-bottom:7px;letter-spacing:-.01em}.confirm-msg{font-size:.85rem;color:var(--text-muted);line-height:1.55;white-space:pre-line;margin-bottom:20px}.confirm-btns{display:flex;justify-content:flex-end;gap:8px}.confirm-cancel,.confirm-ok{font-family:var(--font);font-size:.85rem;font-weight:500;padding:7px 16px;border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border);transition:background .15s,color .15s,filter .15s}.confirm-cancel{background:none;color:var(--text-muted)}.confirm-cancel:hover{background:#8080801a;color:var(--text)}.confirm-ok{background:var(--accent);color:#fff;border-color:transparent}.confirm-ok.danger{background:#ef4444}.confirm-ok:hover{filter:brightness(1.1)}.confirm-overlay.device-auth .confirm-box{border-color:color-mix(in oklab,var(--accent) 55%,var(--border));box-shadow:0 14px 36px color-mix(in oklab,var(--accent) 22%,transparent)}.confirm-overlay.device-auth .confirm-title{display:flex;align-items:center;gap:8px}.confirm-overlay.device-auth .confirm-title:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 #cc785c73;animation:deviceAuthPulse 1.4s ease-out infinite}@keyframes deviceAuthPulse{0%{box-shadow:0 0 #cc785c73}to{box-shadow:0 0 0 9px #cc785c00}}.modal-nav{width:180px;min-width:180px;background:var(--sidebar-bg);border-right:1px solid var(--border);padding:18px 8px;display:flex;flex-direction:column;gap:1px;transition:background var(--tr),border-color var(--tr)}.mnav-title{font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);padding:2px 8px 9px}.mnav-btn{display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:var(--radius-sm);background:none;border:none;cursor:pointer;font-family:var(--font);font-size:.84rem;color:var(--text-muted);text-align:left;width:100%;transition:background .15s,color .15s}.mnav-btn i{width:14px;text-align:center;opacity:.7}.mnav-btn:hover{background:#80808012;color:var(--text)}.mnav-btn.active{background:var(--accent-soft);color:var(--accent);font-weight:500}.mnav-btn.active i{opacity:1}.modal-body{flex:1;overflow-y:auto;padding:26px 28px;min-width:0}.m-tab{display:none}.m-tab.active{display:block}.m-title{font-size:1.1rem;font-weight:700;letter-spacing:-.02em;margin-bottom:3px}.m-sub{font-size:.84rem;color:var(--text-muted);margin-bottom:22px}.divider{height:1px;background:var(--border);margin:18px 0}.profile-row{display:flex;align-items:center;gap:14px;margin-bottom:22px}.profile-av{width:58px;height:58px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent),#e8a98a);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.35rem;font-weight:700;overflow:hidden}.f-lbl{font-size:.77rem;font-weight:600;color:var(--text-muted);margin-bottom:3px}.f-val{font-size:.92rem;color:var(--text);font-weight:500}.usage-card{background:var(--sidebar-bg);border-radius:var(--radius-sm);padding:14px 16px;margin-bottom:12px;transition:background var(--tr)}.u-hdr{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px}.u-lbl{font-size:.85rem;font-weight:600}.u-pct{font-size:.85rem;color:var(--accent);font-weight:600}.u-track{height:7px;background:var(--border);border-radius:99px;overflow:hidden;margin-bottom:7px}.u-fill{height:100%;border-radius:99px;width:0%;transition:width 1.1s cubic-bezier(.16,1,.3,1)}.u-meta{display:flex;justify-content:space-between;font-size:.77rem;color:var(--text-muted)}.pers-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pers-card{border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:14px 13px;cursor:pointer;background:none;font-family:var(--font);text-align:left;width:100%;transition:border-color .15s,background .15s}.pers-card:hover{background:var(--accent-soft);border-color:var(--accent)}.pers-card.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-soft)}.pers-icon{font-size:1.4rem;margin-bottom:7px}.pers-label{font-size:.88rem;font-weight:600;color:var(--text);margin-bottom:4px}.pers-desc{font-size:.75rem;color:var(--text-muted);line-height:1.45}.set-row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid var(--border)}.set-row:last-child{border-bottom:none}.set-lbl{font-size:.88rem;font-weight:500}.set-desc{font-size:.77rem;color:var(--text-muted);margin-top:1px}.sw-big{position:relative;width:42px;height:23px;display:inline-block;flex-shrink:0}.sw-big input{opacity:0;width:0;height:0}.sw-big-sl{position:absolute;inset:0;background:#80808040;border-radius:99px;cursor:pointer;transition:.28s}.sw-big-sl:before{content:"";position:absolute;width:15px;height:15px;left:4px;bottom:4px;background:#fff;border-radius:50%;transition:.28s;box-shadow:0 1px 4px #00000038}.sw-big input:checked+.sw-big-sl{background:var(--accent)}.sw-big input:checked+.sw-big-sl:before{transform:translate(19px)}.key-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.key-row:last-child{border-bottom:none}.key-row span{font-size:.87rem}kbd{font-family:var(--font-mono);font-size:.77rem;background:var(--sidebar-bg);border:1px solid var(--border);padding:3px 9px;border-radius:5px;color:var(--text-muted);transition:background var(--tr),border-color var(--tr)}.toast{position:fixed;top:20px;left:50%;transform:translate(-50%) translateY(-60px);background:color-mix(in oklab,var(--surface) 82%,transparent);backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);border:1px solid var(--border);color:var(--text);padding:10px 20px;border-radius:99px;font-size:.83rem;font-weight:500;box-shadow:var(--shadow-md);z-index:9999;opacity:0;transition:opacity .22s ease,transform .32s cubic-bezier(.16,1,.3,1);pointer-events:none;white-space:nowrap}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.page-overlay{position:fixed;inset:0;z-index:3500;background:var(--bg);display:flex;flex-direction:column;transform:translateY(100%);transition:transform .38s cubic-bezier(.16,1,.3,1);overflow:hidden}.page-overlay.open{transform:translateY(0)}.page-hdr{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--bg)}.page-hdr-left{display:flex;flex-direction:column;gap:2px}.page-title{font-size:1.1rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.page-version{font-size:.75rem;color:var(--text-muted);font-weight:400}.page-close{width:32px;height:32px;border-radius:8px;background:none;border:1px solid var(--border);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.9rem;transition:background var(--tr),color var(--tr),border-color var(--tr);flex-shrink:0}.page-close:hover{background:var(--surface);color:var(--text);border-color:var(--accent)}.page-body{flex:1;overflow-y:auto;padding:32px 28px;max-width:760px;width:100%;margin:0 auto}.pg-section{margin-bottom:36px}.pg-section-title{font-size:.95rem;font-weight:700;letter-spacing:-.01em;color:var(--text);margin-bottom:10px;display:flex;align-items:center;gap:8px}.pg-section-title i{color:var(--accent);font-size:.85rem}.pg-text{font-size:.87rem;color:var(--text-muted);line-height:1.7;margin-bottom:8px}.pg-text strong{color:var(--text);font-weight:600}.pg-text a{color:var(--accent);text-decoration:none}.pg-text a:hover{text-decoration:underline}.pg-divider{border:none;border-top:1px solid var(--border);margin:28px 0}.cl-entry{border-left:2px solid var(--border);padding-left:20px;margin-bottom:32px;position:relative}.cl-entry:before{content:"";position:absolute;left:-5px;top:4px;width:8px;height:8px;border-radius:50%;background:var(--accent);border:2px solid var(--bg)}.cl-entry.latest:before{background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.cl-badge{display:inline-flex;align-items:center;gap:6px;margin-bottom:6px}.cl-version{font-size:.82rem;font-weight:700;color:var(--text);font-family:var(--font-mono);letter-spacing:.02em}.cl-date{font-size:.77rem;color:var(--text-muted)}.cl-tag{font-size:.69rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:1px 7px;border-radius:99px;background:var(--accent-soft);color:var(--accent)}.cl-title{font-size:.92rem;font-weight:600;color:var(--text);margin-bottom:8px}.cl-list{list-style:none;display:flex;flex-direction:column;gap:4px}.cl-list li{font-size:.84rem;color:var(--text-muted);line-height:1.5;padding-left:14px;position:relative}.cl-list li:before{content:"–";position:absolute;left:0;color:var(--accent);font-weight:600}.pg-highlight{background:var(--accent-soft);border-radius:var(--radius-sm);border-left:3px solid var(--accent);padding:12px 16px;margin:14px 0;font-size:.84rem;color:var(--text-muted);line-height:1.6}.pg-highlight strong{color:var(--accent)}.sb-page-links{display:flex;gap:12px;padding:8px 10px 4px;flex-wrap:wrap}.sb-page-link{font-size:.74rem;color:var(--text-muted);background:none;border:none;cursor:pointer;font-family:var(--font);padding:0;text-decoration:underline;text-underline-offset:2px;text-decoration-color:transparent;transition:color var(--tr),text-decoration-color var(--tr)}.sb-page-link:hover{color:var(--accent);text-decoration-color:var(--accent)}.limit-overlay{position:fixed;inset:0;z-index:9100;background:#00000085;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);align-items:center;justify-content:center;opacity:0;transition:opacity .28s ease}.limit-overlay.open{opacity:1}.limit-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:36px 32px;max-width:420px;width:90%;text-align:center;box-shadow:var(--shadow-lg);animation:limitBoxIn .36s cubic-bezier(.16,1,.3,1)}@keyframes limitBoxIn{0%{transform:scale(.88) translateY(18px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.limit-icon{width:52px;height:52px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:1.3rem;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.limit-title{font-size:1.1rem;font-weight:700;color:var(--text);margin-bottom:8px}.limit-sub{font-size:.85rem;color:var(--text-muted);line-height:1.65;margin-bottom:22px}.limit-actions{display:flex;flex-direction:column;gap:9px;margin-bottom:14px}.limit-btn-upgrade{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:11px 20px;font-family:var(--font);font-size:.88rem;font-weight:600;cursor:pointer;transition:filter var(--tr);display:flex;align-items:center;justify-content:center;gap:8px}.limit-btn-upgrade:hover{filter:brightness(1.1)}.limit-btn-close{background:none;border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 20px;font-family:var(--font);font-size:.85rem;color:var(--text-muted);cursor:pointer;transition:background var(--tr),color var(--tr),border-color var(--tr)}.limit-btn-close:hover{background:var(--sidebar-bg);color:var(--text)}.limit-note{font-size:.74rem;color:var(--text-muted)}.page-body-wide{max-width:900px}.tk-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.tk-stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px;transition:background var(--tr),border-color var(--tr)}.tk-stat-val{font-size:1.9rem;font-weight:800;letter-spacing:-.04em;color:var(--text);margin-bottom:4px;font-variant-numeric:tabular-nums}.tk-stat-lbl{font-size:.76rem;color:var(--text-muted);font-weight:500}.tk-limit-wrap{margin-bottom:28px}.tk-limit-hdr{display:flex;justify-content:space-between;font-size:.78rem;color:var(--text-muted);margin-bottom:7px}.tk-limit-track{height:6px;background:var(--sidebar-bg);border-radius:99px;overflow:hidden}.tk-limit-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--accent),#e8a98a);transition:width .55s cubic-bezier(.16,1,.3,1)}.tk-section-title{font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:12px}.tk-chart-legend{display:flex;gap:18px;margin-bottom:10px;flex-wrap:wrap}.tk-chart-legend span{display:flex;align-items:center;gap:6px;font-size:.77rem;color:var(--text-muted)}.tk-dot{display:inline-block;width:10px;height:10px;border-radius:3px;flex-shrink:0}.tk-chart-wrap{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 14px 4px;overflow:visible}.chart-label{font-size:11px;fill:var(--text-muted);font-family:var(--font)}.chart-tooltip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:11px 14px;min-width:170px;max-width:220px;box-shadow:var(--shadow-md);z-index:20;pointer-events:none;font-size:.82rem}.ctt-date{font-weight:600;color:var(--text);margin-bottom:8px;font-size:.79rem}.ctt-row{display:flex;align-items:center;gap:7px;color:var(--text-muted);margin-bottom:4px}.ctt-row strong{margin-left:auto;color:var(--text);font-variant-numeric:tabular-nums}.ctt-dot{display:inline-block;width:8px;height:8px;border-radius:2px;flex-shrink:0}.ctt-total{margin-top:8px;padding-top:8px;border-top:1px solid var(--border);font-size:.8rem;color:var(--text-muted)}.ctt-total strong{color:var(--accent)}.ctt-msgs{font-size:.74rem;color:var(--text-muted);margin-top:3px}.tk-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius)}.tk-table{width:100%;border-collapse:collapse;font-size:.82rem}.tk-table th{background:var(--sidebar-bg);padding:10px 14px;text-align:left;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;transition:background var(--tr)}.tk-table td{padding:10px 14px;border-bottom:1px solid var(--border);color:var(--text-muted);vertical-align:middle;transition:background .12s,color .12s}.tk-table tr:last-child td{border-bottom:none}.tk-table tr:hover td{background:var(--sidebar-bg);color:var(--text)}.tk-td-preview{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tk-td-num{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-size:.79rem}.tk-td-total{color:var(--accent)!important;font-weight:600}.tk-td-model{white-space:nowrap;font-size:.75rem}.tk-how-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px}.tk-how-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:18px;transition:background var(--tr),border-color var(--tr)}.tk-how-icon{font-size:1.05rem;color:var(--accent);margin-bottom:8px}.tk-how-label{font-size:.84rem;font-weight:600;color:var(--text);margin-bottom:5px}.tk-how-desc{font-size:.78rem;color:var(--text-muted);line-height:1.55}.plans-intro{font-size:.87rem;color:var(--text-muted);line-height:1.65;margin-bottom:28px}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.plan-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px 24px;display:flex;flex-direction:column;transition:box-shadow var(--tr),border-color var(--tr)}.plan-card:hover{box-shadow:var(--shadow-md)}.plan-card-featured{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.plan-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.plan-name{font-size:.95rem;font-weight:700;color:var(--text)}.plan-badge{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:99px}.plan-badge-current{background:var(--sidebar-bg);color:var(--text-muted)}.plan-badge-popular{background:var(--accent-soft);color:var(--accent)}.plan-price{margin-bottom:22px}.plan-price-val{font-size:2.1rem;font-weight:800;letter-spacing:-.04em;color:var(--text)}.plan-price-per{font-size:.8rem;color:var(--text-muted);margin-left:4px}.plan-features{list-style:none;display:flex;flex-direction:column;gap:9px;margin-bottom:24px;flex:1}.plan-features li{display:flex;align-items:flex-start;gap:8px;font-size:.83rem;color:var(--text-muted);line-height:1.4}.plan-features li i.fa-check{color:var(--accent);margin-top:2px;font-size:.72rem;flex-shrink:0}.plan-features li i.fa-xmark{color:#80808059;margin-top:2px;font-size:.72rem;flex-shrink:0}.plan-features li.feat-no{opacity:.55}.plan-cta{width:100%;padding:10px;border-radius:var(--radius-sm);font-family:var(--font);font-size:.85rem;font-weight:600;cursor:pointer;transition:filter var(--tr),background var(--tr);border:none;margin-top:auto}.plan-cta-current{background:var(--sidebar-bg);color:var(--text-muted);cursor:default}.plan-cta-upgrade{background:var(--accent);color:#fff}.plan-cta-upgrade:hover{filter:brightness(1.1)}.plans-note{background:var(--sidebar-bg);border-radius:var(--radius-sm);padding:12px 16px;font-size:.79rem;color:var(--text-muted);display:flex;align-items:flex-start;gap:10px;line-height:1.55;transition:background var(--tr)}.plans-note i{color:var(--accent);margin-top:2px;flex-shrink:0}.login-overlay{position:fixed;inset:0;z-index:9500;background:#0000008c;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:clamp(12px,3vw,28px);opacity:0;transition:opacity .3s ease;pointer-events:none}.login-overlay.open{opacity:1;pointer-events:all}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(430px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow-y:auto;padding:clamp(20px,3.2vw,36px) clamp(18px,3vw,32px);box-shadow:var(--shadow-lg);animation:loginCardIn .4s cubic-bezier(.16,1,.3,1)}.nexus-auth-banner{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;background:color-mix(in oklab,var(--accent) 8%,transparent);border:1px solid color-mix(in oklab,var(--accent) 28%,transparent);border-radius:10px;margin-bottom:16px;font-size:.875rem}.nexus-auth-icon{color:var(--accent);flex-shrink:0;margin-top:1px}.nexus-auth-text{display:flex;flex-direction:column;gap:2px;line-height:1.4}.nexus-auth-text strong{font-weight:600;color:var(--accent);font-size:.875rem}.nexus-auth-text span{color:var(--text-2, #6b5e52);font-size:.8rem}.login-overlay.device-auth-mode .login-card{position:relative;overflow:hidden;border-color:color-mix(in oklab,var(--accent) 50%,var(--border))}.login-overlay.device-auth-mode .login-card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,transparent 0%,var(--accent) 52%,transparent 100%);animation:deviceAuthBar 1.9s ease-in-out infinite}.login-overlay.device-auth-mode .login-brand-sub{color:var(--accent);font-weight:600}@keyframes deviceAuthBar{0%,to{opacity:.25;transform:translate(-20%)}50%{opacity:.95;transform:translate(20%)}}@keyframes loginCardIn{0%{transform:scale(.9) translateY(16px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.login-brand{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.login-logo{width:62px;height:62px;border-radius:16px;background:color-mix(in oklab,var(--accent-soft) 78%,var(--surface) 22%);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;padding:8px}.login-logo img{width:100%;height:100%;object-fit:contain;display:block}.login-brand-name{font-size:1.25rem;font-weight:800;letter-spacing:-.03em;color:var(--text)}.login-brand-sub{font-size:.84rem;color:var(--text-muted);margin-bottom:24px}.login-google-mount{width:100%;min-height:42px;display:flex;align-items:center;justify-content:center}.login-google-mount>div{width:100%;display:flex;justify-content:center}.login-google-btn{width:100%;height:42px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font);font-size:.9rem;color:var(--text);cursor:pointer;transition:background var(--tr),border-color var(--tr)}.login-google-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.login-sep{position:relative;text-align:center;margin:18px 0;font-size:.78rem;color:var(--text-muted)}.login-sep:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--border);transform:translateY(-50%)}.login-sep span{position:relative;z-index:1;background:var(--surface);padding:0 10px}.lf-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.lf-field label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.lf-input{width:100%;height:40px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 12px;font-family:var(--font);font-size:.88rem;color:var(--text);transition:border-color var(--tr)}.lf-input:focus{outline:none;border-color:var(--accent)}.lf-btn{width:100%;height:42px;margin-top:4px;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-family:var(--font);font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity var(--tr)}.lf-btn:hover{opacity:.88}.login-switch{text-align:center;margin-top:18px;font-size:.83rem;color:var(--text-muted)}.login-switch-btn{background:none;border:none;color:var(--accent);font-weight:600;cursor:pointer;font-family:var(--font);font-size:.83rem}@media(max-width:520px){.login-card{width:calc(100vw - 16px);max-height:calc(100vh - 16px);border-radius:12px}}@media(max-height:700px){.login-card{width:min(420px,calc(100vw - 16px));padding:18px 16px}}.lf-terms{margin:10px 0 6px;padding:10px 12px;background:var(--sidebar-bg);border-radius:var(--radius-sm);border:1px solid var(--border)}.terms-lbl{display:flex;align-items:flex-start;gap:9px;font-size:.8rem;color:var(--text-muted);cursor:pointer;line-height:1.45}.terms-lbl input[type=checkbox]{margin-top:2px;accent-color:var(--accent);flex-shrink:0;width:14px;height:14px;cursor:pointer}.terms-lnk{color:var(--accent);text-decoration:none;font-weight:600}.terms-lnk:hover{text-decoration:underline}.login-terms-note{text-align:center;font-size:.73rem;color:var(--text-muted);margin-top:14px;line-height:1.5}.login-terms-note a{color:var(--accent);text-decoration:none;font-weight:600}.login-terms-note a:hover{text-decoration:underline}.lf-input.input-error{border-color:#e05555!important;box-shadow:0 0 0 2px #e0555526}.lf-field .input-error-msg{font-size:.72rem;color:#e05555;margin-top:3px;display:none}.lf-field:has(.input-error) .input-error-msg{display:block}.login-forgot{text-align:right;margin:-4px 0 10px}.login-forgot-btn{font-size:.76rem;color:var(--text-muted);background:none;border:none;cursor:pointer;font-family:var(--font);padding:0;transition:color var(--tr)}.login-forgot-btn:hover{color:var(--accent)}.otp-info{font-size:.84rem;color:var(--text-muted);line-height:1.55;margin-bottom:16px}.otp-input{letter-spacing:.35em;font-size:1.5rem!important;text-align:center;font-weight:700}.otp-actions{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.otp-link-btn{font-size:.76rem;color:var(--text-muted);background:none;border:none;cursor:pointer;font-family:var(--font);padding:0;transition:color var(--tr)}.otp-link-btn:hover{color:var(--accent)}.otp-link-btn:disabled{opacity:.45;cursor:default}.auth-captcha-wrap{margin-top:12px;display:flex;justify-content:center}a.sb-page-link{text-decoration:none}.plan-card-pro{position:relative;overflow:hidden;border-color:var(--accent);background:linear-gradient(145deg,var(--surface) 60%,color-mix(in srgb,var(--accent) 6%,transparent));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 30%,transparent),0 4px 20px color-mix(in srgb,var(--accent) 12%,transparent)}.plan-pro-glow{position:absolute;top:-60px;right:-60px;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 20%,transparent),transparent 70%);pointer-events:none}.plan-badge-pro{background:linear-gradient(135deg,var(--accent),#e8a98a);color:#fff;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 9px;border-radius:99px;display:flex;align-items:center;gap:4px}.plan-cta-pro{width:100%;padding:11px;border-radius:var(--radius-sm);font-family:var(--font);font-size:.85rem;font-weight:700;cursor:pointer;border:none;margin-top:auto;background:linear-gradient(135deg,var(--accent),#e8a98a);color:#fff;display:flex;align-items:center;justify-content:center;gap:7px;letter-spacing:.02em;transition:filter var(--tr),transform var(--tr)}.plan-cta-pro:hover{filter:brightness(1.08);transform:translateY(-1px)}.set-row .lf-input{font-size:.84rem;height:34px;padding:0 10px;margin:0}.lang-select{appearance:none;-webkit-appearance:none;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23888'/%3E%3C/svg%3E") no-repeat right 10px center;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font);font-size:.84rem;height:34px;padding:0 30px 0 10px;cursor:pointer;transition:border-color .15s;min-width:120px}.lang-select:focus{outline:none;border-color:var(--accent)}.lang-select:hover{border-color:var(--accent)}.think-disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.think-disabled .toggle-track{background:var(--border)!important}#thinkTgl:disabled+.toggle-track{background:var(--border)!important}.delete-modal-overlay{position:fixed;inset:0;z-index:3000;background:#0000008c;display:flex;align-items:center;justify-content:center;animation:fadeIn .18s ease}.delete-modal-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px 28px 24px;max-width:420px;width:90%;display:flex;flex-direction:column;align-items:center;gap:12px;animation:slideUp .22s ease}.delete-modal-icon{font-size:2.2rem;color:#ef4444;line-height:1}.delete-modal-title{font-size:1.05rem;font-weight:700;color:#ef4444;text-align:center}.delete-modal-msg{font-size:.86rem;color:var(--text-muted);text-align:center;line-height:1.5}.delete-modal-btns{display:flex;gap:10px;margin-top:6px;width:100%;justify-content:flex-end}.delete-modal-cancel{padding:8px 16px;border-radius:var(--radius-sm);background:none;border:1px solid var(--border);color:var(--text-muted);font-family:var(--font);font-size:.84rem;cursor:pointer;transition:background .15s,color .15s}.delete-modal-cancel:hover{background:#8080801a;color:var(--text)}.delete-modal-confirm{padding:8px 16px;border-radius:var(--radius-sm);background:#ef4444;border:none;color:#fff;font-family:var(--font);font-size:.84rem;font-weight:500;cursor:pointer;transition:filter .15s}.delete-modal-confirm:hover{filter:brightness(1.1)}.delete-modal-confirm:disabled{opacity:.55;cursor:not-allowed;filter:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.mobile-menu-btn{display:inline-flex;width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-muted);cursor:pointer;align-items:center;justify-content:center;font-size:.9rem;margin-right:6px;transition:background .15s,color .15s}.mobile-menu-btn:hover{background:#8080801a;color:var(--text)}.mobile-sidebar-backdrop{position:fixed;inset:0;background:#0000006b;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:42}@media(max-width:1024px){.chat-header{padding:0 12px}.msg-row{padding:5px 14px}.input-wrap{padding:10px 12px 14px}.artifact-panel.open{width:min(60vw,520px)}}@media(max-width:980px){body{position:relative;overflow:hidden}.sidebar{width:min(86vw,320px);min-width:min(86vw,320px);max-width:min(86vw,320px)}body.sidebar-open .mobile-sidebar-backdrop{opacity:1;pointer-events:auto}.main-content{width:100%;min-width:0}.chat-header{height:50px;padding:0 10px}.hdr-left{min-width:0;flex:1}.chat-proj-crumb{min-width:0}.chat-proj-btn{max-width:48vw}.chat-proj-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-selector{max-width:48vw;min-width:0}#mName{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:28vw}.model-dropdown{left:0;right:auto;min-width:min(88vw,320px);max-width:min(88vw,320px)}.chat-body{overscroll-behavior-y:contain}.welcome{padding:26px 14px}.welcome-title{font-size:1.45rem}.welcome-sub{font-size:.88rem;margin-bottom:18px}.suggestions{grid-template-columns:1fr;max-width:100%}.project-home{padding:14px 10px 18px;gap:10px}.ph-top{min-height:40px;gap:9px}.ph-title{font-size:1.2rem}.ph-tabs{display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.ph-tab{white-space:nowrap}.ph-chat-item{grid-template-columns:1fr auto;gap:6px;padding:10px}.ph-list-select .ph-chat-item{grid-template-columns:18px 1fr auto}.ph-chat-open{display:none}.msg-row{padding:4px 10px;gap:9px}.msg-av{width:24px;height:24px;margin-top:2px}.msg-text{font-size:.89rem;line-height:1.62}.msg-actions{opacity:1;flex-wrap:wrap}.input-wrap{padding:8px 8px 10px;padding-bottom:max(10px,env(safe-area-inset-bottom,0px))}.input-box{max-width:100%;padding:10px;gap:7px}.think-lbl-txt{font-size:.74rem}.input-hint{margin-top:4px;font-size:.66rem;line-height:1.45;padding:0 2px}.artifact-panel{position:fixed;top:0;right:0;bottom:0;width:100vw;min-width:0;max-width:100vw;z-index:55;border-left-width:0!important;transform:translate(100%);transition:transform .24s cubic-bezier(.16,1,.3,1)}.artifact-panel.open{width:100vw;transform:translate(0)}.art-topbar{padding:8px 10px;gap:5px}.art-tabs{display:none}.overlay{padding:8px}.modal-box{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:14px;flex-direction:column}.modal-nav{width:100%;min-width:0;border-right:none;border-bottom:1px solid var(--border);padding:10px 8px;display:flex;flex-direction:row;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch}.mnav-title{display:none}.mnav-btn{width:auto;flex:0 0 auto;white-space:nowrap;padding:7px 10px}.modal-body{padding:14px 12px 18px}.profile-row{gap:10px;margin-bottom:14px}.profile-av{width:48px;height:48px;font-size:1.1rem}.set-row{align-items:flex-start;flex-direction:column;gap:8px;padding:10px 0}.set-row .lf-input{max-width:100%}.set-row>div:last-child{width:100%}.set-row>div:last-child .lang-select{width:100%;min-width:0}.pers-grid{grid-template-columns:1fr}.page-hdr{padding:12px 10px}.page-title{font-size:1rem}.page-version{font-size:.71rem}.page-body{padding:16px 10px 18px}.page-body-wide{max-width:100%}.tk-stats-row,.tk-how-grid{grid-template-columns:1fr;gap:10px}.plans-grid{grid-template-columns:1fr;gap:14px}.plan-card{padding:18px 14px}.plan-price-val{font-size:1.7rem}.tk-table{font-size:.75rem}.tk-table th,.tk-table td{padding:8px 9px}textarea,.lf-input,.ph-compose-input{font-size:1rem}.history-del{opacity:.55}.sb-page-link{padding:6px 2px}.sidebar-footer{padding-bottom:max(8px,env(safe-area-inset-bottom,0px))}.think-lbl{flex-shrink:1;min-width:0}.think-lbl-txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#siteFooter{display:none}}@media(max-width:720px){.login-overlay{padding:8px}.delete-modal-box{width:calc(100vw - 16px);padding:20px 14px 16px}.delete-modal-btns{flex-direction:column-reverse}.delete-modal-btns button{width:100%}.limit-box{width:calc(100vw - 20px);padding:22px 16px}}@media(max-width:520px){.hdr-actions{gap:2px}.hdr-btn{width:30px;height:30px}.model-selector{padding:5px 8px}#mName{max-width:24vw}.welcome-icon{width:68px;height:68px;border-radius:16px;margin-bottom:14px}.sug-card{padding:12px}.project-home .ph-compose-card{padding:10px}.ph-compose-row{gap:8px}.ph-left-controls,.ph-right-controls{gap:4px}.toast{max-width:calc(100vw - 20px);white-space:normal;text-align:center;padding:8px 14px}}@media(min-width:981px){body.sidebar-open .main-content{margin-left:258px}}.upgrade-overlay{position:fixed;inset:0;z-index:9100;background:#00000073;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}.upgrade-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:32px 28px;max-width:360px;width:90%;text-align:center;box-shadow:0 16px 48px #0000001f}.upgrade-icon{font-size:2rem;color:var(--accent);margin-bottom:14px}.upgrade-title{font-size:1.15rem;font-weight:700;margin-bottom:8px}.upgrade-sub{font-size:.875rem;color:var(--text-muted);line-height:1.55;margin-bottom:22px}.upgrade-btn-plans{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:9px 20px;cursor:pointer;font-family:var(--font);font-size:.9rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-bottom:8px;transition:opacity var(--tr)}.upgrade-btn-plans:hover{opacity:.88}.upgrade-btn-close{background:none;border:1px solid var(--border);color:var(--text-muted);padding:7px 20px;cursor:pointer;font-family:var(--font);font-size:.85rem;border-radius:var(--radius-sm);width:100%;transition:border-color var(--tr),color var(--tr)}.upgrade-btn-close:hover{border-color:var(--text-muted);color:var(--text)}.mdl-plan-badge{font-size:.65rem;font-weight:700;letter-spacing:.04em;background:linear-gradient(135deg,#a855f7,#7c3aed);color:#fff;border-radius:4px;padding:1px 5px;margin-left:auto;flex-shrink:0}button i[class*=fa-]{display:inline-block;transition:transform .28s cubic-bezier(.34,1.56,.64,1)}@keyframes iconRock{0%,to{transform:rotate(0)}25%{transform:rotate(-14deg)}75%{transform:rotate(14deg)}}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes iconRise{0%,to{transform:translateY(0)}40%{transform:translateY(-5px)}70%{transform:translateY(-2px)}}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.28)}}@keyframes iconClip{0%,to{transform:rotate(0)}50%{transform:rotate(-28deg)}}@keyframes iconShake{0%,to{transform:rotate(0)}20%{transform:rotate(-8deg)}60%{transform:rotate(8deg)}80%{transform:rotate(-5deg)}}.sb-btn:hover .fa-gear,.mnav-btn:hover .fa-gear,.pm-icon-btn:hover .fa-gear,.ph-mini-btn:hover .fa-gear,.hdr-btn:hover .fa-gear{transform:rotate(60deg)}.new-chat-btn:hover .fa-plus,.sidebar-close-btn:hover .fa-xmark,.page-close:hover .fa-xmark,.art-btn:hover .fa-xmark,.pm-icon-btn:hover .fa-xmark{transform:rotate(90deg)}.hdr-btn:hover .fa-moon{animation:iconRock .45s ease}.send-btn:hover .fa-arrow-up,.ph-send-btn:hover .fa-arrow-up{animation:iconBounce .35s ease}.hdr-btn:hover .fa-arrow-up-from-bracket{animation:iconRise .4s ease}.hdr-btn:hover .fa-ellipsis{animation:iconPulse .35s ease}.sb-btn:hover .fa-chart-bar,.mnav-btn:hover .fa-chart-bar{transform:scale(1.18) translateY(-2px)}.ctrl-btn:hover .fa-paperclip,.ph-mini-btn:hover .fa-paperclip{animation:iconClip .4s ease}.mobile-menu-btn:hover .fa-bars{transform:scale(1.12)}.art-btn:hover .fa-download{animation:iconBounce .35s ease}.art-btn:hover .fa-copy{transform:scale(1.14)}.mnav-btn:hover .fa-user{transform:scale(1.12)}.mnav-btn:hover .fa-palette{animation:iconRock .4s ease}.mnav-btn:hover .fa-keyboard{transform:translateY(-3px)}.mnav-btn:hover .fa-masks-theater{transform:scale(1.1)}.project-new-btn:hover .fa-folder-plus{transform:scale(1.15)}button:hover .fa-trash-can{animation:iconShake .4s ease}.plan-cta-pro:hover .fa-crown{animation:iconBounce .4s ease}.history-acts{display:flex;align-items:center;gap:4px;margin-left:auto}.history-fav,.history-export,.history-del{width:26px;height:26px;border-radius:8px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--tr),background var(--tr),color var(--tr),transform var(--tr)}.history-item:hover .history-fav,.history-item:hover .history-export,.history-item:hover .history-del{opacity:.92}.history-fav.active{opacity:1;color:#f5b400}.history-fav:hover{background:#f5b4001f;color:#f5b400}.history-export:hover{background:#508cff1f;color:#4f8cff}.history-item.is-favorite .history-title:before{content:"★ ";color:#f5b400;font-size:.74rem}@keyframes searchOverlayIn{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes searchResultIn{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.search-overlay{position:fixed;inset:0;z-index:2600;display:flex;align-items:flex-start;justify-content:center;padding:clamp(26px,5vh,64px) 16px 16px;background:#07060857;backdrop-filter:blur(10px);opacity:0;pointer-events:none;transition:opacity .22s ease}.search-overlay.active{opacity:1;pointer-events:auto}.search-modal{width:min(760px,calc(100vw - 24px));max-height:min(78vh,860px);display:flex;flex-direction:column;border-radius:22px;border:1px solid color-mix(in oklab,var(--border) 76%,transparent);background:linear-gradient(180deg,color-mix(in oklab,var(--surface) 78%,transparent),color-mix(in oklab,var(--surface) 86%,transparent));backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 26px 80px #00000038,var(--shadow-lg);overflow:hidden;transform:translateY(14px) scale(.985)}.search-overlay.active .search-modal{animation:searchOverlayIn .28s cubic-bezier(.16,1,.3,1) forwards}.search-top{display:grid;gap:12px;padding:16px 16px 12px;border-bottom:1px solid color-mix(in oklab,var(--border) 82%,transparent);background:linear-gradient(180deg,color-mix(in oklab,var(--surface) 72%,transparent) 0%,transparent 100%)}.search-input-wrap{display:flex;align-items:center;gap:10px;min-height:58px;padding:0 14px 0 16px;border-radius:16px;border:1px solid var(--border);background:color-mix(in oklab,var(--surface) 90%,transparent);box-shadow:inset 0 1px #ffffff0a;transition:border-color var(--tr),box-shadow var(--tr),background var(--tr)}.search-input-wrap:focus-within{border-color:color-mix(in oklab,var(--accent) 45%,var(--border));box-shadow:0 0 0 4px color-mix(in oklab,var(--accent-soft) 55%,transparent),var(--shadow-sm)}.search-input-ic{width:18px;display:inline-flex;justify-content:center;align-items:center;color:var(--accent);font-size:.92rem;flex-shrink:0}.search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--text);font-family:var(--font);font-size:1rem;font-weight:500}.search-input::placeholder{color:var(--text-muted);font-weight:400}.search-close-btn{border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:4px;transition:background .15s,color .15s}.search-close-btn:hover{background:#8080801a;color:var(--text)}.search-close-kbd,.search-foot-item kbd{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:26px;padding:0 8px;border-radius:9px;border:1px solid var(--border);background:color-mix(in oklab,var(--surface) 88%,transparent);color:var(--text-muted);font-size:.73rem;font-family:var(--font);font-weight:600}.search-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.search-tab{border:1px solid var(--border);background:transparent;color:var(--text-muted);border-radius:999px;padding:7px 12px;cursor:pointer;font-family:var(--font);font-size:.8rem;font-weight:600;transition:background .15s,border-color .15s,color .15s,transform .15s}.search-tab:hover{border-color:color-mix(in oklab,var(--accent) 36%,var(--border));color:var(--text);transform:translateY(-1px)}.search-tab.active{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.search-results{flex:1 1 auto;min-height:160px;overflow:auto;padding:8px 10px 10px}.search-section{display:grid;gap:8px}.search-section+.search-section{margin-top:16px}.search-section-title{padding:0 8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.search-result{width:100%;border:1px solid transparent;background:transparent;color:inherit;border-radius:16px;cursor:pointer;text-align:left;padding:0;animation:searchResultIn .24s cubic-bezier(.16,1,.3,1) both}.search-result-inner{display:flex;align-items:flex-start;gap:12px;padding:12px;border-radius:inherit;transition:background .16s,border-color .16s,transform .16s,box-shadow .16s}.search-result:hover .search-result-inner,.search-result.active .search-result-inner{background:color-mix(in oklab,var(--accent-soft) 72%,var(--surface) 28%);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.search-result.active{border-color:color-mix(in oklab,var(--accent) 36%,transparent)}.search-result-ic{width:38px;height:38px;border-radius:12px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in oklab,var(--accent-soft) 80%,transparent);color:var(--accent);font-size:.95rem}.search-result-copy{flex:1;min-width:0;display:grid;gap:4px}.search-result-head{display:flex;align-items:center;gap:8px;min-width:0}.search-result-title{font-size:.92rem;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-type{flex-shrink:0;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:color-mix(in oklab,var(--accent-soft) 78%,transparent);border-radius:999px;padding:3px 7px}.search-result-fav{color:#f5b400;font-size:.73rem}.search-result-sub{font-size:.8rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-snippet{font-size:.79rem;color:color-mix(in oklab,var(--text-muted) 84%,var(--text) 16%);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}.search-empty{min-height:220px;display:flex;align-items:center;justify-content:center;padding:20px}.search-empty-card{width:min(360px,100%);text-align:center;display:grid;gap:10px;padding:22px 18px;border-radius:18px;border:1px dashed var(--border);background:color-mix(in oklab,var(--surface) 88%,transparent)}.search-empty-card i{font-size:1.15rem;color:var(--accent)}.search-empty-card strong{font-size:.96rem}.search-empty-card p{color:var(--text-muted);font-size:.83rem;line-height:1.55}.search-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px 14px;border-top:1px solid color-mix(in oklab,var(--border) 82%,transparent);background:color-mix(in oklab,var(--surface) 96%,transparent)}.search-foot-item{display:inline-flex;align-items:center;gap:7px;color:var(--text-muted);font-size:.76rem}.search-foot-item kbd+kbd{margin-left:-3px}.search-hit{color:var(--text);background:color-mix(in oklab,var(--accent-soft) 88%,transparent);border-radius:5px;padding:0 3px}.ph-chat-title-wrap{display:flex;align-items:center;gap:8px}.ph-chat-item.is-favorite .ph-chat-title{color:color-mix(in oklab,var(--text) 86%,#f5b400 14%)}.ph-chat-fav-badge{color:#f5b400;font-size:.72rem;flex-shrink:0}.ph-chat-actions{display:flex;align-items:center;gap:4px}.ph-chat-fav,.ph-chat-export,.ph-chat-del{width:28px;height:28px;border-radius:9px;border:none;background:transparent;cursor:pointer;color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--tr),background var(--tr),color var(--tr),transform var(--tr)}.ph-chat-item:hover .ph-chat-fav,.ph-chat-item:hover .ph-chat-export,.ph-chat-item:hover .ph-chat-del{opacity:1}.ph-chat-fav.active{opacity:1;color:#f5b400}.ph-chat-fav:hover{background:#f5b4001f;color:#f5b400}.ph-chat-export:hover{background:#508cff1f;color:#4f8cff}@media(max-width:760px){.search-overlay{padding-top:12px}.search-modal{width:min(100vw - 12px,100%);max-height:calc(100vh - 16px);border-radius:18px}.search-footer,.sidebar-search-kbd{display:none}}
