.loader-screen{min-height:100dvh;display:grid;place-items:center;background:var(--bg-app)}.loader-icon{overflow:visible}.loader-icon-corner{stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transform-box:fill-box;transform-origin:center;animation:loaderCornerPulse 1.8s cubic-bezier(.45,0,.15,1) infinite}.loader-icon-corner--1{animation-delay:0s}.loader-icon-corner--2{animation-delay:.15s}.loader-icon-corner--3{animation-delay:.3s}.loader-icon-corner--4{animation-delay:.45s}.loader-icon-sweep{stroke:var(--accent);stroke-width:1.5;stroke-linecap:round;filter:drop-shadow(0 0 4px var(--accent));animation:loaderSweep 1.8s cubic-bezier(.65,0,.35,1) infinite}@keyframes loaderCornerPulse{0%,to{opacity:.35;transform:scale(.88)}50%{opacity:1;transform:scale(1)}}@keyframes loaderSweep{0%{transform:translateY(9px);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translateY(39px);opacity:0}}@media(prefers-reduced-motion:reduce){.loader-icon-corner{animation:none;opacity:1}.loader-icon-sweep{animation:none;opacity:.6;transform:translateY(24px)}}.loader-inline{flex:1;display:flex;align-items:center;justify-content:center}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--overlay-scrim);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background-color:var(--bg-card);border:1px solid var(--border);border-radius:0;max-width:600px;width:90%;max-height:90dvh;overflow-y:auto;box-shadow:var(--shadow-elevated);animation:slideUp .3s ease-out;position:relative}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:20px;font-weight:500;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:32px;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:0;transition:background-color .2s,color .2s}.modal-close:hover{background-color:var(--bg-hover);color:var(--text-primary)}.modal-body{padding:24px 28px}.modal-content--wide{max-width:860px}.modal-close--floating{position:absolute;top:14px;right:14px;z-index:10}@media(max-width:480px){.modal-backdrop{align-items:flex-end}.modal-content{width:100%;max-width:none;max-height:calc(90dvh - env(safe-area-inset-top));padding-bottom:env(safe-area-inset-bottom);animation:slideUpSheet .25s ease-out}.modal-content--wide{max-width:none}}@keyframes slideUpSheet{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.cm-root{display:grid;grid-template-columns:1fr 1fr;min-height:420px;border-radius:0;overflow:hidden}.cm-left{padding:36px 32px;display:flex;flex-direction:column;gap:20px;position:relative}.cm-glow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse 80% 60% at 10% 100%,var(--accent-soft),transparent 70%);z-index:0}.cm-left-content{position:relative;z-index:1;display:flex;flex-direction:column;gap:16px}.cm-title{margin:0;font-size:28px;font-weight:700;color:var(--text-primary);line-height:1.2;letter-spacing:-.02em}.cm-desc{margin:0;font-size:14px;color:var(--text-secondary);line-height:1.65}.cm-info-list{display:flex;flex-direction:column;gap:8px;margin-top:4px}.cm-info-item{display:flex;align-items:center;gap:12px}.cm-info-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:0;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.cm-info-label{margin:0;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.cm-info-value{margin:2px 0 0;font-size:14px;color:var(--text-secondary)}.cm-right{padding:32px 28px;background:var(--bg-card);border-left:1px solid var(--border);display:flex;flex-direction:column;justify-content:center}.cm-form{display:flex;flex-direction:column;gap:14px;width:100%}.cm-field{display:flex;flex-direction:column;gap:6px}.cm-field label{font-size:13px;font-weight:500;color:var(--text-secondary)}.cm-field-optional{font-weight:400;color:var(--text-muted)}.cm-field input,.cm-field textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-primary);font-size:14px;padding:9px 12px;width:100%;transition:border-color .18s}.cm-field input::-moz-placeholder,.cm-field textarea::-moz-placeholder{color:var(--text-muted)}.cm-field input::placeholder,.cm-field textarea::placeholder{color:var(--text-muted)}.cm-field input:focus,.cm-field textarea:focus{outline:none;border-color:var(--border-focus)}.cm-field textarea{resize:vertical;min-height:110px}.cm-submit{margin-top:4px;width:100%;padding:12px 16px;background:var(--accent);color:var(--text-on-accent);font-size:15px;font-weight:600;border:none;border-radius:0;cursor:pointer;transition:background .18s,opacity .18s}.cm-submit:hover:not(:disabled){background:var(--accent-hover)}.cm-submit:disabled{opacity:.55;cursor:not-allowed}.cm-success{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;text-align:center;padding:24px 0}.cm-success-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.cm-success-icon svg{width:22px;height:22px;stroke:var(--accent);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.cm-success-title{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.cm-success-body{margin:0;font-size:14px;color:var(--text-secondary)}@media(max-width:640px){.cm-root{grid-template-columns:1fr;min-height:unset}.cm-right{border-left:none;border-top:1px solid var(--border);padding:24px 20px}.cm-left{padding:28px 20px 20px}.cm-title{font-size:22px}}.sp-list{list-style:none;padding:0;margin:0}.sp-list-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--border)}.sp-section-body--list{display:block;gap:0}.sp-section-body--list .sp-list-row:last-child{border-bottom:none}.sp-row-actions{display:flex;gap:8px;flex-shrink:0}.sp-nav-hint{font-size:13px;color:var(--text-muted);padding:8px 10px;margin:0}.sp-nav-item--stacked{align-items:flex-start}.sp-nav-item-text{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}.sp-nav-item-label{font-size:14px;font-weight:500;color:inherit}.sp-nav-item-meta{font-size:11px;font-weight:400;color:var(--text-muted);line-height:1.3}.sp-title-with-icon{display:inline-flex;align-items:center;gap:10px}.sp-field select{background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-primary);font-size:14px;padding:9px 12px;width:100%;max-width:480px;transition:border-color .18s}.sp-field select:focus{outline:none;border-color:var(--border-focus)}.sp-invite-box{background:var(--bg-input);border:1px solid var(--border);border-radius:0;padding:14px 16px}.sp-invite-url{display:block;font-family:var(--font-mono);font-size:12px;color:var(--text-secondary);word-break:break-all;line-height:1.5}.sp-invite-page{min-height:100dvh;background:var(--bg-app);color:var(--text-primary);font-family:var(--font-body);display:flex;align-items:center;justify-content:center;padding:24px}.sp-invite-card{width:100%;max-width:480px;margin:0}.project-shared-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .45rem;border-radius:0;background:var(--accent-soft);color:var(--accent);vertical-align:middle}.sp-page{display:grid;grid-template-columns:240px 1fr;height:100dvh;background:var(--bg-app);color:var(--text-primary);font-family:var(--font-body);overflow:hidden}.sp-nav{display:flex;flex-direction:column;background:var(--bg-sidebar);border-right:1px solid var(--border);padding:24px 16px;overflow-y:auto}.sp-back-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:6px 8px;border-radius:0;margin-bottom:24px;transition:background .15s,color .15s;width:-moz-fit-content;width:fit-content}.sp-back-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sp-nav-title{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding:0 8px;margin-bottom:8px}.sp-nav-list{display:flex;flex-direction:column;gap:2px}.sp-nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border-radius:0;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-secondary);text-align:left;transition:background .15s,color .15s}.sp-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sp-nav-item--active{background:var(--bg-active);color:var(--text-primary)}.sp-nav-item-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:0;background:var(--bg-input);color:var(--text-secondary);flex-shrink:0;transition:background .15s,color .15s}.sp-nav-item--active .sp-nav-item-icon,.sp-nav-item:hover .sp-nav-item-icon{background:var(--accent-soft);color:var(--accent)}.sp-nav-spacer{flex:1}.sp-main{overflow-y:auto;padding:48px 56px;min-height:0}.sp-content-header{margin-bottom:36px}.sp-content-title{margin:0 0 6px;font-size:26px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.sp-content-desc{margin:0;font-size:15px;color:var(--text-secondary)}.sp-section{background:var(--bg-card);border:1px solid var(--border);border-radius:0;margin-bottom:20px;overflow:hidden}.sp-section-header{padding:20px 24px 16px;border-bottom:1px solid var(--border)}.sp-section-title{margin:0 0 3px;font-size:15px;font-weight:600;color:var(--text-primary)}.sp-section-subtitle{margin:0;font-size:13px;color:var(--text-secondary)}.sp-section-body{padding:20px 24px;display:grid;gap:14px}.sp-field{display:flex;flex-direction:column;gap:6px}.sp-field label{font-size:13px;font-weight:500;color:var(--text-secondary)}.sp-field-input{max-width:480px}.sp-field textarea,.sp-sap-textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-primary);font-size:14px;padding:10px 12px;width:100%;max-width:760px;transition:border-color .18s;resize:vertical;font-family:var(--font-body)}.sp-field textarea::-moz-placeholder,.sp-sap-textarea::-moz-placeholder{color:var(--text-muted)}.sp-field textarea::placeholder,.sp-sap-textarea::placeholder{color:var(--text-muted)}.sp-field textarea:focus,.sp-sap-textarea:focus{outline:none;border-color:var(--border-focus)}.sp-field-hint{font-size:12px;color:var(--text-muted);margin-top:1px}.sp-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sp-section-footer{padding:14px 24px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:flex-end;gap:10px}.sp-btn-primary{padding:9px 20px;background:var(--accent);color:var(--text-on-accent);font-size:14px;font-weight:600;border:none;border-radius:0;cursor:pointer;transition:background .18s,opacity .18s,filter .18s}.sp-btn-primary:hover:not(:disabled){filter:brightness(1.1)}.sp-btn-primary:disabled{opacity:.5;cursor:not-allowed}.sp-btn-secondary{padding:9px 20px;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;border:1px solid var(--border);border-radius:0;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.sp-btn-secondary:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border)}.sp-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.sp-btn-danger{padding:9px 20px;background:transparent;color:var(--danger);font-size:14px;font-weight:500;border:1px solid rgba(250,77,86,.3);border-radius:0;cursor:pointer;transition:background .15s,border-color .15s}.sp-btn-danger:hover:not(:disabled){background:#fa4d5614;border-color:#fa4d5680}.sp-btn-danger:disabled{opacity:.5;cursor:not-allowed}.sp-feedback-row{display:flex;align-items:center;gap:8px;font-size:13px}.sp-feedback-row.error{color:var(--danger)}.sp-feedback-row.success{color:var(--success)}.sp-billing-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sp-billing-stat{background:var(--bg-input);border:1px solid var(--border);border-radius:0;padding:16px 18px}.sp-billing-stat-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.sp-billing-stat-value{font-size:16px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.sp-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sp-status-dot--green{background:#42be65;box-shadow:0 0 6px #42be6580}.sp-status-dot--yellow{background:#f1c21b;box-shadow:0 0 6px #f1c21b80}.sp-status-dot--red{background:var(--danger);box-shadow:0 0 6px #fa4d5680}.sp-trial-chip{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:#facc151f;color:#f1c21b;letter-spacing:.03em}.sp-cancel-note{margin:0;font-size:13px;color:#f1c21b;padding:12px 16px;background:#facc150f;border:1px solid rgba(250,204,21,.18);border-radius:0}.sp-plan-overview{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.sp-plan-overview-name{display:flex;align-items:center;gap:10px}.sp-plan-name-text{font-size:18px;font-weight:700;color:var(--text-primary)}.sp-plan-period{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.sp-plan-period-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.sp-plan-period-date{font-size:14px;font-weight:500;color:var(--text-primary)}.sp-cancel-chip{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:#fa4d561f;color:var(--danger);letter-spacing:.03em}.sp-usage-item{display:flex;flex-direction:column;gap:7px}.sp-usage-row{display:flex;justify-content:space-between;align-items:baseline}.sp-usage-label{font-size:13px;font-weight:500;color:var(--text-secondary)}.sp-usage-count{font-size:12px;font-weight:500;color:var(--text-muted);font-variant-numeric:tabular-nums}.sp-usage-track{height:5px;border-radius:999px;background:var(--bg-input);overflow:hidden}.sp-usage-fill{height:100%;border-radius:999px;background:var(--accent);transition:width .4s ease}.sp-usage-fill--warn{background:#f1c21b}.sp-feature-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.sp-feature-item{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--text-secondary);line-height:1.4}.sp-feature-check{width:16px;height:16px;flex-shrink:0;color:var(--accent);margin-top:1px}.sp-danger-zone{background:#fa4d560a;border-color:#fa4d562e}.sp-danger-zone .sp-section-header{border-bottom-color:#fa4d562e}.sp-sap-form{display:flex;flex-direction:column;gap:0}.sp-sap-modules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.sp-sap-module-chip{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--border);border-radius:0;background:var(--bg-input);padding:10px 12px;cursor:pointer;transition:border-color .15s,background .15s}.sp-sap-module-chip:hover{background:var(--bg-hover)}.sp-sap-module-chip.is-selected{border-color:var(--border-focus);background:var(--accent-soft)}.sp-sap-module-chip input{margin-top:2px}.sp-sap-module-label{display:flex;flex-direction:column;gap:2px;min-width:0}.sp-sap-module-label strong{font-size:13px;color:var(--text-primary);font-weight:600}.sp-sap-module-label small{font-size:12px;color:var(--text-secondary);line-height:1.3}.sp-sap-systems-list{display:flex;flex-direction:column;gap:10px}.sp-sap-system-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;gap:10px;align-items:center}.sp-sap-system-name,.sp-sap-system-tech{background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-primary);font-size:14px;padding:9px 12px;width:100%;max-width:100%;transition:border-color .18s}.sp-sap-system-name::-moz-placeholder{color:var(--text-muted)}.sp-sap-system-name::placeholder{color:var(--text-muted)}.sp-sap-system-name:focus,.sp-sap-system-tech:focus{outline:none;border-color:var(--border-focus)}.sp-sap-system-remove{padding:8px 10px;min-width:40px}@media(max-width:960px){.sp-page{grid-template-columns:1fr}.sp-nav{border-right:none;border-bottom:1px solid var(--border);padding:16px}.sp-nav-list{flex-direction:row;gap:4px}.sp-nav-item{flex:1;justify-content:center;font-size:13px;padding:8px 10px}.sp-nav-user,.sp-nav-title,.sp-nav-spacer{display:none}.sp-main{padding:28px 20px}.sp-billing-grid,.sp-field-grid,.sp-sap-system-row{grid-template-columns:1fr}.sp-sap-system-remove{justify-self:start}}.sap-env-page{height:100%;overflow-y:auto;padding:40px 50px;box-sizing:border-box}.sap-env-page-inner{max-width:860px}@media(max-width:768px){.sap-env-page{padding:24px 16px}}/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial}}}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.w-full{width:100%}.shrink{flex-shrink:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.items-center{align-items:center}.justify-center{justify-content:center}.overflow-x-auto{overflow-x:auto}.rounded-full{border-radius:var(--radius-full)}.rounded-none{border-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--hairline\)\]{border-color:var(--hairline)}.border-accent{border-color:var(--accent)}.border-danger{border-color:var(--danger)}.bg-\[var\(--bg-card\)\]{background-color:var(--bg-card)}.bg-\[var\(--bg-hover\)\]{background-color:var(--bg-hover)}.bg-\[var\(--bg-input\)\]{background-color:var(--bg-input)}.bg-\[var\(--success-soft\)\]{background-color:var(--success-soft)}.bg-\[var\(--text-primary\)\]{background-color:var(--text-primary)}.bg-\[var\(--warning-soft\)\]{background-color:var(--warning-soft)}.bg-accent{background-color:var(--accent)}.bg-accent-soft{background-color:var(--accent-soft)}.bg-danger{background-color:var(--danger)}.bg-transparent{background-color:#0000}.font-body{font-family:IBM Plex Sans,sans-serif}.tracking-\[0\.16px\]{--tw-tracking:.16px;letter-spacing:.16px}.tracking-\[0\.32px\]{--tw-tracking:.32px;letter-spacing:.32px}.whitespace-nowrap{white-space:nowrap}.text-\[var\(--bg-app\)\]{color:var(--bg-app)}.text-\[var\(--success\)\]{color:var(--success)}.text-\[var\(--text-primary\)\]{color:var(--text-primary)}.text-\[var\(--text-secondary\)\]{color:var(--text-secondary)}.text-\[var\(--warning\)\]{color:var(--warning)}.text-accent{color:var(--accent)}.text-danger{color:var(--danger)}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.shadow-\[inset_0_-2px_0_0_var\(--accent\)\]{--tw-shadow:inset 0 -2px 0 0 var(--tw-shadow-color,var(--accent));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-\[border-color\,box-shadow\]{transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-150{--tw-duration:.15s;transition-duration:.15s}.outline-none{--tw-outline-style:none;outline-style:none}.placeholder\:text-\[var\(--text-muted\)\]::-moz-placeholder{color:var(--text-muted)}.placeholder\:text-\[var\(--text-muted\)\]::placeholder{color:var(--text-muted)}@media(hover:hover){.hover\:bg-\[var\(--accent-hover\)\]:hover{background-color:var(--accent-hover)}.hover\:bg-accent-soft:hover{background-color:var(--accent-soft)}.hover\:text-\[var\(--text-primary\)\]:hover{color:var(--text-primary)}.hover\:opacity-90:hover{opacity:.9}}.focus\:border-accent:focus{border-color:var(--accent)}.focus\:border-danger:focus{border-color:var(--danger)}.focus\:shadow-\[0_0_0_3px_var\(--accent-soft\)\]:focus{--tw-shadow:0 0 0 3px var(--tw-shadow-color,var(--accent-soft));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:shadow-\[0_0_0_3px_var\(--danger-soft\)\]:focus{--tw-shadow:0 0 0 3px var(--tw-shadow-color,var(--danger-soft));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-accent:focus-visible{outline-color:var(--accent)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/plex-sans-300.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-sans-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plex-sans-500.woff2) format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plex-sans-600.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-mono-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plex-mono-500.woff2) format("woff2")}:root{--accent: #fe7f2d;--accent-hover: #e67e1d;--accent-soft: rgba(254, 127, 45, .14);--accent-soft-hover: rgba(254, 127, 45, .22);--bg-app: #161616;--bg-sidebar: #161616;--bg-main: #161616;--bg-card: #262626;--bg-input: #262626;--bg-hover: #333333;--bg-active: #3c3c3c;--bg-bubble-ai: #262626;--bubble-user-bg: #333333;--bubble-user-text: #f4f4f4;--border: #3c3c3c;--border-strong: #525252;--border-focus: #fe7f2d;--hairline: #3c3c3c;--hairline-strong: #f4f4f4;--text-primary: #f4f4f4;--text-secondary: #c6c6c6;--text-muted: #a8a8a8;--text-on-accent: #ffffff;--danger: #fa4d56;--danger-soft: rgba(250, 77, 86, .12);--success: #42be65;--success-soft: rgba(66, 190, 101, .12);--warning: #f1c21b;--warning-soft: rgba(241, 194, 27, .12);--font-body: "IBM Plex Sans", sans-serif;--font-mono: "IBM Plex Mono", monospace;--font-bump: 2px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 36px;--space-10: 40px;--radius-xs: 0px;--radius-sm: 0px;--radius-md: 0px;--radius-lg: 0px;--radius-xl: 0px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 2px 6px rgba(0, 0, 0, .4);--shadow-popover: 0 4px 12px rgba(0, 0, 0, .45), 0 0 0 1px rgba(255,255,255,.05);--shadow-elevated: 0 8px 24px rgba(0, 0, 0, .5), 0 0 0 1px rgba(255,255,255,.04);--nav-glass-bg: rgba(22, 22, 22, .85);--nav-menu-bg: rgba(22, 22, 22, .98);--mobile-nav-toggle-bg: rgba(22, 22, 22, .92);--overlay-scrim: rgba(0, 0, 0, .55);--scrollbar-thumb: #525252;--grid-line: rgba(254, 127, 45, .06);--code-border: #3c3c3c;--composer-bg: #161616;--composer-focus-ring: rgba(254, 127, 45, .15)}[data-theme=light]{--accent: #fe7f2d;--accent-hover: #e67e1d;--accent-soft: rgba(254, 127, 45, .1);--accent-soft-hover: rgba(254, 127, 45, .16);--bg-app: #ffffff;--bg-sidebar: #ffffff;--bg-main: #ffffff;--bg-card: #ffffff;--bg-input: #f4f4f4;--bg-hover: #e0e0e0;--bg-active: #eaecf0;--bg-bubble-ai: #f4f4f4;--bubble-user-bg: #eaecf0;--bubble-user-text: #161616;--border: #e0e0e0;--border-strong: #161616;--border-focus: #fe7f2d;--hairline: #e0e0e0;--hairline-strong: #161616;--text-primary: #161616;--text-secondary: #525252;--text-muted: #8c8c8c;--text-on-accent: #ffffff;--danger: #da1e28;--danger-soft: rgba(218, 30, 40, .08);--success: #24a148;--success-soft: rgba(36, 161, 72, .1);--warning: #f1c21b;--warning-soft: rgba(241, 194, 27, .14);--nav-glass-bg: rgba(255, 255, 255, .85);--nav-menu-bg: rgba(255, 255, 255, .99);--mobile-nav-toggle-bg: rgba(255, 255, 255, .96);--overlay-scrim: rgba(15, 23, 42, .25);--scrollbar-thumb: #c6c6c6;--grid-line: rgba(254, 127, 45, .05);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .08);--shadow-md: 0 2px 6px rgba(15, 23, 42, .1);--shadow-popover: 0 4px 12px rgba(15, 23, 42, .14), 0 0 0 1px rgba(15,23,42,.06);--shadow-elevated: 0 8px 24px rgba(15, 23, 42, .16), 0 0 0 1px rgba(15,23,42,.05);--code-border: #e0e0e0;--composer-bg: #ffffff;--composer-focus-ring: rgba(254, 127, 45, .12)}[data-theme=light] .error-banner{border-color:#dc262659;background:#dc262614;color:var(--danger)}[data-theme=light] .toast-action,[data-theme=light] .toast-close{background:var(--bg-hover);border-color:var(--border)}[data-theme=light] .app-home-label{color:var(--accent)}[data-theme=light] .app-home-card{border-color:#0f172a1a;background:#fff}[data-theme=light] .app-home-card.active:hover{border-color:#fe7f2d73;background:#fe7f2d0f}[data-theme=light] .app-home-card.coming-soon:hover{border-color:#14b8a666;background:#14b8a60f}[data-theme=light] .app-home-card small{color:#18181b85}[data-theme=light] .app-home-dot-gray{background:#18181b38}[data-theme=light] .app-home-coming-soon-label{color:#18181b59}[data-theme=light] .kg-tooltip{box-shadow:var(--shadow-popover)}[data-theme=light] .chat-send-btn{border-color:#fe7f2d59;background:var(--accent-soft);color:var(--accent)}[data-theme=light] .chat-send-btn:hover:not(:disabled){background:#fe7f2d38;border-color:#fe7f2d80}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;height:100%;min-height:100dvh;overflow:hidden;background:var(--bg-app);color:var(--text-primary);font-family:var(--font-body);font-size:calc(14px + var(--font-bump));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11"}button,input,textarea{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:0}.auth-page{min-height:100%;display:grid;place-items:center;padding:1.5rem}.auth-card{width:min(460px,100%);background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:1.5rem}.auth-card p{margin-top:.4rem;color:var(--text-secondary)}.auth-form{display:grid;gap:.45rem}.auth-form input{background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-primary);padding:.62rem .75rem}.auth-form button{margin-top:.35rem;border:1px solid rgba(254,127,45,.34);background:var(--accent-soft);color:var(--accent);border-radius:0;padding:.62rem .8rem;cursor:pointer}.auth-signup-link{margin-top:.45rem}.auth-alt-link{margin:.8rem 0 0;color:var(--text-secondary)}.auth-alt-link a{color:var(--accent);text-decoration:none}.auth-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;animation:authBackdropIn .2s ease}@keyframes authBackdropIn{0%{opacity:0}to{opacity:1}}.auth-modal-card{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:0;width:100%;max-width:400px;padding:32px 28px 28px;box-shadow:0 24px 64px #0000008c;animation:authCardIn .22s cubic-bezier(.16,1,.3,1)}@keyframes authCardIn{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-modal-close{position:absolute;top:14px;right:14px;width:28px;height:28px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s,border-color .15s}.auth-modal-close:hover{color:var(--text-primary);border-color:var(--border-focus)}.auth-modal-top{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:20px}.auth-modal-icon{width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--bg-main);display:flex;align-items:center;justify-content:center;margin-bottom:14px;overflow:hidden}.auth-modal-logo{width:26px;height:auto;-o-object-fit:contain;object-fit:contain}.auth-modal-title{font-size:19px;font-weight:700;color:var(--text-primary);margin:0 0 6px;letter-spacing:-.3px}.auth-modal-subtitle{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.5;max-width:280px}.auth-modal-tabs{display:flex;background:var(--bg-main);border:1px solid var(--border);border-radius:0;padding:3px;margin-bottom:20px;gap:2px}.auth-modal-tab{flex:1;padding:7px 12px;border-radius:0;border:none;background:transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.auth-modal-tab.active{background:var(--bg-active);color:var(--text-primary);box-shadow:inset 0 -2px 0 0 var(--accent)}.auth-modal-form{display:flex;flex-direction:column;gap:14px}.auth-modal-field{display:flex;flex-direction:column;gap:6px}.auth-modal-field label{font-size:14px;font-weight:500;color:var(--text-secondary)}.auth-modal-field-row{display:flex;align-items:center;justify-content:space-between}.auth-modal-forgot{background:none;border:none;padding:0;font-family:var(--font-body);font-size:13px;color:var(--text-muted);cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:color .15s}.auth-modal-forgot:hover{color:var(--text-secondary)}.auth-modal-error{font-size:14px;color:var(--danger, #e05252);margin:0;padding:8px 12px;background:#e0525214;border-radius:0;border:1px solid rgba(224,82,82,.18)}.auth-modal-success{font-size:14px;color:var(--success);margin:0;padding:8px 12px;background:var(--success-soft);border-radius:0;border:1px solid rgba(52,211,153,.2)}.auth-modal-submit{width:100%;padding:10px 16px;border-radius:0;border:none;background:var(--accent);color:var(--text-on-accent);font-family:var(--font-body);font-size:15px;font-weight:600;cursor:pointer;transition:opacity .15s,transform .1s;margin-top:2px}.auth-modal-submit:hover:not(:disabled){opacity:.88}.auth-modal-submit:active:not(:disabled){transform:scale(.98)}.auth-modal-submit:disabled{opacity:.5;cursor:not-allowed}.auth-modal-alt{text-align:center;font-size:14px;color:var(--text-muted);margin:0}.auth-modal-switch{background:none;border:none;padding:0;font-family:var(--font-body);font-size:14px;color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.auth-modal-switch:hover{opacity:.8}@media(max-width:480px){.auth-modal-card{padding:24px 20px 22px;border-radius:0}}:root{--sidebar-w: 260px;--sidebar-collapsed-w: 68px}.app-layout{display:grid;grid-template-columns:1fr;height:100dvh;max-height:100dvh;overflow:hidden}.sidebar-shell{position:fixed;left:0;top:0;height:100dvh;z-index:40;overflow:hidden;min-width:0}.mobile-nav-toggle{display:none}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border);display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100dvh;padding:16px 12px;gap:2px;min-height:0;overflow:hidden;box-sizing:border-box}.sidebar-scroll-area{min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:2px}.sidebar-footer{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--border);padding-top:6px}.sidebar-brand{display:flex;align-items:center;justify-content:flex-start;border-bottom:1px solid var(--border);padding:4px 4px 14px;margin-bottom:8px}.sidebar-brand-icon{display:flex;align-items:center;justify-content:center;width:100%}.sidebar-user-row--collapsed{justify-content:center;cursor:default;pointer-events:none}.sidebar-brand-wordmark,.home-brand-wordmark{display:inline-flex;align-items:baseline;flex-wrap:nowrap;font-family:var(--font-body);font-weight:700;font-size:1.28rem;line-height:1.1;letter-spacing:-.035em;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.sidebar-brand-tozen,.home-brand-tozen{color:var(--text-primary)}[data-theme=light] .sidebar-brand-tozen,[data-theme=light] .home-brand-tozen{color:#0a0a0a}.sidebar-brand-labs,.home-brand-labs{color:var(--accent)}.sidebar-beta-badge{margin-left:8px;padding:1px 6px;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--warning);border:1px solid rgba(251,191,36,.34);border-radius:0;background:#fbbf241a;line-height:1.6;flex-shrink:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sidebar-section-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--text-muted);padding:10px 10px 4px}.chat-history-btn{display:flex;align-items:center;gap:10px;width:100%;border:none;background:transparent;color:var(--text-secondary);border-radius:0;padding:9px 10px;cursor:pointer;text-align:left;font-size:14px;font-weight:500;transition:background .15s,color .15s}.chat-history-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.chat-history-btn.active{background:var(--bg-active);color:var(--text-primary);box-shadow:inset 2px 0 0 0 var(--accent)}.sidebar-nav-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:0;background:var(--bg-input);color:var(--text-secondary);flex-shrink:0;transition:background .15s,color .15s}.chat-history-btn:hover .sidebar-nav-icon,.chat-history-btn.active .sidebar-nav-icon{background:var(--accent-soft);color:var(--accent)}.new-chat-btn{display:flex;align-items:center;gap:10px;width:100%;border-radius:0;padding:9px 10px;cursor:pointer;text-align:left;font-size:14px;font-weight:600;border:1px solid transparent;transition:background .15s,border-color .15s,color .15s}.new-chat-btn-assistant{background:var(--accent-soft);color:var(--accent);border-color:#fe7f2d47}.new-chat-btn-assistant:hover{background:var(--accent-soft-hover);border-color:#fe7f2d73;color:var(--accent-hover)}.new-chat-btn-assistant .sidebar-nav-icon{background:#fe7f2d2e;color:var(--accent)}.new-chat-btn-developer{background:#fbbf2414;color:var(--warning);border-color:#fbbf2438}.new-chat-btn-developer:hover{background:#fbbf2424;border-color:#fbbf2461;color:var(--warning)}.new-chat-btn-developer .sidebar-nav-icon{background:#fbbf2424;color:var(--warning)}.chat-history-btn.sidebar-knowledge-btn{background:#a855f71a;color:#a855f7;border:1px solid rgba(168,85,247,.18)}.chat-history-btn.sidebar-knowledge-btn:hover{background:#a855f729;color:#c084fc;border-color:#a855f747}.chat-history-btn.sidebar-knowledge-btn .sidebar-nav-icon{background:#a855f726;color:#a855f7}.chat-history-btn.sidebar-knowledge-btn:hover .sidebar-nav-icon{background:#a855f738;color:#c084fc}.sidebar-nav-group{display:flex;flex-direction:column}.sidebar-nav-group-btn{position:relative}.sidebar-nav-group-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-nav-chevron{margin-left:auto;flex-shrink:0;color:var(--text-muted);transition:transform .15s ease}.sidebar-nav-chevron.open{transform:rotate(90deg)}.sidebar-nav-children{display:flex;flex-direction:column;gap:1px;padding:2px 0 4px}.sidebar-nav-child-btn{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px 7px 48px;border:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:transparent;color:var(--text-secondary);border-radius:0;cursor:pointer;font-size:13px;font-weight:400;text-align:left;transition:background .15s,color .15s}.sidebar-nav-child-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-nav-child-btn--disabled,.sidebar-nav-child-btn--disabled:hover{opacity:.45;cursor:default;background:transparent;color:var(--text-secondary)}.sidebar-nav-child-btn.active{background:var(--bg-active);color:var(--text-primary);box-shadow:inset 2px 0 0 0 var(--accent)}.sidebar-nav-child-btn svg{flex-shrink:0;color:var(--text-muted);min-width:-moz-fit-content;min-width:fit-content}.sidebar-nav-child-btn:hover svg{color:var(--accent)}.conversation-list{display:flex;flex-direction:column;gap:1px;min-height:0;overflow:auto}.conversation-item{border-radius:0;display:flex;align-items:center;flex-wrap:nowrap;gap:4px;color:var(--text-muted);transition:background .18s ease,color .18s ease;padding:1px 2px}.conversation-item:hover{background:var(--bg-hover);color:var(--text-secondary)}.conversation-item.active{background:var(--bg-active);color:var(--text-primary)}.conversation-select-btn{flex:1;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;padding:7px 9px;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-row-menu-wrap{position:relative;display:inline-flex;align-items:center;flex-shrink:0}.conversation-row-menu-wrap .chats-manager-menu-trigger{width:26px;height:24px;padding:0;font-size:13px;line-height:1;border-radius:0}.conv-actions{display:inline-flex;align-items:center;gap:2px;flex-shrink:0}.conv-action-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:0;border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:background .12s,color .12s,border-color .12s;padding:0}.conv-action-btn:hover{background:#ffffff12;color:var(--text-secondary);border-color:var(--border)}.conv-action-btn--delete:hover{background:#ef44441a;color:#ef4444;border-color:#ef444433}.conversation-item .conv-action-btn{opacity:0}.conversation-item:hover .conv-action-btn,.conversation-item.active .conv-action-btn{opacity:1}.chats-manager-menu-portal.chats-manager-menu{right:auto;top:auto;width:-moz-max-content;width:max-content;min-width:100px;max-width:220px}.chats-manager-menu-portal{border-radius:0;overflow:hidden;border:1px solid var(--border);background:var(--bg-card);box-shadow:0 0 0 1px #ffffff0f,0 18px 50px #00000059,0 6px 16px #00000038}[data-theme=light] .chats-manager-menu-portal{border-color:#0f172a1f;box-shadow:0 0 0 1px #0f172a0f,0 20px 56px #0f172a29,0 8px 20px #0f172a1a}.chats-manager-menu-portal button{padding:7px 11px;font-size:13px;font-weight:500}.chats-manager-menu-portal button.danger:hover{color:#fecaca;background:#ff6b6b2e}[data-theme=light] .chats-manager-menu-portal button.danger:hover{color:#b91c1c;background:#dc26261a}.conversation-inline-rename{width:100%;display:flex;align-items:center;gap:8px;padding:4px}.conversation-inline-action{border:1px solid rgba(254,127,45,.35);background:#fe7f2d29;color:var(--accent);border-radius:0;padding:6px 10px;cursor:pointer;font-size:13px}.conversation-inline-action.danger{border-color:#ff6b6b73;color:#ffb3b3;background:#ff6b6b1f}.rename-btn{border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:18px;line-height:1;padding:5px 7px;border-radius:0}.rename-btn:hover{color:var(--text-secondary);background:var(--bg-hover)}.delete-btn{border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:17px;line-height:1;padding:5px 6px;border-radius:0}.delete-btn:hover{color:#ff8f8f;background:#ff6b6b1f}.delete-confirm{width:100%;display:flex;align-items:center;gap:6px;padding:2px 9px 8px;color:var(--text-secondary)}.conversation-rename-input{width:100%;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-focus);border-radius:0;padding:6px 8px;font-size:14px}.sidebar-spacer{flex:1}.sidebar-user-row{position:relative;display:flex;align-items:center;gap:10px;width:100%;padding:10px 8px;border-top:1px solid var(--border);cursor:pointer;transition:background .15s;border-radius:0}.sidebar-user-row:hover{background:var(--bg-hover)}.sidebar-avatar{width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.sidebar-user-info{min-width:0;flex:1}.sidebar-user{color:var(--text-primary);font-size:13px;font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-email{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.settings-icon-btn{border:none;background:transparent;color:var(--text-muted);border-radius:0;width:28px;height:28px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;transition:background .15s,color .15s}.settings-icon-btn:hover{color:var(--text-primary);background:var(--bg-active)}.settings-popover{position:absolute;right:0;bottom:calc(100% + 6px);z-index:20;min-width:220px;border:1px solid var(--border);background:var(--bg-card);border-radius:0;display:grid;overflow:hidden;box-shadow:var(--shadow-popover)}.settings-popover-theme{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--border)}.settings-popover-theme-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--text-secondary)}.theme-switch{position:relative;width:44px;height:24px;border-radius:999px;border:1px solid var(--border);background:var(--bg-input);cursor:pointer;flex-shrink:0;padding:0;transition:background .2s ease,border-color .2s ease}.theme-switch:hover{border-color:var(--border-focus)}.theme-switch[aria-checked=true]{background:var(--accent-soft);border-color:#fe7f2d73}[data-theme=light] .theme-switch[aria-checked=true]{border-color:#fe7f2d66}.theme-switch-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--text-primary);transition:transform .2s ease;box-shadow:0 1px 3px #0003}.theme-switch[aria-checked=true] .theme-switch-thumb{transform:translate(20px)}.settings-popover-item{display:flex;align-items:center;gap:10px;border:none;background:transparent;color:var(--text-secondary);text-align:left;padding:10px 14px;cursor:pointer;font-size:14px;transition:background .15s,color .15s}.settings-popover-item:hover{color:var(--text-primary);background:var(--bg-hover)}.logout-btn{display:flex;align-items:center;gap:10px;width:100%;border:none;background:transparent;color:var(--text-muted);border-radius:0;padding:9px 10px;cursor:pointer;font-size:14px;font-weight:500;text-align:left;transition:background .15s,color .15s}.logout-btn:hover{background:#ff6b6b14;color:#ff8f8f}.logout-btn .sidebar-nav-icon{color:var(--text-muted);transition:background .15s,color .15s}.logout-btn:hover .sidebar-nav-icon{background:#ff6b6b1f;color:#ff8f8f}.logout-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;background:var(--overlay-scrim);display:flex;align-items:center;justify-content:center;animation:logout-backdrop-in .15s ease-out}@keyframes logout-backdrop-in{0%{opacity:0}to{opacity:1}}.logout-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:28px 28px 24px;width:min(340px,calc(100vw - 32px));display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:var(--shadow-elevated);animation:logout-modal-in .18s cubic-bezier(.16,1,.3,1)}@keyframes logout-modal-in{0%{opacity:0;transform:scale(.93) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.logout-modal-icon{width:48px;height:48px;border-radius:0;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.2);color:#ff8f8f;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.logout-modal-title{margin:0;font-size:17px;font-weight:700;color:var(--text-primary)}.logout-modal-body{margin:0;font-size:13px;color:var(--text-muted);text-align:center;line-height:1.5}.logout-modal-actions{display:flex;gap:8px;margin-top:8px;width:100%}.logout-modal-cancel,.logout-modal-confirm{flex:1;padding:9px 16px;font-size:14px;font-weight:600;font-family:var(--font-body);border-radius:0;border:1px solid var(--border);cursor:pointer;transition:background .12s,border-color .12s}.logout-modal-cancel{background:var(--bg-hover);color:var(--text-primary)}.logout-modal-cancel:hover{background:var(--bg-active)}.logout-modal-confirm{background:#ff6b6b26;color:#ff8f8f;border-color:#ff6b6b4d}.logout-modal-confirm:hover{background:#ff6b6b40}[data-theme=light] .logout-modal-confirm{color:#dc2626;border-color:#dc26264d;background:#dc262614}[data-theme=light] .logout-modal-confirm:hover{background:#dc262629}[data-theme=light] .logout-modal-icon{color:#dc2626;background:#dc262614;border-color:#dc262633}.chat-main{background:var(--bg-main);display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;overflow:hidden;padding:50px;gap:10px;margin-left:var(--sidebar-collapsed-w)}@media(max-width:1100px){.chat-main{padding:24px}}.chat-header{padding:18px 28px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.chat-header h1{margin:0;font-size:55px;font-weight:300;letter-spacing:-.02em;text-align:center}.chat-header p{margin:0;font-size:19px;color:var(--text-secondary);text-align:center}.chat-empty-state{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:0 16px}.chat-header.chat-header-empty{padding:0}.error-banner{margin:0 28px;border:1px solid rgba(255,107,107,.45);background:#ff6b6b1a;color:#ffb1b1;border-radius:0;padding:8px 10px}.loading-text{margin:15px 28px;color:var(--text-secondary)}.chat-window{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:22px 0;display:flex;flex-direction:column;gap:12px}@keyframes msgEnter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.message-row{display:flex;padding:6px 28px;animation:msgEnter .22s ease-out both}.message-row.user{justify-content:flex-end}.message-row.assistant{justify-content:flex-start}.message-bubble{line-height:1.65}.message-bubble.user{max-width:800px;background:var(--bubble-user-bg);color:var(--bubble-user-text);border-radius:0;padding:10px 15px;font-size:15px}.message-bubble.user p{margin:0}.message-bubble.assistant{width:min(780px,100%);background:transparent;border:none;border-left:2px solid var(--hairline);border-radius:0;padding:16px 20px;font-size:15px;display:flex;flex-direction:column;gap:8px}.message-tools{display:flex;justify-content:flex-start;gap:4px;margin-top:4px}.message-tool-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;background:transparent;color:var(--text-secondary);border-radius:0;padding:0;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease;flex-shrink:0}.message-tool-btn:hover{color:var(--text-primary);background:#ffffff12;border-color:var(--border)}@media(pointer:coarse){.message-tools{gap:8px}.message-tool-btn,.chat-attach-img-btn{width:40px;height:40px}}.message-tool-btn--active-up{color:var(--success);background:#42be651a;border-color:#42be654d}.message-tool-btn--active-up:hover{color:var(--success);background:var(--success-soft);border-color:#42be6566}.message-tool-btn--active-down{color:var(--danger);background:var(--danger-soft);border-color:#fa4d564d}.message-tool-btn--active-down:hover{color:var(--danger);background:var(--danger-soft);border-color:#fa4d5666}.message-bubble.assistant h1,.message-bubble.assistant h2,.message-bubble.assistant h3,.message-bubble.assistant p{margin:0}.streaming-text{white-space:pre-wrap}.searching-text{opacity:.6;font-style:italic}.message-bubble.assistant ul,.message-bubble.assistant ol{margin:0;padding-left:20px}.message-bubble.assistant code{font-family:var(--font-mono);font-size:16.5px;background:var(--bg-input);border:1px solid var(--border);border-radius:0;padding:1px 5px}.message-bubble.assistant pre{background:var(--bg-input);border:1px solid var(--border);border-radius:0;padding:10px;overflow-x:auto}.message-bubble.assistant .md-table-wrap{overflow-x:auto;max-width:100%}.message-bubble.assistant table{border-collapse:collapse;font-size:14px;white-space:nowrap}.message-bubble.assistant th,.message-bubble.assistant td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--border)}.message-bubble.assistant th{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--hairline);white-space:nowrap}.message-bubble.assistant pre code{border:none;background:transparent;padding:0}.message-sources{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.sources-label{font-size:14px;color:var(--text-secondary);font-weight:500;margin-bottom:6px}.sources-list{display:flex;flex-wrap:wrap;gap:6px}.source-tag{font-size:13px;padding:3px 8px;background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-secondary)}.source-tag--user{background:#ec489914;border-color:#ec48994d;color:#ec4899}@keyframes dotBounce{0%,60%,to{transform:translateY(0);opacity:.35}30%{transform:translateY(-5px);opacity:1}}.dot-loader{display:flex;gap:5px;align-items:center;padding:6px 2px}.dot-loader span{width:6px;height:6px;border-radius:50%;background:var(--text-secondary);animation:dotBounce 1.2s ease-in-out infinite}.dot-loader span:nth-child(2){animation-delay:.2s}.dot-loader span:nth-child(3){animation-delay:.4s}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.streaming-text:after{content:"▋";display:inline;margin-left:1px;animation:cursorBlink .75s step-end infinite;color:var(--text-secondary)}.typing-chip{display:inline-flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid var(--border);border-radius:999px;padding:6px 10px;max-width:-moz-fit-content;max-width:fit-content}.thinking-chip{padding:7px 12px}.typing-loader{display:inline-block}.thinking-text{font-style:italic;color:var(--text-secondary);display:inline-block;background:linear-gradient(90deg,#8c8c8c66,#f0f0f0d9 45%,#8c8c8c66);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:thinking-glide 1.6s linear infinite}@keyframes thinking-glide{0%{background-position:200% 0}to{background-position:-200% 0}}.chat-input-container{border-top:1px solid var(--border);padding:14px 28px 20px;display:flex;flex-direction:column;align-items:center;gap:12px}.chat-input-container>*{width:100%;max-width:820px}.kb-badge{display:inline-block;border:1px solid #4DA8D44D;background:#4da8d41a;color:var(--accent);border-radius:999px;font-size:16px;padding:4px 10px;width:-moz-fit-content;width:fit-content}.chat-input-row{display:flex;align-items:center;background:transparent;border:none;border-radius:0;padding:0;gap:8px}.chat-composer-card{background:var(--composer-bg);border:none;border-top:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0;padding:8px 12px;transition:border-color .18s ease,box-shadow .18s ease}.chat-composer-card:focus-within{border-top-color:var(--border-focus);border-bottom-color:var(--border-focus);box-shadow:0 0 0 3px var(--composer-focus-ring)}.chat-input-field{flex:1;border:none;background:transparent;color:var(--text-primary);outline:none;font-size:19px;font-family:var(--font-body);line-height:22px;min-height:42px;max-height:152px;padding:10px 8px;margin:0;display:block;resize:none;overflow-y:auto}.chat-input-field::-moz-placeholder{color:var(--text-muted)}.chat-input-field::placeholder{color:var(--text-muted)}.chat-send-btn{width:42px;height:42px;border-radius:0;border:1px solid #d9d9d9;background:#efefef;color:#121212;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;align-self:center;transition:background .15s ease,transform .1s ease,opacity .15s ease}.chat-send-btn:hover:not(:disabled){background:#fff}.chat-send-btn:active:not(:disabled){transform:scale(.88)}.chat-send-btn:disabled{opacity:.45;cursor:not-allowed}.chat-attach-wrap{position:relative;flex-shrink:0;align-self:center}.chat-attach-img-btn{position:relative;width:32px;height:32px;border-radius:50%;border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .15s ease,background .15s ease,border-color .15s ease}.chat-attach-img-btn:hover:not(:disabled){color:var(--accent);background:var(--accent-soft);border-color:#fe7f2d4d}.chat-attach-img-btn:disabled{opacity:.35;cursor:not-allowed}.chat-attach-img-btn--active{color:var(--accent)}.chat-attach-img-btn--active:after{content:"";position:absolute;top:2px;right:2px;width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 1.5px var(--composer-bg)}.chat-attach-menu{position:absolute;bottom:calc(100% + 6px);left:0;background:var(--bg-card);border:1px solid var(--border);border-radius:0;min-width:220px;z-index:50;box-shadow:var(--shadow-popover);padding:6px;display:flex;flex-direction:column;gap:2px}.chat-attach-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:0;border:none;background:transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:14px;text-align:left;cursor:pointer;transition:background .12s,color .12s}.chat-attach-menu-item:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.chat-attach-menu-item:disabled{opacity:.4;cursor:not-allowed}.chat-attach-menu-item.active{color:var(--accent)}.chat-attach-menu-check{margin-left:auto;color:var(--accent);flex-shrink:0}.chat-composer-card--with-images{border-radius:0;padding:10px 12px 8px}.chat-composer-card--drag-over{border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--composer-focus-ring)!important}.chat-image-previews{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:8px}.chat-image-preview{position:relative;display:inline-block}.chat-image-thumb{width:64px;height:64px;-o-object-fit:cover;object-fit:cover;border-radius:0;border:1px solid var(--border);display:block}.chat-image-remove{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;background:var(--bg-sidebar);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1;transition:background .12s ease,color .12s ease}.chat-image-remove:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.chat-drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:#fe7f2d14;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--accent);font-size:13px;font-weight:500;pointer-events:none;z-index:2}.chat-composer-card{position:relative}.message-images{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.message-image-btn{display:block;padding:0;border:none;background:none;cursor:zoom-in;border-radius:0;line-height:0;transition:opacity .15s ease,transform .15s ease}.message-image-btn:hover{opacity:.92;transform:scale(1.02)}.message-image-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.message-images .message-image-thumb{max-width:240px;max-height:200px;border-radius:0;-o-object-fit:cover;object-fit:cover;border:1px solid rgba(255,255,255,.15);display:block;pointer-events:none}.image-lightbox-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:#000000d1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:zoom-out;animation:image-lightbox-in .18s ease}@keyframes image-lightbox-in{0%{opacity:0}to{opacity:1}}.image-lightbox-close{position:fixed;top:16px;right:16px;z-index:10001;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:#00000080;color:#fff;cursor:pointer;transition:background .15s ease}.image-lightbox-close:hover{background:#000000bf}.image-lightbox-img{max-width:min(96vw,1400px);max-height:92dvh;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:0;box-shadow:0 8px 40px #00000073;cursor:default}.message-documents{display:flex;flex-direction:column;gap:8px;margin-top:12px;margin-bottom:4px}.message-document-card{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:0;border:1px solid var(--border);background:var(--bg-input);text-decoration:none;color:var(--text-primary);transition:border-color .15s ease,background .15s ease;cursor:pointer}.message-document-card:hover{border-color:var(--accent);background:var(--accent-soft)}.message-document-card--excel .message-document-card__icon{color:#1d6f42}.message-document-card--word .message-document-card__icon{color:#2b579a}.message-document-card__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.message-document-card__name{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-document-card__meta{font-size:11px;color:var(--text-muted)}.message-document-card__dl{color:var(--text-muted);flex-shrink:0}.message-document-card:hover .message-document-card__dl{color:var(--accent)}[data-theme=light] .message-images .message-image-thumb{border-color:#0000001a}.error-text{color:var(--danger)}.success-text{color:#7cd9a5}.page-placeholder{padding:28px}.page-placeholder h1{margin:0;font-size:20px}.page-placeholder p{margin-top:8px;color:var(--text-secondary)}.settings-form{display:grid;gap:10px;max-width:520px}.settings-form label{color:#b7b1aa}.settings-form input{background:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);border-radius:0;padding:10px 12px}.settings-form button{width:-moz-fit-content;width:fit-content;border:1px solid rgba(254,127,45,.35);background:#fe7f2d29;color:var(--accent);border-radius:0;padding:8px 12px;cursor:pointer}.settings-single-page{padding:22px 28px}.settings-single-page h1{margin:0;font-size:21px}.settings-single-page p{margin:6px 0 14px;color:var(--text-secondary)}.offline-banner{position:fixed;top:0;left:0;right:0;z-index:90;padding:calc(6px + env(safe-area-inset-top)) 12px 6px;background:var(--warning-soft);color:var(--text-primary);border-bottom:1px solid var(--warning);font-size:13px;text-align:center}.toast{position:fixed;right:24px;bottom:24px;z-index:50;display:flex;align-items:center;gap:10px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);border-radius:0;padding:10px 12px;box-shadow:var(--shadow-elevated);animation:toast-in .25s ease}.toast.toast-exit{animation:toast-out .6s ease forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(24px)}}.toast-action,.toast-close{border:1px solid var(--border);background:#ffffff0d;color:var(--text-primary);border-radius:0;cursor:pointer}.toast-action{padding:4px 9px}.toast-close{width:26px;height:26px}.home-page{min-height:100dvh;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;background:transparent}.home-topnav{position:sticky;top:0;z-index:40;width:100%;border-bottom:1px solid var(--border);background:var(--nav-glass-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.home-topnav-inner{max-width:1080px;margin:0 auto;padding:0 28px;height:58px;display:flex;align-items:center;justify-content:space-between;gap:24px}.home-topnav-links{display:flex;align-items:center;gap:4px;flex:1;justify-content:center}.home-topnav-link{border:none;background:transparent;color:var(--text-secondary);font-size:16px;padding:6px 12px;border-radius:0;cursor:pointer;transition:color .16s ease,background .16s ease}.home-topnav-link:hover{color:var(--text-primary);background:#ffffff0d}.home-topnav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.home-topnav-login{border:1px solid var(--border);background:#ffffff0a;color:var(--text-primary);font-size:16px;padding:6px 16px;border-radius:0;cursor:pointer;transition:background .16s ease}.home-topnav-login:hover{background:#ffffff17}.home-topnav-hamburger{display:none;border:1px solid var(--border);background:#ffffff0a;color:var(--text-primary);border-radius:0;width:36px;height:36px;cursor:pointer;align-items:center;justify-content:center;padding:0}.home-topnav-login--mobile{display:none}.home-hero-section{display:flex;flex-direction:column;align-items:center;text-align:center;padding:80px 28px 48px;max-width:760px;margin:0 auto;width:100%}.home-hero-eyebrow{margin:0 0 18px;font-size:14px;color:#fe7f2db3;letter-spacing:.16em;text-transform:uppercase}.home-hero-heading{margin:0 0 18px;font-size:clamp(42px,7vw,72px);font-weight:300;line-height:1.03;letter-spacing:-.03em;color:var(--text-primary)}.home-hero-sub{margin:0 0 36px;font-size:20px;color:var(--text-secondary);max-width:52ch;line-height:1.6}.home-hero-ctas{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}.home-cta-primary{background:var(--accent);color:#0d1e26;font-size:17px;font-weight:600;border:none;border-radius:0;padding:12px 28px;cursor:pointer;transition:background .16s ease}@media(hover:hover)and (pointer:fine){.home-cta-primary:hover{background:#3490b8;color:#e8f4fb}}.home-cta-secondary{background:transparent;color:var(--text-secondary);font-size:17px;border:none;padding:12px 16px;cursor:pointer;border-radius:0;transition:color .16s ease}.home-cta-secondary:hover{color:var(--text-primary)}.home-preview-wrap{width:100%;max-width:960px;margin:0 auto;padding:0 24px;-webkit-mask-image:linear-gradient(to bottom,black 55%,transparent 100%);mask-image:linear-gradient(to bottom,black 55%,transparent 100%);overflow:visible}.home-preview-perspective{perspective:1200px}.home-preview-rotate{transform:rotateX(20deg);transform-origin:top center;transform-style:preserve-3d}.home-preview-skew{border-radius:0;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow-elevated)}.app-mock{display:flex;background:#111113;min-height:420px;font-family:var(--font-body)}.app-mock-sidebar{width:200px;flex-shrink:0;background:#161618;border-right:1px solid rgba(255,255,255,.06);padding:16px 12px;display:flex;flex-direction:column;gap:10px}.app-mock-logo{width:100px;height:18px;background:#ffffff1f;border-radius:0;margin-bottom:8px}.app-mock-nav-item{height:30px;background:#ffffff0f;border-radius:0}.app-mock-nav-item--dim{background:#ffffff08}.app-mock-spacer{flex:1}.app-mock-user{height:28px;background:#ffffff0d;border-radius:0}.app-mock-main{flex:1;padding:32px 36px;display:flex;flex-direction:column;align-items:center;gap:6px}.app-mock-label{margin:0;font-size:12px;color:#fe7f2d8c;letter-spacing:.16em;text-transform:uppercase}.app-mock-title{margin:0 0 20px;font-size:27px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.app-mock-grid{width:100%;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.app-mock-card{border:1px solid rgba(255,255,255,.07);border-radius:0;padding:18px 20px 22px;display:flex;flex-direction:column;gap:8px;position:relative;min-height:120px}.app-mock-card--active{background:#ffffff0a}.app-mock-card--dim{background:#ffffff05;opacity:.5}.app-mock-badge{display:inline-block;width:-moz-fit-content;width:fit-content;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;padding:3px 8px;border-radius:0}.app-mock-badge--orange{background:#fe7f2d26;color:var(--accent);border:1px solid rgba(254,127,45,.25)}.app-mock-badge--blue{background:#fe7f2d1a;color:var(--accent);border:1px solid rgba(254,127,45,.2)}.app-mock-desc{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.5}.app-mock-dot{position:absolute;bottom:16px;right:16px;width:8px;height:8px;border-radius:50%}.app-mock-dot--green{background:#3ccb79;box-shadow:0 0 6px #3ccb7980}.app-mock-dot--gray{background:#fff3}.home-footer{margin-top:auto;display:grid;justify-items:center;gap:8px;padding:20px 24px 28px}.home-nav-links{display:flex;align-items:center;justify-content:center;gap:10px}.home-nav-links a,.home-nav-links button{text-decoration:none;border:1px solid var(--border);background:#ffffff08;color:var(--text-secondary);border-radius:0;padding:6px 12px;cursor:pointer;font-size:15px;transition:color .16s ease,background .16s ease}.home-nav-links a:hover,.home-nav-links button:hover{color:var(--text-primary);background:#ffffff12}.info-modal-content{display:grid;gap:10px}.info-modal-intro{margin:0 0 2px;color:var(--text-secondary)}.accordion-list{display:grid;gap:8px}.accordion-item{border:1px solid var(--border);border-radius:0;background:#ffffff08;padding:9px 11px}.accordion-item summary{cursor:pointer;font-weight:500;color:var(--text-primary)}.accordion-item p{margin:8px 0 0;color:var(--text-secondary)}.info-modal-content label{margin-top:4px;color:var(--text-secondary)}.info-modal-content input,.info-modal-content textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-primary);padding:10px 12px;resize:vertical}.info-mailto{display:inline-flex;width:-moz-fit-content;width:fit-content;margin-top:6px;text-decoration:none}.modal-content--wide .modal-body{padding:0}.contact-card{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:440px}.contact-card-corner{position:absolute;color:#ffffff2e;pointer-events:none}.contact-card-corner--tl{top:-8px;left:-8px}.contact-card-corner--tr{top:-8px;right:-8px}.contact-card-corner--bl{bottom:-8px;left:-8px}.contact-card-corner--br{bottom:-8px;right:-8px}.contact-card-left{padding:36px 32px;display:flex;flex-direction:column;gap:16px}.contact-card-title{margin:0;font-size:31px;font-weight:700;color:var(--text-primary);line-height:1.2}.contact-card-desc{margin:0;font-size:15px;color:var(--text-secondary);line-height:1.65;max-width:340px}.contact-card-info-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.contact-card-info-item{display:flex;align-items:center;gap:12px;padding:10px 0}.contact-card-info-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:0;background:#ffffff0d;color:var(--text-secondary);flex-shrink:0}.contact-card-info-label{margin:0;font-size:14px;font-weight:500;color:var(--text-primary)}.contact-card-info-value{margin:2px 0 0;font-size:13px;color:var(--text-secondary)}.contact-card-right{padding:36px 28px;background:#ffffff06;border-left:1px solid var(--border);display:flex;flex-direction:column;justify-content:center;border-radius:0}.contact-card-form{display:flex;flex-direction:column;gap:14px;width:100%}.contact-card-field{display:flex;flex-direction:column;gap:6px}.contact-card-field label{font-size:14px;font-weight:500;color:var(--text-secondary)}.contact-card-optional{font-weight:400;opacity:.65}.contact-card-field input,.contact-card-field textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-primary);font-size:15px;padding:9px 12px;transition:border-color .15s;width:100%;box-sizing:border-box}.contact-card-field input:focus,.contact-card-field textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--composer-focus-ring)}.contact-card-field textarea{resize:vertical;min-height:100px}.contact-card-submit{margin-top:4px;width:100%;padding:11px 16px;background:var(--accent);color:var(--text-on-accent);border:none;border-radius:0;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s}.contact-card-submit:hover:not(:disabled){background:var(--accent-hover)}.contact-card-submit:disabled{opacity:.6;cursor:not-allowed}.contact-card-success{display:flex;align-items:center;justify-content:center;height:100%;text-align:center}.contact-card-success p{color:var(--text-secondary);font-size:16px}@media(max-width:768px){.contact-card{grid-template-columns:1fr;min-height:unset}.contact-card-right{border-left:none;border-top:1px solid var(--border);border-radius:0;padding:24px 20px}.contact-card-left{padding:28px 20px 20px}.contact-card-title{font-size:25px}.contact-card-corner--bl,.contact-card-corner--br{display:none}}.home-powered-by{display:inline-flex;justify-self:center;align-items:center;gap:8px;font-size:12px;color:#e2e2e26b;letter-spacing:.06em;text-transform:uppercase}.home-powered-by-logo{width:72px;height:auto;-o-object-fit:contain;object-fit:contain;opacity:.4}.primary-cta,.secondary-cta{border-radius:0;padding:10px 14px;cursor:pointer}.primary-cta{border:1px solid var(--border-focus);background:var(--accent-soft);color:var(--accent)}.secondary-cta{border:1px solid var(--border);background:var(--bg-hover);color:var(--text-primary)}.billing-page{padding:24px 28px}.subscribe-page{height:100dvh;display:flex;flex-direction:column;align-items:center;overflow-y:auto;padding:48px 24px 64px}.subscribe-shell{width:min(880px,100%);display:grid;gap:20px}.subscribe-header{display:grid;gap:6px}.subscribe-header h1{margin:0;font-size:29px;font-weight:600}.subscribe-subtitle{margin:0;color:var(--text-secondary);font-size:16px}.subscribe-banner{padding:12px 16px;border-radius:0;font-size:15px;font-weight:500}.subscribe-banner--success{background:#3ccb791f;border:1px solid rgba(60,203,121,.3);color:#3ccb79}.subscribe-banner--warning{background:#f4c1451a;border:1px solid rgba(244,193,69,.3);color:#f4c145}.billing-toggle{display:inline-flex;background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:4px;gap:4px;width:-moz-fit-content;width:fit-content}.billing-toggle-btn{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;border:none;border-radius:0;background:transparent;color:var(--text-secondary);font-size:15px;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.billing-toggle-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.billing-toggle-btn--active{background:var(--bg-active);color:var(--text-primary)}.billing-toggle-badge{font-size:12px;font-weight:600;padding:2px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent);letter-spacing:.01em}.subscribe-usage-summary{display:grid;gap:12px;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:0}.subscribe-usage-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px}.subscribe-usage-label{font-size:13px;color:var(--text-secondary)}.subscribe-usage-bar-wrap{width:100px;height:6px;background:var(--bg-hover);border-radius:999px;overflow:hidden}.subscribe-usage-bar{display:block;height:100%;background:var(--accent);border-radius:999px;transition:width .3s ease}.subscribe-usage-count{font-size:12px;font-weight:600;color:var(--text-muted);white-space:nowrap}.subscribe-plan-grid{display:grid}.subscribe-plan-grid--compare{grid-template-columns:1fr 1fr;gap:16px}@media(max-width:768px){.subscribe-plan-grid--compare{grid-template-columns:1fr}}.subscribe-plan-card{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:24px;display:grid;gap:20px}.subscribe-plan-card--pro{border-color:#fe7f2d8c;box-shadow:0 0 0 1px #fe7f2d33,0 8px 28px #fe7f2d14;background:linear-gradient(160deg,var(--bg-card) 60%,rgba(254,127,45,.05) 100%)}.plan-current-badge{font-size:12px;font-weight:600;padding:2px 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent);border:1px solid rgba(254,127,45,.3)}.plan-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.plan-card-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.plan-card-name{font-size:19px;font-weight:600}.plan-trial-badge{font-size:13px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);border:1px solid var(--border-focus)}.plan-card-price{display:flex;align-items:baseline;gap:2px;white-space:nowrap}.plan-price-amount{font-size:31px;font-weight:700;letter-spacing:-.02em}.plan-price-period{font-size:15px;color:var(--text-secondary)}.plan-billed-note{margin:-12px 0 0;font-size:14px;color:var(--text-secondary)}.plan-features{list-style:none;margin:0;padding:0;display:grid;gap:10px}.plan-features li{display:flex;align-items:center;gap:10px;font-size:15px;color:var(--text-secondary)}.plan-feature-icon{width:16px;height:16px;flex-shrink:0;color:var(--accent)}.plan-card-cta{width:100%;text-align:center;padding:13px;font-size:16px;font-weight:600}.plan-card-cta--current{opacity:.45;cursor:default}.plan-fine-print{margin:-8px 0 0;font-size:13px;color:var(--text-muted);text-align:center;line-height:1.5}.subscribe-error{margin:0}.subscribe-security-note{margin:0;font-size:14px;color:var(--text-muted);text-align:center}.subscribe-security-note a{color:var(--text-secondary);text-decoration:underline;text-underline-offset:2px}.subscribe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.subscribe-card{border:1px solid var(--border);border-radius:0;padding:16px;display:grid;gap:10px;background:var(--bg-card)}.subscribe-card-dev{border-color:#fe7f2d59}.billing-page h1{margin:0 0 14px}.billing-summary{display:grid;gap:2px;margin-bottom:18px;border:1px solid var(--border);border-radius:0;overflow:hidden}.billing-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid var(--border)}.billing-row:last-child{border-bottom:none}.billing-label{font-size:14px;color:var(--text-secondary)}.billing-trial-chip{font-size:12px;font-weight:600;padding:2px 8px;border-radius:999px;background:#fe7f2d26;color:var(--accent);border:1px solid rgba(254,127,45,.25)}.billing-cancel-note{margin:0;padding:10px 14px;font-size:13px;color:var(--text-secondary);background:#f4c14512;border-top:1px solid rgba(244,193,69,.2)}.billing-actions{display:grid;gap:10px}.status-light-row{display:inline-flex;align-items:center;gap:8px}.status-light-dot{width:10px;height:10px;border-radius:999px;display:inline-block}.status-light-dot.green{background:#3ccb79;box-shadow:0 0 8px #3ccb798c}.status-light-dot.yellow{background:#f4c145;box-shadow:0 0 8px #f4c1458c}.status-light-dot.red{background:#ff6b6b;box-shadow:0 0 8px #ff6b6b8c}.status-light-label{font-size:16px;color:var(--text-secondary)}.app-home{min-height:0;height:100%;display:grid;align-content:center;justify-items:center;gap:22px;padding:24px}.app-home-label{margin:0;font-size:15px;color:#fe7f2d99;letter-spacing:.16em;text-transform:uppercase;text-align:center}.app-home h1{margin:0;font-size:36px;font-weight:400;letter-spacing:.01em;text-align:center}.app-home-grid{width:min(760px,100%);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr 1fr;min-height:400px;gap:16px}.app-home-card{border:1px solid rgba(255,255,255,.07);border-radius:0;background:#ffffff0a;color:var(--text-primary);padding:22px 24px 28px;display:grid;align-content:start;gap:10px;text-align:left;cursor:pointer;position:relative;transition:border-color .25s,background .25s}.app-home-card.active:hover{border-color:#fe7f2d66;background:#fe7f2d0d}.app-home-card.coming-soon{cursor:default;opacity:.55}.app-home-card.coming-soon:hover{opacity:.7;border-color:#14b8a64d;background:#14b8a60a}.app-home-badge{display:inline-block;width:-moz-fit-content;width:fit-content;font-size:13px;font-weight:600;letter-spacing:.07em;padding:4px 10px;border-radius:0;margin-bottom:10px;text-transform:uppercase}.app-home-badge-orange{background:#fe7f2d26;color:var(--accent);border:1px solid rgba(254,127,45,.28)}.app-home-badge-blue{background:#fbbf241a;color:var(--warning);border:1px solid rgba(251,191,36,.22)}.app-home-badge-purple{background:#a855f71a;color:#a855f7;border:1px solid rgba(168,85,247,.22)}.app-home-badge-teal{background:#14b8a61a;color:#14b8a6;border:1px solid rgba(20,184,166,.22)}.app-home-card small{font-size:17px;color:#ffffff59}.app-home-status-dot{position:absolute;bottom:16px;right:18px;width:11px;height:11px;border-radius:50%}.app-home-dot-green{background:#3ecf6e;box-shadow:0 0 6px #3ecf6eb3}.app-home-dot-gray{background:#ffffff2e}.app-home-coming-soon-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#ffffff47;margin-top:auto}.tutorial-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9900;pointer-events:none}.tutorial-panel{position:fixed;background:#000000b8;pointer-events:all}.tutorial-highlight{position:fixed;border-radius:0;box-shadow:0 0 0 3px #fe7f2db3,0 0 0 6px #fe7f2d33;pointer-events:none;z-index:9901;transition:top .25s ease,left .25s ease,width .25s ease,height .25s ease}.tutorial-tooltip{position:fixed;background:var(--bg-card, #1a1f2e);border:1px solid var(--border, rgba(255,255,255,.1));border-radius:0;padding:20px 22px 18px;box-shadow:0 8px 32px #00000080;z-index:9902;pointer-events:all;max-width:340px;transition:top .25s ease,left .25s ease}.tutorial-tooltip-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.tutorial-step-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent, var(--accent))}.tutorial-skip-btn{font-size:12px;color:var(--text-muted);background:transparent;border:none;cursor:pointer;padding:0;transition:color .12s}.tutorial-skip-btn:hover{color:var(--text-secondary)}.tutorial-title{font-size:16px;font-weight:600;margin:0 0 8px;color:var(--text-primary)}.tutorial-description{font-size:14px;line-height:1.6;color:var(--text-secondary);margin:0 0 16px}.tutorial-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.tutorial-dots{display:flex;gap:5px;align-items:center}.tutorial-dot{width:6px;height:6px;border-radius:50%;background:#fff3;transition:background .2s}.tutorial-dot.active{background:var(--accent, var(--accent))}.tutorial-controls{display:flex;gap:8px}.tutorial-btn{padding:6px 16px;border-radius:0;font-size:13px;font-weight:500;cursor:pointer;border:1px solid var(--border);transition:background .12s,color .12s}.tutorial-btn-back{background:transparent;color:var(--text-secondary)}.tutorial-btn-back:hover{background:#ffffff0f;color:var(--text-primary)}.tutorial-btn-next{background:var(--accent, var(--accent));color:var(--text-on-accent);border-color:transparent}.tutorial-btn-next:hover{filter:brightness(1.1)}.auth-terms-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);margin-bottom:4px}.auth-terms-row input[type=checkbox]{width:15px;height:15px;flex-shrink:0;cursor:pointer;accent-color:var(--accent, var(--accent))}.auth-terms-row label{cursor:pointer;line-height:1.4}.auth-terms-link{background:transparent;border:none;padding:0;font-size:inherit;color:var(--accent, var(--accent));cursor:pointer;text-decoration:underline;text-underline-offset:2px}.auth-terms-link:hover{opacity:.8}.terms-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;z-index:10100;display:flex;align-items:center;justify-content:center;padding:20px}.terms-modal-card{background:var(--bg-card, #1a1f2e);border:1px solid var(--border);border-radius:0;width:min(640px,100%);max-height:80dvh;display:flex;flex-direction:column;box-shadow:0 16px 48px #00000080}.terms-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.terms-modal-header h2{font-size:16px;font-weight:600;margin:0;color:var(--text-primary)}.terms-modal-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:0;border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .12s,color .12s}.terms-modal-close:hover{background:#ffffff12;color:var(--text-primary)}.terms-modal-body{flex:1;overflow-y:auto;padding:18px 22px}.terms-modal-text{font-size:13px;line-height:1.7;color:var(--text-secondary);white-space:pre-wrap;font-family:inherit;margin:0}.terms-modal-footer{padding:14px 22px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;flex-shrink:0}.terms-modal-close-btn{padding:7px 20px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:background .12s,color .12s}.terms-modal-close-btn:hover{background:#ffffff0f;color:var(--text-primary)}.grid-bg{position:relative;isolation:isolate;overflow-y:auto;overflow-x:hidden}.grid-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:36px 36px;-webkit-mask-image:radial-gradient(ellipse 85% 85% at 50% 50%,black 10%,transparent 72%);mask-image:radial-gradient(ellipse 85% 85% at 50% 50%,black 10%,transparent 72%);z-index:-1;pointer-events:none}.chats-manager-page{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;width:100%;max-width:760px;margin:0 auto;padding:0 20px 32px;box-sizing:border-box}.chats-manager-page:before,.chats-manager-page:after{content:"";flex:1}.chats-history-header{padding:28px 0 12px;display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;text-align:center}.chats-history-header h1{margin:0;font-size:38px;font-weight:400;letter-spacing:-.02em;color:var(--text-primary);text-align:center;width:100%}.chats-history-header p{margin:0;font-size:17px;color:var(--text-secondary);text-align:center;width:100%}.chats-manager-list{width:100%;margin-top:12px;border:1px solid var(--border);border-radius:0;overflow:visible;background:var(--bg-main)}.chats-manager-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.05);overflow:visible;transition:background .18s ease;cursor:pointer}.chats-manager-item:last-child{border-bottom:none}.chats-manager-item:hover{background:#ffffff0d}.chats-manager-open{border:none;background:transparent;color:var(--text-primary);font-size:16px;cursor:pointer;text-align:left;display:flex;align-items:center;gap:10px;flex:1;min-width:0}.conv-type-badge{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.06em;padding:2px 8px;border-radius:0;text-transform:uppercase;flex-shrink:0;white-space:nowrap}.conv-type-chat{background:#fe7f2d1f;color:var(--accent);border:1px solid rgba(254,127,45,.25)}.conv-type-developer{background:#fbbf241a;color:var(--warning);border:1px solid rgba(251,191,36,.22)}.chats-manager-menu-wrap{position:relative}.chats-manager-menu-trigger{border:1px solid var(--border);background:#ffffff08;color:var(--text-secondary);border-radius:0;width:30px;height:26px;cursor:pointer;padding:0;font-size:14px;line-height:1;display:inline-flex;align-items:center;justify-content:center}[data-theme=light] .chats-manager-menu-trigger{background:var(--bg-input)}[data-theme=light] .chats-manager-item:hover{background:#0f172a12}.chats-manager-menu{position:absolute;right:0;top:calc(100% + 4px);min-width:102px;border:1px solid var(--border);background:var(--bg-card);border-radius:0;overflow:hidden;z-index:40;box-shadow:var(--shadow-popover)}.chats-manager-menu button{border:none;background:transparent;color:var(--text-secondary);width:100%;text-align:left;padding:6px 9px;font-size:12px;font-weight:500;cursor:pointer}.chats-manager-menu button:hover{color:var(--text-primary);background:var(--bg-hover)}.chats-manager-menu button.danger:hover{color:#ffb3b3;background:#ff6b6b24}.chats-manager-rename{width:100%;display:flex;align-items:center;gap:8px}.chats-manager-rename input{flex:1;background:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);border-radius:0;padding:8px 10px}.chats-manager-rename button{border:1px solid rgba(254,127,45,.35);background:#fe7f2d29;color:var(--accent);border-radius:0;padding:8px 10px;cursor:pointer}@media(max-width:960px){.home-topnav-links{display:none;position:absolute;top:58px;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--nav-menu-bg);border-bottom:1px solid var(--border);padding:12px 16px 16px;gap:4px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.home-topnav-links--open{display:flex}.home-topnav-link{text-align:left;padding:10px 12px;font-size:17px}.home-topnav-login--mobile{display:block;margin-top:4px;text-align:center;border:1px solid var(--border);background:#ffffff0a;color:var(--text-primary);border-radius:0;padding:10px 16px;cursor:pointer;font-size:17px}.home-topnav-actions .home-topnav-login:not(.home-topnav-login--mobile){display:none}.home-topnav-hamburger{display:inline-flex}.home-hero-section{padding:52px 20px 36px}.home-preview-wrap{display:block;padding:0 16px;margin-top:-8px}.home-preview-rotate{transform:rotateX(10deg)}.app-mock-sidebar{display:none}.app-mock{min-height:320px}.app-mock-main{padding:20px 16px}.app-mock-title{font-size:19px;margin-bottom:12px}.app-mock-grid{gap:8px}.app-mock-card{padding:12px 14px 18px;min-height:90px}.app-mock-badge{font-size:10px}.app-mock-desc{font-size:12px}.app-home h1{font-size:29px}.app-home-grid{grid-template-columns:1fr;grid-template-rows:repeat(4,1fr);min-height:800px}.app-layout{grid-template-columns:1fr;position:relative}.mobile-nav-toggle{display:inline-flex;position:fixed;top:calc(10px + env(safe-area-inset-top));left:calc(10px + env(safe-area-inset-left));z-index:70;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--mobile-nav-toggle-bg);color:var(--text-primary);border-radius:0;cursor:pointer;font-size:19px}.sidebar-shell{position:fixed;top:0;left:calc(-1 * var(--sidebar-w));width:var(--sidebar-w);z-index:80;transition:left .18s ease}.sidebar-shell.open{left:0}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;border:none;background:var(--overlay-scrim);z-index:75}.chat-main{padding:0;width:100%;gap:0;margin-left:0}.chat-header{padding:58px 14px 12px;width:100%;align-items:center;text-align:center}.chat-empty-state{padding:0 12px}.chat-header.chat-header-empty{padding:0}.chat-header h1{font-size:35px;line-height:1.08}.chat-header p{font-size:16px}.error-banner{margin:0 10px}.loading-text{margin:12px 10px}.message-row{padding:4px 10px}.message-bubble.user,.message-bubble.assistant{font-size:17px}.message-bubble.assistant code{font-size:15px}.chat-input-container{padding:8px 10px calc(12px + env(safe-area-inset-bottom))}.chat-composer-card{border-radius:0;padding:6px 10px}.chat-input-field{min-height:40px;line-height:21px;font-size:18px;padding:9px 6px}.modal-header,.modal-body{padding:16px 18px}.billing-page,.settings-single-page{padding:16px 14px}.chats-manager-page{padding-top:56px}.chats-history-header{padding-top:12px}.chats-history-header h1{font-size:29px}.chats-history-header p,.chats-manager-open{font-size:14px}.loading-text{display:none}.settings-icon-btn{width:44px;height:44px}.chat-send-btn{width:40px;height:40px;border-radius:0}.rename-btn,.delete-btn{padding:8px 10px}.conversation-select-btn{padding:10px 9px}.toast{right:12px;left:12px;bottom:calc(80px + env(safe-area-inset-bottom))}}@media(max-width:480px){.app-home{padding:16px 12px;gap:16px}.app-home h1{font-size:25px}.app-home-card{min-height:130px;padding:14px}.home-hero-heading{font-size:37px}.home-nav-links a,.home-nav-links button{font-size:14px;padding:7px 10px}.message-row{padding:4px 8px}.message-bubble.user,.message-bubble.assistant{font-size:16px}.chat-input-container{padding:8px 8px 12px}.chat-header h1{font-size:29px;line-height:1.08}.chat-header p{font-size:15px}.chat-composer-card{border-radius:0;padding:6px 8px}.chat-input-field{min-height:38px;line-height:20px;font-size:17px;padding:9px 6px}.chat-send-btn{width:38px;height:38px;border-radius:0}.modal-header,.modal-body{padding:14px}.billing-summary,.subscribe-grid{grid-template-columns:1fr}.settings-modal-actions{flex-wrap:wrap}.settings-modal-actions button{flex:1;min-width:0}}.chat-main--developer{padding:0;gap:0}.developer-layout{display:grid;grid-template-columns:1fr 1fr;flex:1;min-height:0;overflow:hidden}.developer-chat-panel{display:flex;flex-direction:column;border-right:1px solid var(--border);overflow:hidden;min-width:0;min-height:0}.developer-chat-panel .chat-header{border-bottom:none}.developer-code-panel{display:flex;flex-direction:column;background:var(--bg-input);overflow:hidden;min-width:0;min-height:0}.code-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--bg-card)}.code-panel-actions{display:flex;align-items:center;gap:8px}.analyze-btn{background:#fe7f2d1f;border:1px solid rgba(254,127,45,.35);color:var(--accent);border-radius:0;padding:5px 12px;font-family:var(--font-body);font-size:14px;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.analyze-btn:hover:not(:disabled){background:#fe7f2d38;border-color:#fe7f2d99}.analyze-btn:disabled{opacity:.4;cursor:not-allowed}.chat-code-badge{display:flex;align-items:center;gap:7px;font-size:14px;color:var(--accent);padding:4px 2px}.chat-code-badge-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex-shrink:0}.chat-tools-row{display:flex;align-items:center;gap:6px;padding:6px 4px 0}.chat-tools-label{font-size:12px;font-weight:500;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;margin-right:2px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chat-tools-separator{width:1px;height:14px;background:var(--border);margin:0 4px;flex-shrink:0}.chat-tech-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:border-color .15s,color .15s,background-color .15s}.chat-tech-chip:hover{border-color:var(--accent);color:var(--accent)}.chat-tech-chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.chat-tech-chip.active:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}.lang-select{background:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);border-radius:0;padding:5px 10px;font-family:var(--font-mono);font-size:14px;cursor:pointer;outline:none;transition:border-color .15s}.lang-select:focus{border-color:var(--border-focus)}.copy-btn{background:transparent;border:1px solid var(--border);color:var(--text-secondary);border-radius:0;padding:5px 14px;font-family:var(--font-body);font-size:14px;cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap}.copy-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.copy-btn:disabled{opacity:.4;cursor:not-allowed}.code-editor-container{flex:1;overflow:auto;position:relative}.code-editor-container .cm-editor{height:100%}.code-editor-container .cm-scroller{font-family:var(--font-mono);font-size:15px}@media(max-width:960px){.code-editor-container .cm-scroller{font-size:16px}}@media(max-width:960px){.developer-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr}.developer-mobile-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.developer-mobile-tab{flex:1;padding:12px;min-height:44px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer}.developer-mobile-tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.developer-panel--hidden{display:none}.developer-chat-panel{border-right:none;border-bottom:1px solid var(--border)}}.config-page{flex:1;overflow-y:auto;padding:40px 32px 60px;max-width:760px;margin:0 auto;width:100%}.config-page--project-detail{max-width:1080px}.config-header{margin-bottom:36px}.config-header h1{font-size:29px;font-weight:700;color:var(--text-primary);margin:0 0 8px}.config-header p{font-size:16px;color:var(--text-secondary);margin:0;line-height:1.6}.config-sections{display:flex;flex-direction:column;gap:20px}.config-card{background:var(--bg-card);border:1px solid var(--border);border-radius:0;overflow:hidden}.config-card-header{padding:20px 24px 16px;border-bottom:1px solid var(--border)}.config-card-header h2{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.config-card-header p{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.5}.config-card-body{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.config-field{display:flex;flex-direction:column;gap:6px}.config-field label{font-size:14px;font-weight:500;color:var(--text-secondary)}.config-input{background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-primary);font-family:var(--font-body);font-size:15px;padding:9px 12px;width:100%;transition:border-color .15s;outline:none;resize:none}.config-input:focus{border-color:var(--border-focus)}.config-input::-moz-placeholder{color:var(--text-muted)}.config-input::placeholder{color:var(--text-muted)}.config-textarea{resize:vertical;min-height:96px}.config-hint{font-size:13px;color:var(--text-muted);line-height:1.4}.config-char-count{text-align:right;margin-top:-8px}.config-modules-grid{display:flex;flex-wrap:wrap;gap:8px}.config-module-chip{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:7px 12px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:border-color .15s,background .15s,color .15s;text-align:left;min-width:80px}.config-module-chip:hover{border-color:var(--accent);color:var(--text-primary)}.config-module-chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.config-module-id{font-size:14px;font-weight:600;line-height:1.2}.config-module-desc{font-size:12px;opacity:.75;line-height:1.2;white-space:nowrap}.config-selected-summary{font-size:13px;color:var(--text-muted);margin:0}.config-systems-list{display:flex;flex-direction:column;gap:10px}.config-system-row{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:center}.config-select{background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-primary);font-family:var(--font-body);font-size:15px;padding:9px 32px 9px 12px;cursor:pointer;outline:none;transition:border-color .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238a8680' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.config-select:focus{border-color:var(--border-focus)}.config-remove-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:border-color .15s,color .15s;flex-shrink:0}.config-remove-btn:hover{border-color:var(--danger);color:var(--danger)}.config-add-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:0;border:1px dashed var(--border);background:transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:14px;cursor:pointer;transition:border-color .15s,color .15s;align-self:flex-start}.config-add-btn:hover{border-color:var(--accent);color:var(--accent)}.config-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding-top:8px}.config-toast{font-size:14px;color:#6fcf97;padding:6px 14px;border-radius:0;background:#6fcf971a;border:1px solid rgba(111,207,151,.25)}.config-toast.error{color:var(--danger);background:#ff6b6b1a;border-color:#ff6b6b40}.config-save-btn{padding:10px 24px;border-radius:0;border:none;background:var(--accent);color:var(--text-on-accent);font-family:var(--font-body);font-size:15px;font-weight:600;cursor:pointer;transition:opacity .15s}.config-save-btn:hover:not(:disabled){opacity:.85}.config-save-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:960px){.config-page{padding:56px 16px 40px}.config-header h1{font-size:23px}.config-card-header,.config-card-body{padding-left:16px;padding-right:16px}.config-system-row{grid-template-columns:1fr auto;grid-template-rows:auto auto}.config-system-row .config-select{grid-column:1 / 2}.config-system-row .config-remove-btn{grid-column:2;grid-row:1 / 3;align-self:center}}.projects-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.projects-header-text h1{font-size:29px;font-weight:700;margin:0 0 8px}.projects-header-text p{font-size:16px;color:var(--text-secondary);margin:0;line-height:1.6}.projects-new-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:0;border:none;background:var(--accent);color:var(--text-on-accent);font-family:var(--font-body);font-size:15px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:opacity .15s}.projects-new-btn:hover{opacity:.85}.projects-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:60px 20px;text-align:center;color:var(--text-secondary)}.projects-empty p{margin:0;font-size:16px;line-height:1.6}.projects-empty p:first-child{font-weight:600;color:var(--text-primary);font-size:17px}.project-list{display:flex;flex-direction:column;gap:4px}.project-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 18px;border-radius:0;border:1px solid var(--border);background:var(--bg-card);cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.project-row:hover{border-color:var(--border-focus);background:var(--bg-hover)}.project-row.active{border-color:var(--accent);background:var(--accent-soft)}.project-row-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.project-row-name{font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-row-desc{font-size:13px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-row-tags{display:flex;align-items:center;gap:6px;flex-shrink:0}.project-row-tag{font-size:12px;color:var(--text-muted);background:var(--bg-input);border:1px solid var(--border);border-radius:0;padding:2px 8px;white-space:nowrap}.project-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:#00000059;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.project-drawer{position:fixed;top:0;right:0;bottom:0;z-index:401;width:min(420px,100vw);background:var(--bg-card);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;animation:drawerIn .22s cubic-bezier(.16,1,.3,1)}@keyframes drawerIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.project-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.project-drawer-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:1;min-width:0}.project-drawer-name{font-size:17px;font-weight:700;color:var(--text-primary);margin:0;line-height:1.3}.project-drawer-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.project-drawer-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s,border-color .15s}.project-drawer-close:hover{color:var(--text-primary);border-color:var(--border-focus)}.project-drawer-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:20px}.project-drawer-desc{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.6}.project-drawer-section{display:flex;flex-direction:column;gap:8px}.project-drawer-section-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em}.project-docs-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.project-docs-upload-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:border-color .15s,color .15s;margin-left:auto}.project-docs-upload-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.project-docs-upload-btn:disabled{opacity:.5;cursor:not-allowed}.project-docs-error{font-size:12px;color:var(--danger);margin:0 0 6px}.project-docs-empty{font-size:13px;color:var(--text-muted);margin:0;font-style:italic}.project-docs-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.project-doc-row{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:0;border:1px solid var(--border);background:var(--surface-elevated, rgba(255,255,255,.03))}.project-doc-icon{flex-shrink:0;color:var(--text-muted)}.project-doc-name{flex:1;font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-doc-badge{flex-shrink:0;font-size:10px;font-weight:600;padding:1px 6px;border-radius:0;text-transform:uppercase;letter-spacing:.05em}.project-doc-badge-pending{background:#ffc10726;color:#f0b429}.project-doc-badge-ready{background:#48c78e26;color:#48c78e}.project-doc-badge-failed{background:#ff6b6b26;color:var(--danger)}.project-doc-delete{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:0;border:none;background:transparent;color:var(--text-muted);cursor:pointer;transition:color .12s}.project-doc-delete:hover{color:var(--danger)}.project-doc-confirm{display:flex;align-items:center;gap:4px;flex-shrink:0}.project-doc-confirm-label{font-size:11px;color:var(--text-muted)}.project-doc-confirm-yes,.project-doc-confirm-no{padding:1px 7px;border-radius:0;font-size:11px;cursor:pointer;border:1px solid var(--border);background:transparent;transition:background .12s,color .12s}.project-doc-confirm-yes{border-color:var(--danger);color:var(--danger)}.project-doc-confirm-yes:hover{background:#ff6b6b1f}.project-doc-confirm-no{color:var(--text-muted)}.project-doc-confirm-no:hover{color:var(--text-secondary)}.project-drawer-text{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.6}.project-card-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:border-color .15s,color .15s}.project-card-action-btn:hover{border-color:var(--accent);color:var(--accent)}.project-card-action-btn.danger:hover{border-color:var(--danger);color:var(--danger)}.project-delete-confirm{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--text-secondary)}.project-delete-yes{padding:2px 8px;border-radius:0;border:1px solid var(--danger);background:transparent;color:var(--danger);font-size:13px;cursor:pointer;transition:background .12s}.project-delete-yes:hover{background:#ff6b6b1f}.project-delete-no{padding:2px 8px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:13px;cursor:pointer}.project-card-desc{font-size:14px;color:var(--text-secondary);margin:0;line-height:1.5}.project-card-meta{display:flex;flex-direction:column;gap:8px}.project-card-row{display:flex;flex-direction:column;gap:4px}.project-meta-label{font-size:12px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.project-module-badges{display:flex;flex-wrap:wrap;gap:4px}.project-module-badge{display:inline-block;padding:2px 7px;border-radius:0;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:600}.project-systems-list{display:flex;flex-wrap:wrap;gap:6px}.project-system-tag{font-size:13px;color:var(--text-secondary);background:var(--bg-input);border:1px solid var(--border);border-radius:0;padding:2px 8px}.project-system-tag em{font-style:normal;color:var(--text-muted);margin-left:4px}.project-role-example{font-family:var(--font-mono);font-size:13px;color:var(--text-primary);background:var(--bg-input);border-radius:0;padding:2px 6px}.projects-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.projects-modal{background:var(--bg-main);border:1px solid var(--border);border-radius:0;width:100%;max-width:680px;max-height:80dvh;display:flex;flex-direction:column;overflow:hidden}.projects-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.projects-modal-header h2{font-size:17px;font-weight:600;margin:0}.projects-modal-close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s,border-color .15s}.projects-modal-close:hover{color:var(--text-primary);border-color:var(--border-focus)}.projects-modal-body{overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:calc(80dvh - 140px);padding:20px 24px;display:flex;flex-direction:column;gap:16px}.projects-modal-body .config-card{flex-shrink:0}.projects-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border);flex-shrink:0}.projects-cancel-btn{padding:9px 18px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:15px;cursor:pointer;transition:border-color .15s,color .15s}.projects-cancel-btn:hover:not(:disabled){border-color:var(--border-focus);color:var(--text-primary)}.projects-cancel-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:960px){.projects-header{flex-direction:column;align-items:flex-start}.project-drawer{width:100vw}.projects-modal-backdrop{padding:0;align-items:flex-end}.projects-modal{max-height:94dvh;border-bottom-left-radius:0;border-bottom-right-radius:0}.projects-modal-body{max-height:calc(94dvh - 140px)}}.config-field-hint{font-size:12px;color:var(--text-muted);margin:0 0 8px;line-height:1.4}.proj-system-type-group{display:flex;gap:10px}.proj-system-type-btn{flex:1;display:flex;flex-direction:column;gap:3px;padding:10px 14px;border-radius:0;border:1px solid var(--border);background:var(--bg-input);cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.proj-system-type-btn:hover{border-color:var(--border-focus)}.proj-system-type-btn.active{border-color:var(--accent);background:var(--accent-soft)}.proj-system-type-label{font-size:14px;font-weight:600;color:var(--text-primary)}.proj-system-type-btn.active .proj-system-type-label{color:var(--accent)}.proj-system-type-hint{font-size:12px;color:var(--text-muted);line-height:1.3}.project-system-type-badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.3px}.project-system-type-badge--abap{background:#fe7f2d1f;color:var(--accent);border:1px solid rgba(254,127,45,.25)}.project-system-type-badge--hana{background:#7ed56f1a;color:#7ed56f;border:1px solid rgba(126,213,111,.22)}.chat-project-wrap{position:relative;margin-left:auto}.chat-project-btn{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:border-color .15s,color .15s,background-color .15s;max-width:180px}.chat-project-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-project-btn:hover{border-color:var(--accent);color:var(--accent)}.chat-project-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.chat-project-chevron{flex-shrink:0;transition:transform .15s}.chat-project-chevron.open{transform:rotate(180deg)}.chat-project-dropdown{position:absolute;bottom:calc(100% + 6px);right:0;background:var(--bg-card);border:1px solid var(--border);border-radius:0;min-width:200px;max-width:260px;max-height:260px;overflow-y:auto;z-index:50;box-shadow:0 8px 24px #00000059;padding:6px;display:flex;flex-direction:column;gap:2px}.chat-project-option{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;border-radius:0;border:none;background:transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:14px;text-align:left;cursor:pointer;transition:background .12s,color .12s}.chat-project-option:hover{background:var(--bg-hover);color:var(--text-primary)}.chat-project-option.active{background:var(--accent-soft);color:var(--accent)}.chat-project-option-modules{font-size:12px;color:var(--text-muted);font-weight:400}.kg-page{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg-app)}.kg-topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;margin-top:12px;border-bottom:1px solid var(--border);background:var(--bg-sidebar);flex-shrink:0;gap:12px}.kg-topbar-left{display:flex;align-items:center;gap:10px;min-width:0}.kg-topbar-icon{color:var(--accent);flex-shrink:0}.kg-topbar-title{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap}.kg-topbar-meta{font-size:11px;color:var(--text-muted);white-space:nowrap}.kg-topbar-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.kg-project-wrap{position:relative}.kg-project-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:13px;cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s}.kg-project-btn:hover,.kg-project-btn.active{border-color:#ec4899;color:#ec4899}.kg-project-chevron{transition:transform .15s}.kg-project-chevron.open{transform:rotate(180deg)}.kg-project-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background:var(--surface);border:1px solid var(--border);border-radius:0;padding:4px;z-index:50;box-shadow:0 8px 24px #0000004d}.kg-project-option{display:block;width:100%;padding:6px 10px;border-radius:0;border:none;background:transparent;color:var(--text-secondary);font-size:13px;text-align:left;cursor:pointer;transition:background .1s}.kg-project-option:hover{background:var(--hover)}.kg-project-option.active{color:#ec4899;background:#ec489914}.kg-search-wrap{position:relative;display:flex;align-items:center}.kg-search-icon{position:absolute;left:9px;color:var(--text-muted);pointer-events:none}.kg-search{background:var(--bg-input);border:1px solid var(--border);border-radius:0;padding:5px 28px;font-size:12px;color:var(--text-primary);width:200px;transition:border-color .15s,width .2s}.kg-search:focus{outline:none;border-color:var(--border-focus);width:240px}.kg-search::-moz-placeholder{color:var(--text-muted)}.kg-search::placeholder{color:var(--text-muted)}.kg-search-clear{position:absolute;right:7px;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;padding:2px;border-radius:0}.kg-search-clear:hover{color:var(--text-primary)}.kg-filters{display:flex;align-items:center;gap:6px;padding:8px 16px;border-bottom:1px solid var(--border);flex-shrink:0;flex-wrap:wrap}.kg-filter-btn{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s}.kg-filter-btn:hover{border-color:var(--border-focus);color:var(--text-primary)}.kg-filter-btn.active{font-weight:500}.kg-filter-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.kg-filter-separator{width:1px;height:18px;background:var(--border);margin:0 2px;flex-shrink:0}.kg-canvas-wrap{flex:1;position:relative;overflow:hidden;min-height:0}.kg-svg{width:100%;height:100%;display:block}.kg-state-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-secondary);font-size:13px}.kg-spinner{width:28px;height:28px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:kg-spin .8s linear infinite}@keyframes kg-spin{to{transform:rotate(360deg)}}.kg-error{color:var(--danger);font-size:13px}.kg-upgrade-cta{margin-top:4px;padding:8px 20px;font-size:14px}.kg-panel{position:absolute;width:280px;max-height:min(420px,calc(100% - 24px));background:var(--bg-sidebar);border:1px solid var(--border);border-radius:0;overflow-y:auto;display:flex;flex-direction:column;box-shadow:0 8px 32px #0006;z-index:10;transition:opacity .12s ease-out}.kg-panel--anchored{top:auto;right:auto}.kg-panel-header{padding:14px 14px 10px;border-bottom:1px solid var(--border)}.kg-panel-title-row{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px}.kg-domain-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px}.kg-panel-title{flex:1;font-size:13px;font-weight:600;color:var(--text-primary);margin:0;line-height:1.4}.kg-panel-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px;border-radius:0;display:flex;align-items:center;flex-shrink:0}.kg-panel-close:hover{color:var(--text-primary);background:var(--bg-hover)}.kg-panel-badges{display:flex;gap:6px;flex-wrap:wrap}.kg-badge{font-size:10px;padding:2px 7px;border-radius:0;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.kg-badge-type{background:#ffffff0f;color:var(--text-secondary);border:1px solid var(--border)}.kg-panel-description{margin:0;padding:12px 14px;font-size:12px;color:var(--text-secondary);line-height:1.55;border-bottom:1px solid var(--border)}.kg-panel-section{padding:10px 14px;border-bottom:1px solid var(--border)}.kg-panel-section:last-child{border-bottom:none}.kg-panel-section-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:7px;font-weight:600}.kg-rel-row{display:flex;align-items:center;gap:6px;width:100%;background:none;border:none;padding:4px 6px;border-radius:0;cursor:pointer;text-align:left;transition:background .12s}.kg-rel-row:hover{background:var(--bg-hover)}.kg-rel-arrow{font-size:11px;color:var(--accent);flex-shrink:0}.kg-rel-arrow-in{color:var(--text-muted)}.kg-rel-type{font-size:10px;color:var(--text-muted);flex-shrink:0;min-width:60px;font-style:italic}.kg-rel-peer{font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kg-sources{display:flex;flex-direction:column;gap:4px}.kg-source-chip{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--text-muted);padding:3px 0;text-transform:none;letter-spacing:0}.kg-tooltip{position:fixed;pointer-events:none;background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:7px 11px;font-size:12px;color:var(--text-primary);opacity:0;transition:opacity .1s;z-index:9999;max-width:220px;box-shadow:0 4px 16px #00000059;display:flex;flex-direction:column;gap:2px}.kg-tt-label{font-weight:600}.kg-tt-meta{color:var(--text-muted);font-size:11px}.kg-legend{display:flex;align-items:center;gap:14px;padding:7px 16px;border-top:1px solid var(--border);flex-shrink:0;flex-wrap:wrap}.kg-legend-item{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--text-muted);white-space:nowrap}.kg-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.kg-legend-separator{color:var(--border)}.lp-root{min-height:100dvh;background:var(--bg-app);color:var(--text-primary);font-family:var(--font-body)}.lp-nav{position:sticky;top:0;z-index:100;background:var(--nav-glass-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.lp-nav-inner{max-width:1160px;margin:0 auto;padding:0 24px;height:62px;display:flex;align-items:center;gap:32px}.lp-nav-brand{flex-shrink:0;font-size:18px;font-weight:700;letter-spacing:-.4px;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lp-brand-tozen{color:var(--text-primary)}.lp-brand-ai,.lp-brand-labs{color:var(--accent)}.lp-nav-links{display:flex;align-items:center;gap:2px;flex:1}.lp-nav-link{background:none;border:none;color:var(--text-secondary);font-size:14px;font-family:var(--font-body);padding:6px 12px;border-radius:0;cursor:pointer;transition:color .15s,background .15s}.lp-nav-link:hover{color:var(--text-primary);background:var(--bg-hover)}.lp-nav-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.lp-nav-login{background:none;border:none;color:var(--text-secondary);font-size:14px;font-family:var(--font-body);padding:7px 14px;border-radius:0;cursor:pointer;transition:color .15s,background .15s}.lp-nav-login:hover{color:var(--text-primary);background:var(--bg-hover)}.lp-nav-cta{font-size:14px!important;padding:7px 16px!important}.lp-hamburger{display:none;background:none;border:none;color:var(--text-primary);cursor:pointer;padding:4px;border-radius:0}.lp-nav-login--mobile{display:none}.lp-theme-toggle{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:none;border:1px solid var(--border);border-radius:0;color:var(--text-secondary);cursor:pointer;transition:color .15s,background .15s,border-color .15s;flex-shrink:0}.lp-theme-toggle:hover{color:var(--text-primary);background:var(--bg-hover);border-color:#ffffff26}[data-theme=light] .lp-theme-toggle:hover{border-color:#00000026}.lp-btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--accent);border:none;color:var(--text-on-accent);font-size:15px;font-family:var(--font-body);font-weight:500;padding:11px 22px;border-radius:0;cursor:pointer;transition:opacity .15s,transform .12s;white-space:nowrap}.lp-btn-primary:hover{opacity:.88;transform:translateY(-1px)}.lp-btn-primary:active{transform:translateY(0)}.lp-btn-ghost{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--border);color:var(--text-secondary);font-size:15px;font-family:var(--font-body);font-weight:500;padding:11px 22px;border-radius:0;cursor:pointer;transition:color .15s,border-color .15s,background .15s;white-space:nowrap}.lp-btn-ghost:hover{color:var(--text-primary);border-color:var(--border-focus);background:var(--bg-hover)}.lp-section-inner{max-width:1160px;margin:0 auto;padding:0 24px}.lp-section-header{text-align:center;margin-bottom:96px}.lp-section-eyebrow{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 18px}.lp-section-title{font-size:clamp(26px,4vw,40px);font-weight:700;letter-spacing:-.6px;line-height:1.15;color:var(--text-primary);margin:0 0 20px}.lp-section-sub{font-size:17px;color:var(--text-secondary);line-height:1.7;max-width:560px;margin:0 auto}.lp-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:72px;max-width:1160px;margin:0 auto;padding:144px 24px 160px;position:relative;overflow:hidden}.lp-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 60% at 15% 50%,rgba(254,127,45,.07) 0%,transparent 70%),radial-gradient(ellipse 40% 40% at 85% 60%,rgba(254,127,45,.04) 0%,transparent 70%);pointer-events:none;z-index:0}.lp-hero-content{position:relative;z-index:1}.lp-hero-badge{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:#fe7f2d1a;border:1px solid rgba(254,127,45,.22);padding:5px 13px;border-radius:0;margin-bottom:24px}.lp-hero-heading{font-size:clamp(36px,5vw,54px);font-weight:800;letter-spacing:-1.5px;line-height:1.07;color:var(--text-primary);margin:0 0 20px}.lp-hero-sub{font-size:17px;color:var(--text-secondary);line-height:1.7;margin:0 0 36px;max-width:460px}.lp-hero-ctas{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.lp-hero-footnote{font-size:13px;color:var(--text-muted);margin:0}.lp-ph-badge{display:inline-block;margin-top:20px}.lp-ph-badge img{display:block;border-radius:0}.lp-hero-preview{position:relative;z-index:1;display:flex;justify-content:center;align-items:center}.lp-preview-glow{position:absolute;width:90%;height:70%;background:radial-gradient(ellipse,rgba(254,127,45,.1) 0%,transparent 70%);top:15%;left:5%;pointer-events:none;z-index:0}.lp-preview-frame{position:relative;z-index:1;border-radius:0;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-elevated);width:100%;max-width:520px}.lp-app-mock{background:var(--bg-card);font-family:var(--font-body)}.lp-app-mock-bar{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--bg-sidebar);border-bottom:1px solid var(--border)}.lp-app-mock-dots{display:flex;gap:5px}.lp-app-mock-dots span{width:10px;height:10px;border-radius:50%;background:var(--border)}.lp-app-mock-dots span:nth-child(1){background:#ff605c99}.lp-app-mock-dots span:nth-child(2){background:#ffbd2e99}.lp-app-mock-dots span:nth-child(3){background:#27c93f73}.lp-app-mock-title{font-size:12px;color:var(--text-muted);font-weight:500}.lp-app-mock-body{padding:20px;display:flex;flex-direction:column;gap:12px;min-height:260px}.lp-app-mock-msg{display:flex;gap:8px;align-items:flex-start}.lp-app-mock-msg--user{flex-direction:row-reverse}.lp-app-mock-avatar{width:26px;height:26px;border-radius:50%;background:#fe7f2d26;color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.lp-app-mock-bubble{font-size:13px;line-height:1.55;padding:10px 14px;border-radius:0;max-width:85%}.lp-app-mock-msg--user .lp-app-mock-bubble{background:var(--bubble-user-bg);color:var(--bubble-user-text);border-radius:0}.lp-app-mock-msg--ai .lp-app-mock-bubble{background:var(--bg-bubble-ai);color:var(--text-primary);border:1px solid var(--border);border-radius:0}.lp-app-mock-typing{display:flex;gap:5px;align-items:center;padding-left:34px}.lp-app-mock-typing span{width:6px;height:6px;border-radius:50%;background:var(--text-muted);animation:lp-typing 1.2s infinite ease-in-out}.lp-app-mock-typing span:nth-child(1){animation-delay:0s}.lp-app-mock-typing span:nth-child(2){animation-delay:.2s}.lp-app-mock-typing span:nth-child(3){animation-delay:.4s}@keyframes lp-typing{0%,60%,to{opacity:.3;transform:scale(1)}30%{opacity:1;transform:scale(1.25)}}.lp-features{padding:160px 0 176px;border-top:1px solid var(--border-strong);background:var(--bg-app)}.lp-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.lp-feature-card{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:32px 28px;position:relative;overflow:hidden;transition:border-color .2s,background .2s,transform .18s}.lp-feature-card:after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(254,127,45,.35),transparent);opacity:0;transition:opacity .2s}.lp-feature-card:hover{border-color:#fe7f2d40;background:var(--bg-hover);transform:translateY(-2px)}.lp-feature-card:hover:after{opacity:1}.lp-feature-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:#fe7f2d1a;border-radius:0;color:var(--accent);margin-bottom:20px}.lp-feature-tag{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px}.lp-feature-title{font-size:17px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.lp-feature-desc{font-size:14px;color:var(--text-secondary);line-height:1.7;margin:0}.lp-feature-card--soon{opacity:.7;pointer-events:none}.lp-feature-card--soon:hover{transform:none;border-color:var(--border);background:var(--bg-card)}.lp-feature-soon-badge{position:absolute;top:16px;right:16px;font-size:11px;font-weight:500;letter-spacing:.04em;color:var(--text-muted);background:var(--bg-active);border:1px solid var(--border);padding:3px 9px;border-radius:0}.lp-feature-pro-badge{position:absolute;top:16px;right:16px;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border:1px solid rgba(254,127,45,.3);padding:2px 8px;border-radius:0}.lp-how{padding:160px 0 176px;border-top:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);background:var(--bg-sidebar)}.lp-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;position:relative}.lp-step{padding:64px 52px;position:relative;text-align:center}.lp-step+.lp-step{border-left:1px solid var(--border)}.lp-step-num{font-size:60px;font-weight:800;letter-spacing:-3px;color:#fe7f2d26;font-variant-numeric:tabular-nums;margin-bottom:20px;line-height:1}.lp-step-arrow{position:absolute;top:40px;right:-12px;color:var(--text-muted);z-index:1}.lp-step-title{font-size:19px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.lp-step-desc{font-size:15px;color:var(--text-secondary);line-height:1.7;margin:0;max-width:280px;margin-inline:auto}.lp-audience{padding:96px 0;border-top:1px solid var(--border)}.lp-audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.lp-audience-card{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:32px 28px;transition:border-color .2s,transform .18s}.lp-audience-card:hover{border-color:#fe7f2d38;transform:translateY(-2px)}.lp-audience-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);opacity:.6;margin-bottom:20px}.lp-audience-role{font-size:17px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.lp-audience-desc{font-size:14px;color:var(--text-secondary);line-height:1.65;margin:0}.lp-pricing{padding:160px 0 176px;border-top:1px solid var(--border-strong);background:var(--bg-app)}.lp-pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:900px;margin:0 auto}@media(max-width:768px){.lp-pricing-grid{grid-template-columns:1fr}}.lp-pricing-card{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:36px;overflow:hidden;display:flex;flex-direction:column}.lp-pricing-card--pro{border-color:#fe7f2d4d;background:var(--bg-sidebar)}.lp-pricing-card--free{border-color:var(--border)}.lp-pricing-glow{position:absolute;width:360px;height:360px;background:radial-gradient(circle,rgba(254,127,45,.1) 0%,transparent 70%);top:-120px;right:-120px;pointer-events:none}.lp-pricing-top{position:relative;z-index:1;margin-bottom:28px}.lp-pricing-badge{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:500;letter-spacing:.04em;color:var(--accent);background:#fe7f2d1a;border:1px solid rgba(254,127,45,.22);padding:4px 12px;border-radius:0;margin-bottom:20px}.lp-pricing-badge-dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.lp-pricing-plan{font-size:30px;font-weight:700;color:var(--text-primary);margin:0 0 10px}.lp-pricing-price-row{display:flex;align-items:baseline;gap:4px;margin-bottom:4px}.lp-pricing-amount{font-size:52px;font-weight:800;letter-spacing:-2px;color:var(--text-primary);line-height:1}.lp-pricing-period{font-size:20px;color:var(--text-secondary);font-weight:400}.lp-pricing-annual-note{font-size:13px;color:var(--text-muted);margin:0 0 16px}.lp-pricing-plan-desc{font-size:14px;color:var(--text-secondary);line-height:1.6;margin:0}.lp-pricing-cta{position:relative;z-index:1;width:100%;justify-content:center;font-size:16px!important;padding:13px 22px!important}.lp-pricing-no-cc{font-size:13px;color:var(--text-muted);text-align:center;margin:10px 0 28px;position:relative;z-index:1}.lp-pricing-features{position:relative;z-index:1;border-top:1px solid var(--border);padding-top:24px;margin-bottom:20px}.lp-pricing-features-label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 14px}.lp-pricing-feature-row{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px;font-size:14px;color:var(--text-secondary)}.lp-pricing-check{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#fe7f2d1f;color:var(--accent);flex-shrink:0;margin-top:1px}.lp-pricing-stripe{position:relative;z-index:1;font-size:12px;color:var(--text-muted);text-align:center;margin:0}.lp-pricing-stripe a{color:var(--text-secondary);text-decoration:underline;text-underline-offset:2px}.lp-cta-section{padding:168px 0;border-top:1px solid var(--border-strong);background:var(--bg-sidebar);position:relative;overflow:hidden}.lp-cta-glow{position:absolute;width:700px;height:500px;background:radial-gradient(ellipse,rgba(254,127,45,.07) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.lp-cta-inner{position:relative;z-index:1;text-align:center}.lp-cta-heading{font-size:clamp(26px,4vw,40px);font-weight:800;letter-spacing:-1px;color:var(--text-primary);margin:0 0 16px}.lp-cta-sub{font-size:17px;color:var(--text-secondary);margin:0 0 36px}.lp-cta-btn{font-size:16px!important;padding:13px 28px!important;margin-bottom:14px}.lp-footer{border-top:1px solid var(--border-strong);padding:56px 0}.lp-footer-inner{max-width:1160px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:32px;flex-wrap:wrap}.lp-footer-brand{display:flex;flex-direction:column;gap:3px}.lp-footer-wordmark{font-size:16px;font-weight:700;letter-spacing:-.3px}.lp-footer-tagline{font-size:12px;color:var(--text-muted);margin:0}.lp-footer-links{display:flex;align-items:center;gap:2px}.lp-footer-link{background:none;border:none;color:var(--text-muted);font-size:13px;font-family:var(--font-body);padding:5px 10px;border-radius:0;cursor:pointer;transition:color .15s}.lp-footer-link:hover{color:var(--text-secondary)}.lp-footer-copy{font-size:13px;color:var(--text-muted);margin:0 0 0 auto}[data-theme=light] .lp-app-mock-msg--ai .lp-app-mock-bubble{border-color:var(--border)}@media(max-width:1100px){.lp-features-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.lp-nav-links{display:none;position:absolute;top:62px;left:0;right:0;background:var(--nav-menu-bg);border-bottom:1px solid var(--border);padding:12px 16px;flex-direction:column;align-items:flex-start;gap:2px;z-index:99}.lp-nav-links--open{display:flex}.lp-nav-login--mobile{display:flex;width:100%;padding:8px 12px}.lp-nav-cta{display:none!important}.lp-hamburger{display:flex}.lp-hero{grid-template-columns:1fr;padding:72px 20px 64px;gap:40px}.lp-hero-preview{order:-1}.lp-hero-sub{font-size:15px}.lp-features-grid,.lp-steps{grid-template-columns:1fr}.lp-step+.lp-step{border-left:none;border-top:1px solid var(--border)}.lp-step-arrow{display:none}.lp-audience-grid{grid-template-columns:1fr}.lp-section-inner{padding:0 20px}.lp-features,.lp-how,.lp-audience,.lp-pricing,.lp-cta-section{padding:88px 0 96px}.lp-section-header{margin-bottom:56px}.lp-footer-inner{flex-direction:column;align-items:flex-start;gap:16px}.lp-footer-copy{margin-left:0}}.lib-page{display:flex;flex-direction:column;height:100%;overflow:hidden}.lib-mobile-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;height:100%;padding:40px 32px}.lib-mobile-gate-icon{color:var(--text-muted, rgba(255, 255, 255, .3));margin-bottom:4px}.lib-mobile-gate-title{font-size:22px;font-weight:600;color:var(--text-primary);margin:0}.lib-mobile-gate-desc{font-size:15px;color:var(--text-muted, rgba(255, 255, 255, .45));line-height:1.6;max-width:340px;margin:0}[data-theme=light] .lib-mobile-gate-icon{color:#18181b4d}[data-theme=light] .lib-mobile-gate-desc{color:#18181b80}.lib-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px 0;flex-shrink:0}.lib-header-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text)}.lib-header-icon{color:var(--accent)}.lib-tabs{display:flex;gap:4px;background:var(--bg-hover);border:1px solid var(--border);border-radius:0;padding:3px}.lib-tab{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:0;border:none;background:transparent;color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.lib-tab:hover{background:var(--bg-card);color:var(--text)}.lib-tab--active{background:var(--bg-card);color:var(--text);box-shadow:inset 0 -2px 0 0 var(--accent)}.lib-docs-tab{flex:1;overflow-y:auto;padding:20px}.lib-docs-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.lib-docs-header-left{display:flex;align-items:baseline;gap:8px;flex:1}.lib-docs-title{font-size:14px;font-weight:600;color:var(--text);margin:0}.lib-docs-count{font-size:12px;color:var(--text-muted)}.lib-docs-upload-btn{display:flex;align-items:center;gap:6px;padding:7px 13px;border-radius:0;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap}.lib-docs-upload-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-focus)}.lib-docs-upload-btn:disabled{opacity:.5;cursor:not-allowed}.lib-docs-hint{font-size:12px;color:var(--text-muted);margin-bottom:16px}.lib-docs-error{font-size:12px;color:var(--danger);margin-bottom:12px;padding:8px 12px;background:#fa4d5614;border-radius:0;border:1px solid rgba(250,77,86,.2)}.lib-docs-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:60px 20px;text-align:center;color:var(--text-muted)}.lib-docs-empty p{margin:0;font-size:13px}.lib-docs-empty code{font-size:12px;background:var(--bg-hover);padding:1px 5px;border-radius:0}.lib-doc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.lib-doc-card{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:12px 14px;transition:border-color .15s}.lib-doc-card:hover{border-color:var(--border-focus)}.lib-doc-card-top{display:flex;align-items:center;gap:10px}.lib-doc-icon{color:var(--text-muted);flex-shrink:0}.lib-doc-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.lib-doc-name{font-size:13px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-doc-meta{font-size:11px;color:var(--text-muted)}.lib-doc-status{font-size:11px;font-weight:500;padding:2px 7px;border-radius:0;text-transform:capitalize;flex-shrink:0}.lib-doc-status--ready{background:#22c55e1f;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.lib-doc-status--pending{background:#eab3081f;color:#ca8a04;border:1px solid rgba(234,179,8,.2)}.lib-doc-status--failed{background:#ef44441f;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.lib-doc-reprocess-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:0;border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .12s,color .12s,border-color .12s;flex-shrink:0}.lib-doc-reprocess-btn:hover:not(:disabled){background:var(--accent-soft, rgba(59, 130, 246, .1));color:var(--accent, #3b82f6);border-color:#3b82f633}.lib-doc-reprocess-btn:disabled{opacity:.4;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}.lib-doc-delete-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:0;border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .12s,color .12s,border-color .12s;flex-shrink:0}.lib-doc-delete-btn:hover{background:#ef44441a;color:#ef4444;border-color:#ef444433}.lib-doc-confirm{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted);flex-shrink:0}.lib-doc-confirm-yes{padding:2px 8px;border-radius:0;border:1px solid rgba(239,68,68,.3);background:#ef44441a;color:#ef4444;font-size:11px;cursor:pointer}.lib-doc-confirm-no{padding:2px 8px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:11px;cursor:pointer}.lib-doc-links{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px}.lib-doc-project-tag{display:flex;align-items:center;gap:4px;padding:3px 8px 3px 6px;border-radius:0;border:1px solid var(--border);background:var(--bg-hover);color:var(--text);font-size:11px;font-weight:500}.lib-doc-unlink-btn{display:flex;align-items:center;border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:1px;border-radius:0;margin-left:2px;transition:color .12s}.lib-doc-unlink-btn:hover{color:var(--danger, #ef4444)}.lib-doc-unlink-btn:disabled{opacity:.4;cursor:not-allowed}.lib-doc-link-btn{display:flex;align-items:center;gap:5px;padding:3px 9px;border-radius:0;border:1px dashed var(--border);background:transparent;color:var(--text-muted);font-size:11px;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.lib-doc-link-btn:hover{border-color:var(--border-focus);color:var(--text);background:var(--bg-hover)}.lib-link-wrap{position:relative}.lib-link-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:50;background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:4px;min-width:160px;box-shadow:0 4px 16px #00000026;display:flex;flex-direction:column;gap:2px}.lib-link-option{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:0;border:none;background:transparent;color:var(--text);font-size:12px;text-align:left;cursor:pointer;transition:background .1s}.lib-link-option:hover{background:var(--bg-hover)}.lib-link-cancel{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:0;background:transparent;color:var(--text-muted);cursor:pointer;align-self:flex-end}.lib-link-cancel:hover{background:var(--bg-hover);color:var(--text)}.lib-kg-wrap{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.project-docs-inline-link{border:none;background:transparent;color:var(--accent);cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.lp-root.blog-standalone{height:100%;overflow-y:auto;overflow-x:hidden}.blog-standalone .blog-standalone-main{min-height:70dvh;padding:48px 0 72px}a.lp-nav-brand{text-decoration:none;color:inherit;cursor:pointer}a.lp-nav-link,a.lp-footer-link{text-decoration:none}.blog-nav-active{color:var(--accent)!important}.blog-page{max-width:960px;margin:0 auto;padding:40px 24px 64px;color:var(--text-primary)}.blog-header{text-align:center;margin-bottom:40px}.blog-header-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:0;background:var(--accent-soft);color:var(--accent);margin-bottom:16px}.blog-heading{font-size:2rem;font-weight:700;letter-spacing:-.02em;margin:0 0 10px;color:var(--text-primary)}.blog-subheading{font-size:.95rem;color:var(--text-secondary);max-width:540px;margin:0 auto 28px;line-height:1.6}.blog-search-form{display:flex;gap:10px;max-width:480px;margin:0 auto}.blog-search-input-wrap{position:relative;flex:1}.blog-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.blog-search-input{width:100%;padding:9px 12px 9px 34px;background:var(--bg-input);border:1px solid var(--border);border-radius:0;color:var(--text-primary);font-size:.875rem;font-family:var(--font-body);outline:none;transition:border-color .18s;box-sizing:border-box}.blog-search-input:focus{border-color:var(--border-focus)}.blog-search-btn{padding:9px 18px;background:var(--accent);color:var(--text-on-accent);border:none;border-radius:0;font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .18s}.blog-search-btn:hover{opacity:.85}.blog-search-result-info{margin-top:12px;font-size:.82rem;color:var(--text-muted)}.blog-search-clear{background:none;border:none;color:var(--accent);cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.blog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.blog-post-card{display:block;text-decoration:none;border:1px solid var(--border);border-radius:0;background:var(--bg-card);transition:border-color .2s,background .2s,transform .18s;color:var(--text-primary)}.blog-post-card:hover{border-color:#fe7f2d59;background:#fe7f2d0a;transform:translateY(-2px)}.blog-post-card-inner{padding:24px 28px 26px;display:flex;flex-direction:column;gap:10px;height:100%;box-sizing:border-box}.blog-post-card-title{font-size:1.05rem;font-weight:650;line-height:1.4;margin:0;color:var(--text-primary)}.blog-post-card-excerpt{font-size:.85rem;color:var(--text-secondary);line-height:1.6;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.blog-post-card-meta{display:flex;gap:8px;font-size:.78rem;color:var(--text-muted);padding-top:4px;border-top:1px solid var(--border);margin-top:auto}.blog-post-card-date,.blog-post-card-author{white-space:nowrap}.blog-post-card-tags{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:2px}.blog-tag-icon{color:var(--text-muted);flex-shrink:0}.blog-tag{font-size:.7rem;padding:2px 7px;border-radius:0;background:var(--bg-hover);color:var(--text-secondary);border:1px solid var(--border)}.blog-tag--link{text-decoration:none;transition:border-color .15s,color .15s}.blog-tag--link:hover{border-color:var(--accent);color:var(--accent)}.blog-pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:40px}.blog-page-btn{padding:8px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:0;color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:border-color .18s}.blog-page-btn:hover:not(:disabled){border-color:var(--accent)}.blog-page-btn:disabled{opacity:.4;cursor:default}.blog-page-info{font-size:.82rem;color:var(--text-muted)}.blog-loading{display:flex;justify-content:center;gap:6px;padding:48px 0}.blog-loading-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:blog-dot-pulse 1.2s ease-in-out infinite}.blog-loading-dot:nth-child(2){animation-delay:.2s}.blog-loading-dot:nth-child(3){animation-delay:.4s}@keyframes blog-dot-pulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.blog-empty{text-align:center;padding:56px 0;color:var(--text-muted);font-size:.9rem}.blog-empty-icon{margin-bottom:12px;opacity:.4}.blog-error{text-align:center;padding:32px 0;color:var(--danger);font-size:.875rem}.blog-post-page{max-width:720px;margin:0 auto;padding:40px 24px 80px}.blog-post-container{display:flex;flex-direction:column;gap:0}.blog-back-link{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--text-muted);text-decoration:none;margin-bottom:28px;transition:color .15s}.blog-back-link:hover{color:var(--accent)}.blog-post-header{margin-bottom:32px}.blog-post-title{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;line-height:1.3;margin:10px 0 12px;color:var(--text-primary)}.blog-post-meta{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--text-muted);margin-bottom:12px}.blog-post-meta-sep{opacity:.4}.blog-post-tags{margin-top:8px}.blog-post-body{font-size:.95rem;line-height:1.75;color:var(--text-primary);border-top:1px solid var(--border);padding-top:28px;margin-bottom:40px}.blog-post-body h1,.blog-post-body h2,.blog-post-body h3{font-weight:700;letter-spacing:-.01em;margin:1.6em 0 .5em;color:var(--text-primary)}.blog-post-body h1{font-size:1.4rem}.blog-post-body h2{font-size:1.15rem}.blog-post-body h3{font-size:1rem}.blog-post-body p{margin:0 0 1em}.blog-post-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.blog-post-body a:hover{opacity:.8}.blog-post-body ul,.blog-post-body ol{margin:0 0 1em 1.4em;padding:0}.blog-post-body li{margin-bottom:.35em}.blog-post-body code{font-family:var(--font-mono);font-size:.85em;background:var(--bg-hover);border:1px solid var(--border);border-radius:0;padding:1px 5px}.blog-post-body pre{background:var(--bg-sidebar);border:1px solid var(--border);border-radius:0;padding:16px;overflow-x:auto;margin:0 0 1em}.blog-post-body pre code{background:none;border:none;padding:0;font-size:.85rem}.blog-post-body blockquote{border-left:3px solid var(--accent);margin:0 0 1em;padding:8px 16px;color:var(--text-secondary);background:var(--accent-soft);border-radius:0}.blog-post-body hr{border:none;border-top:1px solid var(--border);margin:1.5em 0}.blog-post-footer{border-top:1px solid var(--border);padding-top:24px}.blog-not-found{text-align:center;padding:64px 0}.blog-not-found-code{font-size:3.5rem;font-weight:700;color:var(--text-muted);margin:0 0 8px;letter-spacing:-.04em}.blog-not-found-title{font-size:1.3rem;font-weight:600;margin:0 0 8px}.blog-not-found-sub{color:var(--text-secondary);font-size:.875rem;margin-bottom:24px}[data-theme=light] .blog-post-card{background:var(--bg-card);border-color:var(--border)}[data-theme=light] .blog-post-card:hover{background:#fe7f2d0a;border-color:#fe7f2d4d}[data-theme=light] .blog-tag{background:var(--bg-hover)}@media(max-width:768px){.blog-grid{grid-template-columns:1fr}.blog-heading{font-size:1.5rem}.blog-post-title{font-size:1.35rem}.blog-search-form{flex-direction:column}.blog-search-btn{width:100%}}.chat-main.blog-main{overflow-y:auto;overflow-x:hidden;padding:0}.chat-main.grid-bg{display:block;overflow-y:auto;overflow-x:hidden;padding:0}.db-dashboard{display:flex;flex-direction:column;gap:28px;min-height:100%;padding:32px 36px;overflow-x:hidden;box-sizing:border-box}.db-header{display:flex;align-items:flex-start;justify-content:space-between;flex-shrink:0;padding-bottom:4px}.db-header-content{display:flex;flex-direction:column;gap:3px}.db-header-label{margin:0 0 4px;font-size:13px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:#fe7f2da6}.db-header-title{margin:0;font-size:26px;font-weight:700;color:var(--text-primary);line-height:1.15;letter-spacing:-.02em}.db-header-sub{margin:0;font-size:14px;color:var(--text-muted);line-height:1.4}.db-header-updated{font-size:12px;color:var(--text-muted);white-space:nowrap;padding-bottom:4px}.db-tools-row{display:flex;align-items:center;justify-content:center;gap:4px;flex-shrink:0;padding:4px 6px;background:var(--bg-card);border:1px solid var(--border);border-radius:0}.db-chip-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid transparent;border-radius:0;background:transparent;cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-body);color:var(--text-secondary);transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.db-chip-btn:not([disabled]):hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border)}.db-chip--orange{color:var(--accent)}.db-chip--orange:not([disabled]):hover{background:#fe7f2d14;border-color:#fe7f2d40;color:var(--accent)}.db-chip--blue{color:var(--warning)}.db-chip--blue:not([disabled]):hover{background:#fbbf2414;border-color:#fbbf2440;color:var(--warning)}.db-chip--purple{color:#a855f7}.db-chip--purple:not([disabled]):hover{background:#a855f714;border-color:#a855f740;color:#a855f7}.db-chip--teal{color:#14b8a6}.db-chip--teal:not([disabled]):hover{background:#14b8a614;border-color:#14b8a640;color:#14b8a6}.db-chip-btn[disabled]{cursor:not-allowed}.db-chip-soon{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:1px 5px;border-radius:0;background:var(--bg-hover);color:var(--text-muted);border:1px solid var(--border)}.db-content-grid{display:grid;grid-template-columns:1fr;min-height:0;flex:1}.db-feed-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;flex-shrink:0}@media(max-width:768px){.db-feed-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.db-feed-stats{grid-template-columns:1fr}}.db-stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:10px 16px;display:flex;flex-direction:column;gap:5px}.db-stat-label{font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.db-stat-value{font-size:22px;font-weight:700;color:var(--text-primary);line-height:1;font-variant-numeric:tabular-nums}.db-stat--critical{color:#ef4444}.db-stat--whitelisted{color:var(--accent)}.db-stat-freshness{font-size:17px}.db-cve-subtitle{margin:3px 0 0;font-size:11px;font-weight:400;color:var(--text-muted);line-height:1.4}.db-panel{border:1px solid var(--border);border-radius:0;background:var(--bg-card);display:flex;flex-direction:column;min-height:0;overflow:hidden}.db-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.db-panel-title{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.db-panel-actions{display:flex;align-items:center;gap:8px}.db-panel-link-btn{display:flex;align-items:center;gap:2px;font-size:12px;font-weight:500;color:var(--accent);background:none;border:none;cursor:pointer;padding:0;transition:opacity .15s}.db-panel-link-btn:hover{opacity:.75}.db-search-wrap{position:relative;display:flex;align-items:center}.db-search-icon{position:absolute;left:9px;color:var(--text-muted);pointer-events:none}.db-search-input{padding:5px 10px 5px 30px;font-size:12px;font-family:var(--font-body);border:1px solid var(--border);border-radius:0;background:var(--bg-input);color:var(--text-primary);outline:none;width:220px;transition:border-color .15s}.db-search-input:focus{border-color:var(--border-focus)}.db-refresh-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border);border-radius:0;background:var(--bg-input);color:var(--text-secondary);cursor:pointer;transition:color .15s,border-color .15s}.db-refresh-btn:hover{color:var(--accent);border-color:#fe7f2d59}.db-refresh-btn--spin svg{animation:db-spin .9s linear infinite}@keyframes db-spin{to{transform:rotate(360deg)}}.db-th-sort{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;transition:color .12s}.db-th-sort:hover{color:var(--text-secondary)}.db-th-sort--active{color:var(--accent)}.db-sort-icon{margin-left:5px;font-size:10px;opacity:.6}.db-th-sort--active .db-sort-icon{opacity:1}.db-th-nosort{cursor:default}.db-table-wrap{overflow:hidden auto;flex:1;min-height:0;width:100%}.db-cve-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px}.db-cve-table thead tr{position:sticky;top:0;z-index:1;background:var(--bg-card)}.db-cve-table th{padding:8px 14px;text-align:left;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}.db-cve-row{cursor:pointer;transition:background .1s}.db-cve-row:hover,.db-cve-row--open{background:var(--bg-hover)}.db-cve-row td{padding:9px 14px;border-bottom:1px solid var(--border);vertical-align:middle}.db-cve-id{white-space:nowrap}.db-cve-id-link{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;font-family:var(--font-mono);color:var(--accent);text-decoration:none}.db-cve-id-link:hover{text-decoration:underline}.db-score-pill{display:inline-block;padding:2px 7px;border-radius:0;font-size:12px;font-weight:700;font-family:var(--font-mono)}.db-sev-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:0;font-size:11px;font-weight:600;letter-spacing:.04em}.db-sev-critical{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.25)}.db-sev-high{background:#f973161f;color:#f97316;border:1px solid rgba(249,115,22,.22)}.db-sev-medium{background:#eab3081f;color:#ca8a04;border:1px solid rgba(234,179,8,.22)}.db-sev-low{background:#22c55e1a;color:#16a34a;border:1px solid rgba(34,197,94,.2)}.db-sev-none{background:var(--bg-hover);color:var(--text-muted);border:1px solid var(--border)}.db-cve-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary)}.db-cve-date{white-space:nowrap;color:var(--text-muted);font-size:12px}@keyframes db-row-expand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.db-cve-expand-row{animation:db-row-expand .18s ease-out}.db-cve-expand-row td{padding:10px 14px 16px;background:var(--bg-hover);border-bottom:1px solid var(--border)}.db-cve-desc{margin:0 0 8px;font-size:13px;color:var(--text-secondary);line-height:1.6}.db-cve-full-link{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--accent);text-decoration:none}.db-cve-full-link:hover{text-decoration:underline}.db-source-note{margin:0;padding:8px 18px;font-size:11px;color:var(--text-muted);border-top:1px solid var(--border);flex-shrink:0}.db-source-note a{color:var(--accent);text-decoration:none}.db-source-note a:hover{text-decoration:underline}.db-project-list{list-style:none;margin:0;padding:8px;overflow-y:auto;flex:1;min-height:0}.db-project-item+.db-project-item{margin-top:2px}.db-project-row{display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;border:none;border-radius:0;background:none;cursor:pointer;text-align:left;transition:background .1s;color:var(--text-primary)}.db-project-row:hover{background:var(--bg-hover)}.db-project-icon{color:var(--text-muted);flex-shrink:0;display:flex}.db-project-name{flex:1;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-project-arrow{color:var(--text-muted);flex-shrink:0;opacity:0;transition:opacity .15s}.db-project-row:hover .db-project-arrow{opacity:1}.db-projects-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 16px;flex:1;color:var(--text-muted);text-align:center}.db-projects-empty p{margin:0;font-size:13px}.db-projects-empty-icon{opacity:.35}.db-create-project-btn{margin-top:4px;padding:7px 14px;font-size:12px;font-weight:500;font-family:var(--font-body);border:1px solid var(--border);border-radius:0;background:var(--bg-hover);color:var(--text-primary);cursor:pointer;transition:border-color .15s,background .15s}.db-create-project-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.db-state-placeholder{display:flex;align-items:center;justify-content:center;gap:10px;flex:1;padding:32px;font-size:13px;color:var(--text-muted)}.db-state-error{color:var(--danger)}.db-spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:db-spin .7s linear infinite;flex-shrink:0}.db-content-zone1{display:grid;grid-template-columns:65fr 35fr;gap:20px;align-items:stretch;min-height:320px}.db-zone-left,.db-zone-right{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:22px 24px;box-sizing:border-box}.db-content-zone2{display:flex;flex-direction:column;gap:0;flex-shrink:0;min-height:0;background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:22px 24px 24px}.db-zone-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:8px}.db-zone-header-actions{display:flex;align-items:center;gap:8px}.db-zone-title{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.db-zone-action-btn{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:var(--accent);background:none;border:none;cursor:pointer;padding:0;font-family:var(--font-body);flex-shrink:0;transition:opacity .15s}.db-zone-action-btn:hover{opacity:.75}.db-project-cards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;flex:1}.db-project-card{border:1px solid var(--border);border-radius:0;background:var(--bg-card);padding:14px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s,box-shadow .15s;height:100%;overflow:hidden;box-sizing:border-box}.db-project-card:hover{border-color:#fe7f2d59;box-shadow:0 2px 10px #00000012}.db-project-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.db-project-card-name{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;line-height:1.3}.db-tech-badge{flex-shrink:0;padding:1px 7px;border-radius:0;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.db-tech-badge--abap{background:#fe7f2d1f;color:var(--accent);border:1px solid rgba(254,127,45,.2)}.db-tech-badge--hana{background:#16a34a1a;color:#16a34a;border:1px solid rgba(22,163,74,.18)}.db-project-card-meta{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-muted)}.db-project-card-desc{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.db-project-card-meta-sep{opacity:.5}.db-project-card-activity{display:inline-flex;align-items:center;gap:3px}.db-project-card-modules{display:flex;flex-wrap:wrap;gap:4px}.db-module-chip{padding:1px 6px;border-radius:0;font-size:10px;font-weight:600;background:var(--bg-hover);color:var(--text-secondary);border:1px solid var(--border)}.db-module-chip--overflow{color:var(--text-muted);border-style:dashed}.db-system-chips{display:flex;gap:4px;flex-wrap:wrap}.db-system-chip{padding:1px 6px;border-radius:0;font-size:10px;font-weight:500;background:var(--accent-soft);color:var(--accent);border:1px solid rgba(254,127,45,.18)}.db-project-card-footer{margin-top:auto;padding-top:4px}.db-chat-project-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:0;background:var(--accent);color:#fff;border:none;cursor:pointer;font-size:11px;font-weight:600;font-family:var(--font-body);transition:background .15s;white-space:nowrap}.db-chat-project-btn:hover{background:#d0651e}.db-add-project-card{border:1.5px dashed var(--border);border-radius:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:24px 14px;cursor:pointer;color:var(--text-muted);font-size:12px;font-weight:500;font-family:var(--font-body);transition:border-color .15s,color .15s,background .15s;min-height:130px;width:100%}.db-add-project-card:hover{border-color:#fe7f2d66;color:var(--text-secondary);background:#fe7f2d0a}.db-upgrade-card{border:1px solid var(--border);border-radius:0;background:var(--bg-card);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 14px;min-height:130px;text-align:center}.db-upgrade-card-text{margin:0;font-size:12px;color:var(--text-muted);line-height:1.4}.db-upgrade-link{font-size:12px;font-weight:500;color:var(--accent);background:none;border:none;cursor:pointer;padding:0;font-family:var(--font-body);transition:opacity .15s}.db-upgrade-link:hover{opacity:.75}.db-zone-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;text-align:center;border:1px dashed var(--border);border-radius:0}.db-zone-empty-text{margin:0;font-size:13px;color:var(--text-muted);line-height:1.5}.db-zone-empty-btn{padding:7px 16px;border-radius:0;background:var(--bg-hover);color:var(--text-primary);border:1px solid var(--border);cursor:pointer;font-size:12px;font-weight:500;font-family:var(--font-body);transition:border-color .15s,background .15s}.db-zone-empty-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.db-recent-conv-list{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:0;overflow:hidden;background:var(--bg-card);flex:1;min-height:0;overflow-y:auto}.db-conv-row{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;cursor:pointer;transition:background .1s;border-bottom:.5px solid var(--border);text-align:left;background:transparent;border-left:none;border-right:none;border-top:none;width:100%;font-family:var(--font-body)}.db-conv-row:last-child{border-bottom:none}.db-conv-row:hover{background:var(--bg-hover)}.db-conv-row-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.db-conv-title{font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-conv-pills{display:flex;align-items:center;gap:5px}.db-conv-pill{display:inline-block;padding:1px 6px;border-radius:0;font-size:10px;font-weight:500;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-conv-pill--project{background:var(--accent-soft);color:var(--accent);border:1px solid rgba(254,127,45,.2)}.db-conv-pill--general{background:var(--bg-hover);color:var(--text-muted);border:1px solid var(--border)}.db-conv-pill--dev{background:#fbbf241a;color:var(--warning);border:1px solid rgba(251,191,36,.2)}.db-conv-time{font-size:10px;color:var(--text-muted);white-space:nowrap;flex-shrink:0;margin-top:2px}.db-recent-conv-empty{font-size:12px;color:var(--text-muted);padding:20px 4px;margin:0}.db-view-all-cves-btn{display:block;width:100%;padding:9px 16px;text-align:center;font-size:12px;font-weight:500;color:var(--accent);background:none;border:none;border-top:1px solid var(--border);cursor:pointer;font-family:var(--font-body);transition:background .1s}.db-view-all-cves-btn:hover{background:var(--bg-hover)}.db-skeleton{background:var(--bg-hover);border-radius:0;animation:db-skeleton-pulse 1.4s ease-in-out infinite}@keyframes db-skeleton-pulse{0%,to{opacity:1}50%{opacity:.45}}.db-skeleton-card{border:1px solid var(--border);border-radius:0;background:var(--bg-card);padding:14px;display:flex;flex-direction:column;gap:10px;min-height:130px}.sidebar-project-dot-btn{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;border:none;background:transparent;color:var(--text-secondary);border-radius:0;cursor:pointer;font-size:13px;font-weight:400;text-align:left;font-family:var(--font-body);transition:background .15s,color .15s}.sidebar-project-dot-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-project-dot-btn.active{background:var(--bg-active);color:var(--text-primary);box-shadow:inset 2px 0 0 0 var(--accent)}.sidebar-project-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.sidebar-project-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-new-project-btn{display:flex;align-items:center;gap:6px;width:100%;padding:6px 10px;border:none;background:transparent;color:var(--text-muted);border-radius:0;cursor:pointer;font-size:12px;font-weight:400;text-align:left;font-family:var(--font-body);transition:background .15s,color .15s}.sidebar-new-project-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.db-cve-charts-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.db-cve-chart-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:20px 22px;display:flex;flex-direction:column;gap:16px}.db-cve-chart-title{font-size:11px;font-weight:700;color:var(--text-secondary);margin:0;text-transform:uppercase;letter-spacing:.06em}.db-cve-sev-bars{display:flex;flex-direction:column;gap:12px}.db-cve-sev-row{display:grid;grid-template-columns:56px 1fr 24px;align-items:center;gap:8px}.db-cve-sev-label{font-size:11px;font-weight:500;color:var(--text-secondary)}.db-cve-sev-track{height:9px;background:var(--bg-hover);border-radius:0;overflow:hidden}.db-cve-sev-fill{height:100%;border-radius:0;min-width:3px}.db-cve-sev-count{font-size:11px;font-weight:600;text-align:right}.db-cve-donut-wrap{display:flex;align-items:center;gap:16px}.db-cve-donut-ring{width:104px;height:104px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.db-cve-donut-hole{width:66px;height:66px;background:var(--bg-card);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.db-cve-donut-pct{font-size:16px;font-weight:700;color:var(--text-primary);line-height:1}.db-cve-donut-pct-sub{font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.db-cve-donut-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.db-cve-legend-row{display:flex;align-items:center;gap:7px}.db-cve-legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.db-cve-legend-label{font-size:12px;color:var(--text-secondary);flex:1}.db-cve-legend-count{font-size:13px;font-weight:600}.db-cve-chart-loading{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);padding:12px 0}.db-cve-section-title{font-size:13px;font-weight:600;color:var(--text-primary);margin:0;white-space:nowrap}.db-cve-status-cell{white-space:nowrap;padding:6px 8px}.db-status-select{font-size:11px;font-weight:500;padding:3px 7px;border-radius:0;border:1px solid;cursor:pointer;outline:none;background:transparent;line-height:1.4}.db-status--pending{color:var(--text-muted);border-color:var(--border)}.db-status--reviewed{color:#16a34a;border-color:#16a34a59;background:#16a34a14}.db-status--whitelisted{color:var(--accent);border-color:#fe7f2d59;background:var(--accent-soft)}[data-theme=light] .db-status--pending{color:var(--text-secondary)}.db-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.db-modal-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:0;width:100%;max-width:960px;max-height:82dvh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000059}.db-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 0;flex-shrink:0}.db-modal-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.db-modal-subtitle{font-size:12px;color:var(--text-muted);margin:3px 0 0}.db-modal-close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;background:none;border:1px solid transparent;border-radius:0;color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s}.db-modal-close:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border)}.db-modal-search{padding:12px 20px 0;flex-shrink:0}.db-modal-body{flex:1;overflow-y:auto;padding:12px 0 16px}.cvl-page{display:flex;flex-direction:column;gap:20px;padding:20px 24px 40px;max-width:1200px;margin:0 auto;width:100%}.cvl-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.cvl-title{font-size:22px;font-weight:700;color:var(--text-primary);margin:0}.cvl-subtitle{font-size:12px;color:var(--text-muted);margin:3px 0 0}.cvl-header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.cvl-last-sync{font-size:12px;color:var(--text-muted)}.cvl-sync-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border);border-radius:0;cursor:pointer;transition:background .15s}.cvl-sync-btn:hover:not(:disabled){background:var(--bg-hover)}.cvl-sync-btn--spin svg{animation:spin 1s linear infinite}.cvl-error{padding:10px 14px;background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:0;font-size:13px;color:#ef4444}.cvl-loading{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-muted);padding:40px 0;justify-content:center}.cvl-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.cvl-metric-card{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:16px 18px;display:flex;align-items:flex-start;gap:14px}.cvl-metric-icon{flex-shrink:0;margin-top:2px;opacity:.85}.cvl-metric-body{display:flex;flex-direction:column;gap:2px}.cvl-metric-value{font-size:28px;font-weight:700;line-height:1}.cvl-metric-label{font-size:12px;font-weight:500;color:var(--text-secondary)}.cvl-metric-sub{font-size:11px;color:var(--text-muted);margin-top:2px}.cvl-charts-grid{display:grid;grid-template-columns:1fr 1fr 2fr;gap:12px}.cvl-chart-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:18px 20px;display:flex;flex-direction:column;gap:14px}.cvl-chart-title{font-size:13px;font-weight:600;color:var(--text-primary);margin:0}.cvl-sev-bars{display:flex;flex-direction:column;gap:10px}.cvl-sev-row{display:grid;grid-template-columns:64px 1fr 28px;align-items:center;gap:10px}.cvl-sev-label{font-size:11px;font-weight:500;color:var(--text-secondary)}.cvl-sev-bar-track{height:8px;background:var(--bg-hover);border-radius:0;overflow:hidden}.cvl-sev-bar-fill{height:100%;border-radius:0;transition:width .4s ease;min-width:4px}.cvl-sev-count{font-size:12px;font-weight:600;text-align:right}.cvl-donut-wrap{display:flex;align-items:center;gap:20px}.cvl-donut-ring{width:100px;height:100px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.cvl-donut-hole{width:62px;height:62px;background:var(--bg-card);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.cvl-donut-pct{font-size:16px;font-weight:700;color:var(--text-primary);line-height:1}.cvl-donut-pct-label{font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.cvl-donut-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.cvl-legend-row{display:flex;align-items:center;gap:7px}.cvl-legend-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.cvl-legend-label{font-size:12px;color:var(--text-secondary);flex:1}.cvl-legend-count{font-size:13px;font-weight:600}.cvl-monthly-chart{display:flex;align-items:flex-end;gap:6px;height:100px}.cvl-month-col{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}.cvl-month-count{font-size:10px;color:var(--text-muted);line-height:1}.cvl-month-bar-track{flex:1;width:100%;display:flex;align-items:flex-end;background:var(--bg-hover);border-radius:0;overflow:hidden;min-height:40px}.cvl-month-bar-fill{width:100%;background:var(--accent);border-radius:0;transition:height .3s ease;min-height:3px}.cvl-month-label{font-size:10px;color:var(--text-muted);line-height:1}.cvl-table-section{background:var(--bg-card);border:1px solid var(--border);border-radius:0;overflow:hidden}.cvl-table-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px 12px;border-bottom:1px solid var(--border);flex-wrap:wrap;row-gap:10px}.cvl-table-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:8px}.cvl-filter-badge{font-size:11px;font-weight:500;background:var(--bg-hover);color:var(--text-muted);padding:2px 7px;border-radius:0}.cvl-table-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cvl-status-tabs{display:flex;gap:2px;background:var(--bg-hover);border-radius:0;padding:3px}.cvl-status-tab{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:500;color:var(--text-muted);background:none;border:none;border-radius:0;cursor:pointer;transition:background .12s,color .12s;white-space:nowrap}.cvl-status-tab:hover{color:var(--text-primary)}.cvl-status-tab--active{background:var(--bg-card);color:var(--text-primary);box-shadow:inset 0 -2px 0 0 var(--accent)}.cvl-tab-count{font-size:11px;font-weight:600;opacity:.65}.cvl-table-wrap{overflow-x:auto}.cvl-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;border-top:1px solid var(--border);flex-wrap:wrap}.cvl-page-info{font-size:12px;color:var(--text-muted)}.cvl-page-btns{display:flex;align-items:center;gap:3px}.cvl-page-btn{min-width:30px;height:30px;padding:0 6px;font-size:13px;font-weight:500;color:var(--text-secondary);background:none;border:1px solid transparent;border-radius:0;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.cvl-page-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border);color:var(--text-primary)}.cvl-page-btn:disabled{opacity:.3;cursor:default}.cvl-page-btn--active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.cvl-page-btn--active:hover{background:var(--accent);border-color:var(--accent);color:#fff}.cvl-page-ellipsis{font-size:13px;color:var(--text-muted);padding:0 4px;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:1100px){.cvl-metrics-grid{grid-template-columns:repeat(2,1fr)}.cvl-charts-grid{grid-template-columns:1fr 1fr}.cvl-chart-panel--wide{grid-column:1 / -1}}@media(max-width:480px){.cvl-metrics-grid{grid-template-columns:1fr 1fr}.cvl-charts-grid{grid-template-columns:1fr}.cvl-page{padding:16px 14px 32px}}@media(max-width:768px){.db-content-zone1,.db-project-cards-grid{grid-template-columns:1fr}.db-content-zone2 .db-table-wrap{display:none}.db-content-zone2 .db-view-all-cves-btn{display:block}.db-modal-overlay{padding:12px;align-items:flex-end}.db-modal-panel{max-height:90dvh;border-radius:0}}[data-theme=light] .db-tools-row{background:#fff;border-color:#0f172a1a;box-shadow:0 1px 2px #0f172a0d}[data-theme=light] .db-panel{background:#fff;border-color:#0f172a1a}[data-theme=light] .db-cve-table thead tr{background:#fff}[data-theme=light] .db-sev-medium{color:#a16207}@media(max-width:1100px){.db-tools-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.db-chip-btn{justify-content:center;width:100%}.db-content-grid{grid-template-columns:1fr}.db-projects-panel{max-height:280px}}@media(max-width:960px){.db-dashboard{padding-top:64px}.db-tools-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.db-cve-charts-row{grid-template-columns:1fr}}@media(max-width:768px){.db-dashboard{padding:64px 14px 16px;gap:14px}.db-header-title{font-size:22px}.db-header-updated{display:none}.db-tools-row{display:grid;grid-template-columns:1fr;gap:6px}.db-panel-header{flex-wrap:wrap;row-gap:8px}.db-panel-actions{width:100%}.db-search-wrap{flex:1}.db-search-input{width:100%}}@media(max-width:480px){.db-dashboard{padding:64px 10px 14px;gap:12px}.db-header-label{font-size:11px;letter-spacing:.03em}.db-header-title{font-size:19px}.db-tool-icon{width:32px;height:32px;border-radius:0;flex-shrink:0}.db-tool-label{font-size:13px}.db-tool-btn{padding:10px 12px}.db-cve-table th:nth-child(2),.db-cve-table td:nth-child(2),.db-cve-table th:nth-child(5),.db-cve-table td:nth-child(5){display:none}.db-cve-name{max-width:160px;white-space:normal;font-size:12px;line-height:1.4}.db-cve-id-link{font-size:11px}.db-sev-badge{font-size:10px;padding:2px 5px;gap:3px}.db-cve-row td{padding:8px 10px}.db-cve-table th{padding:6px 10px}.db-projects-panel{max-height:220px}}.project-page-view{display:flex;flex-direction:column;gap:20px;max-width:840px;background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:28px 32px;animation:project-view-in .18s ease-out}.config-page--project-detail .project-page-view{max-width:none}@keyframes project-view-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.project-page-view-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-page-back-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;font-family:var(--font-body);color:var(--text-secondary);background:none;border:none;cursor:pointer;padding:0;transition:color .15s}.project-page-back-btn:hover{color:var(--text-primary)}.project-page-view-actions{display:flex;align-items:center;gap:6px}.project-page-view-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.project-page-view-name{margin:0;font-size:24px;font-weight:700;color:var(--text-primary)}.project-page-view-body{display:flex;flex-direction:column;gap:20px}.uat-page{display:flex;flex-direction:column;gap:24px;max-width:1100px;padding:32px 28px 60px}.uat-page-header{display:flex;flex-direction:column;gap:6px}.uat-page-title{display:flex;align-items:center;gap:10px;color:var(--text-primary)}.uat-page-title h1{margin:0;font-size:22px;font-weight:700}.uat-page-subtitle{margin:0;font-size:14px;color:var(--text-secondary)}.uat-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);padding-bottom:0}.uat-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;font-family:var(--font-body);color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s;margin-bottom:-1px}.uat-tab:hover{color:var(--text-primary)}.uat-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.uat-tab-badge{background:var(--bg-active);color:var(--text-secondary);border-radius:0;padding:1px 6px;font-size:11px}.uat-tab-badge--active{background:var(--accent-soft);color:var(--accent);animation:uat-pulse 1.6s ease-in-out infinite}.uat-tab-content{display:flex;flex-direction:column;gap:16px}.uat-defs-toolbar{display:flex;align-items:center;gap:8px}.uat-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;font-family:var(--font-body);border-radius:0;border:1px solid var(--border);cursor:pointer;transition:background .15s,color .15s}.uat-btn--primary{background:var(--accent);color:var(--text-on-accent);border-color:transparent}.uat-btn--primary:hover{filter:brightness(1.1)}.uat-btn--ghost{background:transparent;color:var(--text-secondary)}.uat-btn--ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.uat-btn--run{background:var(--accent-soft);color:var(--accent);border-color:transparent;font-size:12px;padding:5px 10px}.uat-btn--run:hover{background:#fe7f2d40}.uat-btn--danger{background:#ff6b6b26;color:var(--danger);border-color:transparent}.uat-btn--danger:hover{background:#ff6b6b40}.uat-btn--sm{padding:4px 10px;font-size:12px}.uat-btn:disabled{opacity:.5;cursor:not-allowed}.uat-icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:5px;background:none;border:none;border-radius:0;color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s}.uat-icon-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.uat-icon-btn--danger:hover{color:var(--danger);background:#ff6b6b1a}.uat-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;border-radius:0;white-space:nowrap}.uat-badge--queued{background:var(--bg-active);color:var(--text-secondary)}.uat-badge--running{background:#fe7f2d26;color:var(--accent)}.uat-badge--passed{background:#44c88026;color:#44c880}.uat-badge--failed{background:#ff6b6b26;color:var(--danger)}.uat-badge--error{background:#ffa50026;color:orange}.uat-expect-badge{font-size:10px;font-weight:600;padding:1px 6px;border-radius:0;margin-left:6px;text-transform:uppercase;letter-spacing:.04em}.uat-expect-badge--success{background:#44c88026;color:#44c880}.uat-expect-badge--negative,.uat-expect-badge--auth_failure{background:#ff6b6b26;color:var(--danger)}.uat-expect-badge--error{background:#ffa50026;color:orange}.uat-def-test-id{font-size:13px;font-weight:700;font-family:var(--font-mono);color:var(--text-primary)}.uat-table--definitions .uat-def-row{cursor:pointer;transition:background .12s}.uat-table--definitions .uat-def-row:hover{background:var(--bg-hover)}.uat-def-row--selected{background:var(--bg-active)}.uat-td--description{max-width:360px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-secondary);font-size:13px}.uat-td--actions,.uat-th--actions{width:108px}.uat-def-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:2px}.uat-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:#00000059;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.uat-drawer{position:fixed;top:0;right:0;bottom:0;z-index:401;width:min(560px,100vw);background:var(--bg-card);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;animation:uatDrawerIn .22s cubic-bezier(.16,1,.3,1)}@keyframes uatDrawerIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.uat-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.uat-drawer-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.uat-drawer-title{margin:0;font-size:17px;font-weight:700;font-family:var(--font-mono);color:var(--text-primary);line-height:1.3}.uat-drawer-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:color .15s,border-color .15s}.uat-drawer-close:hover{color:var(--text-primary);border-color:var(--border-focus)}.uat-drawer-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.uat-drawer-body--editor{padding:20px}.uat-drawer-description{margin:0;font-size:14px;color:var(--text-secondary);line-height:1.5}.uat-drawer-meta,.uat-drawer-section{display:flex;flex-direction:column;gap:8px}.uat-drawer-code{margin:0;padding:12px;border-radius:0;border:1px solid var(--border);background:var(--bg-main);font-family:var(--font-mono);font-size:11px;line-height:1.5;color:var(--text-secondary);overflow:auto;max-height:320px;white-space:pre-wrap;word-break:break-word}.uat-def-readable{display:flex;flex-direction:column;gap:14px}.uat-drawer-meta--compact{gap:6px}.uat-def-readable-roles{display:flex;flex-wrap:wrap;gap:6px}.uat-def-role-chip{font-size:11px;padding:2px 6px;border-radius:0;background:var(--bg-main);border:1px solid var(--border)}.uat-def-steps{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.uat-def-step{display:grid;grid-template-columns:5rem 1fr;gap:10px;align-items:start;font-size:13px;color:var(--text-secondary);line-height:1.4}.uat-def-step-action{width:5rem;box-sizing:border-box;text-align:center;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 4px;border-radius:0;background:var(--bg-active);color:var(--text-muted);font-family:var(--font-mono)}.uat-def-step-text{flex:1;min-width:0}.uat-def-expect-summary{margin:0 0 8px;font-size:13px;color:var(--text-primary);line-height:1.4}.uat-def-verify-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.uat-def-verify-item{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:0;border:1px solid var(--border);background:var(--bg-main);font-size:12px}.uat-def-raw-toggle{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:none;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);cursor:pointer;transition:color .15s}.uat-def-raw-toggle:hover{color:var(--text-primary)}.uat-th--check,.uat-td--check{width:36px;padding-left:12px;padding-right:0}.uat-def-checkbox{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.uat-bulk-runs-layout{display:grid;grid-template-columns:minmax(220px,280px) 1fr;gap:16px;align-items:start}@media(max-width:960px){.uat-bulk-runs-layout{grid-template-columns:1fr}}.uat-bulk-runs-list{display:flex;flex-direction:column;gap:8px}.uat-bulk-run-card{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:0;border:1px solid var(--border);background:var(--bg-card);text-align:left;cursor:pointer;transition:border-color .15s,background .15s}.uat-bulk-run-card:hover{border-color:#ffffff26;background:var(--bg-hover)}.uat-bulk-run-card--active{border-color:var(--accent);background:var(--accent-soft)}.uat-bulk-run-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.uat-bulk-run-card-time{font-size:12px;color:var(--text-secondary)}.uat-bulk-run-card-progress{margin:0;font-size:13px;font-weight:600;color:var(--text-primary)}.uat-bulk-run-card-stats{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--text-muted)}.uat-bulk-run-placeholder{display:flex;align-items:center;justify-content:center;min-height:200px;padding:24px;border-radius:0;border:1px dashed var(--border);color:var(--text-muted);font-size:13px}.uat-bulk-run-detail{display:flex;flex-direction:column;gap:14px;padding:16px;border-radius:0;border:1px solid var(--border);background:var(--bg-card)}.uat-bulk-run-detail-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.uat-bulk-run-detail-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.uat-bulk-run-detail-time{font-size:14px;font-weight:600;color:var(--text-primary)}.uat-bulk-progress-bar{height:8px;border-radius:99px;background:var(--bg-active);overflow:hidden}.uat-bulk-progress-fill{height:100%;border-radius:99px;background:var(--accent);transition:width .3s ease}.uat-bulk-progress-fill--done{background:#44c880}.uat-bulk-progress-fill--failed{background:var(--danger)}.uat-bulk-progress{display:flex;flex-direction:column;gap:0}.uat-bulk-progress-text{margin:6px 0 0;font-size:12px;color:var(--text-secondary)}.uat-bulk-run-stats{display:flex;gap:16px;font-size:12px;color:var(--text-muted)}.uat-drawer-footer{display:flex;flex-wrap:wrap;gap:8px;padding:16px 20px;border-top:1px solid var(--border);flex-shrink:0}.uat-editor-panel--drawer{border:none;border-radius:0;padding:0;background:transparent;height:100%}.uat-editor-panel--drawer .uat-code-editor{min-height:280px}.uat-editor-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:24px;display:flex;flex-direction:column;gap:16px}.uat-editor-header{display:flex;align-items:center;justify-content:space-between}.uat-editor-title{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.uat-editor-fields{display:grid;grid-template-columns:1fr 2fr;gap:12px}@media(max-width:480px){.uat-editor-fields{grid-template-columns:1fr}}.uat-label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:500;color:var(--text-secondary)}.uat-input{background:var(--bg-input);border:1px solid var(--border);border-radius:0;padding:7px 10px;font-size:13px;font-family:var(--font-body);color:var(--text-primary);outline:none;transition:border-color .15s}.uat-input:focus{border-color:var(--border-focus)}.uat-input:disabled{opacity:.55;cursor:not-allowed}.uat-editor-code-wrap{display:flex;flex-direction:column;gap:6px}.uat-editor-code-toolbar{display:flex;align-items:center;gap:8px}.uat-editor-code-label{font-size:12px;color:var(--text-secondary);font-weight:500;flex:1}.uat-code-editor{width:100%;box-sizing:border-box;background:#0d0d0d;border:1px solid var(--code-border);border-radius:0;padding:14px;font-family:var(--font-mono);font-size:12.5px;color:var(--text-primary);resize:vertical;outline:none;line-height:1.6;transition:border-color .15s}.uat-code-editor:focus{border-color:var(--border-focus)}.uat-editor-actions{display:flex;align-items:center;gap:8px}.uat-table-wrap{overflow-x:auto;border-radius:0;border:1px solid var(--border)}.uat-table{width:100%;border-collapse:collapse;font-size:13px}.uat-th{padding:10px 14px;text-align:left;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-card);border-bottom:1px solid var(--border);white-space:nowrap}.uat-run-row{transition:background .1s}.uat-run-row:hover,.uat-run-row--expanded{background:var(--bg-hover)}.uat-td{padding:11px 14px;color:var(--text-primary);border-bottom:1px solid var(--border);vertical-align:middle}.uat-td--mono{font-family:var(--font-mono);font-size:12px}.uat-td--dim{color:var(--text-muted);font-size:12px}.uat-td--running-pulse{font-size:12px;color:var(--accent);animation:uat-pulse 1.4s ease-in-out infinite}.uat-evidence-cell{padding:0!important;border-bottom:1px solid var(--border)}.uat-evidence-panel{padding:16px 20px 20px;background:var(--bg-main);display:flex;flex-direction:column;gap:14px}.uat-evidence-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 6px}.uat-evidence-status-msg{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.uat-evidence-status-msg code{font-family:var(--font-mono);font-size:12px;color:var(--text-primary)}.uat-evidence-verdict{display:flex;gap:20px;font-size:13px;color:var(--text-secondary)}.uat-verdict--match{color:#44c880}.uat-verdict--mismatch{color:var(--danger)}.uat-steps{display:flex;flex-direction:column}.uat-step-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.uat-step{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.uat-step--fail{color:var(--danger)}.uat-step-index{background:var(--bg-active);color:var(--text-muted);border-radius:0;padding:1px 5px;font-family:var(--font-mono);font-size:11px;min-width:22px;text-align:center}.uat-step-detail{font-family:var(--font-mono)}.uat-step-error{color:var(--danger);font-size:11px;margin-left:4px}.uat-screenshot-grid{display:flex;flex-wrap:wrap;gap:8px}.uat-screenshot-thumb{background:none;border:1px solid var(--border);border-radius:0;padding:0;cursor:pointer;overflow:hidden;transition:border-color .15s,transform .1s;width:120px;height:80px}.uat-screenshot-thumb:hover{border-color:var(--accent);transform:scale(1.03)}.uat-screenshot-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.uat-dl{margin:0}.uat-dl-row{display:flex;gap:10px;font-size:13px;margin-bottom:4px}.uat-dl-row dt{color:var(--text-muted);min-width:120px}.uat-dl-row dd{margin:0}.uat-dl-row dd code{font-family:var(--font-mono);font-size:12px;color:var(--text-primary)}.uat-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 20px;color:var(--text-secondary);font-size:14px;text-align:center}.uat-empty-icon{color:var(--text-muted);opacity:.5}.uat-loading{display:flex;align-items:center;gap:8px;padding:20px 0;font-size:14px;color:var(--text-muted)}.uat-error-text{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--danger);margin:0}.uat-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-scrim);display:flex;align-items:center;justify-content:center;z-index:50}.uat-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:24px;max-width:380px;width:90%;display:flex;flex-direction:column;gap:16px;font-size:14px;color:var(--text-primary)}.uat-modal-actions{display:flex;gap:8px;justify-content:flex-end}.uat-modal--wide{max-width:520px}.uat-bulk-summary{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:13px;color:var(--text-secondary)}.uat-bulk-section{display:flex;flex-direction:column;gap:6px}.uat-bulk-list{margin:0;padding-left:18px;font-size:12px;color:var(--text-secondary);max-height:160px;overflow-y:auto}.uat-bulk-list--errors{color:var(--danger)}.uat-toast{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:0;font-size:13px;font-weight:500;z-index:100;box-shadow:var(--shadow-elevated);animation:uat-toast-in .2s ease-out}.uat-toast--success{background:#44c88026;color:#44c880;border:1px solid rgba(68,200,128,.25)}.uat-toast--error{background:#ff6b6b26;color:var(--danger);border:1px solid rgba(255,107,107,.25)}.uat-spin{animation:uat-spinner .8s linear infinite}@keyframes uat-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes uat-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes uat-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.agents-page{display:flex;flex-direction:column;gap:28px;max-width:1100px;padding:32px 28px 60px}.agents-page-header{display:flex;flex-direction:column;gap:8px}.agents-page-title-row{display:flex;align-items:center;gap:10px;color:var(--text-primary)}.agents-page-title-row h1{margin:0;font-size:22px;font-weight:700}.agents-page-subtitle{margin:0;font-size:14px;color:var(--text-secondary);max-width:640px;line-height:1.5}.agents-section{display:flex;flex-direction:column;gap:14px}.agents-section-title{margin:0;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.agents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.agents-card{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:20px;display:flex;flex-direction:column;gap:10px;transition:border-color .15s,transform .1s}.agents-card:not(.agents-card--soon):hover{border-color:#ffffff24;transform:translateY(-1px)}.agents-grid--featured{grid-template-columns:minmax(320px,520px)}.agents-card--interactive{position:relative;cursor:pointer;overflow:hidden;outline:none}.agents-card-link{text-decoration:none;color:inherit}.agents-card--interactive:focus-visible{box-shadow:0 0 0 2px var(--accent)}.agents-card-glow{position:absolute;inset:-40% -20% auto;height:120px;background:radial-gradient(ellipse at center,rgba(254,127,45,.18),transparent 70%);opacity:0;transition:opacity .25s;pointer-events:none}.agents-card--interactive:hover .agents-card-glow,.agents-card--interactive:focus-visible .agents-card-glow{opacity:1}.agents-card--uat{border-color:#fe7f2d33}.agents-card--interactive:hover{border-color:var(--accent);box-shadow:var(--shadow-md)}.agents-card-icon--uat{width:44px;height:44px;border-radius:0}.agents-badge--live{display:inline-flex;align-items:center;gap:5px;background:#fe7f2d26;color:var(--accent)}.agents-live-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:uat-pulse 1.4s ease-in-out infinite}.agents-card-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px;padding:12px;background:var(--bg-main);border:1px solid var(--border);border-radius:0}.agents-card-stats-loading{grid-column:1 / -1;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}.agents-stat{display:flex;flex-direction:column;gap:2px;min-width:0}.agents-stat-value{font-size:20px;font-weight:700;color:var(--text-primary);line-height:1.2}.agents-stat-value--status{display:inline-flex;align-items:center;min-height:24px}.agents-stat-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;line-height:1.3}.agents-stat--pass .agents-stat-value{color:#44c880}.agents-stat--fail .agents-stat-value{color:var(--danger)}.agents-stat--live .agents-stat-value{color:var(--accent)}.agents-card-caps--hover{opacity:.85}.agents-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.agents-card-action{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;font-size:12px;font-weight:500;font-family:var(--font-body);border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.agents-card-action:hover{background:var(--bg-hover);color:var(--text-primary)}.agents-card-action--primary{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.agents-card-action--primary:hover{background:#fe7f2d40;color:var(--accent)}.agents-card-action--ghost{margin-left:auto}.agents-card--soon{opacity:.72}.agents-card-header{display:flex;align-items:flex-start;justify-content:space-between}.agents-card-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:0;background:var(--accent-soft);color:var(--accent)}.agents-card-badges{display:flex;gap:6px;flex-wrap:wrap}.agents-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:0}.agents-badge--pro{background:#a855f726;color:#a855f7}.agents-badge--soon{background:var(--bg-active);color:var(--text-muted)}.agents-card-name{margin:0;font-size:16px;font-weight:700;color:var(--text-primary)}.agents-card-tagline{margin:0;font-size:13px;font-weight:500;color:var(--accent)}.agents-card-desc{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.45}.agents-card-caps{margin:0;padding:0 0 0 16px;font-size:12px;color:var(--text-muted);display:flex;flex-direction:column;gap:3px}.agent-shell{display:flex;flex-direction:column;gap:20px;max-width:1100px;padding:24px 28px 40px}@media(max-width:768px){.agent-shell{padding:16px 16px 32px}}.agent-shell-nav{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted)}.agent-shell-back{display:inline-flex;align-items:center;gap:2px;background:none;border:none;padding:0;font-size:13px;font-family:var(--font-body);color:var(--text-secondary);cursor:pointer}.agent-shell-back:hover{color:var(--accent)}.agent-shell-sep{opacity:.5}.agent-shell-current{color:var(--text-primary);font-weight:500}.agent-shell-header{display:flex;flex-direction:column;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--border)}.agent-shell-title-row{display:flex;align-items:center;gap:12px}.agent-shell-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:0;background:var(--accent-soft);color:var(--accent)}.agent-shell-title{margin:0;font-size:20px;font-weight:700;color:var(--text-primary)}.agent-shell-tagline{margin:2px 0 0;font-size:13px;color:var(--accent);font-weight:500}.agent-shell-description{margin:0;font-size:14px;color:var(--text-secondary);line-height:1.5;max-width:720px}.uat-action-ref{border:1px solid var(--border);border-radius:0;overflow:hidden}.uat-action-ref-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--bg-main);border:none;font-size:13px;font-weight:500;font-family:var(--font-body);color:var(--text-secondary);cursor:pointer}.uat-action-ref-toggle:hover{color:var(--text-primary)}.uat-action-ref-chevron--open{transform:rotate(90deg)}.uat-action-ref-body{padding:12px 14px 14px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px;max-height:min(320px,40dvh);overflow-y:auto}.uat-action-ref-intro,.uat-action-ref-note{margin:0;font-size:12px;color:var(--text-muted);line-height:1.5}.uat-action-ref-intro code,.uat-action-ref-note code{font-family:var(--font-mono);font-size:11px}.uat-action-ref-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:0}.uat-action-ref-table{width:100%;border-collapse:collapse;font-size:12px}.uat-action-ref-table th,.uat-action-ref-table td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}.uat-action-ref-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--bg-card)}.uat-action-ref-table code{font-family:var(--font-mono);font-size:11px}.uat-action-ref-field{display:inline-block;margin-right:8px}.uat-empty-hint{font-size:12px;color:var(--text-muted);max-width:360px}.agent-shell .uat-page{padding:0;max-width:none}.uat-link-back{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);text-decoration:none;font-size:13px;margin-bottom:10px;transition:color .15s}.uat-link-back:hover{color:var(--accent)}.ta-job-shell-header{display:flex;flex-direction:column;gap:4px}.ta-job-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.ta-job-title{margin:0;font-size:20px;font-weight:700;color:var(--text-primary)}.ta-section-title{margin:8px 0 0;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.ta-agr-table-wrap{max-height:min(60dvh,520px);overflow:auto}.ta-member-role-list{list-style:none;margin:0;padding:0}.ta-member-role-list li+li{margin-top:4px}.ta-excel-wrap{border:1px solid var(--border);border-radius:0;background:var(--bg-card)}.ta-excel-table{border-collapse:collapse;width:100%;font-size:12px}.ta-excel-table .uat-th,.ta-excel-table .uat-td{border:1px solid color-mix(in srgb,var(--border) 85%,transparent);padding:6px 10px;white-space:nowrap}.ta-excel-table thead .uat-th{position:sticky;top:0;z-index:1;background:color-mix(in srgb,var(--bg-elevated, var(--bg-card)) 92%,var(--accent) 8%);font-size:11px;text-transform:uppercase}.ta-editable-table{display:flex;flex-direction:column;gap:12px}.ta-editable-add-form{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr)) auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:0;background:color-mix(in srgb,var(--bg-card) 90%,var(--accent-soft, #eef) 10%)}.ta-editable-add-field{display:flex;flex-direction:column;gap:4px;font-size:12px}.ta-editable-add-field span{color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.ta-editable-filter-row .uat-th{top:34px;background:var(--bg-card)}.ta-editable-filter-input,.ta-editable-cell-input{width:100%;min-width:72px;font-size:12px;padding:4px 8px}.ta-editable-sort-btn{all:unset;cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit}.ta-editable-sort-btn:hover{color:var(--accent)}.ta-editable-actions-col{width:44px;text-align:center}.ta-editable-icon-btn{all:unset;cursor:pointer;color:var(--text-secondary);display:inline-flex;padding:4px;border-radius:0}.ta-editable-icon-btn:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent)}.ta-editable-row--new{background:color-mix(in srgb,var(--accent-soft, #eef) 35%,var(--bg-card))}.ta-editable-save-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}@media(max-width:960px){.ta-editable-add-form{grid-template-columns:1fr 1fr}}.ta-excel-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--bg-hover) 40%,transparent)}.ta-job-table-toolbar{align-items:flex-start;margin-top:16px}.ta-inline-refresh{display:inline-flex;align-items:center;gap:6px;margin-left:10px;color:var(--text-muted);font-size:12px}.ta-agr-table .uat-td--mono{font-size:12px}.ta-muted{color:var(--text-muted);font-size:13px}.ta-row-gap{background:color-mix(in srgb,#facc15 8%,var(--bg-card))}.ta-profile-grid,.ta-role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.ta-role-card,.ta-profile-card{border:1px solid var(--border);border-radius:0;padding:16px;background:var(--bg-card);text-decoration:none;color:inherit;transition:background .1s,border-color .15s}.ta-role-card:hover{background:var(--bg-hover);border-color:color-mix(in srgb,var(--accent) 25%,var(--border))}.ta-role-card h3,.ta-profile-card h2{margin:0 0 8px;font-size:14px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.ta-profile-card-actions{display:flex;gap:8px;margin-top:12px}.ta-wizard-modal{max-width:620px!important;max-height:90dvh;overflow-y:auto}.ta-wizard-header{margin-bottom:20px}.ta-wizard-header h2{margin:0 0 6px;font-size:1.25rem;color:var(--text-primary)}.ta-wizard-subtitle{margin:0;font-size:14px;line-height:1.5;color:var(--text-secondary)}.ta-step-checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.ta-step-item{position:relative}.ta-step-connector{position:absolute;left:19px;top:44px;bottom:-10px;width:2px;background:var(--border)}.ta-step-item--checked .ta-step-connector{background:color-mix(in srgb,var(--accent) 45%,var(--border))}.ta-step-label{display:flex;align-items:flex-start;gap:12px;padding:14px 14px 14px 12px;border:1px solid var(--border);border-radius:0;background:var(--bg-input);cursor:pointer;transition:border-color .15s ease,background .15s ease}.ta-step-label:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.ta-step-item--checked .ta-step-label{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent-soft) 55%,var(--bg-input))}.ta-step-checkbox{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.ta-step-marker{flex-shrink:0;width:38px;height:38px;border-radius:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border)}.ta-step-item--checked .ta-step-marker{background:var(--accent);border-color:var(--accent);color:var(--bg-app)}.ta-step-body{display:flex;flex-direction:column;gap:4px;min-width:0}.ta-step-title-row{display:flex;align-items:center;gap:8px;color:var(--text-primary);font-size:15px}.ta-step-desc{font-size:13px;line-height:1.45;color:var(--text-secondary)}.ta-step-hint{font-size:12px;color:var(--accent);margin-top:2px}.ta-run-preview{margin:16px 0 0;padding:10px 12px;border-radius:0;font-size:13px;color:var(--text-secondary);background:var(--bg-hover);border:1px solid var(--border)}.ta-run-preview strong{color:var(--text-primary)}.ta-config-section{margin-bottom:18px}.ta-config-section:last-child{margin-bottom:0}.ta-config-title{margin:0 0 8px;font-size:14px;font-weight:600;color:var(--text-primary)}.ta-config-help{margin:0 0 10px;font-size:13px;color:var(--text-secondary)}.ta-source-list{margin-top:10px;display:flex;flex-direction:column;gap:4px}.ta-source-meta{color:var(--text-muted);font-style:normal}.ta-input,.ta-textarea{width:100%;padding:10px 12px;border-radius:0;border:1px solid var(--border);background:var(--bg-input);color:var(--text-primary);margin:6px 0 12px;font-size:14px}.ta-input--mono{font-family:var(--font-mono);font-size:12px}.ta-label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-top:8px}.ta-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.ta-chip{padding:4px 8px;border-radius:0;border:1px solid var(--border);background:var(--bg-hover);font-family:var(--font-mono);font-size:11px;cursor:pointer;color:var(--text-secondary)}.ta-preview{font-size:12px;color:var(--accent);font-family:var(--font-mono)}.ta-check{display:flex;align-items:flex-start;gap:10px;font-size:14px;margin:8px 0;color:var(--text-primary);line-height:1.4}.ta-check input{margin-top:3px;accent-color:var(--accent)}.ta-check em{color:var(--text-muted);font-style:normal;font-size:13px}.ta-upload{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px dashed color-mix(in srgb,var(--accent) 25%,var(--border));border-radius:0;padding:28px 20px;text-align:center;color:var(--text-secondary);cursor:pointer;margin-bottom:12px;transition:border-color .15s ease,color .15s ease,background .15s ease}.ta-upload input{display:none}.ta-upload:hover{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 40%,transparent)}.ta-upload--error{border-color:var(--danger);color:var(--danger)}.ta-wizard-body{margin:4px 0 0}.ta-banner{padding:12px 14px;border-radius:0;font-size:13px;border:1px solid var(--border)}.ta-banner--info{background:var(--accent-soft);color:var(--text-secondary)}.ta-banner--warn{background:color-mix(in srgb,#facc15 12%,var(--bg-card))}.ta-banner--error{background:color-mix(in srgb,var(--danger) 12%,var(--bg-card));color:var(--danger)}.ta-timeline{display:flex;flex-wrap:wrap;gap:8px}.ta-timeline-step{padding:6px 12px;border-radius:0;font-size:12px;font-weight:500;border:1px solid var(--border);color:var(--text-muted);text-transform:capitalize;background:var(--bg-card)}.ta-timeline-step--active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.ta-stats{display:flex;gap:12px;flex-wrap:wrap}.ta-stat{flex:1;min-width:140px;padding:14px 16px;border:1px solid var(--border);border-radius:0;background:var(--bg-card);font-size:13px;color:var(--text-secondary)}.ta-stat strong{display:block;font-size:20px;font-weight:700;color:var(--text-primary);margin-bottom:2px}.ta-job-page .uat-tab-content{display:flex;flex-direction:column;gap:20px}.ta-job-title-block{flex:1;min-width:0}.ta-job-subtitle{margin:2px 0 0;font-size:13px;color:var(--text-muted);font-weight:500}.ta-run-file-icon{flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:0;color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 70%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border))}.ta-run-alerts{display:flex;flex-direction:column;gap:10px}.ta-run-panel{display:flex;flex-direction:column;gap:14px}.ta-run-pipeline-card{border:1px solid var(--border);border-radius:0;padding:20px 22px;background:radial-gradient(ellipse 80% 60% at 100% 0%,color-mix(in srgb,var(--accent) 8%,transparent),transparent 55%),var(--bg-card);box-shadow:0 1px color-mix(in srgb,var(--text-primary) 4%,transparent)}.ta-run-pipeline-head{margin-bottom:18px}.ta-run-pipeline-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ta-run-pipeline-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.ta-run-sync-btn{font-size:12px;padding:4px 10px;min-height:0}.ta-run-pipeline-title{margin:0;font-size:15px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.ta-run-pipeline-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border))}.ta-run-pipeline-meta{display:flex;align-items:center;gap:6px;margin:8px 0 0;font-size:13px;color:var(--text-muted)}.ta-run-pipeline-meta strong{color:var(--text-secondary);font-weight:600}.ta-run-stepper{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 0}.ta-run-step{position:relative;display:flex;flex-direction:column;align-items:center;flex:1 1 72px;min-width:64px;max-width:120px;padding:0 4px 8px}.ta-run-step-marker{width:36px;height:36px;border-radius:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--bg-input);color:var(--text-muted);z-index:1;transition:border-color .2s,background .2s,color .2s,box-shadow .2s}.ta-run-step--done .ta-run-step-marker{background:color-mix(in srgb,var(--accent) 88%,var(--bg-app));border-color:var(--accent);color:var(--bg-app)}.ta-run-step--current .ta-run-step-marker{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.ta-run-step-label{margin-top:8px;font-size:11px;font-weight:600;text-align:center;color:var(--text-muted);line-height:1.2}.ta-run-step--done .ta-run-step-label,.ta-run-step--current .ta-run-step-label{color:var(--text-secondary)}.ta-run-step--current .ta-run-step-label{color:var(--accent)}.ta-run-step-connector{position:absolute;top:18px;left:calc(50% + 22px);width:calc(100% - 44px);height:2px;background:var(--border);pointer-events:none}.ta-run-step-connector--done{background:color-mix(in srgb,var(--accent) 55%,var(--border))}.ta-run-progress-block{margin-top:4px}.ta-run-progress-track{height:8px;border-radius:999px;background:color-mix(in srgb,var(--border) 65%,var(--bg-input));overflow:hidden}.ta-run-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 75%,#fff 25%));min-width:4px}.ta-run-progress-fill--done{background:linear-gradient(90deg,color-mix(in srgb,var(--success, #22c55e) 85%,var(--accent)),color-mix(in srgb,var(--success, #22c55e) 65%,var(--accent)))}.ta-run-progress-fill--failed{background:var(--danger)}.ta-run-progress-label{margin:8px 0 0;font-size:12px;font-weight:500;color:var(--text-muted)}.ta-run-context{display:flex;gap:14px;align-items:flex-start;margin-top:16px;padding:14px 16px;border-radius:0;border:1px solid var(--border);background:var(--bg-input)}.ta-run-context--active{border-color:color-mix(in srgb,var(--accent) 30%,var(--border));background:color-mix(in srgb,var(--accent-soft) 45%,var(--bg-input))}.ta-run-context--error{border-color:color-mix(in srgb,var(--danger) 35%,var(--border));background:color-mix(in srgb,var(--danger) 8%,var(--bg-input))}.ta-run-context-icon{flex-shrink:0;width:40px;height:40px;border-radius:0;display:flex;align-items:center;justify-content:center;color:var(--accent);background:var(--bg-card);border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border))}.ta-run-context-headline{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--text-primary)}.ta-run-context-desc{margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary)}.ta-run-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media(max-width:960px){.ta-run-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.ta-run-stats-grid{grid-template-columns:1fr}.ta-run-step{flex:1 1 56px;min-width:52px}}.ta-run-stats-grid--ingestion{grid-template-columns:repeat(3,minmax(0,1fr))}.ta-run-stats-grid--roles,.ta-run-stats-grid--tests{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:768px){.ta-run-stats-grid--ingestion{grid-template-columns:1fr}}.ta-run-no-stages{margin:0 0 8px;font-size:13px}.ta-job-view-tabs{display:grid;gap:4px;width:100%;margin-bottom:16px;padding:4px;border:1px solid var(--border);border-radius:0;background:var(--bg-hover)}.ta-ingest-results{display:flex;flex-direction:column;gap:12px}.ta-ingest-results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media(max-width:960px){.ta-ingest-results-grid{grid-template-columns:1fr}}.ta-ingest-result-card{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:0;border:1px solid var(--border);background:var(--bg-card);color:var(--accent)}.ta-ingest-result-card--wide{flex-direction:row;align-items:center}.ta-ingest-result-card>div{display:flex;flex-direction:column;gap:4px;min-width:0}.ta-ingest-result-value{font-size:22px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.ta-ingest-result-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.ta-ingest-result-hint{font-size:12px;color:var(--text-muted);line-height:1.45}.ta-ingest-next-hint{margin:4px 0 0;font-size:13px;color:var(--text-secondary)}.ta-run-stat{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:0;border:1px solid var(--border);background:var(--bg-card);transition:border-color .2s,box-shadow .2s}.ta-run-stat--pulse{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent)}.ta-run-stat--success .ta-run-stat-icon{color:color-mix(in srgb,var(--success, #16a34a) 90%,var(--accent));background:color-mix(in srgb,var(--success, #16a34a) 12%,var(--bg-card));border-color:color-mix(in srgb,var(--success, #16a34a) 25%,var(--border))}.ta-run-stat--warm .ta-run-stat-icon{color:color-mix(in srgb,#d97706 90%,var(--accent));background:color-mix(in srgb,#facc15 14%,var(--bg-card));border-color:color-mix(in srgb,#facc15 35%,var(--border))}.ta-run-stat-icon{flex-shrink:0;width:38px;height:38px;border-radius:0;display:flex;align-items:center;justify-content:center;color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 55%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}.ta-run-stat-value{display:block;font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--text-primary);line-height:1.1}.ta-run-stat-label{display:block;margin-top:2px;font-size:12px;font-weight:600;color:var(--text-secondary)}.ta-run-stat-hint{display:block;margin-top:4px;font-size:11px;line-height:1.35;color:var(--text-muted)}.ta-run-results{border:1px solid var(--border);border-radius:0;padding:18px 20px 20px;background:var(--bg-card)}.ta-run-results-head{margin-bottom:14px}.ta-run-results-title{margin:0 0 4px;font-size:16px;font-weight:700;color:var(--text-primary)}.ta-run-tabs .uat-tab{display:inline-flex;align-items:center;gap:7px}.ta-run-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:36px 24px 40px;border-radius:0;border:1px dashed color-mix(in srgb,var(--border) 80%,var(--accent) 20%);background:color-mix(in srgb,var(--bg-input) 60%,var(--bg-card))}.ta-run-empty--active{border-style:solid;border-color:color-mix(in srgb,var(--accent) 22%,var(--border));background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--accent) 6%,transparent),transparent 55%),var(--bg-input)}.ta-run-empty-visual{position:relative;width:88px;height:88px;margin-bottom:16px}.ta-run-empty-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px dashed color-mix(in srgb,var(--accent) 35%,var(--border))}.ta-run-empty-ring--2{top:10px;right:10px;bottom:10px;left:10px;border-style:solid;opacity:.55}.ta-run-empty-core{position:absolute;top:22px;right:22px;bottom:22px;left:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent);background:var(--bg-card);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));box-shadow:0 4px 20px color-mix(in srgb,var(--accent) 12%,transparent)}.ta-run-empty-icon{width:56px;height:56px;border-radius:0;display:flex;align-items:center;justify-content:center;margin-bottom:14px;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border)}.ta-run-empty-title{margin:0 0 8px;font-size:16px;font-weight:700;color:var(--text-primary)}.ta-run-empty-desc{margin:0;max-width:420px;font-size:14px;line-height:1.55;color:var(--text-secondary)}.ta-run-empty-facts{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--text-muted)}.ta-run-empty-facts li{display:inline-flex;align-items:center;gap:8px}.ta-run-empty-facts strong{color:var(--accent);font-weight:700}.ta-run-table-loading{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:160px;padding:24px;border-radius:0;border:1px solid var(--border);background:var(--bg-input);color:var(--text-secondary);font-size:14px}.ta-run-table-loading-shimmer{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 30%,color-mix(in srgb,var(--accent) 6%,transparent) 50%,transparent 70%);background-size:200% 100%;animation:ta-shimmer 1.8s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.ta-run-table-loading-shimmer{animation:none;opacity:.35}}@keyframes ta-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.proj-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.proj-card{display:flex;flex-direction:column;gap:10px;text-align:left;padding:18px;border:1px solid var(--border);border-radius:0;background:var(--bg-card);cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s;font-family:var(--font-body)}.proj-card:hover{border-color:#fe7f2d66;box-shadow:0 4px 16px #0000000f;transform:translateY(-1px)}.proj-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.proj-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.proj-card-name{font-size:16px;font-weight:700;color:var(--text-primary);line-height:1.3}.proj-card-desc{margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.proj-card-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.proj-card-chip{padding:2px 8px;border-radius:0;font-size:11px;font-weight:600;background:var(--bg-hover);color:var(--text-secondary)}.proj-card-footer{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:4px;font-size:12px;font-weight:600;color:var(--accent)}.proj-hub-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}@media(max-width:960px){.proj-hub-actions{grid-template-columns:1fr}}.proj-hub-action-card{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:0;background:var(--bg-surface, var(--bg-card));text-decoration:none;color:inherit;transition:border-color .15s,background .15s}.proj-hub-action-card:hover{border-color:#fe7f2d59;background:var(--accent-soft)}.proj-hub-action-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.proj-hub-action-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:0;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.proj-hub-action-body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.proj-hub-action-body strong{font-size:14px;color:var(--text-primary)}.proj-hub-action-body span{font-size:12px;color:var(--text-secondary);line-height:1.4}.proj-hub-action-arrow{color:var(--text-muted);flex-shrink:0}.proj-config-page{width:100%;max-width:960px;margin:0 auto;padding:28px 24px 48px;box-sizing:border-box}.proj-config-header{margin-bottom:20px}.proj-config-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--text-secondary);text-decoration:none;margin-bottom:12px}.proj-config-back:hover{color:var(--text-primary)}.proj-config-header-main h1{margin:0 0 6px;font-size:26px;font-weight:700;color:var(--text-primary)}.proj-config-header-main p{margin:0;font-size:14px;line-height:1.5;color:var(--text-secondary);max-width:640px}.proj-config-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-bottom:16px}.proj-config-tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:10px 14px;border-radius:0;border:1px solid var(--border);background:var(--bg-card);font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;box-sizing:border-box;transition:border-color .15s,color .15s,background .15s}.proj-config-tab:hover{color:var(--text-primary);border-color:var(--text-muted)}.proj-config-tab--active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.proj-config-mode-bar{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;width:100%;margin-bottom:18px}.proj-config-mode-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.proj-config-mode-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding:3px;border-radius:0;border:1px solid var(--border);background:var(--bg-card);box-sizing:border-box}.proj-config-mode-btn{width:100%;min-height:40px;padding:7px 12px;border:none;border-radius:0;background:transparent;font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;text-align:center;box-sizing:border-box}.proj-config-mode-btn--active{background:var(--accent-soft);color:var(--accent)}.proj-config-body,.proj-config-panel{display:flex;flex-direction:column;gap:16px;width:100%}.proj-config-card{width:100%;border:1px solid var(--border);border-radius:0;background:var(--bg-card);padding:18px 20px;box-sizing:border-box}.proj-config-card-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;width:100%}.proj-config-card .uat-table-wrap{width:100%}.proj-config-card-head h3{margin:0 0 4px;font-size:16px;font-weight:700;color:var(--text-primary)}.proj-config-help{margin:0;font-size:13px;line-height:1.45;color:var(--text-secondary)}.proj-config-form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%}.proj-config-field{display:flex;flex-direction:column;gap:6px;width:100%}.proj-config-field .uat-input{width:100%;box-sizing:border-box}.proj-config-field span{font-size:12px;font-weight:600;color:var(--text-secondary)}.proj-config-field--wide{grid-column:auto}.proj-config-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.proj-config-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:100%;padding:28px 20px;border:2px dashed var(--border);border-radius:0;background:var(--bg-surface, var(--bg-hover));color:var(--text-secondary);cursor:pointer;text-align:center;box-sizing:border-box;transition:border-color .15s,background .15s}.proj-config-upload:hover{border-color:var(--accent);background:var(--accent-soft)}.proj-config-upload-hint{font-size:12px;color:var(--text-muted)}.proj-config-error{margin:0 0 12px;padding:10px 12px;border-radius:0;font-size:13px;color:var(--danger, #b91c1c);background:#b91c1c14;border:1px solid rgba(185,28,28,.15)}.proj-config-result{margin-top:12px;padding:12px 14px;border-radius:0;font-size:13px}.proj-config-result--ok{background:#16a34a14;border:1px solid rgba(22,163,74,.2);color:var(--text-primary)}.proj-config-result--warn{background:#eab3081a;border:1px solid rgba(234,179,8,.25);color:var(--text-primary)}.proj-config-result ul{margin:8px 0 0;padding-left:18px}.proj-config-loading,.proj-config-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px;text-align:center;color:var(--text-secondary)}.proj-config-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border);border-radius:0;background:var(--bg-card);color:var(--text-secondary);cursor:pointer}.proj-config-icon-btn:hover{color:var(--text-primary);border-color:var(--text-muted)}.proj-config-icon-btn--danger:hover{color:var(--danger, #b91c1c);border-color:#b91c1c4d}.uat-th--actions,.uat-td--actions{width:88px;text-align:right;white-space:nowrap}@media(max-width:768px){.proj-config-tabs,.proj-config-mode-bar{grid-template-columns:1fr}.proj-config-page{padding:20px 16px 40px}}.ta-project-hub{max-width:960px;margin:0 auto;padding:8px 0 32px}.ta-project-hub-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.ta-project-hub-title{margin:0 0 8px;font-size:26px;font-weight:700;color:var(--text-primary)}.ta-project-hub-subtitle{margin:0;max-width:560px;font-size:14px;line-height:1.55;color:var(--text-secondary)}.ta-project-hub-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;border:1px dashed var(--border);border-radius:0;background:var(--bg-card);text-align:center}.ta-project-hub-empty-icon{color:var(--text-muted)}.ta-project-hub-empty h2{margin:0;font-size:18px}.ta-project-hub-empty p{margin:0;max-width:420px;color:var(--text-secondary)}.ta-project-hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.ta-project-hub-card{display:flex;flex-direction:column;gap:10px;width:100%;padding:18px;border:1px solid var(--border);border-radius:0;background:var(--bg-card);text-align:left;cursor:pointer;font-family:var(--font-body);transition:border-color .15s,box-shadow .15s,transform .15s}.ta-project-hub-card:hover{border-color:#fe7f2d66;box-shadow:0 4px 16px #0000000f;transform:translateY(-1px)}.ta-project-hub-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ta-project-hub-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.ta-project-hub-card-name{font-size:16px;font-weight:700;color:var(--text-primary)}.ta-project-hub-card-desc{margin:0;font-size:13px;line-height:1.45;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ta-project-hub-card-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:12px;color:var(--text-muted)}.ta-project-hub-card-meta span{display:inline-flex;align-items:center;gap:4px}.ta-project-hub-card-active{color:var(--accent);font-weight:600}.ta-project-hub-card-cta{display:inline-flex;align-items:center;gap:6px;margin-top:auto;font-size:12px;font-weight:600;color:var(--accent)}.ta-project-workspace{max-width:1100px;margin:0 auto}.ta-project-workspace-header{margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--border)}.ta-project-workspace-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:12px;font-size:13px;font-weight:500;color:var(--text-secondary);text-decoration:none}.ta-project-workspace-back:hover{color:var(--text-primary)}.ta-project-workspace-title-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px}.ta-project-workspace-title-row h1{margin:0 0 5px;font-size:26px;font-weight:700;letter-spacing:-.02em}.ta-project-workspace-title-row p{margin:0;font-size:14px;color:var(--text-secondary)}.ta-project-workspace-actions{display:flex;flex-wrap:wrap;gap:8px}.ta-project-workspace-grid{display:grid;grid-template-columns:minmax(256px,288px) minmax(0,1fr);gap:24px;align-items:start}.ta-project-catalog-actions{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.ta-project-workspace-aside{position:sticky;top:16px}.ta-project-workspace-main{display:flex;flex-direction:column;gap:0;min-width:0;width:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:24px;min-height:360px}.ta-project-job-sections{display:flex;flex-direction:column;gap:28px}.ta-project-runs-panel{display:flex;flex-direction:column;gap:16px;width:100%}.ta-project-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;padding:4px;border:1px solid var(--border);border-radius:0;background:var(--bg-hover)}.ta-project-tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-width:0;padding:8px 14px;border:none;border-radius:0;background:transparent;color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.ta-project-tab:hover{background:var(--bg-card);color:var(--text)}.ta-project-tab--active{background:var(--bg-card);color:var(--text);box-shadow:inset 0 -2px 0 0 var(--accent)}.ta-project-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;padding:0 6px;border-radius:999px;background:var(--bg-hover);color:var(--text-muted);font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.ta-project-tab--active .ta-project-tab-count{background:color-mix(in srgb,var(--accent) 14%,var(--bg-card));color:var(--accent)}.ta-project-tab-panel{width:100%}.ta-project-runs-table .uat-table{table-layout:fixed;width:100%}.ta-project-runs-table .uat-th:nth-child(1),.ta-project-runs-table .uat-td:nth-child(1){width:16%}.ta-project-runs-table .uat-th:nth-child(2),.ta-project-runs-table .uat-td:nth-child(2){width:28%}.ta-project-runs-table .uat-th:nth-child(3),.ta-project-runs-table .uat-td:nth-child(3){width:14%}.ta-project-runs-table .uat-th:nth-child(4),.ta-project-runs-table .uat-td:nth-child(4){width:20%}.ta-project-runs-table .uat-th:nth-child(5),.ta-project-runs-table .uat-td:nth-child(5){width:22%}.ta-project-runs-table-body--empty .ta-project-runs-empty-row td{padding:0;border-bottom:none}.ta-project-runs-empty-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:calc(var(--ta-runs-empty-rows, 5) * 42px);padding:24px 16px;text-align:center}.ta-project-runs-empty-cell p{margin:0;color:var(--text-muted);font-size:13px}.ta-project-runs-empty-hint{color:var(--text-muted);font-size:12px;max-width:360px;opacity:.9}.ta-project-tab--skeleton{pointer-events:none;cursor:default}.ta-skeleton{background:var(--bg-hover);border-radius:0}.ta-skeleton--title{width:108px;height:14px}.ta-skeleton--badge{width:34px;height:20px;border-radius:0}.ta-skeleton--node{width:20px;height:20px;border-radius:50%}.ta-skeleton--line{height:10px;margin-bottom:8px}.ta-skeleton--line-md{width:42%;height:12px;margin-bottom:10px}.ta-skeleton--line-lg{width:92%}.ta-skeleton--line-sm{width:72%;margin-bottom:0}.ta-skeleton--line-panel-desc{width:min(420px,72%);height:12px;margin-bottom:12px}.ta-skeleton--pill{width:22px;height:18px;border-radius:999px}.ta-skeleton--cell{width:88%;height:12px}.ta-skeleton--cell-short{width:56px}.ta-step--skeleton .ta-step-content{padding-bottom:20px}.ta-step--skeleton.ta-step--last .ta-step-content{padding-bottom:0}.ta-skeleton-row .uat-td{padding-top:14px;padding-bottom:14px}@media(prefers-reduced-motion:no-preference){.ta-setup-checklist--skeleton .ta-skeleton,.ta-project-runs-panel[aria-busy=true] .ta-skeleton{background:linear-gradient(90deg,var(--bg-hover) 0%,color-mix(in srgb,var(--border) 55%,var(--bg-hover)) 50%,var(--bg-hover) 100%);background-size:200% 100%;animation:ta-skeleton-shimmer 1.4s ease-in-out infinite}}@keyframes ta-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.ta-setup-checklist--skeleton .ta-skeleton,.ta-project-runs-panel[aria-busy=true] .ta-skeleton{animation:none}}.ta-project-tab-panel-desc{margin:0 0 12px;color:var(--text-muted);font-size:13px}.ta-project-tab-action-bar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px 16px;margin-bottom:16px;padding:16px 18px;border:1px solid var(--border);border-radius:0;background:var(--bg-hover)}.ta-project-tab-action-title{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--text-primary)}.ta-project-tab-action-desc{margin:0;font-size:13px;color:var(--text-muted);max-width:52ch}.ta-project-job-section--embedded{gap:0;width:100%}.ta-project-job-section{display:flex;flex-direction:column;gap:12px}.ta-project-job-section+.ta-project-job-section{padding-top:24px;border-top:1px solid var(--border)}.ta-project-job-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ta-project-job-section--embedded .uat-table-wrap{width:100%}.ta-pattern-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.ta-preview--warn{color:var(--danger, #c2410c)}.ta-setup-checklist{border:1px solid var(--border);border-radius:0;background:var(--bg-card);padding:20px 20px 22px}.ta-setup-checklist--compact{padding:16px}.ta-setup-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ta-setup-heading{margin:0;font-size:13px;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.ta-setup-badge{font-size:11px;font-weight:700;padding:2px 8px;border-radius:0;border:1px solid var(--border);background:var(--bg-hover);color:var(--text-muted)}.ta-setup-badge--done{color:#16a34a;background:#16a34a14;border-color:#16a34a40}.ta-setup-bar-wrap{height:3px;border-radius:0;background:var(--border);margin-bottom:22px;overflow:hidden}.ta-setup-bar-fill{height:100%;background:#d97706bf;border-radius:0;transition:width .4s ease,background .3s}.ta-setup-bar-fill--done{background:#16a34a}.ta-setup-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.ta-step{display:flex;gap:12px}.ta-step-track{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:20px}.ta-step-node{width:20px;height:20px;border-radius:50%;border:2px solid var(--border);background:var(--bg-hover);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s,background .15s}.ta-step--required .ta-step-node{border-color:#d97706;background:#d9770612}.ta-step--required .ta-step-node:after{content:"";width:6px;height:6px;border-radius:50%;background:#d97706}.ta-step--done .ta-step-node{background:#16a34a;border-color:#16a34a;color:#fff}.ta-step-line{flex:1;width:1px;min-height:14px;background:var(--border);margin:3px 0}.ta-step--done .ta-step-line{background:#16a34a4d}.ta-step-content{flex:1;padding-bottom:20px;padding-top:1px;min-width:0}.ta-step--last .ta-step-content{padding-bottom:0}.ta-step-header{display:flex;align-items:center;gap:8px}.ta-step-name{font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.2}.ta-step--done .ta-step-name{color:var(--text-secondary)}.ta-step-tag{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:var(--bg-hover);padding:1px 6px;border-radius:0;border:1px solid var(--border)}.ta-step-desc{margin:4px 0 0;font-size:12px;line-height:1.45;color:var(--text-secondary)}.ta-step-link{display:inline-block;margin-top:7px;font-size:12px;font-weight:600;color:var(--accent);text-decoration:none}.ta-step-link:hover{text-decoration:underline}@media(max-width:960px){.ta-project-workspace-grid{grid-template-columns:1fr}.ta-project-workspace-aside{position:static}}
