@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@300;400;500&display=swap";:root{--ink:#2c2c2e;--teal:#7c9beb;--teal-bg:#7c9beb0f;--gold:#e5a86e;--coral:#e07a5f;--bg:#1c1c1e;--surface:#2c2c2e;--surface-2:#363638;--border:#ffffff12;--border-2:#ffffff1f;--fg:#e5e5ea;--dim:#8e8e93;--green:#6bc98a;--red:#e5716a;--sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--mono:"JetBrains Mono", "SF Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow:hidden}body{font:13px/1.55 var(--sans);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;letter-spacing:-.01em}.app{height:100vh;display:flex}.rail{z-index:10;background:#232325;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;width:52px;padding:14px 0;display:flex}.rail .logo{opacity:.85;cursor:pointer;width:24px;height:24px;margin-bottom:12px}.rail button{color:#ffffff59;cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:all .15s;display:flex}.rail button:hover{color:#ffffffa6;background:#ffffff0f}.rail button.on{color:var(--teal);background:#7c9beb1a}.rail .spacer{flex:1}.rail .avatar{background:var(--teal);color:#fff;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:10px;font-weight:500;display:flex}.view{flex:1;min-width:0;height:100vh;display:none;overflow:hidden}.view.active{display:flex}.side{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:240px;transition:width .2s,opacity .2s;display:flex;overflow:hidden}.side.collapsed{opacity:0;pointer-events:none;border-right:none;width:0}.side-head{border-bottom:1px solid var(--border);padding:16px 14px 12px}.side-head small{text-transform:uppercase;letter-spacing:1.2px;color:var(--dim);font-size:9px}.side-head h2{margin-top:2px;font-size:14px;font-weight:500}.label{text-transform:uppercase;letter-spacing:1px;color:var(--dim);padding:12px 14px 6px;font-size:10px}.tasks-list{flex:1;overflow-y:auto}.task{cursor:pointer;border-left:2px solid #0000;align-items:center;gap:8px;padding:7px 14px;transition:background .1s;display:flex}.task:hover{background:#ffffff08}.task.on{background:var(--teal-bg);border-left-color:var(--teal)}.dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.dot.running{background:var(--teal)}.dot.draft{background:var(--gold)}.dot.complete{background:var(--green)}.dot.failed{background:var(--red)}.dot.paused{background:var(--dim)}.task span{white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;overflow:hidden}.task small{color:var(--dim);font-size:10px}.title-edit-input{font:12px var(--sans);color:var(--fg);border:1px solid var(--teal);background:#ffffff0f;border-radius:4px;outline:none;flex:1;min-width:0;padding:2px 6px}.new-btn{border:1px dashed var(--border-2);color:var(--dim);font:11px var(--sans);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:4px;margin:10px 14px;padding:7px 0;transition:all .15s;display:flex}.new-btn:hover{border-color:var(--teal);color:var(--teal)}.new-btn i{font-size:14px}.chat-center{flex-direction:column;flex:1;min-width:0;display:flex}.pipeline-bar{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;align-items:center;gap:0;padding:10px 20px;display:flex}.pb-stage{color:var(--dim);cursor:pointer;align-items:center;gap:4px;padding:2px 0;font-size:10px;transition:color .15s;display:flex}.pb-stage:hover{color:var(--fg)}.pb-dot{border:1.5px solid var(--border-2);border-radius:50%;flex-shrink:0;width:8px;height:8px}.pb-stage.complete .pb-dot{background:var(--green);border-color:var(--green)}.pb-stage.running .pb-dot{background:var(--teal);border-color:var(--teal);animation:1.5s infinite pulse}.pb-stage.failed .pb-dot{background:var(--red);border-color:var(--red)}.pb-stage.skipped .pb-dot{background:var(--dim);border-color:var(--dim)}.pb-stage.running{color:var(--teal)}.pb-stage.complete{color:var(--green)}.pb-stage.failed{color:var(--red)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pb-line{background:var(--border-2);flex-shrink:0;width:16px;height:1px;margin:0 2px}.pb-line.complete{background:var(--green)}.pb-line.running{background:linear-gradient(90deg, var(--green), var(--teal))}.pb-info{color:var(--dim);align-items:center;gap:6px;margin-left:auto;font-size:10px;display:flex}.pb-info .pb-badge{color:var(--teal);text-transform:uppercase;letter-spacing:.3px;background:#7c9beb1a;border-radius:8px;padding:1px 6px;font-size:9px;font-weight:500}.topbar{border-bottom:1px solid var(--border);color:var(--dim);flex-shrink:0;align-items:center;gap:6px;padding:10px 20px;font-size:12px;display:flex}.topbar b{color:var(--fg);font-weight:500}.topbar .toggle-btn{color:var(--dim);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:2px 4px;font-size:15px;transition:color .1s,background .1s;display:flex}.topbar .toggle-btn:hover{color:var(--fg);background:#ffffff0f}.topbar .spacer{flex:1}.topbar-title-input{font:500 12px var(--sans);color:var(--fg);border:1px solid var(--teal);background:#ffffff0f;border-radius:4px;outline:none;min-width:120px;max-width:300px;padding:2px 8px}.messages{flex-direction:column;flex:1;align-items:center;padding:20px 24px;display:flex;overflow-y:auto}.messages-empty{color:var(--dim);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.messages-empty .logo-big{opacity:.3;width:48px;height:48px}.messages-empty h3{color:var(--fg);font-size:16px;font-weight:500}.messages-empty p{text-align:center;max-width:320px;font-size:12px;line-height:1.6}.msg{width:100%;max-width:720px;margin-bottom:14px}.msg.user{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.msg .bubble{padding:10px 14px;font-size:13px;line-height:1.6}.msg.user .bubble{background:#0a1e3259;border:1px solid #7c9beb1f;border-radius:10px;display:inline-block}.msg.assistant .bubble{background:0 0;border:none;padding:10px 0}.msg .bubble p{margin-bottom:8px}.msg .bubble p:last-child{margin-bottom:0}.msg .bubble code{font-family:var(--mono);background:#ffffff0f;border-radius:3px;padding:1px 4px;font-size:11px}.msg .bubble pre{background:var(--bg);border:1px solid var(--border);font-family:var(--mono);border-radius:6px;margin:8px 0;padding:10px 12px;font-size:11px;line-height:1.5;overflow-x:auto}.msg .bubble strong{font-weight:600}.msg .bubble ul,.msg .bubble ol{margin:6px 0;padding-left:18px}.msg .bubble li{margin-bottom:3px}.msg .bubble h1{margin:16px 0 8px;font-size:18px;font-weight:700}.msg .bubble h2{margin:14px 0 6px;font-size:16px;font-weight:700}.msg .bubble h3{color:var(--teal);margin:12px 0 4px;font-size:14px;font-weight:600}.msg .bubble h4{text-transform:uppercase;letter-spacing:.3px;color:var(--dim);margin:10px 0 4px;font-size:12px;font-weight:600}.msg .bubble h1:first-child,.msg .bubble h2:first-child,.msg .bubble h3:first-child{margin-top:0}.msg .bubble blockquote{border-left:3px solid var(--teal);color:var(--dim);background:#ffffff08;border-radius:0 4px 4px 0;margin:8px 0;padding:4px 12px}.msg .bubble hr{border:none;border-top:1px solid var(--border);margin:12px 0}.msg .bubble table{border-collapse:collapse;width:100%;margin:8px 0;font-size:12px}.msg .bubble th,.msg .bubble td{border:1px solid var(--border);text-align:left;padding:4px 8px}.msg .bubble th{background:#ffffff0d;font-weight:600}.msg .bubble a{color:var(--teal);text-decoration:none}.msg .bubble a:hover{text-decoration:underline}.bubble-images{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.bubble-img{object-fit:cover;cursor:pointer;border-radius:8px;max-width:220px;max-height:180px;transition:opacity .15s}.bubble-img:hover{opacity:.85}.msg.user .bubble-images{justify-content:flex-end}.lightbox-overlay{z-index:9999;cursor:zoom-out;background:#000000d9;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.lightbox-img{object-fit:contain;border-radius:8px;max-width:90vw;max-height:90vh;box-shadow:0 8px 32px #00000080}.lightbox-close{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:background .15s;display:flex;position:absolute;top:16px;right:16px}.lightbox-close:hover{background:#fff3}.think{color:var(--dim);align-items:center;gap:8px;font-size:12px;display:flex}.spin{border:1.5px solid #7c9beb33;border-top-color:var(--teal);border-radius:50%;width:12px;height:12px;animation:.7s linear infinite sp}@keyframes sp{to{transform:rotate(360deg)}}.response-complete{border-top:1px solid var(--border);color:var(--teal);align-items:center;gap:6px;margin-top:10px;padding-top:8px;font-size:11px;animation:.4s rcFadeIn;display:flex}.response-complete i{font-size:14px}@keyframes rcFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.input-wrap{flex-shrink:0;width:100%;max-width:720px;margin:0 auto;padding:0 24px 16px}.staged-files{flex-wrap:wrap;gap:8px;padding:8px 4px 4px;display:flex}.staged-file{background:var(--surface);border:1px solid var(--border);color:var(--dim);border-radius:8px;align-items:center;gap:6px;max-width:180px;padding:4px 8px 4px 4px;font-size:12px;display:flex;position:relative}.staged-thumb{object-fit:cover;border-radius:6px;width:40px;height:40px}.staged-icon{width:40px;height:40px;color:var(--accent);background:#7c9beb1a;border-radius:6px;justify-content:center;align-items:center;font-size:18px;display:flex}.staged-name{text-overflow:ellipsis;white-space:nowrap;max-width:100px;overflow:hidden}.staged-remove{background:var(--surface-hi);border:1px solid var(--border);width:18px;height:18px;color:var(--dim);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:10px;transition:color .1s,background .1s;display:flex;position:absolute;top:-6px;right:-6px}.staged-remove:hover{color:#ff6b6b;background:#ff6b6b1a}.input-box{background:var(--surface);border:1px solid var(--border);z-index:0;border-radius:10px;flex-direction:column;gap:6px;padding:10px 14px;transition:border-color .15s;display:flex;position:relative}.input-box:focus-within{border-color:#7c9beb40}.input-box.sending{border-color:#0000}.input-box.sending:before{content:"";background:conic-gradient(from var(--rainbow-angle,0deg), #ff6b6b, #ffa94d, #ffd43b, #69db7c, #38d9a9, #4dabf7, #7c9beb, #da77f2, #ff6b6b);z-index:-1;opacity:.7;border-radius:12px;animation:2.5s linear infinite rainbowSpin;position:absolute;inset:-2px}.input-box.sending:after{content:"";background:var(--surface);z-index:-1;border-radius:10px;position:absolute;inset:0}@keyframes rainbowSpin{to{--rainbow-angle:360deg}}@property --rainbow-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.input-box textarea{width:100%;color:var(--fg);font:13px var(--sans);resize:none;background:0 0;border:none;outline:none;min-height:20px;max-height:120px;line-height:1.5}.input-box textarea::placeholder{color:var(--dim)}.input-row{justify-content:space-between;align-items:center;display:flex}.input-row .tools{gap:2px;display:flex}.input-row .tools button{color:var(--dim);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:2px 5px;font-size:15px;transition:color .1s;display:flex}.input-row .tools button:hover{color:var(--fg)}.send-btn{background:var(--teal);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;transition:opacity .15s;display:flex}.send-btn:hover{opacity:.85}.send-btn:disabled{opacity:.4;cursor:not-allowed}.right{background:var(--surface);border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;width:280px;transition:width .2s,opacity .2s;display:flex;overflow-y:auto}.right.collapsed{opacity:0;pointer-events:none;border-left:none;width:0}.section{border-bottom:1px solid var(--border)}.section-head{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:10px 14px;transition:background .1s;display:flex}.section-head:hover{background:#ffffff05}.section-head .sec-icon{color:var(--dim);font-size:14px}.section-head .sec-title{text-transform:uppercase;letter-spacing:1px;color:var(--dim);flex:1;font-size:10px;font-weight:500}.section-head .sec-badge{color:var(--teal);background:#7c9beb1a;border-radius:6px;padding:1px 5px;font-size:9px}.section-head .chevron{color:var(--dim);font-size:12px;transition:transform .15s}.section.collapsed .section-body{display:none}.section.collapsed .chevron{transform:rotate(-90deg)}.section-body{padding:0 14px 12px}.pt-row{align-items:center;gap:8px;padding:6px 0;display:flex}.pt-avatar{background:var(--ink);width:32px;height:32px;color:var(--teal);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.pt-name{font-size:13px;font-weight:500}.pt-id{color:var(--dim);font-size:10px}.pt-field{margin-top:6px}.pt-label{text-transform:uppercase;letter-spacing:.5px;color:var(--dim);font-size:9px}.pt-value{margin-top:1px;font-size:12px}.chip-row{flex-wrap:wrap;gap:3px;margin-top:3px;display:flex}.chip{color:var(--teal);background:#7c9beb14;border:1px solid #7c9beb26;border-radius:3px;padding:1px 6px;font-size:10px;display:inline-block}.stage-row{align-items:center;gap:6px;padding:3px 0;font-size:11px;display:flex}.stage-dot{border:1.5px solid var(--border-2);border-radius:50%;flex-shrink:0;width:6px;height:6px}.stage-row.complete .stage-dot{background:var(--green);border-color:var(--green)}.stage-row.running .stage-dot{background:var(--teal);border-color:var(--teal);animation:1.5s infinite pulse}.stage-row.failed .stage-dot{background:var(--red);border-color:var(--red)}.stage-row.skipped .stage-dot{background:var(--dim);border-color:var(--dim)}.stage-row .s-name{flex:1}.stage-row.complete .s-name{color:var(--green)}.stage-row.running .s-name{color:var(--teal)}.stage-row.failed .s-name{color:var(--red)}.stage-row .s-time{color:var(--dim);font-size:10px}.stat-grid{grid-template-columns:1fr 1fr;gap:6px;margin-top:8px;display:grid}.stat-box{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:6px 8px}.stat-box .sl{text-transform:uppercase;letter-spacing:.3px;color:var(--dim);font-size:9px}.stat-box .sv{margin-top:1px;font-size:13px;font-weight:500}.stat-box .sv.teal{color:var(--teal)}.stat-box .sv.green{color:var(--green)}.stat-box .sv.gold{color:var(--gold)}.todo{align-items:flex-start;gap:6px;padding:3px 0;display:flex}.cb{border:1.5px solid var(--dim);border-radius:3px;flex-shrink:0;width:13px;height:13px;margin-top:2px;position:relative}.cb.done{background:var(--teal);border-color:var(--teal)}.cb.done:after{content:"✓";color:#fff;font-size:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.todo-t{font-size:11px;line-height:1.4}.todo-t.x{color:var(--dim);text-decoration:line-through}.file-row{align-items:center;gap:6px;padding:3px 0;font-size:11px;display:flex}.file-row .fn{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.file-row .fs{color:var(--dim);font-size:10px}.empty-hint{color:var(--dim);text-align:center;padding:4px 0;font-size:11px}.library-view{flex-direction:column}.lib-header{padding:20px 28px 0}.lib-header small{text-transform:uppercase;letter-spacing:1.2px;color:var(--dim);font-size:9px}.lib-header h1{margin-top:2px;font-size:16px;font-weight:500}.lib-tabs{border-bottom:1px solid var(--border);gap:0;padding:12px 28px 0;display:flex}.lib-tab{color:var(--dim);font:12px var(--sans);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:5px;padding:8px 16px;transition:all .15s;display:flex}.lib-tab:hover{color:var(--fg)}.lib-tab.on{color:var(--teal);border-bottom-color:var(--teal)}.lib-search{background:var(--surface);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;margin:16px 28px 8px;padding:8px 12px;display:flex}.lib-search input{color:var(--fg);font:12px var(--sans);background:0 0;border:none;outline:none;flex:1}.lib-search input::placeholder{color:var(--dim)}.lib-scroll{flex:1;padding:8px 28px 24px;overflow-y:auto}.card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-bottom:20px;display:grid}.cat-head{align-items:center;gap:6px;padding:12px 0 6px;font-size:11px;font-weight:500;display:flex}.cat-head .cnt{color:var(--dim);background:var(--surface);border-radius:3px;padding:0 5px;font-size:10px}.lib-card{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:14px;transition:border-color .15s,background .15s}.lib-card:hover{border-color:var(--border-2);background:var(--surface-2)}.lc-head{align-items:center;gap:7px;margin-bottom:6px;display:flex}.lc-icon{border-radius:5px;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;display:flex}.lc-icon.db{color:var(--gold);background:#f0c3821a}.lc-icon.fn{color:var(--teal);background:#7c9beb1a}.lc-icon.tp{color:var(--green);background:#6bc98a1a}.lc-name{flex:1;font-size:12px;font-weight:500}.lc-desc{color:var(--dim);margin-bottom:8px;font-size:10px;line-height:1.5}.lc-tag{color:var(--dim);background:#ffffff0a;border-radius:3px;padding:0 5px;font-size:9px;display:inline-block}.tpl-detail{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:20px}.tpl-detail h3{align-items:center;gap:6px;margin-bottom:8px;font-size:14px;font-weight:500;display:flex}.tpl-desc{color:var(--dim);margin-bottom:12px;font-size:12px;line-height:1.6}.tpl-stages{list-style:none}.tpl-stages li{padding-left:10px;font-size:11px;line-height:1.8;position:relative}.tpl-stages li:before{content:"→";color:var(--dim);position:absolute;left:0}.tpl-use{background:var(--teal);color:#fff;font:12px var(--sans);cursor:pointer;border:none;border-radius:6px;margin-top:12px;padding:7px 16px;transition:opacity .15s}.tpl-use:hover{opacity:.85}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:#ffffff0d;border-radius:2px}.auth-gate{background:var(--bg);justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.auth-loading{color:var(--dim);align-items:center;gap:10px;font-size:13px;display:flex}.auth-card{text-align:center;background:var(--surface);border:1px solid var(--border-2);border-radius:16px;max-width:400px;padding:48px 40px;box-shadow:0 24px 64px #0006}.auth-card h1{font:600 24px var(--sans);color:var(--fg);margin:16px 0 4px}.auth-subtitle{color:var(--dim);margin-bottom:28px;font-size:12px}.auth-google-btn{font:500 14px var(--sans);color:#333;cursor:pointer;background:#fff;border:none;border-radius:8px;align-items:center;gap:10px;padding:10px 24px;transition:box-shadow .15s;display:inline-flex}.auth-google-btn:hover{box-shadow:0 2px 12px #00000040}.auth-error{color:var(--red);margin-top:12px;font-size:11px}.auth-disclaimer{color:var(--dim);letter-spacing:.02em;text-transform:uppercase;margin-top:20px;font-size:10px}.auth-divider{align-items:center;gap:12px;width:100%;margin:16px 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-2);flex:1;height:1px}.auth-divider span{font:400 11px var(--sans);color:var(--dim);text-transform:uppercase}.auth-email-toggle{border:1px solid var(--border-2);font:500 13px var(--sans);color:var(--fg);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 24px;transition:all .15s;display:flex}.auth-email-toggle:hover{border-color:var(--teal);color:var(--teal)}.auth-email-form{flex-direction:column;gap:10px;width:100%;display:flex}.auth-input{background:var(--surface);border:1px solid var(--border-2);width:100%;font:400 13px var(--sans);color:var(--fg);box-sizing:border-box;border-radius:8px;outline:none;padding:10px 14px;transition:border-color .15s}.auth-input:focus{border-color:var(--teal)}.auth-input::placeholder{color:var(--dim)}.auth-email-submit{background:var(--teal);font:500 13px var(--sans);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 24px;transition:opacity .15s}.auth-email-submit:hover{opacity:.9}.auth-email-submit:disabled{opacity:.4;cursor:not-allowed}.tool-running{flex-direction:column;gap:6px;display:flex}.tool-running .spin{width:14px;height:14px}.tool-name{font:500 12px var(--sans);color:var(--teal);align-items:center;gap:6px;display:flex}.tool-progress{color:var(--dim);white-space:pre-line;font-size:11px;line-height:1.6}.tool-progress p{margin:2px 0}.segment-tool{border:1px solid var(--border);font:500 11px var(--sans);color:var(--dim);background:#ffffff08;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;padding:6px 12px;animation:.25s segFadeIn;display:flex}@keyframes segFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.segment-tool .spin{flex-shrink:0;width:12px;height:12px}.segment-tool i{flex-shrink:0;font-size:14px}.segment-tool.running{border-color:#7c9beb33}.segment-tool.running .segment-tool-name{color:var(--teal)}.segment-tool.running .segment-tool-status{color:var(--dim)}.segment-tool.complete{border-color:#69db7c33}.segment-tool.complete i,.segment-tool.complete .segment-tool-name{color:#69db7c}.segment-tool.complete .segment-tool-status{color:#69db7c99}.segment-tool.failed{border-color:#ff6b6b33}.segment-tool.failed i,.segment-tool.failed .segment-tool-name{color:#ff6b6b}.segment-tool.failed .segment-tool-status{color:#ff6b6b99}.segment-tool-name{flex:1}.segment-tool-status{font-size:10px;font-weight:400}.segment-tool-error{color:#ff6b6b;word-break:break-word;background:#ff6b6b14;border-left:2px solid #ff6b6b;border-radius:4px;width:100%;margin-top:4px;padding:6px 8px;font:400 11px/1.4 SF Mono,Fira Code,monospace}.trace-block{border:1px solid var(--border);background:#ffffff05;border-radius:8px;margin-bottom:10px;overflow:hidden}.trace-block summary{cursor:pointer;font:500 11px var(--sans);color:var(--dim);-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:6px 12px;transition:color .15s;display:flex}.trace-block summary:hover{color:var(--teal)}.trace-block summary i{color:var(--teal);font-size:13px}.trace-block[open] summary{border-bottom:1px solid var(--border);color:var(--fg)}.trace-content{color:var(--dim);max-height:300px;padding:8px 12px;font-size:11px;line-height:1.6;overflow-y:auto}.trace-content p{margin:2px 0}.trace-content strong{color:var(--fg);font-weight:600}.approval-card{background:#7c9beb14;border:1px solid #7c9beb33;border-radius:10px;padding:14px 16px}.approval-header{font:500 12px var(--sans);color:var(--gold);align-items:center;gap:6px;margin-bottom:8px;display:flex}.approval-header i{font-size:16px}.approval-desc{color:var(--fg);margin-bottom:12px;font-size:12px;line-height:1.5}.approval-actions{gap:8px;display:flex}.approve-btn,.reject-btn{font:500 11px var(--sans);cursor:pointer;border:none;border-radius:6px;align-items:center;gap:4px;padding:6px 14px;transition:opacity .15s;display:flex}.approve-btn{background:var(--green);color:#1c1c1e}.reject-btn{background:var(--surface-2);color:var(--dim);border:1px solid var(--border-2)}.approve-btn:hover,.reject-btn:hover{opacity:.85}.approve-btn:disabled,.reject-btn:disabled{opacity:.4;cursor:not-allowed}.toggle-btn.active{color:var(--gold)!important;background:#e5a86e1f!important}.chat-center.drag-over{position:relative}.drag-overlay{z-index:100;border:2px dashed var(--teal);color:var(--teal);font:500 16px var(--sans);pointer-events:none;background:#1c1c1eeb;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.error-boundary{background:var(--bg);width:100vw;height:100vh;color:var(--fg);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}.error-boundary h1{font:600 20px var(--sans);color:var(--red);margin-bottom:12px}.error-boundary p{color:var(--dim);max-width:500px;margin-bottom:20px;font-size:13px}.error-boundary pre{background:var(--surface);border:1px solid var(--border);font:12px var(--mono);color:var(--red);text-align:left;white-space:pre-wrap;border-radius:8px;max-width:600px;padding:16px;overflow:auto}.error-boundary button{background:var(--teal);color:#fff;font:500 13px var(--sans);cursor:pointer;border:none;border-radius:6px;margin-top:16px;padding:8px 20px}.results-view{background:var(--bg);flex-direction:column;flex:1;display:flex;overflow:hidden}.results-tabs{border-bottom:1px solid var(--border);background:#232325;gap:2px;padding:8px 16px;display:flex}.results-tab{color:var(--dim);font:500 12px var(--sans);cursor:pointer;background:0 0;border:none;border-radius:8px 8px 0 0;align-items:center;gap:6px;padding:8px 16px;transition:all .15s;display:flex}.results-tab:hover{color:var(--fg);background:#ffffff0a}.results-tab.active{color:var(--teal);background:var(--bg);border-bottom:2px solid var(--teal)}.results-content{flex:1;padding:20px;overflow-y:auto}.results-empty{height:100%;color:var(--dim);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.results-empty h3{font:600 18px var(--sans);color:var(--fg)}.results-empty p{text-align:center;max-width:400px;font-size:13px}.results-empty-section{text-align:center;color:var(--dim);padding:32px;font-size:13px}.results-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.results-header h3{font:600 15px var(--sans);color:var(--fg);align-items:center;gap:8px;display:flex}.results-count{font:500 12px var(--sans);color:var(--dim);background:var(--surface);border-radius:12px;padding:4px 10px}.results-table-wrap{animation:.2s fadeIn}.results-table{border-collapse:collapse;width:100%;font-size:12px}.results-table th{text-align:left;font:500 11px var(--sans);color:var(--dim);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-2);cursor:pointer;-webkit-user-select:none;user-select:none;padding:8px 12px}.results-table th:hover{color:var(--teal)}.results-table td{border-bottom:1px solid var(--border);color:var(--fg);padding:8px 12px}.results-table tbody tr:hover{background:#ffffff05}.gene-cell{color:var(--teal);font-weight:600}.results-table code{font:400 11px var(--mono);background:var(--surface);border-radius:4px;padding:2px 6px}.type-chip{background:var(--surface-2);text-transform:capitalize;border-radius:10px;padding:2px 8px;font-size:10px}.type-chip.missense{color:var(--gold);background:#e5a86e1f}.type-chip.nonsense{color:var(--red);background:#e5716a1f}.type-chip.frameshift{color:var(--coral);background:#e07a5f1f}.binding-chart{background:var(--surface);border-radius:10px;margin-bottom:20px;padding:16px}.chart-title{font:500 12px var(--sans);color:var(--dim);margin-bottom:12px}.bar-chart{flex-direction:column;gap:6px;display:flex}.bar-row{align-items:center;gap:8px;display:flex}.bar-label{width:120px;font:400 11px var(--mono);color:var(--fg);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-track{background:var(--surface-2);border-radius:4px;flex:1;height:16px;overflow:hidden}.bar-fill{border-radius:4px;height:100%;transition:width .3s}.bar-fill.strong{background:var(--green)}.bar-fill.moderate{background:var(--gold)}.bar-fill.weak{background:var(--red)}.bar-value{text-align:right;width:60px;font:400 11px var(--mono);color:var(--dim)}.strength-badge{border-radius:10px;padding:2px 8px;font-size:10px;font-weight:500}.strength-badge.strong{color:var(--green);background:#6bc98a1f}.strength-badge.moderate{color:var(--gold);background:#e5a86e1f}.strength-badge.weak{color:var(--red);background:#e5716a1f}.candidate-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.candidate-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;gap:12px;padding:14px;transition:border-color .15s;display:flex}.candidate-card:hover{border-color:var(--border-2)}.candidate-card.top-3{border-color:var(--gold)}.candidate-rank{font:700 20px var(--sans);color:var(--dim);min-width:32px}.candidate-card.top-3 .candidate-rank{color:var(--gold)}.candidate-gene{font:600 14px var(--sans);color:var(--teal)}.candidate-peptide{font:400 11px var(--mono);background:var(--surface-2);border-radius:4px;margin:6px 0;padding:4px 8px;display:inline-block}.candidate-stats{color:var(--dim);gap:12px;font-size:11px;display:flex}.mrna-diagram{border-radius:8px;margin-bottom:20px;display:flex;overflow:hidden}.mrna-segment{flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:12px 16px;display:flex}.mrna-segment.utr5{background:#7c9beb26;flex:1}.mrna-segment.cds{background:#6bc98a26;flex:4}.mrna-segment.utr3{background:#e5a86e26;flex:1}.mrna-segment.polya{background:#e5716a26;flex:.5}.mrna-label{font:500 11px var(--sans);color:var(--fg)}.mrna-len{font:400 10px var(--mono);color:var(--dim)}.mrna-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;display:grid}.stat-item{background:var(--surface);text-align:center;border-radius:8px;padding:12px}.stat-item .stat-label{font:400 11px var(--sans);color:var(--dim);margin-bottom:4px}.stat-item .stat-value{font:600 16px var(--sans);color:var(--fg)}.mrna-sequence{background:var(--surface);border:1px solid var(--border);border-radius:8px}.seq-header{border-bottom:1px solid var(--border);font:500 12px var(--sans);color:var(--dim);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.seq-copy{background:var(--surface-2);font:400 11px var(--sans);color:var(--teal);cursor:pointer;border:none;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;display:flex}.seq-copy:hover{background:#7c9beb1f}.seq-display{font:400 11px var(--mono);color:var(--fg);word-break:break-all;white-space:pre-wrap;max-height:300px;padding:14px;line-height:1.6;overflow:auto}.export-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.export-card{background:var(--surface);border:1px solid var(--border);cursor:pointer;text-align:center;border-radius:10px;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;transition:all .15s;display:flex}.export-card:hover{border-color:var(--teal);background:#7c9beb0a}.export-card:disabled{opacity:.3;cursor:not-allowed}.export-card:disabled:hover{border-color:var(--border);background:var(--surface)}.export-card i{color:var(--teal);font-size:28px}.export-title{font:600 13px var(--sans);color:var(--fg)}.export-desc{color:var(--dim);font-size:11px}.branch-indicator{border-bottom:1px solid var(--border);font:500 11px var(--sans);color:var(--teal);background:#7c9beb14;align-items:center;gap:6px;padding:8px 14px;display:flex}.stage-row{cursor:default}.stage-row .s-expand{color:var(--dim);margin-left:auto;font-size:10px}.stage-detail{border-left:2px solid var(--border);margin-left:10px;padding:6px 14px 10px 28px}.stage-summary{font:400 11px var(--sans);color:var(--dim);margin-bottom:6px}.stage-error{font:400 11px var(--sans);color:var(--red);align-items:center;gap:4px;margin-bottom:6px;display:flex}.stage-error-detail{background:#ff6b6b0f;border:1px solid #ff6b6b26;border-radius:6px;margin-bottom:8px;padding:8px 10px}.stage-error-detail .error-header{font:500 11px var(--sans);color:#ff6b6b;align-items:center;gap:6px;margin-bottom:6px;display:flex}.stage-error-detail .error-header i{font-size:14px}.stage-error-detail .error-meta{font:400 10px var(--sans);color:var(--dim);align-items:center;gap:6px;margin-bottom:3px;display:flex}.stage-error-detail .error-label{color:var(--dim);min-width:56px}.stage-error-detail .error-meta code{color:#ff6b6b;background:#ff6b6b14;border-radius:3px;padding:1px 4px;font:400 10px SF Mono,Fira Code,monospace}.stage-error-detail .error-stack{margin-top:6px}.stage-error-detail .error-stack summary{font:400 10px var(--sans);color:var(--dim);cursor:pointer;-webkit-user-select:none;user-select:none}.stage-error-detail .error-stack summary:hover{color:var(--fg)}.stage-error-detail .error-stack pre{color:var(--dim);white-space:pre-wrap;word-break:break-all;background:#0003;border-radius:4px;max-height:200px;margin-top:4px;padding:6px 8px;font:400 9px SF Mono,Fira Code,monospace;overflow-y:auto}.branch-btn{border:1px solid var(--teal);color:var(--teal);font:500 10px var(--sans);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;transition:all .15s;display:flex}.branch-btn:hover{background:#7c9beb14}.view-results-btn{background:var(--surface-2);border:1px solid var(--border-2);width:100%;color:var(--teal);font:500 11px var(--sans);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:6px;margin-top:10px;padding:6px 12px;transition:all .15s;display:flex}.view-results-btn:hover{background:#7c9beb14}.branch-children{border-left:2px solid var(--border);margin-left:18px;padding-left:0}.task.indent{padding-left:12px;font-size:12px}.task .branch-icon{color:var(--teal);margin-right:-2px;font-size:11px}.patients-view{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.pv-header{border-bottom:1px solid var(--border);padding:24px 32px 16px}.pv-header small{text-transform:uppercase;letter-spacing:1px;color:var(--dim);font-size:10px;font-weight:500}.pv-header h1{color:var(--fg);margin-top:4px;font-size:20px;font-weight:600}.pv-scroll{flex:1;padding:20px 32px;overflow-y:auto}.pv-loading,.pv-empty{color:var(--dim);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 0;font-size:13px;display:flex}.pv-patient{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin-bottom:10px;transition:border-color .15s;overflow:hidden}.pv-patient:hover{border-color:#7c9beb33}.pv-patient.expanded{border-color:#7c9beb40}.pv-patient-header{cursor:pointer;align-items:center;gap:12px;padding:14px 16px;display:flex}.pv-avatar{width:36px;height:36px;color:var(--teal);background:linear-gradient(135deg,#7c9beb33,#2dd4bf26);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.pv-info{flex:1;min-width:0}.pv-name{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.pv-meta{color:var(--dim);align-items:center;gap:8px;margin-top:2px;font-size:11px;display:flex}.pv-status{text-transform:capitalize;font-weight:500}.pv-time{color:var(--dim)}.pv-delete-btn{color:var(--dim);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:14px;transition:all .15s}.pv-patient-header:hover .pv-delete-btn{opacity:1}.pv-delete-btn:hover{color:var(--red,#ef4444);background:#ef44441a}.pv-chevron{color:var(--dim);font-size:14px}.pv-details{padding:0 16px 10px}.pv-detail-row{align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.pv-label{text-transform:uppercase;letter-spacing:.5px;color:var(--dim);min-width:65px;padding-top:3px;font-size:10px;font-weight:500}.pv-chips{flex-wrap:wrap;gap:4px;display:flex}.pv-chip{font-size:10px;font-family:var(--mono);color:var(--teal);background:#7c9beb14;border:1px solid #7c9beb1f;border-radius:4px;padding:2px 8px}.pv-chip.diagnosis{color:var(--red);font-family:var(--sans);background:#ef444414;border-color:#ef44441f}.pv-cases{border-top:1px solid var(--border);padding:8px}.pv-case-loading{color:var(--dim);text-align:center;padding:12px 8px;font-size:12px}.pv-case{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:10px 12px;transition:background .1s;display:flex}.pv-case:hover{background:#ffffff08}.pv-case-status{flex-shrink:0}.pv-dot{border-radius:50%;width:8px;height:8px;display:block}.pv-case-info{flex:1;min-width:0}.pv-case-name{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.pv-case-meta{align-items:center;gap:8px;margin-top:2px;font-size:10px;display:flex}.pv-arrow{color:var(--dim);font-size:12px}.pv-detail-panel{border-top:1px solid var(--border);padding:16px}.pv-info-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.pv-info-item{color:var(--fg);align-items:center;gap:8px;font-size:12px;display:flex}.pv-info-item i{color:var(--dim);flex-shrink:0;font-size:14px}.pv-id-mono{font-family:var(--mono);color:var(--dim);word-break:break-all;font-size:10px}.pv-section{margin-bottom:14px}.pv-section-label{text-transform:uppercase;letter-spacing:.5px;color:var(--dim);align-items:center;gap:6px;margin-bottom:6px;font-size:10px;font-weight:600;display:flex}.pv-file-count{color:var(--teal);background:#7c9beb1f;border-radius:10px;padding:1px 6px;font-size:9px;font-weight:600}.pv-notes{color:var(--fg);border:1px solid var(--border);background:#ffffff05;border-radius:6px;margin:0;padding:8px 10px;font-size:12px;line-height:1.5}.pv-empty-hint{color:var(--dim);padding:8px 0;font-size:11px}.pv-files-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;display:grid}.pv-file-card{border:1px solid var(--border);cursor:pointer;background:#ffffff05;border-radius:8px;transition:border-color .15s,transform .15s;overflow:hidden}.pv-file-card:hover{border-color:var(--teal);transform:translateY(-1px)}.pv-file-thumb{object-fit:cover;width:100%;height:80px;display:block}.pv-file-icon{justify-content:center;align-items:center;height:80px;display:flex}.pv-file-icon i{color:var(--dim);font-size:28px}.pv-file-info{border-top:1px solid var(--border);padding:6px 8px}.pv-file-name{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;font-size:10px;display:block;overflow:hidden}.pv-file-size{color:var(--dim);margin-top:1px;font-size:9px;display:block}.pv-case:hover .pv-arrow{color:var(--teal)}.rail-free-badge{font:600 8px var(--sans);color:var(--gold);letter-spacing:.02em;white-space:nowrap;background:#e5a86e1a;border-radius:6px;margin-bottom:8px;padding:3px 6px}.rail-fund-btn{color:#ffffff59;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:8px;font-size:18px;text-decoration:none;transition:all .15s;display:flex}.rail-fund-btn:hover{color:var(--gold);background:#e5a86e1a}.wizard-gate{background:var(--bg);justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;overflow:hidden}.wizard-container{text-align:center;width:100%;max-width:480px;max-height:100vh;padding:48px 40px;overflow-y:auto}.wizard-progress{justify-content:center;gap:8px;margin-bottom:40px;display:flex}.wizard-dot{background:var(--border-2);border-radius:50%;width:8px;height:8px;transition:all .3s}.wizard-dot.active{background:var(--teal);transform:scale(1.2);box-shadow:0 0 8px #7c9beb66}.wizard-dot.done{background:var(--green)}.wizard-step{animation:.4s wizardFade}.wizard-upload-step{flex-direction:column;min-height:0;display:flex}@keyframes wizardFade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.4s wizardFade}.wizard-step h1{font:600 28px var(--sans);color:var(--fg);letter-spacing:-.02em;margin:20px 0 8px}.wizard-subtitle{color:var(--dim);margin-bottom:28px;font-size:14px;line-height:1.5}.wizard-name-input{background:var(--surface);border:2px solid var(--border-2);width:100%;font:500 20px var(--sans);color:var(--fg);text-align:center;letter-spacing:-.01em;border-radius:14px;outline:none;padding:16px 20px;transition:border-color .2s}.wizard-name-input:focus{border-color:var(--teal)}.wizard-name-input::placeholder{color:var(--dim);opacity:.5}.wizard-hint{color:var(--dim);margin:16px 0 24px;font-size:12px}.wizard-highlight{color:var(--teal);font-weight:500}.wizard-highlight-free{color:var(--green);font-size:1.2em;font-weight:600}.wizard-next{background:var(--teal);font:500 14px var(--sans);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:12px 28px;transition:all .15s;display:inline-flex}.wizard-next:hover{opacity:.9;transform:translateY(-1px)}.wizard-next:disabled{opacity:.3;cursor:not-allowed;transform:none}.wizard-next i{font-size:16px}.wizard-skip{border:1px solid var(--border-2);color:var(--dim);font:400 13px var(--sans);cursor:pointer;background:0 0;border-radius:10px;padding:10px 20px;transition:all .15s}.wizard-skip:hover{border-color:var(--fg);color:var(--fg)}.wizard-skip:disabled{opacity:.3;cursor:not-allowed}.wizard-finish-row{justify-content:center;gap:12px;margin-top:24px;display:flex}.wizard-shield-icon{color:var(--dim);margin-bottom:8px;font-size:48px}.wizard-insurance-form{flex-direction:column;gap:12px;margin:8px 0 24px;display:flex}.wizard-input{background:var(--surface);border:1px solid var(--border-2);width:100%;font:400 13px var(--sans);color:var(--fg);border-radius:10px;outline:none;padding:12px 16px;transition:all .3s}.wizard-input:focus{border-color:var(--teal)}.wizard-input::placeholder{color:var(--dim)}.wizard-insurance.revealed .wizard-insurance-form,.wizard-insurance.revealed .wizard-shield-icon,.wizard-insurance.revealed>h1,.wizard-insurance.revealed>p,.wizard-insurance.revealed .wizard-next{animation:.5s forwards insuranceSlide}@keyframes insuranceSlide{to{opacity:0;height:0;margin:0;padding:0;overflow:hidden;transform:translateY(-20px)}}.wizard-reveal{text-align:center}.wizard-reveal-emoji{margin-bottom:12px;font-size:56px;animation:.6s revealBounce}@keyframes revealBounce{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}.wizard-reveal-text{color:var(--fg);margin:12px 0;font-size:15px;line-height:1.7}.wizard-choice-grid{justify-content:center;gap:12px;margin-bottom:28px;display:flex}.wizard-choice{background:var(--surface);border:2px solid var(--border-2);cursor:pointer;max-width:120px;color:var(--fg);font:400 13px var(--sans);border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:8px;padding:20px 16px;transition:all .2s;display:flex}.wizard-choice i{color:var(--dim);font-size:28px;transition:color .2s}.wizard-choice:hover{border-color:#7c9beb4d}.wizard-choice:hover i{color:var(--teal)}.wizard-choice.selected{border-color:var(--teal);background:#7c9beb14}.wizard-choice.selected i{color:var(--teal)}.wizard-drop-zone{border:2px dashed var(--border-2);cursor:pointer;color:var(--dim);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:120px;margin-bottom:4px;padding:32px 20px;font-size:13px;transition:all .2s;display:flex}.wizard-drop-zone:hover{border-color:var(--teal);color:var(--fg)}.wizard-drop-zone.has-files{justify-content:flex-start;align-items:stretch;max-height:min(52vh,560px);padding:12px;overflow:hidden}.wizard-upload-icon{font-size:36px}.wizard-file-list{text-align:left;scrollbar-width:thin;scrollbar-color:#7c9beb80 transparent;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;max-height:min(50vh,536px);padding-right:4px;display:grid;overflow-y:auto}.wizard-file-list::-webkit-scrollbar{width:6px}.wizard-file-list::-webkit-scrollbar-thumb{background:#7c9beb73;border-radius:999px}.wizard-file-item{aspect-ratio:1;background:#ffffff09;border:1px solid #ffffff0f;border-radius:10px;justify-content:stretch;align-items:stretch;min-width:0;padding:0;font-size:12px;display:flex;position:relative;overflow:hidden}.wizard-file-item i{color:var(--teal);font-size:22px}.wizard-file-thumb{object-fit:cover;width:100%;height:100%;display:block}.wizard-file-icon{place-items:center;width:100%;padding:12px;display:grid}.wizard-file-meta{min-width:0;color:var(--fg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0a0cb8;border-radius:6px;justify-content:space-between;align-items:center;gap:6px;padding:4px 6px;display:flex;position:absolute;bottom:6px;left:6px;right:6px}.wizard-file-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:10px;overflow:hidden}.wizard-file-size{color:#ffffffb8;white-space:nowrap;flex:none;font-size:9px}.wizard-file-remove{color:#ffffffbf;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0a0cb8;border:1px solid #ffffff14;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;font-size:12px;transition:all .1s;display:grid;position:absolute;top:6px;right:6px}.wizard-file-remove i{color:currentColor;font-size:13px}.wizard-file-remove:hover{color:#fff;background:#e5716ae6}.wizard-file-add{color:var(--teal);cursor:pointer;grid-column:1/-1;align-items:center;gap:6px;padding:4px 10px;font-size:11px;display:flex}.wizard-error{text-align:left;max-width:100%;color:var(--fg);background:#e5716a17;border:1px solid #e5716a59;border-radius:10px;align-items:flex-start;gap:8px;margin:12px auto 0;padding:10px 12px;font-size:12px;line-height:1.4;display:flex}.wizard-error i{color:var(--red);flex:none;margin-top:1px;font-size:16px}@media (width<=560px){.wizard-container{padding:32px 20px}.wizard-file-list{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-drop-zone.has-files{max-height:48vh}}.share-card{background:var(--surface);border:1px solid var(--border-2);border-radius:20px;width:100%;max-width:420px;padding:28px 24px;position:relative;overflow:hidden}.share-card-glow{pointer-events:none;background:radial-gradient(circle,#7c9beb26 0%,#0000 70%);width:200px;height:200px;position:absolute;top:-40px;right:-40px}.share-card-header{align-items:center;gap:8px;margin-bottom:20px;display:flex}.share-card-brand{font:600 16px var(--sans);color:var(--fg)}.share-card-free{font:600 9px var(--sans);color:var(--green);text-transform:uppercase;letter-spacing:.5px;background:#6bc98a1a;border-radius:6px;margin-left:auto;padding:3px 8px}.share-card-title h2{font:600 22px var(--sans);color:var(--fg);letter-spacing:-.02em;margin:0 0 4px}.share-card-tagline{color:var(--dim);font-size:13px}.share-card-stats{background:#ffffff08;border-radius:12px;align-items:center;gap:16px;margin:20px 0;padding:16px;display:flex}.share-stat{text-align:center;flex:1}.share-stat-value{font:600 22px var(--sans);color:var(--fg);letter-spacing:-.02em;display:block}.share-stat-label{color:var(--dim);text-transform:uppercase;letter-spacing:.5px;font-size:10px}.share-stat-divider{background:var(--border-2);width:1px;height:28px}.share-mrna-bar{border-radius:8px;height:32px;margin:16px 0;display:flex;overflow:hidden}.share-mrna-seg{font:500 9px var(--sans);color:#fff;letter-spacing:.02em;white-space:nowrap;justify-content:center;align-items:center;display:flex}.share-mrna-seg.utr5{background:#0a2850;flex:1}.share-mrna-seg.cds{background:#145aaa;flex:3}.share-mrna-seg.utr3{background:#1e96a5;flex:1}.share-mrna-seg.polya{color:#333;background:#f0c382;flex:.8}.share-card-gene{color:var(--dim);background:#ffffff08;border-radius:8px;align-items:center;gap:6px;margin-bottom:16px;padding:8px 12px;font-size:12px;display:flex}.share-card-gene i{color:var(--teal)}.share-card-gene strong{color:var(--fg)}.share-card-footer{color:var(--dim);text-align:center;border-top:1px solid var(--border);padding-top:12px;font-size:11px}.share-card-cta{background:var(--teal);color:#fff;font:500 13px var(--sans);border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:16px;padding:12px 24px;text-decoration:none;transition:all .15s;display:flex}.share-card-cta:hover{opacity:.9;transform:translateY(-1px)}.share-page{background:var(--bg);justify-content:center;align-items:center;width:100vw;min-height:100vh;padding:40px 20px;display:flex}.share-page-loading{color:var(--dim);align-items:center;gap:10px;font-size:13px;display:flex}.share-page-content{flex-direction:column;align-items:center;width:100%;max-width:480px;display:flex}.share-page-divider{background:var(--border-2);width:80px;height:1px;margin:32px 0}.share-page-footer{color:var(--dim);align-items:center;gap:8px;margin-top:32px;font-size:11px;display:flex}.share-page-404{text-align:center}.share-page-404 h2{font:600 22px var(--sans);color:var(--fg);margin:16px 0 8px}.share-page-404 p{color:var(--dim);margin-bottom:24px;font-size:13px}.share-page-home{color:var(--teal);font:500 13px var(--sans);align-items:center;gap:6px;text-decoration:none;transition:opacity .15s;display:inline-flex}.share-page-home:hover{opacity:.8}.share-modal-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;animation:.2s modalFade;display:flex;position:fixed;inset:0}@keyframes modalFade{0%{opacity:0}}.share-modal{background:var(--surface);border:1px solid var(--border-2);border-radius:16px;width:90%;max-width:420px;padding:24px;animation:.25s modalSlide;position:relative}@keyframes modalSlide{0%{opacity:0;transform:translateY(12px)}}.share-modal-close{color:var(--dim);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px;font-size:16px;transition:all .1s;position:absolute;top:12px;right:12px}.share-modal-close:hover{color:var(--fg);background:#ffffff0f}.share-modal-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.share-modal-header i{color:var(--teal);font-size:22px}.share-modal-header h3{font:500 16px var(--sans);color:var(--fg)}.share-modal-body p{color:var(--dim);margin-bottom:12px;font-size:13px;line-height:1.5}.share-modal-note{color:var(--dim)!important;font-size:11px!important}.share-modal-preview{background:#ffffff08;border-radius:10px;justify-content:center;gap:16px;margin-bottom:16px;padding:16px;display:flex}.share-preview-stat{color:var(--dim);font-size:12px}.share-preview-stat span{font:600 18px var(--sans);color:var(--fg);display:block}.share-modal-create{background:var(--teal);width:100%;font:500 14px var(--sans);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:12px;transition:opacity .15s}.share-modal-create:hover{opacity:.9}.share-modal-create:disabled{opacity:.4;cursor:not-allowed}.share-modal-link-row{gap:8px;margin-bottom:16px;display:flex}.share-modal-link{background:var(--bg);border:1px solid var(--border-2);font:400 12px var(--mono);color:var(--fg);cursor:text;border-radius:8px;outline:none;flex:1;padding:10px 12px}.share-modal-copy{background:var(--teal);font:500 12px var(--sans);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:4px;padding:10px 14px;transition:opacity .15s;display:flex}.share-modal-copy:hover{opacity:.9}.share-modal-platforms{flex-wrap:wrap;gap:8px;display:flex}.share-platform-btn{border:1px solid var(--border-2);font:400 12px var(--sans);color:var(--fg);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;text-decoration:none;transition:all .15s;display:inline-flex}.share-platform-btn:hover{border-color:var(--teal);color:var(--teal)}.share-platform-btn i{font-size:16px}.share-tab-content{flex-direction:column;gap:24px;padding:20px 0;display:flex}.share-tab-actions{text-align:center}.share-tab-btn{background:var(--teal);font:500 14px var(--sans);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;margin-bottom:12px;padding:14px 28px;transition:all .15s;display:inline-flex}.share-tab-btn:hover{opacity:.9;transform:translateY(-1px)}.share-tab-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.share-tab-btn i{font-size:18px}.share-tab-hint{color:var(--dim);font-size:12px;line-height:1.5}.fund-section{background:var(--surface);border:1px solid var(--border-2);text-align:center;border-radius:16px;width:100%;max-width:420px;padding:28px 24px}.fund-section.compact{border-radius:12px;padding:16px}.fund-header{margin-bottom:12px}.fund-emoji{margin-bottom:4px;font-size:32px;display:block}.fund-header h3{font:600 18px var(--sans);color:var(--fg);letter-spacing:-.01em}.fund-pitch{color:var(--fg);margin-bottom:8px;font-size:14px;line-height:1.6}.fund-strike{color:var(--red);opacity:.8;text-decoration:line-through}.fund-highlight{color:var(--green);font-weight:600}.fund-detail{color:var(--dim);margin-bottom:20px;font-size:12px;line-height:1.5}.fund-btn{background:var(--gold);font:500 14px var(--sans);color:#1c1c1e;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:12px 24px;text-decoration:none;transition:all .15s;display:inline-flex}.fund-btn:hover{opacity:.9;transform:translateY(-1px)}.fund-btn i{font-size:16px}.fund-note{color:var(--dim);margin-top:16px;font-size:11px}.rail-logout{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.rail-logout .avatar{transition:opacity .2s}.rail-logout-icon{color:var(--red);opacity:0;font-size:16px;transition:opacity .2s;position:absolute}.rail-logout:hover .avatar{opacity:.3}.rail-logout:hover .rail-logout-icon{opacity:1}.auth-mode-toggle{color:var(--teal);font:400 12px var(--sans);cursor:pointer;background:0 0;border:none;padding:4px 0;transition:opacity .15s}.auth-mode-toggle:hover{opacity:.7}.completion-overlay{z-index:90;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:radial-gradient(circle at 50% 38%,#e5a86e1f,#0000 28%),#0a0a0cb8;justify-content:center;align-items:center;padding:24px;animation:.22s completionFade;display:flex;position:fixed;inset:0}@keyframes completionFade{0%{opacity:0}}.completion-reveal{text-align:center;background:linear-gradient(#363638fa,#232325fa);border:1px solid #e5a86e47;border-radius:18px;flex-direction:column;align-items:center;gap:20px;width:min(640px,100%);padding:34px 32px 28px;animation:.34s cubic-bezier(.2,.8,.2,1) completionRise;display:flex;position:relative;box-shadow:0 26px 80px #00000073,inset 0 1px #ffffff0f}@keyframes completionRise{0%{opacity:0;transform:translateY(18px)scale(.98)}}.completion-close{width:32px;height:32px;color:var(--dim);cursor:pointer;background:#ffffff0a;border:none;border-radius:8px;justify-content:center;align-items:center;display:flex;position:absolute;top:14px;right:14px}.completion-close:hover{color:var(--fg);background:#ffffff14}.completion-mark{justify-content:center;align-items:center;width:112px;height:112px;display:flex;position:relative}.completion-orbit{background:conic-gradient(from 210deg,#7c9beb14,#e5a86e47,#6bc98a29,#7c9beb14);border:1px solid #e5a86e4d;border-radius:50%;animation:8s linear infinite completionSpin;position:absolute;inset:0}@keyframes completionSpin{to{transform:rotate(360deg)}}.completion-copy{max-width:500px}.completion-kicker{font:500 10px var(--sans);letter-spacing:1.4px;color:var(--gold);text-transform:uppercase;margin-bottom:8px;display:inline-flex}.completion-copy h2{font:700 30px/1.1 var(--sans);color:var(--fg);letter-spacing:0;margin-bottom:10px}.completion-copy p{color:#e5e5eabd;font-size:14px;line-height:1.65}.completion-stats{border:1px solid var(--border);background:var(--border);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;width:100%;display:grid;overflow:hidden}.completion-stats div{background:#1c1c1ec7;min-width:0;padding:14px 10px}.completion-stats span{text-overflow:ellipsis;white-space:nowrap;font:650 18px/1.1 var(--sans);color:var(--fg);display:block;overflow:hidden}.completion-stats small{color:var(--dim);text-transform:uppercase;letter-spacing:.6px;margin-top:5px;font-size:10px;display:block}.completion-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.completion-primary,.completion-secondary{min-height:40px;font:600 13px var(--sans);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 18px;transition:transform .15s,opacity .15s,border-color .15s;display:inline-flex}.completion-primary{background:var(--gold);color:#1c1c1e;border:none}.completion-secondary{color:var(--fg);background:#ffffff0a;border:1px solid #ffffff24}.completion-primary:hover,.completion-secondary:hover{opacity:.92;transform:translateY(-1px)}.completion-reveal .fund-section{background:#ffffff09;max-width:520px}@media (width<=640px){.completion-overlay{align-items:flex-end;padding:14px}.completion-reveal{border-radius:16px;padding:30px 18px 18px}.completion-copy h2{font-size:24px}.completion-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.completion-actions{width:100%}.completion-primary,.completion-secondary{flex:1;min-width:150px}}@media (prefers-reduced-motion:reduce){.completion-overlay,.completion-reveal,.completion-orbit{animation:none}}
