.rune-wordmark-title{margin:0;padding:0;line-height:1;border:none;background:none;font-size:inherit;font-weight:inherit}@media (max-width:480px){.rune-wordmark-img{height:44px}}.rune-wordmark-sidebar{height:36px;margin-bottom:2px;filter:drop-shadow(0 0 8px rgba(200,60,20,.45))}.rune-login-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:#09090b;position:relative;overflow:hidden;padding:24px}.rune-login-glow{position:absolute;border-radius:50%;filter:blur(80px);opacity:.25;pointer-events:none}.rune-login-glow--1{width:340px;height:340px;background:radial-gradient(circle,#c43a14 0,transparent 70%);top:-80px;left:-60px}.rune-login-glow--2{width:280px;height:280px;background:radial-gradient(circle,#7c1a0a 0,transparent 70%);bottom:-60px;right:-40px}.rune-login-card{position:relative;z-index:1;width:100%;max-width:360px;display:flex;flex-direction:column;align-items:center;gap:0}.rune-login-brand{margin-bottom:8px;position:relative}.rune-login-wordmark{display:block;height:72px;width:auto;object-fit:contain;filter:drop-shadow(0 0 18px rgba(196,58,20,.6)) drop-shadow(0 0 40px rgba(196,58,20,.25))}.rune-login-brand-fallback{display:none;font-size:48px;font-weight:800;color:#fff;letter-spacing:-2px;text-shadow:0 0 20px rgba(196,58,20,.8)}.rune-login-subtitle{color:rgba(255,255,255,.35);font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 32px}.rune-login-form{width:100%;display:flex;flex-direction:column;gap:12px}.rune-login-input{width:100%;padding:14px 16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:16px;outline:none;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.rune-login-input::placeholder{color:rgba(255,255,255,.25)}.rune-login-input:focus{border-color:rgba(196,58,20,.6);box-shadow:0 0 0 3px rgba(196,58,20,.15)}.rune-login-btn{width:100%;padding:14px;background:linear-gradient(135deg,#c43a14,#8b2209);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s,transform .1s;letter-spacing:.02em}.rune-login-btn:hover{opacity:.9}.rune-login-btn:active{transform:scale(.98)}.rune-login-btn:disabled{opacity:.5;cursor:not-allowed}.rune-login-error{color:#ff6b6b;font-size:13px;margin:0;text-align:center}.chat-panel:has(.builder-home) .attachment-preview,.chat-panel:has(.builder-home) .chat-error-banner,.chat-panel:has(.builder-home) .file-error,.chat-panel:has(.builder-home) .input-form{display:none!important}.builder-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0}.builder-orb--1{width:500px;height:500px;top:-120px;left:-80px;background:radial-gradient(circle,rgba(118,87,255,.18) 0,transparent 70%);animation:orb-drift 14s ease-in-out infinite}.builder-orb--2{width:400px;height:400px;top:40px;right:-60px;background:radial-gradient(circle,rgba(14,165,233,.15) 0,transparent 70%);animation:orb-drift 18s ease-in-out infinite reverse}.builder-orb--3{width:360px;height:360px;bottom:-80px;left:30%;background:radial-gradient(circle,rgba(217,70,239,.12) 0,transparent 70%);animation:orb-drift 22s ease-in-out infinite}@keyframes orb-drift{0%,to{transform:translate(0) scale(1)}33%{transform:translate(18px,-22px) scale(1.04)}66%{transform:translate(-12px,14px) scale(.97)}}.builder-wordmark-wrap{display:flex;flex-direction:column;align-items:center;gap:8px}.builder-logo-lockup{display:flex;align-items:center;gap:10px}.builder-rune-icon{width:36px;height:43px;flex-shrink:0;filter:drop-shadow(0 0 8px rgba(255,107,53,.7)) drop-shadow(0 0 20px rgba(192,57,43,.45));transition:filter .3s ease}.builder-rune-icon:hover{filter:drop-shadow(0 0 12px rgba(255,107,53,.9)) drop-shadow(0 0 28px rgba(192,57,43,.6))}.builder-wordmark-text{font-size:28px;font-weight:700;letter-spacing:-.03em;color:var(--navy);line-height:1;background:linear-gradient(135deg,#1a1a2e,#2d1b4e 60%,#c0392b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.builder-wordmark-sub{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}.builder-input-card{width:100%;position:relative;z-index:2;cursor:text;background:rgba(255,255,255,.78);border:1.5px solid rgba(255,255,255,.7);border-radius:var(--radius-xl);box-shadow:0 8px 40px rgba(62,77,128,.12),inset 0 1.5px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(118,87,255,.06);backdrop-filter:blur(28px) saturate(1.3);-webkit-backdrop-filter:blur(28px) saturate(1.3);transition:border-color .2s,box-shadow .2s,background .2s;overflow:hidden}.builder-input-card--focused{background:rgba(255,255,255,.88);border-color:rgba(118,87,255,.4);box-shadow:0 8px 56px rgba(118,87,255,.18),inset 0 1.5px 0 rgba(255,255,255,.95),0 0 0 3px rgba(118,87,255,.07)}.builder-textarea{width:100%;border:none;outline:none;background:transparent;resize:none;font-family:var(--font);font-size:16px;font-weight:400;color:var(--text);line-height:1.6;padding:20px 22px 10px;min-height:64px;max-height:200px;box-sizing:border-box;display:block;position:relative;z-index:2;pointer-events:all;cursor:text}.builder-textarea::placeholder{color:var(--muted-2)}.builder-input-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 14px 22px;gap:12px}.builder-input-bar-left{display:flex;align-items:center;gap:10px}.builder-input-bar-right{display:flex;align-items:center;gap:8px}.builder-hint{font-size:11px;color:var(--muted-2);font-weight:400;letter-spacing:.02em}.builder-send-btn{width:38px;height:38px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--purple),#5b3fd1);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(118,87,255,.35);transition:transform .15s,box-shadow .15s,opacity .15s;flex-shrink:0}.builder-send-btn:hover:not(:disabled){transform:translateY(-1px) scale(1.06);box-shadow:0 6px 20px rgba(118,87,255,.45)}.builder-send-btn:active:not(:disabled){transform:scale(.96)}.builder-send-btn:disabled{opacity:.38;cursor:not-allowed;box-shadow:none}.builder-send-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:block}@keyframes spin{to{transform:rotate(1turn)}}.builder-chips-section{width:100%;display:flex;flex-direction:column;align-items:center;gap:12px}.builder-chips-label{font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);margin:0}.builder-chip:hover:not(:disabled){background:rgba(118,87,255,.08);border-color:rgba(118,87,255,.35);color:var(--purple);transform:translateY(-1px);box-shadow:0 4px 14px rgba(118,87,255,.14)}.builder-chip:active:not(:disabled){transform:translateY(0) scale(.97)}.builder-chip:disabled{opacity:.45;cursor:not-allowed}.builder-chip-emoji{font-size:14px;line-height:1}.builder-chip-label{line-height:1}@media (max-width:600px){.builder-home{align-items:flex-start;padding:max(40px,env(safe-area-inset-top,0px) + 24px) 14px 60px}.builder-content{gap:20px}.builder-headline{font-size:26px}.builder-chips-grid{gap:6px}.builder-chip{font-size:12px;padding:7px 12px}}.messages[data-builder-active=true]{overflow:hidden!important;height:100%;display:flex;align-items:stretch}.chat-panel:has(.messages[data-builder-active=true]) .attachment-preview,.chat-panel:has(.messages[data-builder-active=true]) .chat-error-banner,.chat-panel:has(.messages[data-builder-active=true]) .file-error,.chat-panel:has(.messages[data-builder-active=true]) .input-form,.chat-panel:has(.messages[data-builder-active=true]) .stream-recovery{display:none!important}.rune-code-block{background:#0d1117;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;margin:.75rem 0;font-size:.82rem}.rune-code-header{display:flex;align-items:center;justify-content:space-between;padding:.45rem .9rem;background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.07);font-size:.72rem;color:#8b949e;font-family:var(--font-mono,monospace)}.rune-code-header .lang-label{text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:#c9d1d9}.rune-code-copy{background:none;border:none;cursor:pointer;color:#8b949e;font-size:.72rem;padding:.15rem .4rem;border-radius:4px;transition:background .15s,color .15s}.rune-code-copy:hover{background:rgba(255,255,255,.08);color:#e6edf3}.rune-code-copy.copied{color:#3fb950}.rune-code-block pre{margin:0;padding:.9rem 1rem;overflow-x:auto;line-height:1.6}.rune-code-block code{font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:.82rem;color:#e6edf3;background:none;padding:0;white-space:pre}.rune-message li code,.rune-message p code{background:rgba(110,118,129,.18);border:1px solid rgba(110,118,129,.25);border-radius:4px;padding:.1em .35em;font-family:JetBrains Mono,monospace;font-size:.82em;color:#e6edf3}.message-actions{display:flex;align-items:center;gap:.4rem;opacity:0;transition:opacity .15s;margin-top:.35rem}.message-wrapper:hover .message-actions{opacity:1}.msg-action-btn{background:none;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:var(--text-muted,#888);font-size:.7rem;padding:.2rem .5rem;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.msg-action-btn:hover{background:rgba(255,255,255,.07);color:#e6edf3}.msg-action-btn.copied{color:#3fb950;border-color:#3fb95044}.message-timestamp{font-size:.68rem;color:var(--text-muted,#888);opacity:0;transition:opacity .15s;margin-left:auto}.message-wrapper:hover .message-timestamp{opacity:1}.rune-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;font-weight:700;letter-spacing:.08em;color:#c25f2a;text-transform:uppercase;margin-bottom:.2rem}.rune-badge .ember-dot{width:6px;height:6px;background:radial-gradient(circle,#f97316,#c25f2a);border-radius:50%;box-shadow:0 0 6px #f97316aa;animation:pulse-ember 2s ease-in-out infinite}@keyframes pulse-ember{0%,to{box-shadow:0 0 6px #f97316aa}50%{box-shadow:0 0 14px #f97316cc}}.tool-running-chip{gap:7px;padding:6px 12px 6px 10px;border-radius:999px;background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.22);font-size:12px;font-weight:650;color:#4f46e5;letter-spacing:-.01em;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;animation:tool-chip-in .18s ease-out}.tool-running-dot{width:6px;height:6px;background:#6366f1;flex-shrink:0;animation:pulse-dot .9s ease-in-out infinite}@keyframes tool-chip-in{0%{opacity:0;transform:translateY(4px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.typing-dots{display:inline-flex;align-items:center;gap:5px;padding:6px 4px}.typing-dots span{width:7px;height:7px;background:#c25f2a;border-radius:50%;opacity:.3;animation:typing-bounce 1.2s ease-in-out infinite}.typing-dots span:first-child{animation-delay:0s}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.3}30%{transform:translateY(-6px);opacity:1}}.message-skeleton{display:flex;flex-direction:column;gap:.5rem;padding:.9rem 1rem}.skeleton-line{height:14px;border-radius:7px;background:linear-gradient(90deg,rgba(255,255,255,.04) 25%,rgba(255,255,255,.09) 50%,rgba(255,255,255,.04) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-line:first-child{width:85%}.skeleton-line:nth-child(2){width:60%}.skeleton-line:nth-child(3){width:75%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.message.assistant .markdown-body{line-height:1.72}.message.assistant .markdown-body p{margin:0 0 .7em}.message.assistant .markdown-body p:last-child{margin-bottom:0}.message.assistant .markdown-body ol,.message.assistant .markdown-body ul{padding-left:1.4em;margin:.4em 0 .7em}.message.assistant .markdown-body li{margin-bottom:.25em}.message.assistant .markdown-body h1,.message.assistant .markdown-body h2,.message.assistant .markdown-body h3{font-size:1em;font-weight:700;margin:.9em 0 .3em;color:#e6edf3}.message.assistant .markdown-body blockquote{border-left:3px solid #c25f2a;margin:.5em 0;padding:.3em .8em;color:#8b949e;font-style:italic}.message.assistant .markdown-body hr{border:none;border-top:1px solid rgba(255,255,255,.08);margin:.8em 0}.message.assistant .markdown-body table{border-collapse:collapse;width:100%;font-size:.82rem;margin:.7em 0}.message.assistant .markdown-body td,.message.assistant .markdown-body th{border:1px solid rgba(255,255,255,.1);padding:.4rem .7rem;text-align:left}.message.assistant .markdown-body th{background:rgba(255,255,255,.05);font-weight:600}.vault-page{display:flex;flex-direction:column;gap:1rem;padding:1.5rem 1.25rem 4rem;max-width:1100px;margin:0 auto;min-height:100dvh}.vault-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.07)}.vault-header-left{display:flex;align-items:center;gap:.5rem}.vault-logo{font-size:1.4rem}.vault-title{font-size:1.25rem;font-weight:600;color:#f0ede8;letter-spacing:-.01em}.vault-subtitle{font-size:.72rem;color:rgba(240,237,232,.4);margin-left:.25rem}.vault-stats{display:flex;gap:.75rem}.vault-stat{font-size:.72rem;padding:.2rem .6rem;border-radius:20px}.vault-stat--warn{background:rgba(255,160,50,.12);color:#f0a032}.vault-stat--fav{background:rgba(255,210,80,.1);color:#ffd050}.vault-controls{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.vault-search-wrap{position:relative;flex:1 1;min-width:200px}.vault-search-icon{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);color:rgba(240,237,232,.35);font-size:1rem;pointer-events:none}.vault-search{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:8px;color:#f0ede8;font-size:.85rem;padding:.5rem .75rem .5rem 2rem;outline:none;transition:border-color .2s}.vault-search:focus{border-color:rgba(180,80,40,.55)}.vault-search::placeholder{color:rgba(240,237,232,.3)}.vault-category-tabs{display:flex;gap:.35rem}.vault-cat-tab{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:6px;color:rgba(240,237,232,.55);font-size:.75rem;padding:.3rem .7rem;cursor:pointer;transition:all .15s}.vault-cat-tab:hover{border-color:rgba(255,255,255,.18);color:#f0ede8}.vault-cat-tab--active{background:rgba(180,80,40,.18);border-color:rgba(180,80,40,.5);color:#f0ede8}.vault-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));grid-gap:.85rem;gap:.85rem}.vault-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:.9rem 1rem;transition:border-color .18s,background .18s}.vault-card:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.13)}.vault-card--favorite{border-color:rgba(255,210,80,.22)}.vault-card--weak{border-left:2px solid rgba(255,120,40,.5)}.vault-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.65rem}.vault-card-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.vault-card-title{flex:1 1;display:flex;align-items:center;gap:.4rem;min-width:0}.vault-card-name{font-size:.82rem;font-weight:500;color:#f0ede8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vault-badge{font-size:.62rem;padding:.1rem .4rem;border-radius:10px;flex-shrink:0}.vault-badge--weak{background:rgba(255,120,40,.15);color:#ff7830}.vault-badge--fav{background:rgba(255,210,80,.12);color:#ffd050}.vault-card-actions{display:flex;gap:.25rem;opacity:0;transition:opacity .15s}.vault-card:hover .vault-card-actions{opacity:1}.vault-icon-btn{background:none;border:none;color:rgba(240,237,232,.45);font-size:.8rem;cursor:pointer;padding:.15rem .3rem;border-radius:4px;transition:color .15s,background .15s}.vault-icon-btn:hover{color:#f0ede8;background:rgba(255,255,255,.08)}.vault-icon-btn--danger:hover{color:#ff5555}.vault-card-body{display:flex;flex-direction:column;gap:.35rem}.vault-field{display:flex;align-items:center;gap:.4rem;font-size:.78rem}.vault-field-label{color:rgba(240,237,232,.35);min-width:62px;flex-shrink:0}.vault-field-value{color:rgba(240,237,232,.8);flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-field-value--password{letter-spacing:.05em}.vault-field-value--notes{font-size:.72rem;color:rgba(240,237,232,.5)}.vault-copy-btn{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:4px;color:rgba(240,237,232,.5);font-size:.68rem;padding:.08rem .35rem;cursor:pointer;flex-shrink:0;transition:all .12s}.vault-copy-btn:hover{background:rgba(255,255,255,.1);color:#f0ede8}.vault-url-link{color:rgba(180,200,255,.65);font-size:.75rem;text-decoration:none;flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-url-link:hover{color:rgba(180,200,255,.9);text-decoration:underline}.vault-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.vault-modal{background:#1a1814;border:1px solid rgba(255,255,255,.1);border-radius:14px;width:100%;max-width:420px;padding:1.25rem;box-shadow:0 24px 64px rgba(0,0,0,.5)}.vault-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.vault-modal-header h3{font-size:1rem;font-weight:600;color:#f0ede8}.vault-modal-close{background:none;border:none;color:rgba(240,237,232,.4);font-size:1rem;cursor:pointer}.vault-modal-close:hover{color:#f0ede8}.vault-modal-form{display:flex;flex-direction:column;gap:.6rem}.vault-modal-field{display:flex;flex-direction:column;gap:.25rem}.vault-modal-field label{font-size:.72rem;color:rgba(240,237,232,.45);text-transform:capitalize}.vault-modal-field input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:7px;color:#f0ede8;font-size:.82rem;padding:.45rem .65rem;outline:none;transition:border-color .2s}.vault-modal-field input:focus{border-color:rgba(180,80,40,.55)}.vault-modal-footer{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem}.vault-btn{font-size:.8rem;padding:.4rem .9rem;border-radius:7px;cursor:pointer;transition:all .15s;border:1px solid transparent}.vault-btn--primary{background:rgba(180,80,40,.85);color:#f0ede8;border-color:rgba(180,80,40,.6)}.vault-btn--primary:hover{background:rgba(200,90,50,.95)}.vault-btn--ghost{background:rgba(255,255,255,.04);color:rgba(240,237,232,.6);border-color:rgba(255,255,255,.08)}.vault-btn--ghost:hover{background:rgba(255,255,255,.08);color:#f0ede8}.vault-new-btn{font-size:.78rem;padding:.35rem .8rem}.vault-empty,.vault-loading{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:3rem;color:rgba(240,237,232,.4);font-size:.85rem}.vault-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.1);border-top-color:rgba(180,80,40,.8);border-radius:50%;animation:vault-spin .7s linear infinite}@keyframes vault-spin{to{transform:rotate(1turn)}}.vault-error{background:rgba(255,60,60,.1);border:1px solid rgba(255,60,60,.2);border-radius:8px;color:#ff8888;font-size:.82rem;padding:.65rem .9rem}.vault-toast{position:fixed;bottom:1.5rem;left:50%;transform:translateX(-50%);background:rgba(30,28,24,.95);border:1px solid rgba(255,255,255,.1);border-radius:20px;color:#f0ede8;font-size:.78rem;padding:.45rem 1.1rem;box-shadow:0 4px 20px rgba(0,0,0,.4);z-index:10000;pointer-events:none;animation:vault-toast-in .2s ease}@keyframes vault-toast-in{0%{opacity:0;transform:translateX(-50%) translateY(6px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@media (max-width:600px){.vault-page{padding:1rem .85rem 5rem}.vault-grid{grid-template-columns:1fr}.vault-controls{flex-direction:column;align-items:stretch}.vault-category-tabs{flex-wrap:wrap}}.vault-nav-chip{display:inline-flex;align-items:center;gap:.25rem;background:rgba(180,80,40,.15);border:1px solid rgba(180,80,40,.35);border-radius:20px;color:rgba(240,237,232,.75);font-size:.7rem;padding:.15rem .5rem;text-decoration:none;transition:all .15s;cursor:pointer;margin-left:.4rem;vertical-align:middle}.vault-nav-chip--rune{color:#ff6a3d;text-shadow:0 0 10px rgba(255,106,61,.55),0 0 22px rgba(185,28,28,.35);font-weight:900;font-size:20px;line-height:1}.vault-nav-chip:hover{background:rgba(180,80,40,.3);color:#f0ede8;border-color:rgba(180,80,40,.6)}.chat-plan-btn{display:inline-flex;align-items:center;gap:5px;height:36px;padding:0 13px;border-radius:12px;font-size:12.5px;font-weight:750;letter-spacing:-.01em;white-space:nowrap;cursor:pointer;border:1.5px solid rgba(99,102,241,.45);background:rgba(99,102,241,.08);color:#4f46e5;transition:background .15s,border-color .15s,opacity .15s;flex-shrink:0}.chat-plan-btn:hover:not(:disabled){background:rgba(99,102,241,.15);border-color:rgba(99,102,241,.65)}.chat-plan-btn:disabled{opacity:.4;cursor:not-allowed}.chat-plan-btn--loading{opacity:.7}.plan-btn-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(99,102,241,.3);border-top-color:#6366f1;border-radius:50%;animation:spin .7s linear infinite}.plan-modal-backdrop{position:fixed;inset:0;z-index:1200;background:rgba(15,15,35,.65);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:clamp(12px,4vw,40px);animation:backdrop-in .18s ease}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.plan-modal{width:min(100%,640px);max-height:min(90dvh,760px);overflow-y:auto;overscroll-behavior:contain;border-radius:28px;background:rgba(255,255,255,.96);border:1px solid rgba(100,116,166,.2);box-shadow:0 32px 80px rgba(30,40,90,.28),inset 0 0 0 1px rgba(255,255,255,.6);display:flex;flex-direction:column;animation:modal-in .22s cubic-bezier(.34,1.56,.64,1)}@keyframes modal-in{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.plan-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:24px 24px 0}.plan-modal-title-row{display:flex;align-items:center;gap:12px}.plan-modal-icon{font-size:28px;line-height:1}.plan-modal-title{font-size:20px;font-weight:850;letter-spacing:-.04em;color:#1a1a2e;margin:0}.plan-modal-subtitle{font-size:12px;color:#6b7280;margin:3px 0 0}.plan-modal-close{width:32px;height:32px;border-radius:50%;border:1px solid rgba(100,116,166,.18);background:rgba(248,250,252,.9);font-size:14px;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .12s}.plan-modal-close:hover{background:#f1f5f9}.plan-modal-meta{display:flex;flex-wrap:wrap;gap:8px;padding:16px 24px 0}.plan-meta-chip{display:inline-flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:12px;background:rgba(248,250,252,.9);border:1px solid rgba(100,116,166,.14);min-width:90px}.plan-meta-chip--risk{flex-direction:row;align-items:center;gap:7px}.plan-meta-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af}.plan-meta-chip strong{font-size:12.5px;font-weight:750;color:#1f2937}.plan-risk-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.plan-request-preview{margin:14px 24px 0;padding:12px 14px;border-radius:14px;background:rgba(99,102,241,.04);border:1px solid rgba(99,102,241,.12)}.plan-preview-label{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af;margin-bottom:5px}.plan-preview-text{font-size:13.5px;color:#374151;margin:0;line-height:1.45;overflow-wrap:anywhere}.plan-steps{padding:16px 24px 0}.plan-steps-label{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.07em;color:#9ca3af;margin-bottom:10px}.plan-step-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.plan-step-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:14px;background:rgba(248,250,252,.8);border:1px solid rgba(100,116,166,.1);transition:background .12s}.plan-step-item:hover{background:rgba(240,244,248,.95)}.plan-step-number{width:22px;height:22px;border-radius:50%;background:#6366f1;color:white;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.plan-step-icon{font-size:16px;line-height:1;flex-shrink:0;margin-top:2px}.plan-step-body{min-width:0}.plan-step-label{display:block;font-size:13px;font-weight:750;color:#1f2937;margin-bottom:2px}.plan-step-detail{font-size:12px;color:#6b7280;margin:0;line-height:1.4}.plan-notes-section{padding:14px 24px 0}.plan-notes-label{display:block;font-size:12px;font-weight:700;color:#374151;margin-bottom:6px}.plan-notes-label span{font-weight:400;color:#9ca3af}.plan-notes-input{width:100%;padding:10px 12px;border-radius:12px;border:1px solid rgba(100,116,166,.2);background:rgba(248,250,252,.9);font-size:13px;color:#1f2937;resize:none;font-family:inherit;box-sizing:border-box;transition:border-color .15s}.plan-notes-input:focus{outline:none;border-color:rgba(99,102,241,.5);box-shadow:0 0 0 3px rgba(99,102,241,.08)}.plan-notes-input::placeholder{color:#d1d5db}.plan-modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px 24px}.plan-btn{display:inline-flex;align-items:center;gap:6px;height:42px;padding:0 20px;border-radius:14px;font-size:14px;font-weight:750;cursor:pointer;transition:background .15s,opacity .15s;border:1.5px solid transparent}.plan-btn:disabled{opacity:.5;cursor:not-allowed}.plan-btn--edit{background:rgba(248,250,252,.9);border-color:rgba(100,116,166,.2);color:#374151}.plan-btn--edit:hover:not(:disabled){background:#f1f5f9}.plan-btn--run{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:transparent;color:white;box-shadow:0 4px 14px rgba(99,102,241,.35)}.plan-btn--run:hover:not(:disabled){background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 6px 20px rgba(99,102,241,.45)}.plan-run-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:white;border-radius:50%;animation:spin .7s linear infinite}.followup-chips{padding:4px 0 8px;align-self:flex-start;max-width:100%;animation:chips-in .25s ease}@keyframes chips-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.followup-chip{display:inline-flex;align-items:center;height:30px;padding:0 14px;border-radius:999px;font-size:12.5px;font-weight:650;background:rgba(255,255,255,.82);border:1.5px solid rgba(99,102,241,.22);color:#4f46e5;transition:background .13s,border-color .13s,transform .1s;letter-spacing:-.01em}.followup-chip:hover{background:rgba(99,102,241,.07);border-color:rgba(99,102,241,.4);transform:translateY(-1px)}.followup-chip:active{transform:translateY(0)}@media (max-width:820px){.plan-modal{border-radius:20px}.plan-modal-actions,.plan-modal-header,.plan-modal-meta,.plan-notes-section,.plan-request-preview,.plan-steps{padding-left:18px;padding-right:18px}.plan-modal-actions{flex-direction:column-reverse}.plan-btn{width:100%;justify-content:center}.chat-plan-btn{padding:0 10px;font-size:12px}.followup-chips{gap:6px}.followup-chip{font-size:12px;height:28px;padding:0 12px}}.rune-code-header-actions{display:flex;align-items:center;gap:6px}.rune-code-canvas-btn{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 10px;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;border:1px solid rgba(99,102,241,.3);background:rgba(99,102,241,.07);color:#4f46e5;transition:background .12s,border-color .12s;white-space:nowrap}.rune-code-canvas-btn:hover{background:rgba(99,102,241,.14);border-color:rgba(99,102,241,.5)}.canvas-backdrop{position:fixed;inset:0;z-index:1100;background:rgba(10,10,25,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:clamp(8px,3vw,32px);animation:backdrop-in .18s ease}.canvas-pane{width:min(100%,1100px);height:min(90dvh,760px);border-radius:22px;background:#0f0f1a;border:1px solid rgba(99,102,241,.2);box-shadow:0 40px 100px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.04);display:flex;flex-direction:column;overflow:hidden;animation:modal-in .22s cubic-bezier(.34,1.56,.64,1)}.canvas-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.canvas-title-row{display:flex;align-items:center;gap:10px}.canvas-icon{font-size:18px;line-height:1}.canvas-title{font-size:14px;font-weight:750;color:#f1f5f9;letter-spacing:-.02em}.canvas-lang-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:6px;background:rgba(99,102,241,.15);border:1px solid rgba(99,102,241,.3);font-size:10px;font-weight:700;color:#818cf8;letter-spacing:.04em;text-transform:uppercase}.canvas-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.canvas-mode-tabs{display:flex;align-items:center;gap:2px;background:rgba(255,255,255,.05);border-radius:10px;padding:3px}.canvas-mode-tab{height:26px;padding:0 12px;border-radius:8px;font-size:12px;font-weight:650;color:rgba(255,255,255,.5);cursor:pointer;border:none;background:transparent;transition:background .12s,color .12s;white-space:nowrap}.canvas-mode-tab:hover{color:rgba(255,255,255,.8)}.canvas-mode-tab--active{background:rgba(99,102,241,.25);color:#c7d2fe}.canvas-ctrl-btn{height:30px;padding:0 12px;border-radius:8px;font-size:12px;font-weight:650;cursor:pointer;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:rgba(255,255,255,.7);transition:background .12s,color .12s;white-space:nowrap}.canvas-ctrl-btn:hover{background:rgba(255,255,255,.1);color:white}.canvas-ctrl-btn--save{background:rgba(99,102,241,.2);border-color:rgba(99,102,241,.4);color:#a5b4fc}.canvas-ctrl-btn--save:hover{background:rgba(99,102,241,.35);color:#c7d2fe}.canvas-close-btn{width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:rgba(255,255,255,.5);cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;transition:background .12s,color .12s}.canvas-close-btn:hover{background:rgba(239,68,68,.15);border-color:rgba(239,68,68,.3);color:#fca5a5}.canvas-body{flex:1 1;display:flex;overflow:hidden;min-height:0}.canvas-body--code,.canvas-body--preview{flex-direction:column}.canvas-body--split{flex-direction:row}.canvas-code-panel{flex:1 1;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid rgba(255,255,255,.06);min-width:0}.canvas-code-panel--full{border-right:none}.canvas-code-editor{flex:1 1;width:100%;padding:16px;background:#0a0a18;color:#e2e8f0;font-family:JetBrains Mono,Fira Code,Cascadia Code,SF Mono,ui-monospace,monospace;font-size:13px;line-height:1.6;border:none;resize:none;outline:none;-moz-tab-size:2;tab-size:2;white-space:pre;overflow:auto;box-sizing:border-box}.canvas-code-editor::selection{background:rgba(99,102,241,.3)}.canvas-preview-panel{flex:1 1;display:flex;flex-direction:column;overflow:hidden;min-width:0;background:#fff}.canvas-preview-bar{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#1e1e2e;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.canvas-preview-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.canvas-preview-dot--red{background:#ff5f57}.canvas-preview-dot--yellow{background:#febc2e}.canvas-preview-dot--green{background:#28c840}.canvas-preview-url{flex:1 1;font-size:11px;color:rgba(255,255,255,.35);font-family:ui-monospace,monospace;margin-left:8px}.canvas-iframe{flex:1 1;width:100%;border:none;background:white}@media (max-width:820px){.canvas-pane{border-radius:16px;height:min(92dvh,700px)}.canvas-body--split{flex-direction:column}.canvas-code-panel{border-right:none;border-bottom:1px solid rgba(255,255,255,.06);max-height:40%}.canvas-preview-panel{flex:1 1}.canvas-mode-tabs{display:none}}.native-tool-button--active{background:rgba(99,102,241,.12);border-color:rgba(99,102,241,.4);color:#4f46e5}.builder-sidebar-backdrop{display:none;position:fixed;inset:0;z-index:199;background:rgba(15,15,35,.5);border:none;cursor:pointer}@media (max-width:820px){.builder-sidebar-backdrop{display:block}}.builder-sidebar{position:fixed;top:0;right:0;width:340px;height:100dvh;z-index:200;display:flex;flex-direction:column;background:rgba(255,255,255,.97);border-left:1px solid rgba(100,116,166,.15);box-shadow:-8px 0 40px rgba(30,40,90,.12);transform:translateX(100%);transition:transform .26s cubic-bezier(.4,0,.2,1);overflow:hidden}.builder-sidebar--open{transform:translateX(0)}@media (min-width:821px){.workspace-app:has(.builder-sidebar--open) .chat-panel{margin-right:340px;transition:margin-right .26s cubic-bezier(.4,0,.2,1)}}.builder-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid rgba(100,116,166,.1);flex-shrink:0}.builder-sidebar-title-row{display:flex;align-items:center;gap:10px}.builder-sidebar-icon{font-size:20px;line-height:1}.builder-sidebar-title{display:block;font-size:15px;font-weight:800;color:#1a1a2e;letter-spacing:-.03em}.builder-sidebar-count{display:block;font-size:11px;color:#9ca3af;margin-top:1px}.builder-sidebar-close{width:28px;height:28px;border-radius:50%;border:1px solid rgba(100,116,166,.18);background:rgba(248,250,252,.9);font-size:12px;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;transition:background .12s;flex-shrink:0}.builder-sidebar-close:hover{background:#f1f5f9}.builder-sidebar-search-wrap{position:relative;padding:10px 12px;flex-shrink:0}.builder-sidebar-search{width:100%;height:32px;padding:0 30px 0 10px;border-radius:10px;border:1px solid rgba(100,116,166,.2);background:rgba(248,250,252,.9);font-size:13px;color:#1f2937;outline:none;box-sizing:border-box;transition:border-color .15s}.builder-sidebar-search:focus{border-color:rgba(99,102,241,.5)}.builder-sidebar-search::placeholder{color:#d1d5db}.builder-search-clear{position:absolute;right:20px;top:50%;transform:translateY(-50%);background:none;border:none;color:#9ca3af;font-size:12px;cursor:pointer;line-height:1}.builder-tab-bar{display:flex;gap:2px;padding:0 12px 10px;flex-shrink:0}.builder-tab{flex:1 1;height:28px;border-radius:8px;font-size:11.5px;font-weight:700;color:#9ca3af;cursor:pointer;border:1px solid transparent;background:transparent;transition:background .12s,color .12s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.builder-tab:hover{color:#374151;background:rgba(100,116,166,.08)}.builder-tab--active{background:rgba(99,102,241,.1);border-color:rgba(99,102,241,.25);color:#4f46e5}.builder-sidebar-body{flex:1 1;overflow-y:auto;overscroll-behavior:contain;padding:0 0 8px}.builder-sidebar-body::-webkit-scrollbar{width:4px}.builder-sidebar-body::-webkit-scrollbar-thumb{background:rgba(100,116,166,.2);border-radius:2px}.builder-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:40px 24px;text-align:center}.builder-empty span{font-size:32px}.builder-empty p{font-size:13px;font-weight:650;color:#374151;margin:0}.builder-empty small{font-size:12px;color:#9ca3af;line-height:1.45}.builder-tree{padding:4px 0}.builder-section{margin-bottom:2px}.builder-section-header{display:flex;align-items:center;gap:6px;width:100%;padding:7px 14px;background:none;border:none;cursor:pointer;font-size:11.5px;font-weight:750;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;transition:background .1s}.builder-section-header:hover{background:rgba(100,116,166,.06)}.builder-section-chevron{font-size:10px;color:#9ca3af;flex-shrink:0}.builder-section-icon{font-size:14px}.builder-section-label{flex:1 1;text-align:left}.builder-section-count{min-width:18px;height:18px;border-radius:9px;background:rgba(99,102,241,.1);color:#6366f1;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 5px}.builder-file-list{padding:0 0 4px}.builder-file-item{border-radius:0}.builder-file-item--selected{background:rgba(99,102,241,.04)}.builder-file-row{display:flex;align-items:center;gap:8px;width:100%;padding:6px 16px 6px 28px;background:none;border:none;cursor:pointer;text-align:left;transition:background .1s}.builder-file-row:hover{background:rgba(100,116,166,.07)}.builder-file-ext{flex-shrink:0;min-width:28px;height:18px;border-radius:4px;background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.2);color:#6366f1;font-size:8.5px;font-weight:800;letter-spacing:.03em;display:flex;align-items:center;justify-content:center}.builder-file-info{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.builder-file-name{font-size:12.5px;font-weight:650;color:#1f2937}.builder-file-name,.builder-file-path{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.builder-file-path{font-size:10.5px;color:#9ca3af}.builder-file-size{font-size:10.5px;color:#d1d5db;flex-shrink:0}.builder-file-detail{padding:8px 16px 10px 28px;border-top:1px solid rgba(100,116,166,.08);animation:detail-in .14s ease}@keyframes detail-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.builder-file-summary{font-size:12px;color:#6b7280;margin:0 0 6px;line-height:1.45}.builder-file-meta-row{display:flex;gap:10px;font-size:10.5px;color:#d1d5db;margin-bottom:8px}.builder-file-actions{display:flex;gap:6px;flex-wrap:wrap}.builder-action-btn{height:26px;padding:0 10px;border-radius:8px;font-size:11.5px;font-weight:700;cursor:pointer;border:1px solid rgba(100,116,166,.2);background:rgba(248,250,252,.9);color:#374151;transition:background .12s;white-space:nowrap}.builder-action-btn:hover{background:#f1f5f9}.builder-action-btn--canvas{background:rgba(99,102,241,.07);border-color:rgba(99,102,241,.25);color:#4f46e5}.builder-action-btn--canvas:hover{background:rgba(99,102,241,.14)}.builder-artifact-list{padding:8px 0}.builder-artifact-item{padding:10px 14px;border-bottom:1px solid rgba(100,116,166,.08)}.builder-artifact-item:last-child{border-bottom:none}.builder-artifact-header{display:flex;gap:10px;align-items:flex-start;margin-bottom:8px}.builder-artifact-icon{font-size:18px;flex-shrink:0;margin-top:1px}.builder-artifact-info{flex:1 1;min-width:0}.builder-artifact-name{display:block;font-size:13px;font-weight:700;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.builder-artifact-meta{display:block;font-size:10.5px;color:#9ca3af;margin-top:2px}.builder-artifact-actions{display:flex;gap:6px}.builder-doc-list{padding:8px 0}.builder-doc-item{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-bottom:1px solid rgba(100,116,166,.08)}.builder-doc-item:last-child{border-bottom:none}.builder-doc-icon{font-size:18px;flex-shrink:0;margin-top:1px}.builder-doc-info{flex:1 1;min-width:0}.builder-doc-name{display:block;font-size:13px;font-weight:700;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.builder-doc-summary{font-size:11.5px;color:#6b7280;margin:3px 0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.builder-doc-meta{display:block;font-size:10.5px;color:#d1d5db;margin-top:2px}.builder-sidebar-footer{display:flex;flex-direction:column;gap:6px;padding:10px 12px 14px;border-top:1px solid rgba(100,116,166,.1);flex-shrink:0}.builder-footer-btn{width:100%;height:34px;border-radius:10px;font-size:12.5px;font-weight:700;cursor:pointer;border:1px solid rgba(100,116,166,.18);background:rgba(248,250,252,.9);color:#374151;text-align:left;padding:0 12px;display:flex;align-items:center;gap:8px;transition:background .12s}.builder-footer-btn:hover{background:#f1f5f9}@media (max-width:820px){.builder-sidebar{width:88vw;max-width:340px}}.builder-action-btn--loading{opacity:.6;cursor:not-allowed}.builder-inline-editor{margin-top:8px;border-radius:12px;overflow:hidden;border:1px solid rgba(99,102,241,.2);background:#0f0f1a}.builder-inline-editor-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.06)}.builder-inline-editor-lang{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#818cf8}.builder-inline-code-editor{display:block;width:100%;min-height:180px;max-height:340px;padding:12px;background:transparent;color:#e2e8f0;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-size:12px;line-height:1.6;border:none;outline:none;resize:vertical;-moz-tab-size:2;tab-size:2;white-space:pre;overflow:auto;box-sizing:border-box}.schema-loading{display:flex;align-items:center;gap:8px;padding:24px 16px;font-size:13px;color:#9ca3af}.schema-viewer{padding:8px 0 16px}.schema-summary-row{display:flex;align-items:center;gap:8px;padding:0 14px 10px;flex-wrap:wrap}.schema-summary-chip{display:inline-flex;align-items:center;height:22px;padding:0 10px;border-radius:11px;font-size:11px;font-weight:700;background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.18);color:#6366f1}.schema-refresh-btn{margin-left:auto;width:26px;height:26px;border-radius:50%;border:1px solid rgba(100,116,166,.18);background:rgba(248,250,252,.9);font-size:13px;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;transition:background .12s}.schema-refresh-btn:hover{background:#f1f5f9}.schema-group{margin-bottom:4px}.schema-group-header{display:flex;align-items:center;gap:7px;width:100%;padding:7px 14px;background:none;border:none;cursor:pointer;font-size:11.5px;font-weight:750;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;transition:background .1s}.schema-group-header:hover{background:rgba(100,116,166,.06)}.schema-group-label{flex:1 1;text-align:left}.schema-group-badge{min-width:30px;height:18px;border-radius:9px;background:rgba(100,116,166,.1);color:#6b7280;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 6px}.schema-table-list{padding:0 0 4px}.schema-table-row{display:flex;align-items:center;gap:8px;width:100%;padding:5px 14px 5px 28px;background:none;border:none;cursor:pointer;text-align:left;transition:background .1s}.schema-table-row:hover{background:rgba(100,116,166,.06)}.schema-table-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.schema-table-label{flex:1 1;font-size:12.5px;color:#374151;font-weight:550}.schema-table-count{font-size:11.5px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:32px;text-align:right}.deploy-pipeline-card{margin:12px;border-radius:16px;border:1px solid rgba(100,116,166,.14);background:rgba(248,250,252,.9);overflow:hidden}.deploy-pipeline-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 10px;border-bottom:1px solid rgba(100,116,166,.1)}.deploy-pipeline-title{display:flex;align-items:center;gap:8px;font-size:13px}.deploy-pipeline-title strong{font-weight:800;color:#1f2937}.deploy-pipeline-badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:10px;font-size:10px;font-weight:800;letter-spacing:.04em}.deploy-pipeline-refresh{width:26px;height:26px;border-radius:50%;border:1px solid rgba(100,116,166,.18);background:transparent;font-size:14px;cursor:pointer;color:#9ca3af;display:flex;align-items:center;justify-content:center;transition:background .12s}.deploy-pipeline-refresh:hover{background:rgba(100,116,166,.08)}.deploy-pipeline-stages{display:flex;align-items:center;gap:2px;padding:12px 14px;border-bottom:1px solid rgba(100,116,166,.08);overflow-x:auto}.deploy-pipeline-stage{display:flex;align-items:center;gap:4px;flex-shrink:0}.deploy-stage-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;transition:box-shadow .2s}.deploy-stage-icon{font-size:14px}.deploy-stage-label{font-size:11.5px;font-weight:700;color:#374151}.deploy-stage-arrow{font-size:12px;margin:0 4px;opacity:.6}.deploy-checks-list{padding:8px 14px}.deploy-check-row{display:flex;align-items:flex-start;gap:8px;padding:5px 0;border-bottom:1px solid rgba(100,116,166,.06)}.deploy-check-row:last-child{border-bottom:none}.deploy-check-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-top:4px}.deploy-check-label{font-size:12px;font-weight:700;color:#374151;min-width:80px}.deploy-check-detail{font-size:11.5px;color:#9ca3af;flex:1 1;line-height:1.4}.deploy-all-ok{font-size:12.5px;color:#22c55e;font-weight:700;padding:6px 0;margin:0}.deploy-pipeline-time{font-size:10.5px;color:#d1d5db;padding:6px 14px 10px;margin:0}.pipeline-spin{display:inline-block;width:12px;height:12px;border:2px solid rgba(99,102,241,.2);border-top-color:#6366f1;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}:root{--bg:#eef4ff;--bg-2:#f8fbff;--text:#17213f;--muted:rgba(42,55,91,0.68);--muted-2:rgba(42,55,91,0.48);--panel:rgba(255,255,255,0.72);--panel-strong:rgba(255,255,255,0.9);--panel-soft:rgba(255,255,255,0.52);--border:rgba(100,116,166,0.18);--border-strong:rgba(100,116,166,0.3);--purple:#7657ff;--pink:#d946ef;--blue:#0ea5e9;--navy:#17213f;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--shadow-soft:0 24px 80px rgba(62,77,128,0.18);--shadow-pop:0 18px 46px rgba(118,87,255,0.2);--radius-xl:30px;--radius-lg:22px;--radius-md:16px;--font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body,html{width:100%;height:100%;margin:0;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:radial-gradient(circle at 16% 8%,rgba(118,87,255,.22),transparent 30%),radial-gradient(circle at 88% 12%,rgba(14,165,233,.2),transparent 30%),radial-gradient(circle at 58% 92%,rgba(217,70,239,.14),transparent 34%),linear-gradient(145deg,#fbfdff,#eef4ff 46%,#ece9ff)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(71,85,105,.06) 1px,transparent 0),linear-gradient(90deg,rgba(71,85,105,.045) 1px,transparent 0);background-size:64px 64px;opacity:.75}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}a{color:inherit}::selection{background:rgba(118,87,255,.22)}.page{width:100vw;height:100dvh;min-height:100dvh;display:grid;align-content:center;grid-gap:18px;gap:18px;padding:clamp(18px,4vw,30px);position:relative;z-index:1}.hero{width:min(672px,calc(100vw - 42px));margin:0 auto;display:flex;align-items:baseline;gap:10px}.hero h1{margin:0;font-size:clamp(42px,6vw,56px);line-height:.95;letter-spacing:-.075em;color:var(--text)}.hero p,.hero-divider{margin:0;color:rgba(82,99,151,.62)}.chat-shell{width:min(672px,calc(100vw - 42px));margin:0 auto;border:0;background:transparent}.login-form{display:flex;flex-direction:column;gap:12px;padding:clamp(18px,4vw,30px);border-radius:var(--radius-xl);border:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,255,255,.62));box-shadow:var(--shadow-soft),inset 0 1px 0 rgba(255,255,255,.86);backdrop-filter:blur(24px) saturate(1.18);-webkit-backdrop-filter:blur(24px) saturate(1.18)}.login-form .chat-input{min-height:54px;background:rgba(255,255,255,.9);color:var(--text);-webkit-text-fill-color:var(--text)}.file-error,.login-error,.memory-status,.tool-error,.workspace-error{margin:0;color:var(--danger);font-size:13px}.workspace-home{width:100vw;height:100dvh;min-height:100dvh;display:grid;place-items:center;padding:clamp(12px,1.8vw,24px);overflow:hidden;position:relative;z-index:1}.workspace-app{width:min(1200px,calc(100vw - clamp(24px, 3.5vw, 48px)));height:min(900px,calc(100dvh - clamp(24px, 3.5vw, 48px)));grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);border-radius:clamp(24px,2.2vw,34px);border:1px solid rgba(100,116,166,.18);background:linear-gradient(180deg,rgba(255,255,255,.7),rgba(255,255,255,.46)),radial-gradient(circle at 50% 0,rgba(118,87,255,.12),transparent 48%);box-shadow:var(--shadow-soft),inset 0 1px 0 rgba(255,255,255,.8);backdrop-filter:blur(26px) saturate(1.2);-webkit-backdrop-filter:blur(26px) saturate(1.2)}.chat-panel,.workspace-app{min-width:0;min-height:0;display:grid;overflow:hidden}.chat-panel{grid-template-rows:auto auto minmax(0,1fr) auto}.chat-header--workspace{min-height:72px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;grid-gap:14px;gap:14px;padding:14px clamp(16px,3vw,32px) 12px;border-bottom:1px solid rgba(100,116,166,.12);background:rgba(255,255,255,.58);backdrop-filter:blur(18px) saturate(1.12);-webkit-backdrop-filter:blur(18px) saturate(1.12)}.chat-header-copy{min-width:0;text-align:center}.chat-header-title{display:block;font-weight:900;font-size:18px;line-height:1;letter-spacing:-.055em}.chat-header-subtitle{margin:5px 0 0;color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header-right{display:flex;justify-content:flex-end;align-items:center;gap:8px}.native-logout-button{display:none}.chat-header-right .status-badge{display:inline-flex}.attach-button,.filing-cabinet-tab,.logout-button,.memory-inline-action,.memory-tab,.native-icon-button,.native-tool-button,.project-switchboard-card,.secondary-button,.send-button,.workspace-create-button{cursor:pointer;border:1px solid var(--border);color:var(--text);background:rgba(255,255,255,.58);transition:transform .16s ease,border-color .16s ease,background .16s ease,opacity .16s ease}.native-icon-button{width:44px;height:44px;border-radius:18px;display:grid;place-items:center;font-size:18px}.native-tool-button{min-height:42px;border-radius:999px;padding:0 16px;font-weight:850;font-size:12px}button:not(:disabled):hover{transform:translateY(-1px);border-color:var(--border-strong)}button:disabled{opacity:.55;cursor:not-allowed}.native-status-strip{min-height:40px;display:flex;justify-content:center;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid rgba(100,116,166,.1);background:rgba(255,255,255,.28)}.action-status-pill,.document-kind-pill,.execution-badge,.github-badge,.summary-chip{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:5px 10px;border-radius:999px;color:rgba(42,55,91,.72);background:rgba(255,255,255,.56);border:1px solid rgba(100,116,166,.14);font-size:11px;font-weight:750}.task-activity-chip{gap:.4rem;max-width:min(260px,68vw);border-color:rgba(124,58,237,.28);background:rgba(255,255,255,.76)}.task-activity-chip--stale{border-color:rgba(245,158,11,.45);background:rgba(255,247,237,.9);color:#8a4b08}.task-activity-dot{width:.45rem;height:.45rem;border-radius:999px;background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.16);flex:0 0 auto}.task-activity-chip--stale .task-activity-dot{background:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.18)}.task-activity-main{font-weight:800;white-space:nowrap}.task-activity-detail{min-width:0;opacity:.72}.status-badge,.task-activity-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:5px 12px;border-radius:999px;color:#1e293b;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.35);font-size:12px;font-weight:700;letter-spacing:-.01em;max-width:220px}.status-dot{width:7px;height:7px;border-radius:999px;background:#22c55e;animation:pulse-dot 1.4s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.75)}}.chat-working-bar{height:2px;width:100%;background:linear-gradient(90deg,transparent,#6366f1 40%,#8b5cf6 60%,transparent);background-size:200% 100%;animation:shimmer-bar 1.6s linear infinite;opacity:0;transition:opacity .2s}.chat-working-bar.active{opacity:1}.messages{min-width:0;min-height:0;width:min(100%,940px);max-width:940px;margin:0 auto;padding:clamp(14px,2.4vw,30px) clamp(14px,3vw,34px) 18px;display:flex;flex-direction:column;gap:14px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.empty-state,.private-owner-empty{flex:1 1 auto;min-height:0;display:grid;place-items:center;align-content:center;grid-gap:10px;gap:10px;text-align:center;padding:20px;color:var(--muted)}.private-owner-orb{width:76px;height:76px;border-radius:28px;display:grid;place-items:center;color:white;font-weight:950;font-size:30px;background:linear-gradient(135deg,#3b82f6,#8b5cf6 52%,#d946ef);box-shadow:var(--shadow-pop)}.private-owner-empty p{margin:4px 0 0;color:var(--text);font-size:clamp(24px,3vw,34px);font-weight:900;letter-spacing:-.055em}.private-owner-empty span{max-width:520px;color:var(--muted);font-size:14px;line-height:1.55}.command-board-grid,.command-center-home,.command-hero-card,.command-metrics-grid,.command-primary-actions{display:none}.message{width:-moz-fit-content;width:fit-content;max-width:min(76%,660px);padding:13px 16px;border-radius:24px;border:1px solid rgba(100,116,166,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 12px 34px rgba(62,77,128,.12);overflow-wrap:anywhere}.message.user{align-self:flex-end;margin-left:auto;color:white;border-bottom-right-radius:8px;border-color:rgba(255,255,255,.22);background:linear-gradient(135deg,var(--purple),var(--pink));box-shadow:var(--shadow-pop)}.message.assistant{align-self:flex-start;margin-right:auto;color:var(--text);border-bottom-left-radius:8px;background:rgba(255,255,255,.7)}.message-role-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.message.user .message-role-row{display:none}.message-role{font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:rgba(42,55,91,.42)}.remember-message-button{border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.5);color:var(--muted);padding:5px 9px;font-size:11px;cursor:pointer}.markdown-body,.message-content,.message-content p{color:inherit;font-size:14px;line-height:1.58}.markdown-body p,.message-content p{margin:0 0 10px}.markdown-body p:last-child,.message-content p:last-child{margin-bottom:0}.markdown-body ol,.markdown-body ul{padding-left:20px}.execution-output,.markdown-body pre,.tool-code-block{max-width:100%;overflow:auto;border-radius:16px;padding:12px;background:rgba(23,33,63,.92);color:#eef4ff;border:1px solid rgba(255,255,255,.08)}.markdown-body code,.tool-expr{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.attachment-preview,.message-attachments{display:flex;flex-wrap:wrap;gap:10px}.attachment-file,.attachment-image,.attachment-preview-file,.attachment-preview-item{max-width:100%;border-radius:16px}.tool-spinner,.typing-indicator{opacity:.72}.input-form{width:min(940px,calc(100% - 28px));min-height:62px;margin:0 auto max(12px,env(safe-area-inset-bottom));padding:8px;display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;grid-gap:8px;gap:8px;border-radius:30px;border:1px solid rgba(100,116,166,.18);background:rgba(255,255,255,.78);box-shadow:0 18px 50px rgba(62,77,128,.16),inset 0 1px 0 rgba(255,255,255,.82);backdrop-filter:blur(20px) saturate(1.18);-webkit-backdrop-filter:blur(20px) saturate(1.18)}.attach-button{width:44px;height:44px;border-radius:18px;display:grid;place-items:center}.chat-input,.memory-kind-select,.workspace-field{width:100%;min-width:0;border:1px solid rgba(100,116,166,.18);border-radius:17px;background:rgba(255,255,255,.7);color:var(--text);-webkit-text-fill-color:var(--text);outline:none;padding:12px 14px}.chat-input{height:44px;min-height:44px;max-height:120px;resize:none;border:0;background:transparent;padding:10px 8px;line-height:24px;align-self:center}.workspace-field--multiline{min-height:92px;resize:vertical}.chat-input::placeholder,.workspace-field::placeholder{color:rgba(42,55,91,.48);-webkit-text-fill-color:rgba(42,55,91,.48)}.chat-input:focus,.workspace-field:focus{border-color:rgba(118,87,255,.42);box-shadow:0 0 0 4px rgba(118,87,255,.1)}.file-input-hidden,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.send-button,.workspace-create-button{min-height:44px;border:0;border-radius:19px;padding:0 18px;color:white;font-weight:900;background:linear-gradient(135deg,var(--purple),var(--pink));box-shadow:var(--shadow-pop)}.input-form .send-button[type=button]{color:var(--text);background:rgba(255,255,255,.64);box-shadow:none;border:1px solid var(--border)}.queue-button{padding:.45rem .85rem;border-radius:8px;font-size:.8rem;font-weight:500;border:1px solid rgba(100,100,120,.35);background:transparent;color:var(--text-muted,#888);cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.queue-button:hover:not(:disabled){background:rgba(100,100,120,.12);color:var(--text-secondary,#aaa)}.queue-button:disabled{opacity:.35;cursor:not-allowed}.chat-error-banner,.workspace-notice{margin:0;padding:10px 12px;border-radius:16px;background:rgba(239,68,68,.08);color:var(--danger);border:1px solid rgba(239,68,68,.18)}.chat-form,.chat-input-bar,.chat-input-outer,.input-bar-wrapper,[data-chat-input]{padding-bottom:max(12px,env(safe-area-inset-bottom))}.chat-messages,.messages-container,.messages-scroll{padding-bottom:max(80px,calc(60px + env(safe-area-inset-bottom)))}.chat-shimmer-bar{position:fixed;top:0;left:0;right:0;height:3px;z-index:9999;background:linear-gradient(90deg,transparent,#6366f1 40%,#a78bfa 60%,transparent);background-size:200% 100%;animation:shimmer-bar 1.4s ease-in-out infinite;pointer-events:none}@keyframes shimmer-bar{0%{background-position:-200% 0}to{background-position:200% 0}}.tool-running-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:rgba(99,102,241,.12);border:1px solid rgba(99,102,241,.25);border-radius:20px;font-size:.8rem;color:#a5b4fc;font-weight:500;letter-spacing:.01em}.tool-running-dot{width:7px;height:7px;border-radius:50%;background:#818cf8;animation:pulse-tool 1s ease-in-out infinite}@keyframes pulse-tool{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.message.assistant .message-content{transition:box-shadow .15s ease}.message.assistant .message-content:hover{box-shadow:0 4px 20px rgba(99,102,241,.12)}.followup-chips{display:flex;flex-wrap:wrap;gap:8px;padding:4px 16px 12px}.followup-chip{padding:6px 14px;border-radius:20px;border:1px solid rgba(99,102,241,.3);background:rgba(99,102,241,.08);color:#a5b4fc;font-size:.82rem;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease;white-space:nowrap}.followup-chip:hover{background:rgba(99,102,241,.18);border-color:rgba(99,102,241,.5)}.message-content pre{border-radius:8px;font-size:.82rem;line-height:1.5;overflow-x:auto;margin:8px 0}.ember-dot{width:8px;height:8px;border-radius:50%;background:radial-gradient(circle at 40% 40%,#fbbf24,#ef4444);box-shadow:0 0 6px rgba(251,191,36,.6);display:inline-block;animation:ember-pulse 2s ease-in-out infinite}@keyframes ember-pulse{0%,to{box-shadow:0 0 6px rgba(251,191,36,.6)}50%{box-shadow:0 0 12px rgba(251,191,36,.9),0 0 20px rgba(239,68,68,.4)}}body,html{background-color:#0a0a0a!important}