*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #f5f7fa;--sidebar-bg: #ffffff;--surface: #ffffff;--surface-2: #f7f8fa;--surface-3: #eef1f5;--surface-4: #e4e9ef;--border: #e5e8ec;--border-2: #d4d9e1;--border-3: #b8c0cc;--text: #0f1419;--text-2: #4a5363;--text-3: #7a8294;--text-4: #9aa3b3;--text-muted: #7a8294;--accent: #1e6091;--accent-hover: #164e75;--accent-deep: #103a59;--accent-bg: rgba(30, 96, 145, .07);--accent-bg-2: rgba(30, 96, 145, .13);--accent-border: rgba(30, 96, 145, .24);--orange: var(--accent);--orange-hover: var(--accent-hover);--orange-bg: var(--accent-bg);--orange-border: var(--accent-border);--red: #c8372d;--red-text: #9a2520;--red-bg: #fef3f2;--red-border: #fbb6b0;--amber: #a16207;--amber-text: #7c4a05;--amber-bg: #fef9e7;--amber-border: #f3d68a;--green: #0e7d3a;--green-text: #0a5f2b;--green-bg: #f0f9f4;--green-border: #9bd9b3;--blue: #1e6091;--blue-bg: var(--accent-bg);--blue-border: var(--accent-border);--tier-pro: #1e6091;--tier-pro-bg: rgba(30, 96, 145, .08);--tier-pro-border: rgba(30, 96, 145, .24);--tier-max: #8a4a08;--tier-max-bg: #fdf3e3;--tier-max-border: #e9c180;--tier-ent: #6b21a8;--tier-ent-bg: #f7f0fc;--tier-ent-border: #d4b3ec;--purple: var(--tier-ent);--purple-bg: var(--tier-ent-bg);--r-xs: 3px;--r-sm: 4px;--r-md: 6px;--r-lg: 10px;--r-xl: 14px;--shadow-sm: 0 1px 2px rgba(15, 20, 25, .04);--shadow-md: 0 2px 6px rgba(15, 20, 25, .06), 0 1px 2px rgba(15, 20, 25, .04);--shadow-lg: 0 8px 24px rgba(15, 20, 25, .1), 0 2px 6px rgba(15, 20, 25, .05);--shadow-focus: 0 0 0 3px rgba(30, 96, 145, .18);--font-sans: "IBM Plex Sans", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "IBM Plex Mono", "JetBrains Mono", "Courier New", monospace;--font-serif: "IBM Plex Serif", Georgia, "Times New Roman", serif;--font-ui: var(--font-sans);--font-head: var(--font-sans)}html,body,#root{height:100%;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-variant-numeric:tabular-nums}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:6px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--border-3);background-clip:content-box;border:2px solid transparent}button{cursor:pointer;font-family:var(--font-sans);border:none;outline:none;background:none;padding:0;color:inherit}a{color:var(--accent);text-decoration:none;transition:color .12s}a:hover{color:var(--accent-hover);text-decoration:underline;text-underline-offset:2px}input:not([type=checkbox]):not([type=radio]),select,textarea{font-family:var(--font-mono);font-size:13px;background:var(--surface-2);border:1px solid var(--border-2);color:var(--text);border-radius:var(--r-sm);padding:7px 10px;width:100%;outline:none;transition:border-color .12s,box-shadow .12s,background .12s;-webkit-appearance:none;font-variant-numeric:tabular-nums}input:hover:not(:focus):not(:disabled):not([readonly]),select:hover:not(:focus):not(:disabled),textarea:hover:not(:focus):not(:disabled):not([readonly]){border-color:var(--border-3)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}input[readonly],textarea[readonly]{background:var(--surface-2);color:var(--text-2);cursor:not-allowed}input:disabled,select:disabled,textarea:disabled{background:var(--surface-2);color:var(--text-3);cursor:not-allowed}select{font-family:var(--font-sans)}select option{background:var(--surface);color:var(--text)}label{font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--text-3);display:block;margin-bottom:5px}.app-layout{display:flex;height:100vh;overflow:hidden;background:var(--bg)}.sidebar{width:280px;flex-shrink:0;background:var(--sidebar-bg);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.sidebar-inner{flex:1;overflow-y:auto;display:flex;flex-direction:column}.sidebar-section{padding:16px 18px;border-bottom:1px solid var(--border);flex-shrink:0}.section-label{font-size:10px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--text-3);margin-bottom:10px}.brand-block{display:flex;flex-direction:column;gap:4px;padding-bottom:2px}.brand-row{display:flex;justify-content:space-between;align-items:center}.brand-name{font-family:var(--font-sans);font-size:16px;font-weight:600;letter-spacing:-.015em;color:var(--text)}.brand-tag{font-family:var(--font-mono);font-size:9.5px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin-top:2px}.brand-pricing-link{font-size:12px;color:var(--text-3);transition:color .12s}.brand-pricing-link:hover{color:var(--text-2);text-decoration:none}.tier-auth-row{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.tier-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:3px;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.tier-badge.free{background:var(--surface-3);color:var(--text-2);border:1px solid var(--border)}.tier-badge.pro{background:var(--tier-pro-bg);color:var(--tier-pro);border:1px solid var(--tier-pro-border)}.tier-badge.max{background:var(--tier-max-bg);color:var(--tier-max);border:1px solid var(--tier-max-border)}.tier-badge.enterprise{background:var(--tier-ent-bg);color:var(--tier-ent);border:1px solid var(--tier-ent-border)}.auth-action-btn{font-size:12px;font-weight:500;color:var(--text-3);cursor:pointer;transition:color .12s;padding:0}.auth-action-btn:hover{color:var(--text)}.auth-action-btn.is-signin{color:var(--accent)}.auth-action-btn.is-signin:hover{color:var(--accent-hover)}.query-counter-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:7px}.query-label{font-size:11px;color:var(--text-3);font-weight:500}.query-fraction{font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.query-fraction.near{color:var(--amber)}.query-fraction.over{color:var(--red)}.progress-bar{height:4px;background:var(--surface-3);border-radius:2px;overflow:hidden}.progress-fill{height:100%;border-radius:2px;transition:width .4s ease}.progress-fill.ok{background:var(--accent)}.progress-fill.warn{background:var(--amber)}.progress-fill.over{background:var(--red)}.limit-warn{margin-top:7px;font-size:11.5px;color:var(--amber-text);line-height:1.5}.limit-warn a{color:var(--amber-text);text-decoration:underline}.upgrade-cta{display:block;margin-top:10px;padding:8px 12px;text-align:center;background:var(--accent);color:#fff;border-radius:var(--r-md);font-size:12px;font-weight:600;text-decoration:none;transition:background .12s,transform 80ms}.upgrade-cta:hover{background:var(--accent-hover);text-decoration:none;color:#fff}.upgrade-cta:active{transform:translateY(1px)}.seg-group{display:flex;padding:3px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:8px}.seg-group:last-child{margin-bottom:0}.seg-btn{flex:1;padding:6px 8px;font-size:12px;font-weight:500;color:var(--text-3);border-radius:calc(var(--r-md) - 2px);background:transparent;transition:all .12s;text-align:center;white-space:nowrap;font-family:var(--font-sans)}.seg-btn:hover:not(.active){color:var(--text)}.seg-btn.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.seg-btn.active.blue{background:var(--accent-bg-2);color:var(--accent)}.lib-line{font-size:11.5px;color:var(--text-2);line-height:1.55;margin:0}.lib-line strong{color:var(--text);font-weight:500;font-family:var(--font-serif);font-style:italic}.lib-count{display:inline-block;margin-top:8px;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.05em;color:var(--text-3);padding:2px 7px;background:var(--surface-2);border:1px solid var(--border);border-radius:3px}.calc-section{padding:14px 16px;flex:1}.calc-wrapper{position:relative;margin-bottom:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:0 12px 4px;overflow:hidden}.calc-locked-inner{opacity:.22;pointer-events:none;-webkit-user-select:none;user-select:none}.sidebar-footer{padding:12px 16px;border-top:1px solid var(--border);flex-shrink:0;background:var(--sidebar-bg)}.report-issue-btn{width:100%;padding:8px 12px;border:1px solid var(--border-2);color:var(--text-2);font-size:12px;font-weight:500;border-radius:var(--r-md);background:var(--surface);transition:all .12s;text-align:center;font-family:var(--font-sans)}.report-issue-btn:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-bg)}.main-area{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}.tab-bar{display:flex;gap:0;background:var(--sidebar-bg);border-bottom:1px solid var(--border);flex-shrink:0;padding:0 8px}.tab-btn{background:transparent;border:none;border-bottom:2px solid transparent;border-radius:0;padding:14px 22px 13px;color:var(--text-3);font-family:var(--font-sans);font-size:13.5px;font-weight:500;letter-spacing:-.005em;cursor:pointer;transition:color .12s,border-color .12s;position:relative}.tab-btn:hover{color:var(--text)}.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.tab-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.tab-pane{flex:1;flex-direction:column;overflow:hidden;min-height:0}.chat-area{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}.chat-messages{flex:1;overflow-y:auto;padding:28px 24px 8px;display:flex;flex-direction:column}.chat-empty{max-width:760px;width:100%;margin:16px auto 0;padding:0 8px;display:flex;flex-direction:column;gap:32px}.empty-hero{text-align:left;display:flex;flex-direction:column;gap:6px}.empty-hero-mark{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:2px}.empty-hero-title{font-family:var(--font-sans);font-size:28px;font-weight:600;letter-spacing:-.02em;color:var(--text);line-height:1.1}.empty-hero-sub{font-family:var(--font-serif);font-size:15.5px;line-height:1.6;color:var(--text-2);max-width:580px;margin-top:4px}.empty-section{display:flex;flex-direction:column;gap:10px}.empty-section-head{display:flex;align-items:baseline;gap:8px}.empty-section-label{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.empty-section-rule{flex:1;height:1px;background:var(--border)}.example-prompts-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.example-prompt-btn{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);text-align:left;font-size:13px;line-height:1.5;color:var(--text-2);cursor:pointer;transition:all .12s;width:100%;font-family:var(--font-sans)}.example-prompt-btn:hover{border-color:var(--accent-border);color:var(--text);background:var(--surface);box-shadow:var(--shadow-md);transform:translateY(-1px)}.prompt-arrow{flex-shrink:0;color:var(--text-4);font-size:14px;margin-top:1px;transition:transform .12s,color .12s}.example-prompt-btn:hover .prompt-arrow{color:var(--accent);transform:translate(2px)}.sample-answer{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:0;overflow:hidden;box-shadow:var(--shadow-sm);position:relative}.sample-answer-head{display:flex;align-items:center;justify-content:space-between;padding:10px 18px;background:var(--surface-2);border-bottom:1px solid var(--border)}.sample-answer-head-label{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.sample-answer-watermark{font-family:var(--font-mono);font-size:9px;font-weight:600;letter-spacing:.14em;color:var(--text-4);padding:2px 7px;border:1px solid var(--border-2);border-radius:2px;text-transform:uppercase}.sample-answer-body{padding:20px 24px 22px;display:flex;flex-direction:column;gap:14px}.sample-section{display:flex;flex-direction:column;gap:5px}.sample-section-label{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-2)}.sample-section-body{font-family:var(--font-serif);font-size:14px;line-height:1.65;color:var(--text)}.sample-section-body em{font-style:italic;color:var(--text-2)}.sample-section-body .mono,.sample-section-body code{font-family:var(--font-mono);font-size:13px;background:var(--surface-2);padding:1px 5px;border-radius:3px;color:var(--text);border:1px solid var(--border)}.sample-section-list{font-family:var(--font-serif);font-size:14px;line-height:1.7;color:var(--text);margin:0;padding-left:20px}.sample-section-list li+li{margin-top:4px}.mono{font-family:var(--font-mono);font-size:.92em;background:var(--surface-2);padding:1px 5px;border-radius:3px;border:1px solid var(--border);color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}.ms-chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}.ms-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--r-sm);font-family:var(--font-mono);font-size:12px;font-weight:500;border:1px solid;white-space:nowrap;font-variant-numeric:tabular-nums}.ms-chip .ms-chip-glyph{font-size:11px;font-weight:700;line-height:1}.ms-chip .ms-chip-label{font-weight:500}.ms-chip .ms-chip-value{font-weight:600}.ms-chip.ok{color:var(--green-text);background:var(--green-bg);border-color:var(--green-border)}.ms-chip.tight{color:var(--amber-text);background:var(--amber-bg);border-color:var(--amber-border)}.ms-chip.negative{color:var(--red-text);background:var(--red-bg);border-color:var(--red-border)}.sample-reference{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;padding:10px 14px;background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--r-sm);font-size:12.5px;line-height:1.5}.sample-reference-book{font-family:var(--font-serif);font-style:italic;font-weight:500;color:var(--text)}.sample-reference-loc{font-family:var(--font-mono);font-size:11.5px;color:var(--text-2)}.sample-reference-sep{color:var(--text-4)}.coverage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.coverage-card{padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);display:flex;flex-direction:column;gap:4px;transition:border-color .12s}.coverage-card:hover{border-color:var(--border-3)}.coverage-card-name{font-size:13px;font-weight:500;color:var(--text);line-height:1.3}.coverage-card-count{font-family:var(--font-mono);font-size:11px;color:var(--text-3);font-weight:500}.msg-group{display:flex;flex-direction:column;max-width:760px;width:100%;margin:0 auto 20px}.msg-group.user{align-items:flex-end}.msg-group.assistant{align-items:flex-start}.msg-bubble{padding:13px 17px;border-radius:var(--r-md);max-width:92%;white-space:pre-wrap;word-break:break-word}.msg-bubble.user{background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--accent-deep);font-family:var(--font-sans);font-size:14px;line-height:1.6;border-bottom-right-radius:var(--r-xs);font-weight:500}.msg-bubble.assistant{background:var(--surface);border:1px solid var(--border);color:var(--text);font-family:var(--font-serif);font-size:15px;line-height:1.72;border-bottom-left-radius:var(--r-xs);box-shadow:var(--shadow-sm)}.msg-bubble.assistant code{font-family:var(--font-mono);font-size:13px;background:var(--surface-2);padding:1px 5px;border-radius:3px;color:var(--text);border:1px solid var(--border);font-variant-numeric:tabular-nums}.msg-bubble.assistant strong{font-weight:600;color:var(--text)}.typing-indicator{display:flex;gap:5px;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);border-bottom-left-radius:var(--r-xs);width:fit-content;box-shadow:var(--shadow-sm)}.typing-dot{width:6px;height:6px;border-radius:50%;background:var(--text-4);animation:bounce-typing 1.2s infinite}.typing-dot:nth-child(2){animation-delay:.18s}.typing-dot:nth-child(3){animation-delay:.36s}@keyframes bounce-typing{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}.chat-error{max-width:760px;width:100%;margin:0 auto 20px;padding:12px 16px;background:var(--red-bg);border:1px solid var(--red-border);border-left:3px solid var(--red);border-radius:var(--r-md);font-size:13px;color:var(--red-text);line-height:1.55}.chat-error a{color:var(--red-text);text-decoration:underline;font-weight:500}.chat-input-wrap{border-top:1px solid var(--border);background:var(--sidebar-bg);padding:14px 24px 16px;flex-shrink:0}.chat-input-inner{max-width:760px;margin:0 auto}.input-context-strip{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.context-pill{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);padding:3px 8px;background:var(--surface-2);border:1px solid var(--border);border-radius:3px}.context-pill-dot{width:5px;height:5px;border-radius:50%;background:var(--accent)}.input-row{display:flex;gap:10px;align-items:flex-end}.chat-textarea{flex:1;resize:none;min-height:48px;max-height:140px;padding:12px 14px;font-family:var(--font-sans);font-size:14px;line-height:1.55;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--border-2);color:var(--text);outline:none;transition:border-color .12s,box-shadow .12s,background .12s}.chat-textarea:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);background:var(--surface)}.chat-textarea::placeholder{color:var(--text-4)}.send-btn{padding:0 20px;height:48px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;letter-spacing:.01em;border-radius:var(--r-md);white-space:nowrap;flex-shrink:0;transition:background .12s,transform 80ms,opacity .12s;font-family:var(--font-sans)}.send-btn:hover:not(:disabled){background:var(--accent-hover)}.send-btn:active:not(:disabled){transform:translateY(1px)}.send-btn:disabled{opacity:.4;cursor:not-allowed}.input-hint{margin-top:8px;font-size:11px;color:var(--text-3);line-height:1.5}.input-hint kbd{font-family:var(--font-mono);font-size:10px;font-weight:500;background:var(--surface-2);padding:1px 5px;border-radius:3px;border:1px solid var(--border-2);color:var(--text-2);margin:0 1px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f141973;display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);max-width:480px;width:100%;padding:30px 32px;box-shadow:var(--shadow-lg)}.modal-title{font-family:var(--font-sans);font-size:19px;font-weight:600;letter-spacing:-.015em;color:var(--text);margin-bottom:5px}.modal-subtitle{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin-bottom:20px}.modal-body{font-size:13.5px;color:var(--text-2);line-height:1.7;margin-bottom:22px}.modal-body p+p{margin-top:11px}.modal-body strong{color:var(--text);font-weight:600}.modal-checkbox{display:flex;align-items:flex-start;gap:11px;margin-bottom:22px;cursor:pointer}.modal-checkbox input[type=checkbox]{width:16px;height:16px;flex-shrink:0;accent-color:var(--accent);margin-top:2px;cursor:pointer}.modal-checkbox span{font-size:13px;color:var(--text-2);line-height:1.5}.modal-btn{display:block;width:100%;padding:12px;background:var(--accent);color:#fff;font-size:14px;font-weight:600;border-radius:var(--r-md);text-align:center;transition:background .12s,opacity .12s;border:none;cursor:pointer;font-family:var(--font-sans)}.modal-btn:hover:not(:disabled){background:var(--accent-hover)}.modal-btn:disabled{opacity:.4;cursor:not-allowed}.modal-btn-row{display:flex;gap:8px}.modal-btn-row .modal-btn{flex:1}.modal-btn-secondary{padding:11px 18px;background:transparent;border:1px solid var(--border-2);color:var(--text-2);font-size:14px;font-weight:500;border-radius:var(--r-md);text-align:center;transition:all .12s;cursor:pointer;text-decoration:none;font-family:var(--font-sans);display:inline-block}.modal-btn-secondary:hover{border-color:var(--border-3);color:var(--text);text-decoration:none;background:var(--surface-2)}.modal-footnote{font-size:12px;color:var(--text-3);margin-top:14px;line-height:1.55}.error-text{font-size:13px;color:var(--red-text);margin-bottom:12px;padding:8px 12px;background:var(--red-bg);border:1px solid var(--red-border);border-radius:var(--r-sm)}.success-icon{font-size:32px;color:var(--green);margin-bottom:12px}.input-wrap{margin-bottom:14px}.type-tabs{display:flex;gap:6px;margin-bottom:18px}.type-tab{flex:1;padding:8px 12px;border:1px solid var(--border-2);border-radius:var(--r-md);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);background:var(--surface);cursor:pointer;transition:all .12s;font-family:var(--font-sans)}.type-tab.active{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.type-tab:hover:not(.active){border-color:var(--border-3);color:var(--text-2)}.field-row{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.locked-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#f5f7fad9;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;z-index:10;border-radius:var(--r-md)}.lock-icon-wrap{width:40px;height:40px;background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;color:var(--accent)}.locked-title{font-size:13px;font-weight:600;color:var(--text);margin-bottom:4px}.locked-sub{font-size:12px;color:var(--text-2);line-height:1.5;margin-bottom:14px;max-width:280px}.locked-sub a{color:var(--accent);font-weight:500}.locked-btns{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.locked-btn-primary{padding:8px 16px;background:var(--accent);color:#fff;border-radius:var(--r-md);font-size:12px;font-weight:600;text-decoration:none;transition:background .12s;display:inline-block}.locked-btn-primary:hover{background:var(--accent-hover);text-decoration:none;color:#fff}.locked-btn-secondary{padding:8px 16px;border:1px solid var(--border-2);background:var(--surface);color:var(--text-2);border-radius:var(--r-md);font-size:12px;font-weight:500;cursor:pointer;transition:all .12s;font-family:var(--font-sans)}.locked-btn-secondary:hover{border-color:var(--border-3);color:var(--text);background:var(--surface-2)}.pricing-root{min-height:100vh;background:var(--bg);color:var(--text)}.pricing-nav{height:56px;border-bottom:1px solid var(--border);padding:0 28px;display:flex;align-items:center;justify-content:space-between;background:var(--sidebar-bg);position:sticky;top:0;z-index:10}.pricing-nav-brand{font-family:var(--font-sans);font-size:16px;font-weight:600;letter-spacing:-.015em;color:var(--text);text-decoration:none}.pricing-nav-brand:hover{text-decoration:none;color:var(--text)}.pricing-nav-actions{display:flex;gap:10px;align-items:center}.nav-ghost-btn{font-size:13px;color:var(--text-2);background:transparent;border:none;cursor:pointer;font-family:var(--font-sans);transition:color .12s;font-weight:500}.nav-ghost-btn:hover{color:var(--text)}.pricing-page{max-width:980px;margin:0 auto;padding:3.5rem 1.5rem 5rem}.pricing-hero{text-align:center;margin-bottom:3.5rem}.pricing-hero h1{font-family:var(--font-sans);font-size:36px;font-weight:600;letter-spacing:-.025em;color:var(--text);margin-bottom:14px;line-height:1.15}.pricing-hero p{font-family:var(--font-serif);font-size:17px;line-height:1.65;color:var(--text-2);max-width:600px;margin:0 auto 20px}.tier-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:3.5rem}@media (max-width: 980px){.tier-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 580px){.tier-grid{grid-template-columns:1fr}}.tier-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:24px 20px;position:relative;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:box-shadow .12s,transform .12s}.tier-card:hover{box-shadow:var(--shadow-md)}.tier-card.highlight{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),var(--shadow-md)}.tier-popular-badge{position:absolute;top:-11px;left:50%;transform:translate(-50%);background:var(--accent);color:#fff;font-family:var(--font-mono);font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 14px;border-radius:3px;white-space:nowrap}.tier-name{font-size:14px;font-weight:600;color:var(--text);margin-bottom:6px;letter-spacing:.01em}.tier-price-row{display:flex;align-items:baseline;gap:2px;margin-bottom:8px}.tier-price-amt{font-family:var(--font-sans);font-size:32px;font-weight:600;letter-spacing:-.025em;color:var(--text);font-variant-numeric:tabular-nums}.tier-price-period{font-size:14px;color:var(--text-3)}.tier-tagline{font-family:var(--font-serif);font-size:14px;color:var(--text-2);line-height:1.5;margin-bottom:12px}.tier-query-pill{display:inline-block;font-family:var(--font-mono);font-size:11px;font-weight:600;background:var(--surface-2);color:var(--text-2);border:1px solid var(--border);padding:3px 10px;border-radius:3px;margin-bottom:18px}.tier-feature-list{list-style:none;margin:0 0 22px;padding:0;flex:1}.tier-feature-item{display:flex;align-items:flex-start;gap:10px;padding:7px 0;border-bottom:1px solid var(--border);font-size:13px}.tier-feature-item:last-child{border-bottom:none}.f-icon{flex-shrink:0;font-size:13px;margin-top:1px;font-weight:700}.f-icon.yes{color:var(--green)}.f-icon.no{color:var(--text-4)}.f-icon.part{color:var(--amber)}.f-text{line-height:1.45}.f-text.dim{color:var(--text-4)}.f-text.normal{color:var(--text-2)}.f-note{font-size:11px;color:var(--text-3);display:block;margin-top:2px}.tier-cta{display:block;width:100%;padding:11px;border-radius:var(--r-md);font-size:14px;font-weight:600;text-align:center;text-decoration:none;transition:all .12s;cursor:pointer;font-family:var(--font-sans)}.tier-cta.primary{background:var(--accent);color:#fff;border:none}.tier-cta.primary:hover{background:var(--accent-hover);text-decoration:none;color:#fff}.tier-cta.outline{background:var(--surface);color:var(--text-2);border:1px solid var(--border-2)}.tier-cta.outline:hover{border-color:var(--accent);color:var(--accent);text-decoration:none;background:var(--accent-bg)}.pricing-section{margin-bottom:3.5rem}.pricing-section-h2{font-family:var(--font-sans);font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--text);margin-bottom:8px}.pricing-section-sub{font-family:var(--font-serif);font-size:15px;color:var(--text-2);line-height:1.65;margin-bottom:22px}.callout-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-sm)}.callout-block h2{font-family:var(--font-sans);font-size:19px;font-weight:600;letter-spacing:-.015em;color:var(--text);margin-bottom:10px}.callout-block>p{font-family:var(--font-serif);font-size:15px;line-height:1.7;color:var(--text-2)}.callout-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:22px;margin-top:24px}.callout-item-title{font-size:13px;font-weight:600;color:var(--text);margin-bottom:5px}.callout-item-body{font-family:var(--font-serif);font-size:14px;line-height:1.6;color:var(--text-2)}.callout-footnote{font-family:var(--font-serif);font-size:13px;color:var(--text-3);font-style:italic;margin-top:20px}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width: 640px){.how-grid{grid-template-columns:1fr}}.how-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:22px;box-shadow:var(--shadow-sm)}.how-step-num{width:30px;height:30px;border-radius:50%;background:var(--accent-bg);border:1px solid var(--accent-border);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--accent);margin-bottom:14px}.how-card-title{font-size:14px;font-weight:600;color:var(--text);margin-bottom:6px}.how-card-body{font-family:var(--font-serif);font-size:14px;line-height:1.6;color:var(--text-2)}.ref-tags{display:flex;flex-wrap:wrap;gap:7px}.ref-tag{font-family:var(--font-serif);font-style:italic;font-size:12.5px;padding:4px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:3px;color:var(--text-2);white-space:nowrap}.faq-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.faq-item{border-bottom:1px solid var(--border)}.faq-item:last-child{border-bottom:none}.faq-trigger{width:100%;text-align:left;padding:17px 22px;background:transparent;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:500;color:var(--text);gap:12px;transition:background .12s;font-family:var(--font-sans)}.faq-trigger:hover{background:var(--surface-2)}.faq-icon{flex-shrink:0;color:var(--text-3);font-size:18px;font-weight:300;line-height:1}.faq-body{padding:0 22px 18px;font-family:var(--font-serif);font-size:14.5px;line-height:1.7;color:var(--text-2)}.bottom-cta{text-align:center;padding:2rem 0 .5rem}.bottom-cta h2{font-family:var(--font-sans);font-size:26px;font-weight:600;letter-spacing:-.025em;color:var(--text);margin-bottom:10px}.bottom-cta p{font-family:var(--font-serif);font-size:15px;color:var(--text-2);margin-bottom:26px}.bottom-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.cta-btn-primary{display:inline-block;padding:12px 28px;background:var(--accent);color:#fff;border-radius:var(--r-md);font-size:14px;font-weight:600;text-decoration:none;transition:background .12s}.cta-btn-primary:hover{background:var(--accent-hover);text-decoration:none;color:#fff}.cta-btn-outline{display:inline-block;padding:12px 28px;border:1px solid var(--border-2);background:var(--surface);color:var(--text-2);border-radius:var(--r-md);font-size:14px;font-weight:600;text-decoration:none;transition:all .12s}.cta-btn-outline:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-bg);text-decoration:none}.download-list{display:flex;flex-direction:column;gap:6px}.download-btn{display:block;width:100%;background:var(--surface);border:1px solid var(--border-2);color:var(--text-2);border-radius:var(--r-sm);padding:7px 10px;font-family:var(--font-mono);font-size:11.5px;text-align:left;cursor:pointer;transition:border-color .12s,color .12s,background .12s;text-decoration:none}.download-btn:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-bg);text-decoration:none}.calc-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:12px;overflow:hidden;box-shadow:var(--shadow-sm)}.calc-card-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:11px 14px;background:var(--surface-2);border:none;border-bottom:1px solid var(--border);color:var(--text);font-family:var(--font-sans);font-size:12.5px;font-weight:600;letter-spacing:.005em;cursor:pointer;transition:background .12s}.calc-card-header:hover{background:var(--surface-3)}.calc-card-header:disabled{cursor:default;opacity:.5}.calc-card-title{color:var(--text)}.calc-card-chevron{color:var(--text-3);font-size:11px}.calc-card-body{padding:14px;display:flex;flex-direction:column;gap:13px}.calc-seg-group{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:3px}.calc-seg-btn{flex:1;padding:6px 8px;background:transparent;border:none;color:var(--text-2);font-family:var(--font-sans);font-size:11px;font-weight:500;border-radius:3px;cursor:pointer;transition:all .12s}.calc-seg-btn:hover{color:var(--text);background:var(--surface)}.calc-seg-btn.active{background:var(--accent-bg-2);color:var(--accent);border:1px solid var(--accent-border);font-weight:600}.calc-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.calc-input-group{display:flex;flex-direction:column;gap:4px}.calc-input-full{grid-column:1 / -1}.calc-input-label{font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3)}.calc-input-group input,.calc-input-group select{font-family:var(--font-mono);font-size:12px;padding:6px 9px;font-variant-numeric:tabular-nums}.calc-input-group select{font-family:var(--font-sans)}.calc-output-section{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:10px 12px;display:flex;flex-direction:column;gap:4px}.calc-output-row{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-sans);font-size:11.5px;color:var(--text-2);padding:3px 0}.calc-output-row>span:first-child{letter-spacing:.01em}.calc-output-row>span:last-child{font-family:var(--font-mono);color:var(--text);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:0}.calc-output-row.highlighted{padding:8px 10px;margin:4px -8px 0;background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:var(--r-sm);color:var(--text)}.calc-output-row.highlighted>span:last-child{color:var(--accent)}.calc-output-row.ms-ok>span:last-child{color:var(--green)}.calc-output-row.ms-tight>span:last-child{color:var(--amber)}.calc-output-row.ms-negative>span:last-child{color:var(--red);font-weight:700}.calc-output-row.highlighted.ms-ok{background:var(--green-bg);border-color:var(--green-border)}.calc-output-row.highlighted.ms-tight{background:var(--amber-bg);border-color:var(--amber-border)}.calc-output-row.highlighted.ms-negative{background:var(--red-bg);border-color:var(--red-border)}.calc-ask-btn{width:100%;padding:9px 12px;background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--accent);border-radius:var(--r-sm);font-family:var(--font-sans);font-size:11.5px;font-weight:600;letter-spacing:.015em;cursor:pointer;transition:background .12s,border-color .12s}.calc-ask-btn:hover{background:var(--accent-bg-2);border-color:var(--accent)}.calc-view{flex:1;overflow-y:auto;padding:32px 28px 80px;background:var(--bg)}.calc-view-inner{max-width:1100px;margin:0 auto}.calc-view-head{margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid var(--border)}.calc-view-title{margin:0 0 6px;font-family:var(--font-sans);font-size:24px;font-weight:600;color:var(--text);letter-spacing:-.015em}.calc-view-sub{margin:0;font-family:var(--font-serif);font-size:14.5px;color:var(--text-2);line-height:1.55}.calc-cat{margin-bottom:36px}.calc-cat-label{font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--text-3);margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border)}.calc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 1024px){.calc-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.calc-grid{grid-template-columns:1fr}}.calc-grid-card{display:flex;flex-direction:column;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:15px 16px 14px;cursor:pointer;transition:all .12s;font-family:var(--font-sans);box-shadow:var(--shadow-sm)}.calc-grid-card:hover{border-color:var(--accent-border);background:var(--surface);transform:translateY(-1px);box-shadow:var(--shadow-md)}.calc-grid-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.calc-grid-card.locked{opacity:.85}.calc-grid-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px}.calc-grid-card-name{font-size:14px;font-weight:600;color:var(--text);letter-spacing:-.005em}.calc-grid-card-badge{font-family:var(--font-mono);font-size:9.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:3px;background:var(--accent-bg);color:var(--accent);border:1px solid var(--accent-border)}.calc-grid-card-summary{font-family:var(--font-serif);font-size:13px;color:var(--text-2);line-height:1.5}.calc-single-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}.calc-back-btn{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--r-md);color:var(--text-2);font-family:var(--font-sans);font-size:13px;font-weight:500;padding:7px 13px;cursor:pointer;transition:all .12s}.calc-back-btn:hover{color:var(--accent);border-color:var(--accent-border);background:var(--accent-bg)}.calc-single-title{margin:0;flex:1;font-family:var(--font-sans);font-size:20px;font-weight:600;color:var(--text);letter-spacing:-.01em}.calc-single-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.calc-single-body{position:relative}.calc-single-locked-banner{margin-top:18px}.calc-single-locked-banner .locked-overlay{position:static;inset:auto;background:var(--surface);border:1px solid var(--accent-border);border-radius:var(--r-md);padding:18px;-webkit-backdrop-filter:none;backdrop-filter:none}.calc-ref-button{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:9px 14px;background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:var(--r-md);color:var(--accent);font-family:var(--font-sans);font-size:13px;font-weight:500;cursor:pointer;transition:all .12s}.calc-ref-button:hover{background:var(--accent-bg-2);border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.calc-ref-button.locked{background:var(--surface-2);border-color:var(--border-2);color:var(--text-2)}.calc-ref-icon{font-size:13px;line-height:1}.calc-ref-label{white-space:nowrap}.calc-export-btn{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--r-md);color:var(--text);font-family:var(--font-sans);font-size:12px;font-weight:500;padding:7px 13px;cursor:pointer;transition:all .12s}.calc-export-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-bg)}.calc-export-btn.locked{opacity:.6;cursor:not-allowed}.calc-export-btn:disabled{cursor:not-allowed}.calc-export-err{margin-left:8px;font-size:11px;color:var(--red)}.recent-inputs{position:relative}.recent-inputs-toggle{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--r-md);color:var(--text-2);font-family:var(--font-sans);font-size:12px;font-weight:500;padding:7px 13px;cursor:pointer;transition:all .12s}.recent-inputs-toggle:hover{color:var(--text);border-color:var(--border-3);background:var(--surface-2)}.recent-inputs-list{position:absolute;top:calc(100% + 4px);right:0;z-index:50;min-width:300px;background:var(--surface);border:1px solid var(--border-2);border-radius:var(--r-md);box-shadow:var(--shadow-lg);padding:4px}.recent-inputs-item{width:100%;display:flex;flex-direction:column;gap:2px;background:transparent;border:none;border-radius:var(--r-sm);padding:9px 11px;text-align:left;cursor:pointer;font-family:var(--font-sans);transition:background .12s}.recent-inputs-item:hover{background:var(--surface-2)}.recent-inputs-age{font-size:11px;color:var(--text-3)}.recent-inputs-snippet{font-size:12px;color:var(--text);font-family:var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.verification-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:16px 18px;margin-bottom:18px;box-shadow:var(--shadow-sm)}.verification-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.verification-title{flex:1;font-family:var(--font-sans);font-size:13.5px;font-weight:600;color:var(--text)}.verification-chip{font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;border-radius:3px;background:var(--amber-bg);border:1px solid var(--amber-border);color:var(--amber-text)}.verification-dismiss{background:transparent;border:none;color:var(--text-3);font-size:18px;line-height:1;cursor:pointer;padding:0 4px;transition:color .12s}.verification-dismiss:hover{color:var(--text)}.verification-body{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 768px){.verification-body{grid-template-columns:1fr}}.verification-col{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:11px 13px}.verification-col-label{font-family:var(--font-mono);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:7px}.verification-col-text{font-family:var(--font-mono);font-size:12px;color:var(--text-2);white-space:pre-wrap;max-height:200px;overflow-y:auto;line-height:1.55}.verification-local-list{display:flex;flex-direction:column;gap:6px;list-style:none}.verification-local-list li{display:flex;justify-content:space-between;gap:12px}.verification-local-label{font-size:11.5px;color:var(--text-2)}.verification-local-value{font-family:var(--font-mono);font-size:13px;color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.verification-actions{display:flex;gap:8px;margin-top:12px;justify-content:flex-end}.verification-action{background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:var(--r-md);color:var(--accent);font-family:var(--font-sans);font-size:12px;font-weight:500;padding:7px 13px;cursor:pointer;transition:background .12s}.verification-action:hover{background:var(--accent-bg-2)}.calc-warn{background:var(--amber-bg);border:1px solid var(--amber-border);border-left:3px solid var(--amber);border-radius:var(--r-sm);color:var(--amber-text);padding:9px 12px;font-size:12px;margin:8px 0;line-height:1.5}.calc-footnote{font-family:var(--font-serif);font-size:12px;color:var(--text-3);line-height:1.55;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.sidebar-info-text{font-size:12px;color:var(--text-2);margin:0;line-height:1.55}.sidebar-inline-btn{background:transparent;border:none;color:var(--accent);font-family:var(--font-sans);font-size:12px;font-weight:500;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.sidebar-inline-btn:hover{color:var(--accent-hover)}@keyframes em-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-empty>*{animation:em-fade-up .36s ease both}.chat-empty>*:nth-child(1){animation-delay:40ms}.chat-empty>*:nth-child(2){animation-delay:.12s}.chat-empty>*:nth-child(3){animation-delay:.2s}.chat-empty>*:nth-child(4){animation-delay:.28s}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
