@import"https://api.fontshare.com/v2/css?f[]=general-sans@400,500,600,700&display=swap";@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600&display=swap";@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;0,9..40,800&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #0052CC;--primary-hover: #003d99;--primary-light: #e8f1fc;--accent: #00D4FF;--accent-dark: #00a8cc;--gradient-brand: linear-gradient(135deg, #0052CC 0%, #00D4FF 100%);--gradient-brand-reverse: linear-gradient(135deg, #00D4FF 0%, #0052CC 100%);--gradient-brand-vertical: linear-gradient(180deg, #00D4FF 0%, #0052CC 100%);--success: #10B981;--success-light: #ecfdf5;--warning: #F59E0B;--warning-light: #fffbeb;--danger: #EF4444;--danger-light: #fef2f2;--info-light: #e8f0fe;--ink: #0a1628;--text-dark: #0a1628;--text-medium: #374151;--text-light: #6b7280;--text-muted: #9ca3af;--canvas: #ffffff;--well: #f6f8fb;--background: #f6f8fb;--card-bg: #ffffff;--border: #e7eaf0;--border-light: #f0f2f7;--shadow-sm: 0 1px 2px rgba(0, 40, 100, .04);--shadow-md: 0 4px 12px -2px rgba(0, 40, 100, .08), 0 2px 4px -1px rgba(0, 40, 100, .04);--shadow-lg: 0 12px 24px -4px rgba(0, 40, 100, .1), 0 4px 8px -2px rgba(0, 40, 100, .05);--shadow-brand: none;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 10px;--radius-xl: 16px;--fs-xs: .75rem;--fs-sm: .84375rem;--fs-base: .9375rem;--fs-md: 1.03125rem;--fs-lg: 1.1875rem;--fs-xl: 1.5rem;--fs-2xl: 1.9375rem;--font-sans: "General Sans", "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--t-fast: .12s;--t-base: .18s;--t-slow: .32s;--ease: cubic-bezier(.2, .8, .2, 1)}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);color:var(--text-dark);background:var(--canvas);line-height:1.5}.num,.kpi-value,.dashboard-tab-chip,.tdr-progress-count,.tdr-map-nr,.sidebar-item-meta{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.viewer-backdrop{--viewer-marker: #FFD94A;position:fixed;inset:0;z-index:1200;background:#0a16286b;display:flex;align-items:stretch;justify-content:center;padding:2.5vh 2vw;animation:viewer-fade var(--t-base) var(--ease)}@keyframes viewer-fade{0%{opacity:0}to{opacity:1}}.viewer{width:min(1480px,100%);background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;min-height:0}.viewer-head{display:flex;align-items:center;gap:1rem;padding:.65rem .9rem .65rem 1.2rem;border-bottom:1px solid var(--border)}.viewer-title{font-weight:600;font-size:var(--fs-base);color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1 1 auto}.viewer-head-meta{display:flex;align-items:center;gap:.75rem;font-size:var(--fs-sm);color:var(--text-light);flex:0 0 auto}.viewer-kind{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--text-light)}.viewer-head-actions{display:flex;gap:.4rem;align-items:center;flex:0 0 auto}.viewer-close{font-size:var(--fs-base)}.viewer-mono{font-family:var(--font-mono);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.viewer-toolbar{display:flex;align-items:center;gap:1.25rem;padding:.4rem 1.2rem;border-bottom:1px solid var(--border-light);background:var(--canvas)}.viewer-tool-group{display:flex;align-items:center;gap:.3rem}.viewer-page-input{display:flex;align-items:center;gap:.4rem;font-size:var(--fs-sm);color:var(--text-light)}.viewer-page-input input{width:3.4rem;height:26px;border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-dark);background:var(--canvas)}.viewer-page-input input:focus{outline:2px solid var(--primary-light);border-color:var(--primary)}.viewer-zoom{min-width:4.2rem;text-align:center;color:var(--text-medium)}.viewer-toolbar .btn.is-active{background:var(--primary-light);color:var(--primary)}.viewer-to-finding{margin-left:auto;color:var(--primary)}.viewer-body{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 300px}.viewer-canvas{min-width:0;min-height:0;overflow:auto;background:var(--well);padding:1rem;display:flex;flex-direction:column;align-items:center}.viewer-page{position:relative;width:100%;display:flex;justify-content:center;transition:opacity var(--t-fast) var(--ease)}.viewer-page.is-loading img{opacity:.55}.viewer-page img{display:block;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-sm);height:auto}.viewer-page img.is-fit{width:100%;max-width:100%}.viewer-page-skeleton{width:min(760px,100%);aspect-ratio:1 / 1.414;background:linear-gradient(90deg,var(--border-light) 0%,#fff 50%,var(--border-light) 100%);background-size:200% 100%;border:1px solid var(--border);border-radius:2px;animation:viewer-shimmer 1.3s linear infinite}.viewer-page-skeleton.is-wide{aspect-ratio:16 / 9}@keyframes viewer-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.viewer-center-note{position:absolute;top:40%;left:50%;transform:translate(-50%);background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md);padding:.5rem .9rem;font-size:var(--fs-sm);color:var(--text-medium);box-shadow:var(--shadow-md)}.viewer-empty{margin:auto;max-width:460px;text-align:center;color:var(--text-medium);font-size:var(--fs-base);display:flex;flex-direction:column;gap:.8rem;align-items:center}.viewer-matches{list-style:none;display:flex;flex-direction:column;gap:.35rem}.viewer-finding{border-left:1px solid var(--border);padding:1rem 1.1rem;overflow:auto;display:flex;flex-direction:column;gap:.85rem;background:var(--canvas)}.viewer-finding-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:600;color:var(--text-light)}.viewer-quote{background:var(--well);border-left:3px solid var(--viewer-marker);border-radius:var(--radius-sm);padding:.6rem .75rem;font-size:var(--fs-sm);line-height:1.5;color:var(--text-dark);overflow-wrap:anywhere}.viewer-status{display:flex;gap:.5rem;font-size:var(--fs-sm);line-height:1.45;color:var(--text-medium)}.viewer-status-dot{flex:0 0 auto;width:9px;height:9px;margin-top:.32rem;border-radius:50%;background:var(--text-muted)}.viewer-status.is-hit .viewer-status-dot{background:var(--viewer-marker);box-shadow:0 0 0 2px #ffd94a59}.viewer-status.is-partial .viewer-status-dot{background:var(--warning)}.viewer-status.is-searching .viewer-status-dot{background:var(--primary);animation:viewer-pulse 1s ease-in-out infinite}@keyframes viewer-pulse{50%{opacity:.35}}.viewer-note{font-size:var(--fs-xs);color:var(--text-light);line-height:1.45}.viewer-finding-block{display:flex;flex-direction:column;gap:.25rem}.viewer-finding-value{font-size:var(--fs-sm);color:var(--text-dark);overflow-wrap:anywhere}.viewer-finding-file{font-family:var(--font-mono);font-size:var(--fs-xs)}.viewer-finding-meta{font-size:var(--fs-xs);color:var(--text-light);font-family:var(--font-mono)}.viewer-sheet{width:min(820px,100%);background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:2.5rem 3rem;font-size:var(--fs-md);line-height:1.55;color:var(--text-dark);overflow-wrap:anywhere}.viewer-sheet h1,.viewer-sheet h2,.viewer-sheet h3{margin:1.1em 0 .4em;line-height:1.25}.viewer-sheet p{margin:0 0 .6em}.viewer-sheet table{border-collapse:collapse;margin:.6em 0}.viewer-sheet td,.viewer-sheet th{border:1px solid var(--border);padding:.25rem .5rem;vertical-align:top}.viewer-sheet img{max-width:100%}mark.viewer-mark{background:var(--viewer-marker, #FFD94A);color:inherit;border-radius:2px;padding:0 1px}.viewer-slide{width:min(900px,100%);background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:1.5rem 2rem 2rem;display:flex;flex-direction:column;gap:.6rem}.viewer-slide-head{display:flex;align-items:center;gap:.75rem;color:var(--text-light)}.viewer-slide-nav{margin-left:auto;display:flex;gap:.25rem}.viewer-slide-hidden{font-size:var(--fs-xs);color:var(--warning)}.viewer-slide-title{font-size:var(--fs-lg);color:var(--text-dark)}.viewer-slide-block{white-space:pre-wrap;font-size:var(--fs-base);line-height:1.5;color:var(--text-medium)}.viewer-slide-notes{border-top:1px solid var(--border-light);padding-top:.6rem;font-size:var(--fs-sm);color:var(--text-light)}.viewer-table-wrap{width:100%;overflow:auto}.viewer-sheet-pick{display:inline-flex;gap:.4rem;align-items:center;font-size:var(--fs-sm);margin-bottom:.5rem}.viewer-table{border-collapse:collapse;background:#fff;font-size:var(--fs-sm)}.viewer-table th,.viewer-table td{border:1px solid var(--border);padding:.3rem .5rem;text-align:left;vertical-align:top;max-width:320px}.viewer-table thead th{position:sticky;top:0;background:var(--well);font-weight:600;z-index:1}.viewer-table tr.is-hit td{background:#ffd94a8c}.viewer-link{display:inline-flex;align-items:center;gap:.35rem;border:none;background:none;padding:0;font:inherit;font-size:var(--fs-sm);color:var(--primary);cursor:pointer;border-radius:var(--radius-sm);vertical-align:middle}.viewer-link:hover span{text-decoration:underline}.viewer-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.viewer-link-icon{flex:0 0 auto}.viewer-link-chev{color:var(--text-light)}.viewer-link--icon{width:22px;height:22px;justify-content:center;color:var(--text-light)}.viewer-link--icon:hover{color:var(--primary);background:var(--primary-light)}.viewer-link--chip{border:1px solid var(--border);border-radius:999px;padding:.1rem .5rem;font-size:var(--fs-xs);background:var(--canvas)}.viewer-link--chip:hover{border-color:var(--primary)}@media(max-width:900px){.viewer-backdrop{padding:0}.viewer{border-radius:0}.viewer-body{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto}.viewer-finding{border-left:none;border-top:1px solid var(--border);max-height:38vh}.viewer-head{flex-wrap:wrap}.viewer-toolbar{flex-wrap:wrap;gap:.6rem}.viewer-sheet{padding:1.25rem}}.skel-panel{border:1px solid var(--border);border-radius:var(--radius-md);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.6rem}.skel-line{height:12px;border-radius:6px;background:linear-gradient(90deg,var(--well) 25%,var(--border-light) 37%,var(--well) 63%);background-size:400% 100%;animation:skel-shimmer 1.4s ease infinite}.skel-line--title{height:16px;width:40%}.skel-line--w60{width:60%}.skel-line--w80{width:80%}@keyframes skel-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.pline{position:relative;height:3px;border-radius:999px;background:var(--border-light);overflow:hidden}.pline-fill{position:absolute;inset:0 auto 0 0;border-radius:999px;background:var(--gradient-brand);transition:width var(--t-slow) var(--ease)}.pline--indeterminate .pline-fill{width:36%;animation:pline-slide 1.3s var(--ease) infinite}@keyframes pline-slide{0%{left:-36%}to{left:100%}}.stepper{display:flex;flex-direction:column;gap:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);padding:1.1rem 1.25rem;max-width:560px}.stepper-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.stepper-title{font-size:var(--fs-base);font-weight:600}.stepper-head-end{display:inline-flex;align-items:center;gap:.6rem}.stepper-elapsed{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-light)}.stepper-steps{display:flex;flex-direction:column;gap:.45rem}.stepper-step{display:flex;align-items:center;gap:.6rem;font-size:var(--fs-base);color:var(--text-light)}.stepper-step--done{color:var(--text-medium)}.stepper-step--active{color:var(--text-dark);font-weight:500}.stepper-dot{width:18px;height:18px;flex:0 0 auto;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;border:1.5px solid var(--border);color:var(--text-muted);background:var(--canvas)}.stepper-step--done .stepper-dot{border-color:var(--success);background:var(--success);color:#fff}.stepper-step--active .stepper-dot{border-color:var(--primary);color:var(--primary);animation:dot-pulse 1.2s ease infinite}.stepper-step-detail{margin-left:auto;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-light);white-space:nowrap}@keyframes dot-pulse{0%,to{box-shadow:0 0 #0052cc40}50%{box-shadow:0 0 0 5px #0052cc14}}.genq{border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.7rem}.genq-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.genq-title{font-size:var(--fs-base);font-weight:600}.genq-meta{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-light)}.genq-list{display:flex;flex-direction:column;gap:.3rem}.genq-item{display:flex;align-items:center;gap:.55rem;font-size:var(--fs-base);color:var(--text-light);min-height:26px}.genq-item--writing{color:var(--text-dark);font-weight:500}.genq-caret{display:inline-block;width:2px;height:15px;background:var(--primary);animation:caret-blink .9s steps(1) infinite}@keyframes caret-blink{50%{opacity:0}}.stagger-in>*{animation:rise-in var(--t-slow) var(--ease) both}.stagger-in>*:nth-child(1){animation-delay:0ms}.stagger-in>*:nth-child(2){animation-delay:50ms}.stagger-in>*:nth-child(3){animation-delay:.1s}.stagger-in>*:nth-child(4){animation-delay:.15s}.stagger-in>*:nth-child(5){animation-delay:.2s}.stagger-in>*:nth-child(6){animation-delay:.25s}.stagger-in>*:nth-child(7){animation-delay:.3s}.stagger-in>*:nth-child(8){animation-delay:.35s}@keyframes rise-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.toast-host{position:fixed;right:1.25rem;bottom:1.25rem;z-index:1000;display:flex;flex-direction:column;gap:.5rem;max-width:380px}.toast{display:flex;align-items:center;gap:.7rem;background:var(--ink);color:#fff;border-radius:var(--radius-md);padding:.8rem 1rem;font-size:var(--fs-base);box-shadow:var(--shadow-lg);animation:rise-in var(--t-slow) var(--ease) both}.toast-msg{flex:1;line-height:1.4}.toast-action{background:#ffffff1f;border:none;color:#fff;font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:600;padding:.35rem .7rem;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.toast-action:hover{background:#ffffff38}.toast-close{background:none;border:none;color:#fff9;cursor:pointer;font-size:14px;padding:.2rem}.toast-close:hover{color:#fff}.lrn-strip{margin:6px 0 2px;padding:8px 10px;border:1px solid var(--border, #e3e8ef);border-left:3px solid var(--accent-dark, #00a8cc);background:var(--well, #f6f8fb);border-radius:6px;font-size:var(--fs-sm, .84375rem);display:flex;flex-direction:column;gap:6px}.lrn-strip-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.lrn-strip-title{font-weight:600}.lrn-strip-quote{color:var(--text-muted, #5b6675);font-style:italic}.lrn-strip-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.lrn-strip select,.lrn-scope{font-size:var(--fs-xs, .75rem);padding:2px 6px;border:1px solid var(--border, #e3e8ef);border-radius:4px;background:var(--canvas, #fff)}.lrn-why{width:100%;min-height:36px;resize:vertical;font:inherit;font-size:var(--fs-sm, .84375rem);padding:6px 8px;border:1px solid var(--border, #e3e8ef);border-radius:4px;background:var(--canvas, #fff)}.lrn-strip-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lrn-strip-hint{color:var(--text-muted, #5b6675);font-size:var(--fs-xs, .75rem)}.lrn-mode-chip{display:inline-block;padding:1px 6px;border-radius:10px;font-size:var(--fs-xs, .75rem);border:1px solid var(--border, #e3e8ef);background:var(--canvas, #fff)}.lrn-mode-chip--rule{border-color:var(--ink, #0a1628);color:var(--ink, #0a1628);font-weight:600}.lrn-mode-chip--hint{color:var(--text-muted, #5b6675)}.lrn-props{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.lrn-prop{display:grid;grid-template-columns:20px 1fr auto;gap:6px 8px;align-items:start;padding:6px 8px;border:1px solid var(--border, #e3e8ef);border-radius:6px;background:var(--canvas, #fff)}.lrn-prop--off{opacity:.6}.lrn-prop--warn{border-color:var(--warning, #F59E0B)}.lrn-prop input[type=checkbox]{margin-top:3px}.lrn-prop-main{display:flex;flex-direction:column;gap:3px;min-width:0}.lrn-prop-text{font:inherit;font-size:var(--fs-sm, .84375rem);border:1px solid transparent;border-radius:4px;padding:2px 4px;width:100%;background:transparent}.lrn-prop-text:focus{border-color:var(--border, #e3e8ef);background:var(--canvas, #fff);outline:none}.lrn-prop-meta{color:var(--text-muted, #5b6675);font-size:var(--fs-xs, .75rem);display:flex;flex-wrap:wrap;gap:6px;align-items:center}.lrn-prop-warn{color:#92400e;font-size:var(--fs-xs, .75rem)}.lrn-evidence{margin:2px 0 0;padding:4px 8px;border-left:2px solid var(--border, #e3e8ef);font-size:var(--fs-xs, .75rem);color:var(--text-muted, #5b6675);white-space:pre-wrap}.lrn-kind{display:inline-block;padding:1px 6px;border-radius:3px;font-size:var(--fs-xs, .75rem);background:var(--ink, #0a1628);color:#fff;letter-spacing:.02em}.lrn-kind--doc_usage,.lrn-kind--source{background:#0f766e}.lrn-kind--terminology{background:#7c3aed}.lrn-kind--format,.lrn-kind--structure{background:#b45309}.lrn-kind--profile_field,.lrn-kind--fact{background:#1d4ed8}.lrn-kind--review{background:#6b7280}.lrn-digest{display:flex;flex-direction:column;gap:10px;padding:0 0 8px}.lrn-digest-sub{color:var(--text-muted, #5b6675);font-size:var(--fs-sm, .84375rem)}.lrn-digest-kb{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 8px;border:1px dashed var(--border, #e3e8ef);border-radius:6px}.lrn-digest-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}.lrn-digest-done{padding:8px 10px;border-radius:6px;background:var(--well, #f6f8fb);font-size:var(--fs-sm, .84375rem)}.lrn-applied{display:flex;flex-direction:column;gap:4px;margin:2px 0 6px;font-size:var(--fs-sm, .84375rem)}.lrn-applied-line{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--text-muted, #5b6675)}.lrn-applied-btn{background:none;border:none;padding:0;font:inherit;color:var(--accent-dark, #00a8cc);cursor:pointer}.lrn-applied-btn:hover{text-decoration:underline}.lrn-applied-detail{padding:6px 10px;border:1px solid var(--border, #e3e8ef);border-radius:6px;background:var(--canvas, #fff);display:flex;flex-direction:column;gap:4px}.lrn-applied-detail ul{margin:0;padding-left:16px}.lrn-id{font-family:var(--font-mono, monospace);font-size:var(--fs-xs, .75rem);color:var(--text-muted, #5b6675)}.lrn-usage{display:flex;flex-direction:column;gap:8px}.lrn-usage-row{display:grid;grid-template-columns:140px 1fr;gap:8px;align-items:start}.lrn-usage-key{font-size:var(--fs-xs, .75rem);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #5b6675);padding-top:4px}.lrn-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.lrn-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 6px 2px 8px;border-radius:12px;border:1px solid var(--border, #e3e8ef);background:var(--canvas, #fff);font-size:var(--fs-xs, .75rem)}.lrn-chip--rule{border-color:var(--ink, #0a1628);font-weight:600}.lrn-chip button{border:none;background:none;cursor:pointer;padding:0 2px;color:var(--text-muted, #5b6675);font-size:12px}.lrn-chip select{border:none;background:transparent;font-size:var(--fs-xs, .75rem)}.lrn-usage-note{width:100%;min-height:48px;resize:vertical;font:inherit;font-size:var(--fs-sm, .84375rem);padding:6px 8px;border:1px solid var(--border, #e3e8ef);border-radius:4px}.lrn-usage-badges{display:inline-flex;gap:4px;flex-wrap:wrap}.lrn-panel{border:1px solid var(--border, #e3e8ef);border-radius:8px;background:var(--canvas, #fff);margin:0 0 12px}.lrn-panel-head{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;cursor:pointer}.lrn-panel-body{padding:0 14px 12px;display:flex;flex-direction:column;gap:10px}.lrn-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.lrn-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm, .84375rem)}.lrn-table th{text-align:left;font-size:var(--fs-xs, .75rem);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #5b6675);padding:4px 6px;border-bottom:1px solid var(--border, #e3e8ef)}.lrn-table td{padding:6px;border-bottom:1px solid var(--border, #e3e8ef);vertical-align:top}.lrn-table tr.is-off td{opacity:.55}.lrn-table tr.is-conflict td:first-child{border-left:3px solid var(--warning, #F59E0B)}.lrn-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#16a34a;margin-right:4px}.lrn-dot--off{background:#9ca3af}.lrn-row-actions{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.lrn-detail{grid-column:1 / -1;padding:6px 8px;background:var(--well, #f6f8fb);border-radius:4px;font-size:var(--fs-xs, .75rem);display:flex;flex-direction:column;gap:3px}.lrn-composer{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border:1px dashed var(--border, #e3e8ef);border-radius:6px}.lrn-composer-examples{color:var(--text-muted, #5b6675);font-size:var(--fs-xs, .75rem);display:flex;flex-direction:column;gap:2px}.lrn-proposals-head{font-size:var(--fs-xs, .75rem);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #5b6675);margin-top:6px}.lrn-tprop{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--border, #e3e8ef);border-radius:6px;font-size:var(--fs-sm, .84375rem)}.lrn-tprop span:first-of-type{flex:1 1 300px}.lrn-dryrun{font-size:var(--fs-xs, .75rem);color:var(--text-muted, #5b6675);padding:4px 8px;border-left:2px solid var(--border, #e3e8ef)}.lrn-additions{margin-top:8px;display:flex;flex-direction:column;gap:4px}.lrn-additions-head{font-size:var(--fs-xs, .75rem);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #5b6675)}.lrn-addition{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm, .84375rem)}.lrn-addition.is-off{opacity:.55}.thv2-page{padding:0}.thv2-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.5rem 0 1rem}.thv2-count{color:var(--text-light);font-size:.9rem}.thv2-loading,.thv2-empty{padding:2.5rem 2rem;text-align:center;color:var(--text-light)}.thv2-empty{background:var(--well);border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;gap:.6rem}.thv2-empty>p:first-child{font-size:var(--fs-md);font-weight:600;color:var(--text-dark);margin:0}.thv2-empty .text-muted{font-size:var(--fs-base);line-height:1.55;max-width:560px;margin:0}.thv2-empty .btn{margin-top:.4rem}.thv2-list{display:flex;flex-direction:column;gap:.5rem}.thv2-row{display:flex;align-items:center;justify-content:space-between;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.75rem 1rem;box-shadow:var(--shadow-sm)}.thv2-row-main{display:flex;flex-direction:column;gap:.35rem;flex:1;cursor:pointer}.thv2-row-main--locked{cursor:default}.thv2-row--busy{align-items:flex-start}.thv2-progress{display:flex;flex-direction:column;gap:.35rem;margin-top:.25rem;max-width:760px}.thv2-progress .stepper{padding:.75rem 1rem;max-width:none}.thv2-progress-hint{color:var(--text-light);font-size:.82rem;line-height:1.4}.thv2-title{font-weight:600;color:var(--text-dark)}.thv2-badges{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.thv2-meta{color:var(--text-light);font-size:.84rem}.thv2-row-actions{display:flex;gap:.4rem}.thv2-badge{display:inline-block;padding:.12rem .5rem;border-radius:var(--radius-sm);background:var(--primary-light);color:var(--primary);font-size:.78rem;font-weight:600}.thv2-badge--type{background:var(--border-light);color:var(--text-medium)}.thv2-status--processing{background:var(--warning-light);color:var(--warning)}.thv2-status--needs_confirmation{background:var(--primary-light);color:var(--primary)}.thv2-status--confirmed{background:var(--success-light);color:var(--success)}.thv2-status--failed{background:var(--danger-light);color:var(--danger)}.thv2-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;display:flex;align-items:center;justify-content:center;padding:1.5rem}.thv2-modal{background:var(--card-bg);border-radius:var(--radius-xl);width:100%;max-width:920px;max-height:88vh;display:flex;flex-direction:column;box-shadow:0 24px 64px -12px #0000004d}.thv2-modal-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.25rem;border-bottom:1px solid var(--border);flex-shrink:0}.thv2-modal-sub{color:var(--text-muted);font-size:.84rem;margin-left:.6rem}.thv2-modal-body{padding:1.25rem;overflow-y:auto}.thv2-modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.85rem 1.25rem;border-top:1px solid var(--border);flex-shrink:0}.thv2-sec{margin-bottom:1.4rem}.thv2-label{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.85rem;color:var(--text-dark);margin-bottom:.5rem}.thv2-conf{font-size:.78rem;font-weight:700;padding:.05rem .4rem;border-radius:var(--radius-sm)}.thv2-conf--high{background:var(--success-light);color:var(--success)}.thv2-conf--medium{background:var(--warning-light);color:var(--warning)}.thv2-conf--low{background:var(--danger-light);color:var(--danger)}.thv2-select{width:100%;max-width:460px;padding:.45rem .6rem;border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-sans)}.thv2-reason{color:var(--text-light);font-size:.85rem;margin:.5rem 0 0}.thv2-newtype{margin-top:.5rem;padding:.5rem .7rem;font-size:.85rem;background:var(--warning-light);color:var(--warning);border-radius:var(--radius-md)}.thv2-facts{width:100%;border-collapse:collapse;font-size:.85rem}.thv2-facts th{text-align:left;color:var(--text-muted);font-weight:600;padding:.35rem .4rem;border-bottom:1px solid var(--border)}.thv2-facts td{padding:.3rem .4rem;border-bottom:1px solid var(--border-light)}.thv2-facts input[type=text],.thv2-facts td input:not([type=checkbox]){width:100%;padding:.25rem .4rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);font-family:var(--font-sans)}.thv2-facts input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1f}.thv2-narrow{max-width:80px}.thv2-center{text-align:center}.thv2-snippet{color:var(--text-muted)}.thv2-fact-deleted{opacity:.4;text-decoration:line-through}.thv2-reflist,.thv2-seclist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.thv2-reflist li{font-size:.875rem;color:var(--text-medium)}.thv2-conflict-banner{display:flex;align-items:center;gap:.6rem;background:var(--danger-light);color:var(--danger);padding:.5rem .8rem;border-radius:var(--radius-md);margin-bottom:.75rem;font-size:.875rem}.thv2-conflict-opt{display:flex;align-items:center;gap:.45rem;font-size:.875rem;padding:.25rem 0;color:var(--text-medium)}.thv2-seclist li{display:flex;flex-direction:column;gap:.15rem;font-size:.875rem}.thv2-secsum{color:var(--text-light);font-size:.84rem}.thv2-badge--subject{background:var(--primary-light);color:var(--primary)}.thv2-badge--template{background:var(--warning-light);color:var(--warning)}.thv2-summary{color:var(--text-light);font-size:.84rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.thv2-error{color:var(--danger)}.thv2-card{display:flex;flex-direction:column;gap:.45rem;font-size:.875rem;color:var(--text-medium)}.thv2-card-row{display:grid;grid-template-columns:130px 1fr;gap:.6rem;align-items:start}.thv2-card-key{color:var(--text-muted);font-weight:600;font-size:.8rem;padding-top:.15rem}.thv2-toc{margin:.4rem 0 0;padding:.5rem .7rem;font-family:var(--font-mono);font-size:.78rem;line-height:1.45;background:var(--well);border-radius:var(--radius-md);white-space:pre-wrap;max-height:260px;overflow:auto}.thv2-newtype--done{background:var(--success-light);color:var(--success)}.thv2-blob-head{cursor:pointer}.thv2-scope{white-space:nowrap}.thv2-scope-select{padding:.2rem .3rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.8rem;background:var(--card-bg)}.thv2-scope--subject{color:var(--primary)}.thv2-scope--project{color:var(--danger)}.thv2-giltfuer{margin-top:.2rem;display:block;max-width:170px}.thv2-profile{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin:.5rem 0 1rem}.thv2-profile-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1rem;cursor:pointer;font-size:.9rem;color:var(--text-dark)}.thv2-profile-toggle{color:var(--text-muted)}.thv2-profile-body{padding:0 1rem .9rem;border-top:1px solid var(--border-light)}.thv2-profile-text{width:100%;box-sizing:border-box;margin:.6rem 0 0;padding:.6rem .75rem;font-family:var(--font-mono);font-size:.8rem;line-height:1.5;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--well);white-space:pre-wrap;max-height:420px;overflow:auto}.thv2-profile-text--ro{color:var(--text-medium)}.thv2-rules{max-height:320px}.thv2-profile-actions{display:flex;gap:.4rem;margin-top:.6rem;flex-wrap:wrap}.thv2-error{color:var(--danger);font-size:.85rem;margin:.4rem 0 0}.thv2-toc--links{list-style:none;padding:.5rem .75rem}.thv2-toc--links li{line-height:1.6}.thv2-toc-link{border:none;background:none;padding:0;font:inherit;color:var(--primary);cursor:pointer;display:inline-flex;gap:.5rem;align-items:baseline;text-align:left}.thv2-toc-link:hover{text-decoration:underline}.thv2-toc-page{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-light)}.gen-panel{display:flex;flex-direction:column;gap:.75rem}.gen-embedded-task{margin:0;padding:.5rem .7rem;font-size:.9rem;color:var(--text-light);background:var(--card-bg);border:1px solid var(--border-light);border-radius:var(--radius-md)}.gen-task,.gen-style{width:100%;padding:.55rem .7rem;font-family:var(--font-sans);font-size:.9rem;border:1px solid var(--border);border-radius:var(--radius-md);resize:vertical}.gen-task:focus,.gen-style:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1f}.gen-actions{display:flex;gap:.5rem;align-items:center}.gen-actions .gen-style{flex:1}.gen-start{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-top:.9rem}@media(max-width:900px){.gen-start{grid-template-columns:1fr}}.gen-startcard{border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem 1.1rem;background:var(--card-bg);display:flex;flex-direction:column;gap:.45rem}.gen-startcard--primary{border-color:var(--accent-dark, #00a8cc);background:#f0fbff}.gen-startcard p{margin:0;font-size:.875rem;color:var(--text-medium)}.gen-startcard .btn{align-self:flex-start;margin-top:.25rem}.gen-lang{padding:.55rem .5rem;font-family:var(--font-sans);font-size:.9rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface, #fff)}.gen-lang:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1f}.gen-section{margin-top:1rem}.gen-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.gen-outline{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.75rem}.gen-onode{margin:0;padding:.25rem .25rem .25rem .5rem;border-radius:var(--radius-sm)}.gen-onode:hover{background:var(--well)}.gen-onode-row{display:flex;align-items:center;gap:.4rem;min-height:30px}.gen-onode-title{flex:0 1 480px;padding:.25rem .45rem;font-size:var(--fs-base);font-weight:600;border:1px solid transparent;border-radius:var(--radius-sm);font-family:var(--font-sans);background:transparent}.gen-onode-title:hover{border-color:var(--border-light)}.gen-onode-title:focus{outline:none;border-color:var(--primary);background:var(--canvas)}.gen-onode--d1>.gen-onode-row .gen-onode-title{font-size:var(--fs-md);font-weight:600}.gen-onode--d2>.gen-onode-row .gen-onode-title{font-size:var(--fs-base);font-weight:500}.gen-onode--d3>.gen-onode-row .gen-onode-title{font-size:var(--fs-sm);font-weight:500}.gen-badge{display:inline-block;padding:.08rem .45rem;border-radius:var(--radius-sm);font-size:.78rem;font-weight:600;background:var(--primary-light);color:var(--primary)}.gen-badge--muted{background:var(--border-light);color:var(--text-light)}.gen-badge--synth{background:var(--accent);color:#04313a}.gen-badge--fact{background:var(--success-light);color:var(--success)}.gen-result{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.85rem;margin-top:.6rem}.gen-result-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}.gen-conf{font-size:.78rem;font-weight:700;padding:.08rem .45rem;border-radius:var(--radius-sm)}.gen-conf--medium{background:var(--success-light);color:var(--success)}.gen-conf--low{background:var(--warning-light);color:var(--warning)}.gen-used{font-size:.78rem;color:var(--text-muted)}.gen-placeholders{background:var(--warning-light);color:var(--warning);font-size:.84rem;padding:.4rem .6rem;border-radius:var(--radius-md);margin-bottom:.5rem}.gen-text{width:100%;padding:.6rem .75rem;font-family:var(--font-sans);font-size:var(--fs-md);line-height:1.55;border:1px solid var(--border-light);border-radius:var(--radius-md);resize:vertical}.gen-text:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1f}.gen-ph-title{font-size:.84rem;font-weight:600;margin-bottom:.35rem}.gen-ph-row{display:flex;align-items:center;gap:.4rem;margin:.25rem 0}.gen-ph-desc{flex:0 0 200px;font-size:.84rem}.gen-ph-input{flex:1;padding:.25rem .45rem;font-size:.85rem;font-family:var(--font-sans);border:1px solid var(--warning);border-radius:var(--radius-sm);background:#fff}.gen-prov{margin-top:.5rem;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.gen-prov-label{font-size:.78rem;color:var(--text-muted)}.gen-prov-chip{font-size:.78rem;padding:.1rem .5rem;border-radius:var(--radius-sm);background:var(--success-light);color:var(--success);cursor:help}.gen-issues{margin-top:.5rem}.gen-issues-ok{font-size:.84rem;color:var(--success)}.gen-issue{font-size:.84rem;color:var(--warning);background:var(--warning-light);padding:.35rem .6rem;border-radius:var(--radius-md);margin-top:.3rem}.gen-issue--fact_mismatch,.gen-issue--unsupported{color:var(--danger);background:var(--danger-light)}.gen-issue-kind{font-weight:700}.gen-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.gen-head-actions{display:flex;gap:.4rem;align-items:center}.gen-onode-lvl{font-family:var(--font-mono);font-size:.71875rem;font-weight:600;color:var(--text-muted);width:1.5rem;flex:0 0 auto}.gen-osel{width:.875rem;height:.875rem;flex:0 0 auto;margin:0;accent-color:var(--primary);cursor:pointer;opacity:0;transition:opacity var(--t-fast) var(--ease)}.gen-onode-row:hover .gen-osel,.gen-onode-row:focus-within .gen-osel,.gen-outline--selecting .gen-osel,.gen-osel:checked{opacity:1}.gen-osel:disabled{cursor:default}.gen-outline--selecting .gen-osel:disabled:checked{accent-color:var(--text-muted)}.gen-onode-tools{display:inline-flex;gap:.15rem;margin-left:auto;opacity:0;transition:opacity var(--t-fast) var(--ease)}.gen-onode:hover .gen-onode-tools,.gen-onode:focus-within .gen-onode-tools{opacity:1}.gen-ibtn{border:1px solid var(--border-light);background:var(--card-bg);color:var(--text-light);width:1.75rem;height:1.75rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.84rem;line-height:1;padding:0}.gen-ibtn:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.gen-ibtn:disabled{opacity:.35;cursor:default}.gen-ibtn--del:hover:not(:disabled){border-color:var(--warning);color:var(--warning)}.gen-onode-intent{width:100%;max-width:640px;margin:0 0 0 3.2rem;padding:.15rem .45rem;font-size:var(--fs-sm);border:1px solid transparent;border-radius:var(--radius-sm);font-family:var(--font-sans);color:var(--text-light);background:transparent}.gen-onode-intent:hover{border-color:var(--border-light)}.gen-onode-intent:focus{outline:none;border-color:var(--primary);background:var(--canvas)}.gen-onode-adv{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin:.25rem 0 .4rem 3.2rem;font-size:.8125rem}.gen-onode-adv-label{font-family:var(--font-mono);font-size:.71875rem;font-weight:600;color:var(--text-muted);cursor:help}.gen-onode-adv input,.gen-onode-adv select{padding:.2rem .4rem;font-size:.8125rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);font-family:var(--font-sans)}.gen-onode-adv label{display:inline-flex;align-items:center;gap:.25rem}.gen-doc-style{margin:.4rem 0}.gen-review-overall{font-size:.85rem;background:var(--primary-light);color:var(--primary);padding:.5rem .7rem;border-radius:var(--radius-md);margin-bottom:.5rem;display:flex;align-items:flex-start;gap:.6rem}.gen-review-overall-text{flex:1}.gen-review-overall .btn{flex:none;white-space:nowrap}.gen-review-note{font-size:.8125rem;color:var(--primary);background:var(--primary-light);padding:.3rem .55rem;border-radius:var(--radius-sm);margin-top:.4rem;display:flex;align-items:flex-start;gap:.5rem}.gen-review-note-text{flex:1}.gen-review-note .btn{flex:none;white-space:nowrap}.gen-autopilot-status{display:flex;align-items:center;gap:.55rem;margin:.5rem 0;font-size:.85rem;color:var(--primary);background:var(--primary-light);border:1px solid var(--primary);padding:.5rem .75rem;border-radius:var(--radius-md)}.gen-autopilot-spinner{width:14px;height:14px;flex:none;border-radius:50%;border:2px solid var(--primary);border-top-color:transparent;animation:gen-autopilot-spin .7s linear infinite}@keyframes gen-autopilot-spin{to{transform:rotate(360deg)}}.gen-autopilot-status .gen-stop{margin-left:auto;flex:none}.gen-multi{display:flex;align-items:center;gap:.4rem;background:var(--card-bg);border:1px dashed var(--primary);border-radius:var(--radius-md);padding:.4rem .6rem;margin-bottom:.5rem}.gen-multi .gen-style{flex:1}.gen-multi-count{font-size:.8125rem;font-weight:700;color:var(--primary);white-space:nowrap}.gen-multi-note{flex:1;font-size:.78rem;color:var(--text-light)}.gen-result--sel{border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1f}.gen-feedback{display:flex;gap:.4rem;margin-top:.5rem}.gen-feedback .gen-style{flex:1}.gen-container-head{margin:.8rem 0 .2rem;padding-bottom:.2rem;border-bottom:1px solid var(--border-light)}.gen-container-head strong{font-size:.95rem}.gen-container-intro{font-size:.875rem;color:var(--text-light);margin:.25rem 0 0}.thv2-header{display:flex;align-items:center;justify-content:space-between}.thv2-modetoggle{display:inline-flex;gap:.25rem;background:var(--border-light);padding:.2rem;border-radius:var(--radius-md)}.thv2-modetoggle button{border:none;background:transparent;padding:.3rem .8rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;color:var(--text-light);cursor:pointer}.thv2-modetoggle button.active{background:var(--card-bg);color:var(--primary);box-shadow:var(--shadow-sm)}.gen-badge-toggle{cursor:pointer;border:1px solid transparent;font:inherit;font-size:inherit}.gen-badge-toggle:hover:not(:disabled){border-color:var(--primary, #0552cc)}.gen-badge-toggle:disabled{cursor:default}.gen-onode-sources{display:flex;flex-wrap:wrap;gap:.3rem;margin:.25rem 0 .35rem}.gen-badge--src{background:var(--primary-light);color:var(--primary);font-weight:500;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gen-subject{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-muted);margin-left:.75rem}.gen-subject input{padding:.25rem .45rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.8rem;min-width:220px}.gen-docfb{margin:.25rem 0 .9rem;padding:.75rem .85rem .7rem;background:var(--canvas);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius-md)}.gen-docfb-label{display:block;font-size:var(--fs-sm);font-weight:600;color:var(--text-dark);margin-bottom:.35rem}.gen-docfb-input{width:100%;resize:vertical;min-height:4.2rem;font:inherit;font-size:var(--fs-base);line-height:1.5;color:var(--text-dark);padding:.5rem .65rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--well)}.gen-docfb-input:focus{outline:none;border-color:var(--primary);background:var(--canvas);box-shadow:0 0 0 3px var(--primary-light)}.gen-docfb-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.5rem}.gen-docfb-hint{font-size:var(--fs-sm);color:var(--text-light);max-width:68ch}.gen-docfb-foot .btn{flex:none}.gen-docfb-history{margin-top:.55rem;font-size:var(--fs-sm);color:var(--text-medium)}.gen-docfb-history summary{cursor:pointer;color:var(--text-light)}.gen-docfb-history ol{margin:.4rem 0 0;padding-left:1.2rem;display:flex;flex-direction:column;gap:.3rem}.gen-docfb-history li span{white-space:pre-wrap}.gen-docfb-history li .btn{margin-left:.4rem}@media(max-width:720px){.gen-docfb-foot{flex-direction:column;align-items:stretch}}.gc-sum{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;font-size:var(--fs-sm);font-weight:600;margin-bottom:.3rem;color:var(--text-muted)}.gc-sum-ok{color:var(--success)}.gc-sum-warn{color:var(--danger)}.gc-recheck{margin-left:auto}.gc-claim{font-size:var(--fs-sm);padding:.4rem .6rem;margin-top:.3rem;border-left:3px solid var(--border);background:var(--well);border-radius:var(--radius-md)}.gc-claim--source,.gc-claim--fact{border-left-color:var(--success)}.gc-claim--unsupported,.gc-claim--fact_mismatch{border-left-color:var(--danger);background:var(--danger-light)}.gc-claim-head{display:flex;gap:.5rem;align-items:baseline;flex-wrap:wrap}.gc-kind{font-weight:700;white-space:nowrap}.gc-claim--source .gc-kind,.gc-claim--fact .gc-kind{color:var(--success)}.gc-claim--unsupported .gc-kind,.gc-claim--fact_mismatch .gc-kind{color:var(--danger)}.gc-claim-text{min-width:0;overflow-wrap:anywhere}.gc-note{color:var(--text-muted);margin-top:.15rem}.gc-ev{margin-top:.3rem}.gc-ev-src{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;font-size:var(--fs-xs)}.gc-ev-file{font-family:var(--font-mono);font-weight:600;overflow-wrap:anywhere}.gc-ev-loc{color:var(--text-muted)}.gc-ev-approx{font-size:var(--fs-xs);padding:0 .35rem;border-radius:var(--radius-sm, 3px);background:var(--warning-light);color:var(--warning)}.gc-ev-ctx-btn{margin-left:auto}.gc-ev-quote{margin:.25rem 0 0;padding:.3rem .6rem;border-left:2px solid var(--border);white-space:pre-wrap;overflow-wrap:anywhere;font-style:normal}.gc-ev-ctx{margin:.2rem 0 0;padding:0 .6rem;color:var(--text-muted);font-family:inherit;font-size:var(--fs-xs);white-space:pre-wrap;overflow-wrap:anywhere}.gc-intext,.gc-suggest{margin-top:.3rem;overflow-wrap:anywhere}.gc-suggest{color:var(--success)}.gc-intext-label{font-weight:600;color:var(--text-muted);margin-right:.25rem}.gc-actions{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;margin-top:.45rem}.gc-edit{margin-top:.45rem}.gc-edit-input{width:100%;box-sizing:border-box;font:inherit;font-size:var(--fs-sm);padding:.35rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);resize:vertical}.gc-remember{display:flex;gap:.4rem;align-items:center;font-size:var(--fs-xs);margin-bottom:.3rem}.gc-err{margin-top:.3rem;color:var(--danger);font-size:var(--fs-xs)}.gc-row{display:flex;gap:.5rem;align-items:baseline;font-size:var(--fs-sm);padding:.25rem .6rem;cursor:pointer}.gc-row--done{cursor:default;margin-top:.3rem;background:var(--well);border-radius:var(--radius-md)}.gc-row-mark{color:var(--success);font-weight:700;flex:0 0 auto}.gc-row-claim{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.gc-row-src{flex:0 1 auto;max-width:45%;color:var(--text-muted);font-size:var(--fs-xs);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gc-backed{margin-top:.4rem}.gc-backed>summary{cursor:pointer;font-size:var(--fs-sm);color:var(--success);font-weight:600;padding:.2rem 0}.gc-row-detail>summary{list-style:none}.gc-row-detail>summary::-webkit-details-marker{display:none}.gc-row-detail[open]>summary{background:var(--well);border-radius:var(--radius-md) var(--radius-md) 0 0}.gc-row-detail>summary:hover{background:var(--well)}.gc-row-body{padding:0 .6rem .4rem 1.7rem;background:var(--well);border-radius:0 0 var(--radius-md) var(--radius-md)}@media(max-width:640px){.gc-row{flex-wrap:wrap}.gc-row-src{max-width:100%;flex-basis:100%;padding-left:1.1rem}}.gc-when{font-weight:400;font-size:var(--fs-xs)}.gc-stale{font-size:var(--fs-xs);color:var(--warning);background:var(--warning-light);padding:.25rem .6rem;border-radius:var(--radius-md);margin-bottom:.3rem}.dxp{--dxp-desk: #141f31;--dxp-bar: #0a1628;--dxp-paper: #ffffff;--dxp-ink: #1d1d1b;--dxp-h1: #365f91;--dxp-h2: #4f81bd;--dxp-note: #fff4d6;--dxp-note-edge: #d99a00;--dxp-sheet-w: 794px;--dxp-gutter: 248px;position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;background:var(--dxp-desk);font-family:var(--font-sans)}.dxp-bar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 1rem .6rem 1.25rem;background:var(--dxp-bar);color:#e8edf5;border-bottom:1px solid rgba(255,255,255,.06)}.dxp-file{display:flex;flex-direction:column;min-width:0;gap:.1rem}.dxp-name{font-size:var(--fs-base);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dxp-facts{display:flex;flex-wrap:wrap;column-gap:1rem;font-size:var(--fs-sm);color:#9fb0c8}.dxp-facts span{white-space:nowrap}.dxp-facts span:first-child{font-variant-numeric:tabular-nums}.dxp-actions{display:flex;align-items:center;gap:.75rem;flex:none}.dxp-toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--fs-sm);color:#c9d4e3;cursor:pointer;-webkit-user-select:none;user-select:none}.dxp-toggle input{accent-color:var(--dxp-note-edge)}.dxp-close{width:34px;height:34px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.14);background:transparent;color:#e8edf5;font-size:1.35rem;line-height:1;cursor:pointer}.dxp-close:hover{background:#ffffff14}.dxp-close:focus-visible,.dxp-toggle input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dxp-desk{flex:1;overflow:auto;padding:2.5rem 1.5rem 4rem}.dxp-spread{position:relative;width:var(--dxp-sheet-w);max-width:100%;margin:0 auto}.dxp-spread.has-notes{width:calc(var(--dxp-sheet-w) + var(--dxp-gutter))}.dxp-sheet{width:var(--dxp-sheet-w);max-width:100%;min-height:1123px;padding:92px 96px 110px;background:var(--dxp-paper);border-radius:2px;box-shadow:0 1px 2px #00000059,0 22px 48px -16px #0000008c;animation:dxp-in var(--t-slow) var(--ease) both}@keyframes dxp-in{0%{opacity:0;transform:translateY(14px)}}.dxp-doc{font-family:Carlito,Calibri,Segoe UI,sans-serif;font-size:15.5px;line-height:1.55;color:var(--dxp-ink);-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.dxp-doc>:first-child{margin-top:0}.dxp-doc h1,.dxp-doc h2,.dxp-doc h3,.dxp-doc h4{font-family:inherit;font-weight:700;line-height:1.25;break-after:avoid}.dxp-doc h1{font-size:19px;color:var(--dxp-h1);margin:1.6em 0 .45em}.dxp-doc h2{font-size:17px;color:var(--dxp-h2);margin:1.35em 0 .4em}.dxp-doc h3,.dxp-doc h4{font-size:15.5px;color:var(--dxp-h2);margin:1.2em 0 .3em}.dxp-doc p{margin:0 0 .75em}.dxp-doc ul,.dxp-doc ol{margin:0 0 .75em;padding-left:1.6em}.dxp-doc li{margin-bottom:.2em}.dxp-doc table{border-collapse:collapse;margin:.4em 0 1em;width:100%}.dxp-doc td,.dxp-doc th{border:1px solid #bfbfbf;padding:4px 7px;vertical-align:top}.dxp-ref{display:inline-flex;align-items:center;justify-content:center;min-width:1.35em;height:1.35em;margin-left:.35em;padding:0 .3em;vertical-align:.35em;font:700 11px/1 var(--font-sans);color:#7a5200;background:var(--dxp-note);border:1px solid var(--dxp-note-edge);border-radius:999px;cursor:pointer}.dxp-ref.is-active,.dxp-ref:hover{background:var(--dxp-note-edge);color:#fff}.dxp-ref:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.dxp-notes{position:absolute;top:0;right:0;width:calc(var(--dxp-gutter) - 22px);height:100%}.dxp-note{position:absolute;left:0;right:0;padding:.55rem .7rem .6rem;background:var(--dxp-note);border-left:3px solid var(--dxp-note-edge);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:var(--fs-sm);line-height:1.45;color:#3b2f12;transition:top var(--t-base) var(--ease),box-shadow var(--t-fast)}.dxp-note:before{content:"";position:absolute;top:.95rem;left:-25px;width:22px;border-top:1px dashed rgba(217,154,0,.7)}.dxp-note.is-active{box-shadow:0 0 0 2px var(--dxp-note-edge)}.dxp-note-who{display:flex;align-items:center;gap:.4rem;font-size:var(--fs-xs);font-weight:600;color:#7a5200;margin-bottom:.2rem}.dxp-note-who b{display:inline-flex;align-items:center;justify-content:center;width:1.35em;height:1.35em;border-radius:999px;background:var(--dxp-note-edge);color:#fff;font-size:10.5px}.dxp-note-text p{margin:0}.dxp-loading{display:flex;flex-direction:column;gap:.85rem}.dxp-line{display:block;height:11px;border-radius:3px;background:#eef1f5}.dxp-line[style*="width: 0%"]{height:14px;background:none}.dxp-line--h{height:18px;background:#dfe7f2;margin-bottom:.6rem}@media(prefers-reduced-motion:no-preference){.dxp-line{animation:dxp-pulse 1.4s ease-in-out infinite}}@keyframes dxp-pulse{50%{opacity:.5}}.dxp-error{max-width:460px;margin:4rem auto;padding:1.25rem 1.4rem;background:var(--dxp-paper);border-radius:var(--radius-md);border-left:3px solid var(--danger);color:var(--text-dark)}.dxp-error p{margin:.4rem 0 0;color:var(--text-medium);font-size:var(--fs-sm)}@media(max-width:1120px){.dxp-spread.has-notes{width:var(--dxp-sheet-w)}.dxp-notes{position:static;width:auto;height:auto;display:flex;flex-direction:column;gap:.6rem;margin-top:1rem}.dxp-note{position:static}.dxp-note:before{display:none}}@media(max-width:860px){.dxp-desk{padding:1rem 0 3rem}.dxp-sheet{padding:40px 16px 56px;min-height:0;border-radius:0}.dxp-notes{padding:0 16px}.dxp-bar{padding:.5rem .75rem .5rem 1rem}.dxp-toggle{display:none}.dxp-actions .btn{padding-inline:.6rem}.dxp-dl-ext{display:none}.dxp-facts{column-gap:.75rem}}@media(prefers-reduced-motion:reduce){.dxp-sheet{animation:none}.dxp-note{transition:none}}.ssd-overlay{position:fixed;inset:0;z-index:1200;background:#0a162859;display:flex;justify-content:flex-end;animation:ssd-fade .12s ease-out}@keyframes ssd-fade{0%{opacity:0}to{opacity:1}}.ssd{width:min(720px,94vw);height:100%;overflow-y:auto;background:var(--card-bg, #fff);padding:1rem 1.25rem 2rem;box-shadow:-12px 0 40px #0a16282e;display:flex;flex-direction:column;gap:.85rem;font-size:.875rem;color:var(--text-dark);animation:ssd-slide .16s ease-out}@keyframes ssd-slide{0%{transform:translate(24px)}to{transform:translate(0)}}.ssd-head{display:flex;align-items:flex-start;gap:.6rem;padding-bottom:.6rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--card-bg, #fff);z-index:1}.ssd-head h3{margin:0;font-size:var(--fs-base, .95rem);line-height:1.3}.ssd-head .ssd-id{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);margin-right:.3rem}.ssd-intent{margin:.15rem 0 0;color:var(--text-light);font-size:.8rem}.ssd-close{margin-left:auto;flex:none}.ssd-sec{display:flex;flex-direction:column;gap:.45rem}.ssd-sec-title{display:flex;align-items:center;gap:.5rem;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.ssd-mode{margin-left:auto;font-weight:600;text-transform:none;letter-spacing:0;font-size:.76rem;padding:.1rem .5rem;border-radius:var(--radius-sm);background:var(--border-light);color:var(--text-medium)}.ssd-mode--manual{background:var(--info-light, #e8f0fe);color:var(--primary, #0552cc)}.ssd-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.ssd-row{display:grid;grid-template-columns:1.1rem 1fr auto auto;gap:.5rem;align-items:start;padding:.45rem .55rem;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--well, #f6f8fb)}.ssd-row--used{border-color:var(--success, #15803d)}.ssd-row--new{border-style:dashed;border-color:var(--primary, #0552cc);background:var(--card-bg, #fff)}.ssd-row--outside{border-color:var(--warning, #f59e0b)}.ssd-mark{font-family:var(--font-mono);font-weight:700;padding-top:.05rem}.ssd-row--used .ssd-mark{color:var(--success, #15803d)}.ssd-row--assumed .ssd-mark{color:var(--warning, #b45309)}.ssd-row--read .ssd-mark,.ssd-row--planned .ssd-mark{color:var(--text-muted)}.ssd-row--new .ssd-mark{color:var(--primary, #0552cc)}.ssd-main{min-width:0}.ssd-label{font-weight:600;display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;word-break:break-word}.ssd-meta{font-size:.76rem;color:var(--text-light);margin-top:.1rem}.ssd-tok{font-family:var(--font-mono);font-size:.74rem;color:var(--text-muted);white-space:nowrap;padding-top:.2rem}.ssd-actions{display:flex;gap:.1rem;align-items:center}.ssd-ibtn{border:none;background:transparent;cursor:pointer;padding:.1rem .32rem;border-radius:var(--radius-sm);color:var(--text-light);font:inherit;line-height:1.2}.ssd-ibtn:hover:not(:disabled){background:var(--border-light);color:var(--text-dark)}.ssd-ibtn--del:hover:not(:disabled){color:var(--danger, #b91c1c)}.ssd-ibtn:disabled{opacity:.4;cursor:default}.ssd-text{grid-column:2 / -1;margin:.35rem 0 0;padding:.55rem .65rem;background:var(--card-bg, #fff);border:1px solid var(--border-light);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:.8rem;line-height:1.5;max-height:280px;overflow:auto}.ssd-empty{padding:.55rem .65rem;border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-light);font-size:.82rem}.ssd-note{font-size:.78rem;padding:.4rem .65rem;border-radius:var(--radius-sm);background:var(--warning-light, #fffbeb);border:1px solid var(--warning, #f59e0b);color:var(--text-dark)}.ssd-note--info{background:var(--info-light, #e8f0fe);border-color:var(--primary, #0552cc)}.ssd-picker{border:1px solid var(--border);border-radius:var(--radius-md);padding:.6rem .7rem;display:flex;flex-direction:column;gap:.5rem;background:var(--card-bg, #fff)}.ssd-search{display:flex;gap:.4rem}.ssd-search input{flex:1;padding:.45rem .6rem;border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;font-size:.85rem}.ssd-search input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1f}.ssd-hits{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.ssd-hit{display:grid;grid-template-columns:1fr auto auto auto;gap:.5rem;align-items:center;padding:.3rem .4rem;border-radius:var(--radius-sm)}.ssd-hit:hover{background:var(--well, #f6f8fb)}.ssd-hit--in{opacity:.5}.ssd-hit-label{font-weight:600;font-size:.82rem}.ssd-hit-sum{font-size:.74rem;color:var(--text-light);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ssd-score{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted)}.ssd-doc{border-top:1px solid var(--border-light);padding:.35rem 0}.ssd-doc-head{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:600;background:none;border:none;width:100%;text-align:left;font:inherit;padding:.2rem 0;color:inherit}.ssd-doc-head small{font-weight:400;color:var(--text-light)}.ssd-doc-blobs{margin:.2rem 0 0 1rem}.ssd-budget{font-family:var(--font-mono);font-size:.76rem;color:var(--text-muted)}.ssd-budget--over{color:var(--warning, #b45309)}.ssd-hint{width:100%;min-height:72px;padding:.5rem .65rem;border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;font-size:.85rem;resize:vertical}.ssd-hint:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1f}.ssd-foot{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:.7rem;position:sticky;bottom:0;background:var(--card-bg, #fff)}.ssd-stamp{margin-left:auto;font-size:.74rem;color:var(--text-muted)}.ssd-line{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;font-size:.78rem;color:var(--text-muted);margin-top:.45rem}.sp-overlay{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;animation:fadeIn .2s ease}.sp-modal{background:var(--card-bg);border-radius:var(--radius-xl);width:100%;max-width:720px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 24px 64px -12px #00000040;animation:modalSlideIn .25s ease}.sp-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);flex-shrink:0}.sp-title{font-size:1.1rem;font-weight:700;color:var(--text-dark);letter-spacing:-.01em}.sp-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .15s}.sp-close:hover{background:var(--background);color:var(--text-dark)}.sp-hint-bar{display:flex;gap:.5rem;padding:.75rem 1.5rem;border-bottom:1px solid var(--border);background:var(--background);flex-shrink:0}.sp-hint-input{flex:1;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.9rem;background:var(--card-bg);color:var(--text-dark);outline:none;transition:border-color .15s}.sp-hint-input:focus{border-color:var(--primary)}.sp-hint-input::placeholder{color:var(--text-muted)}.sp-body{flex:1;overflow-y:auto;padding:1rem 1.5rem}.sp-loading{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1rem;color:var(--text-muted);font-size:.9rem}.sp-error{padding:.75rem;background:var(--danger-light);color:var(--danger);border-radius:var(--radius-md);font-size:.9rem;margin-bottom:.75rem}.sp-empty{text-align:center;padding:2rem;color:var(--text-muted);font-size:.9rem}.sp-card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem;margin-bottom:.75rem;background:var(--card-bg);transition:border-color .15s}.sp-card:hover{border-color:var(--primary-light)}.sp-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.sp-card-num{font-size:.8125rem;font-weight:600;color:var(--text-muted);background:var(--background);padding:.15rem .5rem;border-radius:var(--radius-sm)}.sp-card-delete{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s}.sp-card-delete:hover{background:var(--danger-light);color:var(--danger)}.sp-fields{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.5rem}.sp-field{display:flex;flex-direction:column;gap:.2rem}.sp-field--wide{grid-column:1 / -1}.sp-field-label{font-size:.78rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.sp-field-input{padding:.4rem .6rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;background:var(--card-bg);color:var(--text-dark);outline:none;transition:border-color .15s}.sp-field-input:focus{border-color:var(--primary)}.sp-field-textarea{padding:.4rem .6rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.875rem;font-family:inherit;background:var(--card-bg);color:var(--text-dark);outline:none;resize:vertical;min-height:3rem;transition:border-color .15s}.sp-field-textarea:focus{border-color:var(--primary)}.sp-kv-section{margin-top:.5rem}.sp-kv-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.sp-kv-rows{display:flex;flex-direction:column;gap:.25rem}.sp-kv-row{display:flex;gap:.35rem;align-items:center}.sp-kv-key{flex:0 0 40%;padding:.3rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.85rem;background:var(--background);color:var(--text-dark);outline:none}.sp-kv-key:focus{border-color:var(--primary)}.sp-kv-val{flex:1;padding:.3rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.85rem;background:var(--card-bg);color:var(--text-dark);outline:none}.sp-kv-val:focus{border-color:var(--primary)}.sp-kv-del{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);font-size:.9rem;flex-shrink:0;transition:all .15s}.sp-kv-del:hover{background:var(--danger-light);color:var(--danger)}.sp-kv-add{font-size:.84rem;color:var(--primary);background:none;border:none;cursor:pointer;padding:.2rem 0;margin-top:.15rem}.sp-kv-add:hover{text-decoration:underline}.sp-raw-toggle{margin-top:.5rem}.sp-raw-toggle summary{font-size:.84rem;font-weight:600;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;text-transform:uppercase;letter-spacing:.03em}.sp-raw-toggle summary:hover{color:var(--text-dark)}.sp-raw-textarea{width:100%;margin-top:.35rem;padding:.5rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.84rem;font-family:SF Mono,Fira Code,monospace;background:var(--background);color:var(--text-dark);outline:none;resize:vertical;min-height:4rem}.sp-raw-textarea:focus{border-color:var(--primary)}.sp-footer{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;border-top:1px solid var(--border);flex-shrink:0}.sp-footer-info{font-size:.875rem;color:var(--text-muted)}.sp-footer-actions{display:flex;gap:.5rem}.vc{font-size:var(--fs-base);color:var(--text-dark)}.vc-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.vc-head h2{font-size:var(--fs-lg);font-weight:600;margin:0}.vc-head-actions{display:flex;align-items:center;gap:12px}.vc-dirty{font-size:var(--fs-xs);color:var(--warning);font-weight:500}.vc-sections{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--border)}.vc-section-btn{padding:8px 14px;border:none;background:transparent;color:var(--text-light);font-size:var(--fs-sm);font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.vc-section-btn.is-active{color:var(--primary);border-bottom-color:var(--primary)}.vc-hint{font-size:var(--fs-sm);color:var(--text-light);line-height:1.5;margin:0 0 14px;max-width:68ch}.vc-hint code{font-family:var(--font-mono);font-size:var(--fs-xs);background:var(--well);padding:1px 4px;border-radius:3px}.vc-card{background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px;margin-bottom:10px}.vc-row{display:flex;align-items:center;gap:10px}.vc-row--wrap{flex-wrap:wrap;margin-top:10px}.vc-grow{flex:1;min-width:0}.vc-input.vc-grow{width:auto;flex:1 1 auto;min-width:180px}.vc-row--head{align-items:flex-end;flex-wrap:wrap}.vc-stacked{display:flex;flex-direction:column;gap:4px;min-width:0;flex:0 0 auto}.vc-stacked.vc-grow{flex:1 1 220px}.vc-stacked>span{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600}.vc-stacked>select.vc-input{min-width:175px}.vc-row--head>.vc-key,.vc-row--head>.vc-btn{margin-bottom:1px}.vc-label{display:block;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600;margin:12px 0 5px}.vc-inline{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);color:var(--text-medium)}.vc-input,.vc-textarea{width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);color:var(--text-dark);font-size:var(--fs-sm);font-family:inherit;box-sizing:border-box}.vc-input:focus,.vc-textarea:focus{outline:none;border-color:var(--primary)}.vc-textarea{resize:vertical}.vc-input--sm{width:96px;flex:none}.vc-inline .vc-input{width:auto;min-width:120px}.vc-sub{margin-top:6px;color:var(--text-light)}.vc-color{width:38px;height:34px;padding:2px;flex:none;cursor:pointer}.vc-check{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);color:var(--text-medium);white-space:nowrap}.vc-key{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);background:var(--well);padding:3px 6px;border-radius:3px;white-space:nowrap}.vc-then{border-top:1px dashed var(--border);padding-top:10px}.vc-chips{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:5px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);min-height:34px}.vc-chip{display:inline-flex;align-items:center;gap:4px;background:var(--primary-light);color:var(--primary);border-radius:4px;padding:2px 4px 2px 7px;font-size:var(--fs-xs);font-weight:500}.vc-chip button{border:none;background:transparent;color:inherit;cursor:pointer;font-size:14px;line-height:1;padding:0 2px;opacity:.6}.vc-chip button:hover{opacity:1}.vc-chip-input{flex:1;min-width:130px;border:none;outline:none;background:transparent;font-size:var(--fs-sm);font-family:inherit;color:var(--text-dark);padding:3px}.vc-btn{padding:7px 13px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);color:var(--text-medium);font-size:var(--fs-sm);font-weight:500;font-family:inherit;cursor:pointer;white-space:nowrap}.vc-btn:hover:not(:disabled){background:var(--well)}.vc-btn:disabled{opacity:.45;cursor:default}.vc-btn--primary{background:var(--primary);border-color:var(--primary);color:#fff}.vc-btn--primary:hover:not(:disabled){background:var(--primary-hover)}.vc-btn--danger{color:var(--danger);border-color:transparent}.vc-btn--danger:hover:not(:disabled){background:var(--danger-light)}.vc-btn--ghost{border-color:transparent;padding:7px 9px}.vc-status{margin-top:14px;padding:7px 12px;border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:500;display:inline-block}.vc-status.is-ok{background:var(--success-light);color:var(--success)}.vc-status.is-error{background:var(--danger-light);color:var(--danger)}.vc-subhead{font-size:var(--fs-sm);font-weight:600;color:var(--text-dark);margin:20px 0 4px;padding-top:14px;border-top:1px solid var(--border)}.sc-page{padding:24px 28px;max-width:1400px;margin:0 auto;color:var(--text-dark);font-size:var(--fs-base)}.sc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.sc-head h1{font-size:var(--fs-xl);font-weight:700;margin:0 0 4px}.sc-head-actions{display:flex;gap:8px;flex:none}.sc-sub{font-size:var(--fs-sm);color:var(--text-light);margin:0;line-height:1.5;max-width:68ch}.sc-filters{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.sc-search{flex:1;min-width:240px}.sc-count{font-size:var(--fs-xs);color:var(--text-light);white-space:nowrap}.sc-input{padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);color:var(--text-dark);font-size:var(--fs-sm);font-family:inherit;box-sizing:border-box;width:100%}.sc-input:focus{outline:none;border-color:var(--primary)}textarea.sc-input{resize:vertical}.sc-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--canvas)}.sc-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.sc-table th{text-align:left;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600;padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.sc-table td{padding:10px 12px;border-bottom:1px solid var(--border-light);vertical-align:top}.sc-table tbody tr:last-child td{border-bottom:none}.sc-table tbody tr:hover{background:var(--well)}.sc-row--inactive{opacity:.55}.sc-num{text-align:right}.sc-muted{color:var(--text-light)}.sc-warn{color:var(--warning);font-size:var(--fs-xs)}.sc-link{border:none;background:none;padding:0;font:inherit;font-weight:600;color:var(--primary);cursor:pointer;text-align:left}.sc-mail{color:var(--text-light);text-decoration:none}.sc-mail:hover{text-decoration:underline}.sc-badge{margin-left:6px;font-size:var(--fs-xs);background:var(--well);color:var(--text-light);padding:1px 5px;border-radius:3px}.sc-tags{display:flex;flex-wrap:wrap;gap:4px}.sc-tag{font-size:var(--fs-xs);background:var(--well);color:var(--text-medium);padding:2px 6px;border-radius:3px;white-space:nowrap}.sc-tag--default{background:var(--primary-light);color:var(--primary);font-weight:600}.sc-actions{display:flex;gap:4px;justify-content:flex-end}.sc-empty{padding:48px 24px;text-align:center;color:var(--text-light);border:1px dashed var(--border);border-radius:var(--radius-md)}.sc-empty p{margin:0 0 6px}.sc-empty .sc-sub{margin:0 auto}.sc-error{margin:12px 0;padding:8px 12px;background:var(--danger-light);color:var(--danger);border-radius:var(--radius-sm);font-size:var(--fs-sm)}.sc-error-list{margin:6px 0 0;padding-left:18px;font-size:var(--fs-xs)}.sc-btn{padding:7px 13px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);color:var(--text-medium);font-size:var(--fs-sm);font-weight:500;font-family:inherit;cursor:pointer;white-space:nowrap}.sc-btn:hover:not(:disabled){background:var(--well)}.sc-btn:disabled{opacity:.45;cursor:default}.sc-btn--sm{padding:4px 9px;font-size:var(--fs-xs)}.sc-btn--primary{background:var(--primary);border-color:var(--primary);color:#fff}.sc-btn--primary:hover:not(:disabled){background:var(--primary-hover)}.sc-btn--danger{background:var(--danger);border-color:var(--danger);color:#fff}.sc-btn--ghost{border-color:transparent;color:var(--text-light)}.sc-modal-backdrop{position:fixed;inset:0;background:#0a162873;display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;overflow-y:auto;z-index:100}.sc-modal{background:var(--canvas);border-radius:var(--radius-lg);padding:24px;width:100%;max-width:640px;box-shadow:var(--shadow-lg)}.sc-modal--wide{max-width:900px}.sc-modal h2{font-size:var(--fs-lg);font-weight:600;margin:0 0 4px}.sc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:16px 0}.sc-field{display:flex;flex-direction:column;gap:4px;min-width:0}.sc-field--wide{grid-column:1 / -1}.sc-field>span{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-field small{font-size:var(--fs-xs);color:var(--text-muted)}.sc-fieldset{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;margin:0}.sc-fieldset legend{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600;padding:0 6px}.sc-trade-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px}.sc-trade{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 6px;border-radius:var(--radius-sm)}.sc-trade.is-selected{background:var(--primary-light)}.sc-check{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);color:var(--text-medium);cursor:pointer}.sc-check--sub{font-size:var(--fs-xs);color:var(--primary)}.sc-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.sc-drop{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px;margin:16px 0;border:2px dashed var(--border);border-radius:var(--radius-md);cursor:pointer;color:var(--text-light);font-size:var(--fs-sm)}.sc-drop:hover{border-color:var(--primary);color:var(--primary)}.sc-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin:16px 0}.sc-preview{max-height:260px;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:12px}.sc-preview .sc-table td{white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}.sc-preview .sc-sub{padding:8px 12px}.sc-result{margin:12px 0;padding:10px 12px;background:var(--success-light);color:var(--text-medium);border-radius:var(--radius-sm);font-size:var(--fs-sm)}.pf-page{padding:24px 28px;max-width:1500px;margin:0 auto;color:var(--text-dark);font-size:var(--fs-base)}.pf-head{margin-bottom:20px}.pf-head h1{font-size:var(--fs-xl);font-weight:700;margin:0 0 4px}.pf-sub{font-size:var(--fs-sm);color:var(--text-light);margin:0;line-height:1.5;max-width:72ch}.pf-error{margin-bottom:12px;padding:9px 12px;background:var(--danger-light);color:var(--danger);border-radius:var(--radius-sm);font-size:var(--fs-sm)}.pf-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px}.pf-tile{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--canvas);cursor:pointer;text-align:left;font-family:inherit;transition:border-color var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}.pf-tile:hover{background:var(--well)}.pf-tile.is-active{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.pf-tile--warn{border-color:var(--warning)}.pf-tile--bad{border-color:var(--danger)}.pf-tile-value{font-size:var(--fs-2xl);font-weight:700;font-family:var(--font-mono);line-height:1.1}.pf-tile--warn .pf-tile-value{color:var(--warning)}.pf-tile--bad .pf-tile-value{color:var(--danger)}.pf-tile-label{font-size:var(--fs-xs);color:var(--text-light)}.pf-filters{display:flex;align-items:center;gap:10px;margin-bottom:12px}.pf-input{flex:1;max-width:380px;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);color:var(--text-dark);font-size:var(--fs-sm);font-family:inherit}.pf-input:focus{outline:none;border-color:var(--primary)}.pf-count{font-size:var(--fs-xs);color:var(--text-light)}.pf-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--canvas)}.pf-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.pf-table th{text-align:left;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600;padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.pf-table td{padding:10px 12px;border-bottom:1px solid var(--border-light);vertical-align:top}.pf-table tbody tr:last-child td{border-bottom:none}.pf-row{cursor:pointer}.pf-row:hover{background:var(--well)}.pf-num{text-align:right;font-family:var(--font-mono);white-space:nowrap}.pf-bad{color:var(--danger);font-weight:600}.pf-warn{color:var(--warning)}.pf-risk{color:var(--danger);font-weight:500}.pf-action{font-size:var(--fs-xs);color:var(--text-medium);white-space:nowrap}.pf-light{display:inline-block;width:10px;height:10px;border-radius:50%}.pf-light--ok{background:var(--success)}.pf-light--warn{background:var(--warning)}.pf-light--bad{background:var(--danger)}.pf-light--muted{background:var(--text-muted)}.pf-empty{padding:48px 24px;text-align:center;color:var(--text-light);border:1px dashed var(--border);border-radius:var(--radius-md)}.pf-empty p{margin:0 0 6px}.pf-empty .pf-sub{margin:0 auto}.import-progress{padding:12px 20px;background:var(--color-surface, #f8f9fa);border:1px solid var(--color-border, #e0e0e0);border-radius:8px;margin-bottom:16px;animation:import-progress-in .3s ease}@keyframes import-progress-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.import-progress--completed{border-color:var(--color-success, #2e7d32);background:var(--color-success-bg, #e8f5e9)}.import-progress--failed{border-color:var(--color-error, #c62828);background:var(--color-error-bg, #fbe9e7)}.import-progress-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.import-progress-label{font-size:13px;font-weight:600;color:var(--color-text, #1a1a1a)}.import-progress-counter{font-size:12px;color:var(--color-text-secondary, #666);font-variant-numeric:tabular-nums}.import-progress-track{height:6px;border-radius:3px;background:var(--color-border, #e0e0e0);overflow:hidden}.import-progress-fill{height:100%;border-radius:3px;background:var(--color-primary, #1976d2);transition:width .4s ease}.import-progress--completed .import-progress-fill{background:var(--color-success, #2e7d32)}.import-progress--failed .import-progress-fill{background:var(--color-error, #c62828)}.import-progress-error{font-size:12px;color:var(--color-error, #c62828);margin-top:6px}.import-progress-dismiss{background:none;border:none;font-size:16px;cursor:pointer;color:var(--color-text-secondary, #888);padding:0 4px;line-height:1}.import-progress-dismiss:hover{color:var(--color-text, #1a1a1a)}.sp{display:flex;height:calc(100vh - 260px);min-height:480px;background:var(--border, #e2e8f0);border-radius:var(--radius-lg, 14px);overflow:hidden;border:1px solid var(--border, #e2e8f0);gap:1px}@supports (height: 100dvh){.sp{height:calc(100dvh - 260px)}}.sp-master{width:38%;min-width:320px;max-width:480px;display:flex;flex-direction:column;background:var(--card-bg, #fff);overflow:hidden}.sp-master-header{padding:14px 16px 10px;border-bottom:1px solid var(--border, #e2e8f0);display:flex;flex-direction:column;gap:8px;flex-shrink:0}.sp-master-title-row{display:flex;align-items:center;justify-content:space-between}.sp-master-title{font-size:.9375rem;font-weight:700;color:var(--text-dark, #0a1628);letter-spacing:-.01em}.sp-master-count{font-size:.6875rem;font-weight:600;color:var(--text-muted, #9ca3af);font-variant-numeric:tabular-nums;padding:2px 7px;background:var(--border-light, #f1f5f9);border-radius:100px}.sp-search-wrap{display:flex;align-items:center;gap:6px;padding:5px 9px;background:var(--border-light, #f8fafc);border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-sm, 6px);transition:border-color .15s,box-shadow .15s}.sp-search-wrap:focus-within{border-color:var(--primary, #0052CC);box-shadow:0 0 0 3px #0052cc0f}.sp-search-icon{color:var(--text-muted, #9ca3af);flex-shrink:0}.sp-search-input{flex:1;border:none;background:transparent;font-family:var(--font-sans);font-size:.8125rem;color:var(--text-dark, #0a1628);outline:none;min-width:0}.sp-search-input::placeholder{color:var(--text-muted, #9ca3af)}.sp-filter-row{display:flex;gap:3px;flex-wrap:wrap}.sp-filter-chip{padding:2px 8px;border:1px solid var(--border, #e2e8f0);border-radius:100px;background:transparent;font-family:var(--font-sans);font-size:.6875rem;font-weight:500;color:var(--text-light, #6b7280);cursor:pointer;transition:all .15s;white-space:nowrap;display:flex;align-items:center;gap:3px}.sp-filter-chip:hover{background:var(--border-light, #f1f5f9);color:var(--text-dark, #0a1628)}.sp-filter-chip--active{background:var(--primary, #0052CC);color:#fff;border-color:var(--primary, #0052CC)}.sp-filter-chip--active:hover{background:var(--primary-hover, #003d99);color:#fff}.sp-filter-count{font-size:.5625rem;font-weight:700;padding:0 4px;border-radius:6px;background:#fff3;min-width:14px;text-align:center}.sp-filter-chip:not(.sp-filter-chip--active) .sp-filter-count{background:var(--border-light, #f1f5f9);color:var(--text-muted, #9ca3af)}.sp-search-wrap{padding:0;border:none;background:none}.sp-search-wrap .sp-smart-search{width:100%}.sp-select-bar{display:flex;align-items:center;gap:6px;padding:6px 16px;background:#0052cc0a;border-bottom:1px solid rgba(0,82,204,.12);flex-shrink:0}.sp-select-count{font-size:.8125rem;font-weight:600;color:var(--primary, #0052CC)}.sp-item-checkbox{flex-shrink:0;width:14px;height:14px;opacity:0;transition:opacity .1s}.sp-item:hover .sp-item-checkbox,.sp-item--selected .sp-item-checkbox,.sp-master--has-selection .sp-item-checkbox{opacity:1}.sp-item--selected{background:#0052cc0a}.sp-item--selected:hover{background:#0052cc0f}.sp-list{flex:1;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;overscroll-behavior:contain}.sp-list::-webkit-scrollbar{width:4px}.sp-list::-webkit-scrollbar-track{background:transparent}.sp-list::-webkit-scrollbar-thumb{background:var(--border, #e2e8f0);border-radius:3px}.sp-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted, #9ca3af)}.sp-item{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border-light, #f1f5f9);cursor:pointer;transition:background .1s;border-left:3px solid transparent;position:relative}.sp-item:hover{background:var(--border-light, #f8fafc)}.sp-item--active{background:#0052cc0a;border-left-color:var(--primary, #0052CC)}.sp-item--active:hover{background:#0052cc0f}.sp-item-oz{display:flex;align-items:center;justify-content:center;min-width:38px;height:28px;padding:0 6px;border-radius:var(--radius-sm, 6px);background:var(--border-light, #f1f5f9);font-size:.8125rem;font-weight:700;color:var(--text-medium, #374151);font-variant-numeric:tabular-nums;flex-shrink:0;transition:background .12s,color .12s}.sp-item--active .sp-item-oz{background:var(--primary, #0052CC);color:#fff}.sp-item-body{flex:1;min-width:0}.sp-item-title{font-size:.9375rem;font-weight:600;color:var(--text-dark, #0a1628);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sp-item-meta{display:flex;align-items:center;gap:5px;margin-top:4px;flex-wrap:wrap}.sp-item-qty{font-size:.8125rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-light, #6b7280)}.sp-item-badges{display:flex;gap:3px;flex-wrap:wrap}.sp-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:100px;font-size:.6875rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.sp-badge--product{background:#0052cc14;color:var(--primary, #0052CC)}.sp-badge--product.sp-badge--done{background:#ecfdf5;color:#059669}.sp-badge--calc{background:#7c3aed14;color:#7c3aed}.sp-badge--calc.sp-badge--done{background:#ecfdf5;color:#059669}.sp-badge--reviewed{background:#ecfdf5;color:#059669;border:1px solid #bbf7d0}.sp-badge-check{font-size:.5rem;line-height:1}.sp-badge--running{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.sp-badge-spinner{display:inline-block;width:8px;height:8px;border:1.5px solid rgba(194,65,12,.25);border-top-color:#c2410c;border-radius:50%;animation:sp-spin .7s linear infinite}.sp-item-calculating{display:flex;align-items:center;justify-content:center;padding:2px}.sp-item-calc-spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--border, #e2e8f0);border-top-color:#c2410c;border-radius:50%;animation:sp-spin .7s linear infinite}@keyframes sp-spin{to{transform:rotate(360deg)}}.sp-item-trade{padding:1px 5px;background:var(--border-light, #f1f5f9);border-radius:3px;font-size:.6875rem;font-weight:600;color:var(--text-muted, #9ca3af)}.sp-item-status{margin-left:auto;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:3px}.sp-item-price{font-size:.9375rem;font-weight:700;color:var(--text-dark, #0a1628);font-variant-numeric:tabular-nums;white-space:nowrap}.sp-detail{flex:1;display:flex;flex-direction:column;background:var(--background, #f0f4f8);min-height:0;min-width:0}.sp-detail-scroll{flex:1;min-height:0;overflow-y:auto;padding:14px 22px 28px;overscroll-behavior:contain}.sp-detail-scroll::-webkit-scrollbar{width:5px}.sp-detail-scroll::-webkit-scrollbar-track{background:transparent}.sp-detail-scroll::-webkit-scrollbar-thumb{background:var(--border, #e2e8f0);border-radius:3px}.sp-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 32px;text-align:center}.sp-empty-icon{width:56px;height:56px;border-radius:14px;background:var(--card-bg, #fff);border:2px dashed var(--border, #e2e8f0);display:flex;align-items:center;justify-content:center;color:var(--text-muted, #9ca3af);margin-bottom:14px}.sp-empty-title{font-size:.9375rem;font-weight:600;color:var(--text-medium, #374151);margin-bottom:4px}.sp-empty-hint{font-size:.8125rem;color:var(--text-muted, #9ca3af);max-width:260px;line-height:1.5}.sp-detail-header{background:var(--card-bg, #fff);border-radius:var(--radius-md, 10px);padding:16px 18px;margin-bottom:14px;box-shadow:var(--shadow-sm);border:1px solid var(--border, #e2e8f0)}.sp-detail-oz-row{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.sp-detail-oz{font-size:.8125rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--primary, #0052CC);font-variant-numeric:tabular-nums}.sp-detail-cls-badge{display:inline-flex;padding:2px 8px;border-radius:4px;font-size:.6875rem;font-weight:600;cursor:default}.sp-detail-cls-badge--product{background:#0052cc14;color:var(--primary, #0052CC)}.sp-detail-cls-badge--work{background:#ea580c14;color:#c2410c}.sp-detail-cls-badge--both{background:#7c3aed14;color:#7c3aed}.sp-detail-title{font-size:1.125rem;font-weight:700;color:var(--text-dark, #0a1628);line-height:1.4;margin-bottom:4px}.sp-detail-desc{font-size:.9375rem;color:var(--text-light, #6b7280);line-height:1.55;white-space:pre-wrap}.sp-detail-desc--clamped{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.sp-detail-toggle{background:none;border:none;cursor:pointer;font-size:.8125rem;font-weight:600;color:var(--primary, #0052CC);padding:3px 0;font-family:var(--font-sans)}.sp-detail-toggle:hover{text-decoration:underline}.sp-detail-stats{display:flex;gap:24px;margin-top:12px;padding-top:10px;border-top:1px solid var(--border-light, #f1f5f9)}.sp-stat{display:flex;flex-direction:column;gap:1px}.sp-stat-label{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted, #9ca3af)}.sp-stat-value{font-size:1.0625rem;font-weight:700;color:var(--text-dark, #0a1628);font-variant-numeric:tabular-nums}.sp-stat-value--total{font-size:1.1875rem;font-weight:800;color:var(--primary, #0052CC)}.sp-collapsible-section{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.sp-collapsible-section--inset{padding:10px 12px;border-bottom:1px solid var(--border, #e2e8f0);background:var(--border-light, #f8fafc);margin-bottom:0}.sp-collapsible-header{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted, #9ca3af);padding:0;min-width:0}.sp-collapsible-header:hover{color:var(--text-dark, #0a1628)}.sp-collapsible-title{white-space:nowrap}.sp-collapsible-count{font-size:.75rem;font-weight:600;color:var(--text-muted, #9ca3af);padding:1px 5px;background:var(--card-bg, #fff);border-radius:100px;border:1px solid var(--border, #e2e8f0)}.sp-collapsible-summary{font-weight:500;font-size:.8125rem;text-transform:none;letter-spacing:normal;color:var(--text-light, #6b7280);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:280px}.sp-collapsible-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.sp-section{margin-bottom:16px}.sp-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.sp-section-label{font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted, #9ca3af);display:flex;align-items:center;gap:5px}.sp-section-actions{display:flex;align-items:center;gap:4px}.sp-product-hero{background:var(--card-bg, #fff);border-radius:var(--radius-md, 10px);border:1px solid var(--border, #e2e8f0);border-left:3px solid var(--success, #10B981);padding:14px 16px;margin-bottom:12px;transition:all .2s ease}.sp-product-hero.sp-swapped{animation:sp-swap-flash .5s ease}@keyframes sp-swap-flash{0%{box-shadow:none}30%{box-shadow:0 0 0 3px #10b98126}to{box-shadow:none}}.sp-product-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sp-product-name{font-size:.9375rem;font-weight:700;color:var(--text-dark, #0a1628);line-height:1.35}.sp-product-vendor{font-size:.6875rem;color:var(--text-light, #6b7280);margin-top:2px}.sp-product-score{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:100px;font-size:.6875rem;font-weight:700;flex-shrink:0;white-space:nowrap}.sp-product-score--high{background:var(--success-light, #ecfdf5);color:#065f46}.sp-product-score--medium{background:var(--warning-light, #fffbeb);color:#92400e}.sp-product-score--low{background:var(--border-light, #f1f5f9);color:var(--text-light, #6b7280)}.sp-product-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:8px;border-top:1px solid var(--border-light, #f1f5f9)}.sp-product-price{font-size:.9375rem;font-weight:700;color:var(--text-dark, #0a1628);font-variant-numeric:tabular-nums}.sp-product-price-sub{font-size:.6875rem;font-weight:500;color:var(--text-muted, #9ca3af);margin-top:1px}.sp-product-remove{display:flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-sm, 6px);background:var(--card-bg, #fff);color:var(--text-light, #6b7280);font-family:var(--font-sans);font-size:.6875rem;font-weight:600;cursor:pointer;transition:all .15s}.sp-product-remove:hover{border-color:var(--danger, #EF4444);color:var(--danger, #EF4444);background:var(--danger-light, #fef2f2)}.sp-product-empty{background:var(--card-bg, #fff);border-radius:var(--radius-md, 10px);border:2px dashed var(--border, #e2e8f0);padding:20px 16px;margin-bottom:12px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.sp-product-empty-icon{width:32px;height:32px;border-radius:8px;background:var(--border-light, #f1f5f9);display:flex;align-items:center;justify-content:center;color:var(--text-muted, #9ca3af)}.sp-product-empty-text{font-size:.8125rem;font-weight:500;color:var(--text-muted, #9ca3af);line-height:1.4}.sp-suggestions{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;margin-bottom:16px}.sp-suggestion{background:var(--card-bg, #fff);border:1.5px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 10px);padding:12px 14px;cursor:pointer;transition:all .15s ease;position:relative;overflow:hidden}.sp-suggestion:hover{border-color:var(--primary, #0052CC);box-shadow:var(--shadow-md);transform:translateY(-1px)}.sp-suggestion:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.sp-suggestion-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:4px}.sp-suggestion-name{font-size:.8125rem;font-weight:600;color:var(--text-dark, #0a1628);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sp-suggestion-vendor{font-size:.75rem;color:var(--text-light, #6b7280);margin-bottom:3px}.sp-suggestion-reason{font-size:.75rem;color:var(--text-muted, #9ca3af);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:6px}.sp-suggestion-pills{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:4px}.sp-suggestion-pill{font-size:.5625rem;font-weight:600;padding:1px 5px;border-radius:100px}.sp-suggestion-pill--match{background:var(--success-light, #ecfdf5);color:#065f46}.sp-suggestion-pill--gap{background:var(--danger-light, #fef2f2);color:#991b1b}.sp-suggestion-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:6px;border-top:1px solid var(--border-light, #f1f5f9)}.sp-suggestion-price{font-size:.9375rem;font-weight:700;color:var(--primary, #0052CC);font-variant-numeric:tabular-nums}.sp-suggestion-swap{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:var(--radius-sm, 6px);background:var(--primary, #0052CC);color:#fff;font-size:.75rem;font-weight:700;opacity:0;transform:translate(4px);transition:all .15s ease}.sp-suggestion:hover .sp-suggestion-swap{opacity:1;transform:translate(0)}.sp-work-section{background:var(--card-bg, #fff);border-radius:var(--radius-md, 10px);border:1px solid var(--border, #e2e8f0);border-left:3px solid var(--primary, #0052CC);overflow:hidden;overflow-x:auto;margin-bottom:14px}.sp-work-table{width:100%;border-collapse:collapse;font-size:.9375rem}.sp-work-table thead{background:var(--border-light, #f8fafc)}.sp-work-table th{padding:8px 12px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted, #9ca3af);text-align:left;border-bottom:1px solid var(--border, #e2e8f0);white-space:nowrap}.sp-work-table th.sp-col-right{text-align:right}.sp-work-table td{padding:8px 12px;border-bottom:1px solid var(--border-light, #f1f5f9);color:var(--text-medium, #374151);vertical-align:top}.sp-work-table tbody tr:last-child td{border-bottom:none}.sp-work-table tbody tr{transition:background .1s}.sp-work-table tbody tr:hover{background:var(--border-light, #f8fafc)}.sp-work-table .sp-cell-title{font-weight:500;max-width:240px;line-height:1.35}.sp-work-table .sp-cell-oz{font-size:.6875rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-muted, #9ca3af);white-space:nowrap}.sp-work-table .sp-cell-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.sp-work-table .sp-cell-bold{font-weight:700;color:var(--text-dark, #0a1628)}.sp-work-table tfoot td{padding:10px 12px;border-top:2px solid var(--border, #e2e8f0);border-bottom:none;font-weight:700;color:var(--text-dark, #0a1628)}.sp-work-table tfoot .sp-cell-num{font-size:.9375rem;font-weight:800;color:var(--primary, #0052CC)}.sp-work-header-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border, #e2e8f0);background:var(--border-light, #f8fafc)}.sp-work-header-title{font-size:.8125rem;font-weight:700;color:var(--text-dark, #0a1628);display:flex;align-items:center;gap:6px}.sp-work-count{font-size:.75rem;font-weight:600;color:var(--text-muted, #9ca3af);padding:1px 5px;background:var(--card-bg, #fff);border-radius:100px;border:1px solid var(--border, #e2e8f0)}.sp-work-total-badge{font-size:.8125rem;font-weight:700;color:var(--text-dark, #0a1628);font-variant-numeric:tabular-nums}.sp-work-factors-info{display:flex;flex-wrap:wrap;gap:6px;padding:6px 10px;border-top:1px solid var(--border-light, #f1f5f9)}.sp-work-factor-tag{display:inline-flex;align-items:center;gap:4px;font-size:.6875rem;font-weight:600;padding:2px 8px;border-radius:100px;background:#f0f4f8;color:var(--text-muted, #6b7280);font-variant-numeric:tabular-nums}.sp-work-factor-tag--drift{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.sp-work-factor-current{font-weight:500;color:#b45309}.sp-cost-summary{background:var(--card-bg, #fff);border-radius:var(--radius-md, 10px);border:1px solid var(--border, #e2e8f0);padding:14px 16px;margin-bottom:14px}.sp-cost-row{display:flex;align-items:center;justify-content:space-between;padding:3px 0;font-size:.9375rem}.sp-cost-row-label{color:var(--text-light, #6b7280);font-weight:500}.sp-cost-row-value{font-weight:600;color:var(--text-dark, #0a1628);font-variant-numeric:tabular-nums}.sp-cost-row--total{padding-top:8px;margin-top:6px;border-top:2px solid var(--border, #e2e8f0)}.sp-cost-row--total .sp-cost-row-label{font-weight:700;color:var(--text-dark, #0a1628);font-size:.9375rem}.sp-cost-row--total .sp-cost-row-value{font-weight:800;font-size:1.1875rem;color:var(--primary, #0052CC)}.sp-detail-top{flex-shrink:0;padding:4px 22px 0;background:var(--background, #f0f4f8)}.sp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:6px;row-gap:4px;padding:8px 0;border-bottom:1px solid var(--border, #e2e8f0);flex-wrap:wrap}.sp-toolbar-actions{display:flex;align-items:center;gap:4px;row-gap:4px;flex-wrap:wrap;min-width:0}.sp-toolbar-right{display:flex;align-items:center;gap:6px}.sp-toolbar-menu{position:absolute;top:100%;right:0;margin-top:4px;min-width:200px;background:var(--card-bg, #fff);border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 10px);box-shadow:0 4px 6px -1px #0028640f,0 12px 28px -4px #0028641f;padding:4px;z-index:1000}.sp-toolbar-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;background:none;font-family:var(--font-sans);font-size:.8125rem;font-weight:500;color:var(--text-medium, #374151);cursor:pointer;border-radius:var(--radius-sm, 6px);transition:background .1s;text-align:left}.sp-toolbar-menu-item:hover{background:var(--border-light, #f1f5f9)}.sp-toolbar-menu-item--danger{color:var(--danger, #EF4444)}.sp-toolbar-menu-item--danger:hover{background:var(--danger-light, #fef2f2)}.sp-toolbar-menu-sep{height:1px;background:var(--border-light, #f1f5f9);margin:3px 6px}.sp-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:var(--radius-sm, 6px);font-family:var(--font-sans);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s;border:1px solid transparent;white-space:nowrap}.sp-btn--primary{background:var(--primary, #0052CC);color:#fff;border-color:var(--primary, #0052CC)}.sp-btn--primary:hover{background:var(--primary-hover, #003d99)}.sp-btn--primary:disabled{opacity:.5;cursor:default}.sp-btn--secondary{background:var(--card-bg, #fff);color:var(--text-medium, #374151);border-color:var(--border, #e2e8f0)}.sp-btn--secondary:hover{background:var(--border-light, #f1f5f9);border-color:var(--text-muted, #9ca3af)}.sp-btn--ghost{background:transparent;color:var(--text-light, #6b7280);padding:6px 8px}.sp-btn--ghost:hover{background:var(--border-light, #f1f5f9);color:var(--text-dark, #0a1628)}.sp-btn--sm{padding:4px 8px;font-size:.8125rem}.sp-reviewed-toggle{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:var(--radius-sm, 6px);border:1.5px solid var(--border, #e2e8f0);background:var(--card-bg, #fff);font-family:var(--font-sans);font-size:.8125rem;font-weight:600;color:var(--text-light, #6b7280);cursor:pointer;transition:all .2s ease}.sp-reviewed-toggle:hover{border-color:#16a34a;color:#16a34a;background:#f0fdf4}.sp-reviewed-toggle--active{background:#16a34a;border-color:#16a34a;color:#fff}.sp-reviewed-toggle--active:hover{background:#15803d;border-color:#15803d}.sp-nav-hint{font-size:.75rem;color:var(--text-muted, #9ca3af);display:flex;align-items:center;gap:3px}.sp-nav-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 3px;border:1px solid var(--border, #e2e8f0);border-radius:3px;font-size:.5625rem;font-weight:600;background:var(--border-light, #f1f5f9);color:var(--text-light, #6b7280)}.sp-match-source{display:inline-flex;padding:1px 6px;border-radius:100px;font-size:.5625rem;font-weight:600;white-space:nowrap}.sp-match-source--reuse{background:#dbeafe;color:#1d4ed8}.sp-match-source--guided{background:#ede9fe;color:#6d28d9}.sp-match-source--history_inferred{background:#fef3c7;color:#92400e}.sp-match-source--generated{background:#fee2e2;color:#991b1b}.sp-add-section{display:flex;align-items:center;gap:5px;padding:10px 14px;border:1.5px dashed var(--border, #e2e8f0);border-radius:var(--radius-md, 10px);background:transparent;cursor:pointer;font-family:var(--font-sans);font-size:.8125rem;font-weight:600;color:var(--text-muted, #9ca3af);width:100%;transition:all .15s;margin-bottom:14px}.sp-add-section:hover{border-color:var(--primary, #0052CC);color:var(--primary, #0052CC);background:#0052cc05}@keyframes sp-fadeSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sp-animate-in{animation:sp-fadeSlideIn .18s ease-out}.sp-review-group{display:flex;align-items:center;gap:0}.sp-review-group .sp-reviewed-toggle{border-top-right-radius:0;border-bottom-right-radius:0;height:32px}.sp-auto-advance{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1.5px solid var(--border, #e2e8f0);border-left:none;border-radius:0 var(--radius-sm, 6px) var(--radius-sm, 6px) 0;background:var(--card-bg, #fff);color:var(--text-muted, #9ca3af);cursor:pointer;transition:all .15s}.sp-auto-advance:hover{background:#f0fdf4;color:#16a34a}.sp-auto-advance--active{background:#dcfce7;border-color:#bbf7d0;color:#16a34a}.sp-auto-advance--active:hover{background:#bbf7d0;color:#15803d}.sp-auto-advance[data-tooltip]{position:relative}.sp-auto-advance[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);right:0;width:220px;padding:8px 10px;border-radius:8px;background:var(--text-dark, #0a1628);color:#fff;font-size:.6875rem;font-weight:500;line-height:1.45;white-space:normal;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity .15s ease .6s,transform .15s ease .6s;z-index:50;box-shadow:0 4px 12px #00000026}.sp-auto-advance[data-tooltip]:hover:after{opacity:1;transform:translateY(0)}.sp-auto-advance--reviewed{border-color:#16a34a}.sp-auto-advance--reviewed.sp-auto-advance--active{background:#15803d;border-color:#15803d;color:#fff}@media(max-width:1080px){.sp-master{width:34%;min-width:280px}}@media(max-width:900px){.sp{flex-direction:column;height:auto;min-height:auto}.sp-master{width:100%;max-width:none;max-height:50vh}.sp-detail{min-height:60vh}}.tdr-panel{display:flex;flex-direction:column;gap:.75rem}.tdr-detail-head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.tdr-map{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.4rem .6rem}.tdr-map-sec{border-bottom:1px solid var(--border-light);padding:.35rem 0}.tdr-map-sec:last-child{border-bottom:none}.tdr-map-head{display:flex;align-items:center;gap:.5rem;cursor:pointer;flex-wrap:wrap}.tdr-map-nr{min-width:2.6rem;font-size:.8125rem;font-weight:700;color:var(--text-light);font-variant-numeric:tabular-nums}.tdr-map-body{padding:.4rem 0 .3rem 3.1rem;font-size:.9rem}.tdr-map-body ul{margin:.3rem 0;padding-left:1.1rem}.tdr-map-body li{margin:.15rem 0}.tdr-map-summary{margin:0 0 .3rem;color:var(--text-light)}.tdr-specs{display:flex;flex-wrap:wrap;gap:.3rem;margin:.3rem 0}.tdr-del{display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.6rem .8rem;margin-bottom:.45rem}.tdr-del--proposed{border-style:dashed}.tdr-del-main{flex:1;cursor:pointer;display:flex;flex-direction:column;gap:.25rem}.tdr-del-desc{margin:0;font-size:.875rem;color:var(--text-light)}.tdr-judge{background:var(--warning-light, #fff8e6);border:1px solid var(--warning, #e2b203);border-radius:var(--radius-lg);padding:.6rem .8rem;font-size:.9rem}.tdr-judge--ok{background:var(--success-light, #eaf7ef);border-color:var(--success, #22884c)}.tdr-judge-head{display:flex;align-items:center;gap:.6rem}.tdr-judge-notes{margin:.3rem 0 0;color:var(--text-light)}.tdr-judge-list ul{margin:.25rem 0 0;padding-left:1.1rem}.tdr-judge-list li{margin:.15rem 0}.tdr-form{display:flex;flex-direction:column;gap:.5rem}.tdr-form-q{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.55rem .75rem}.tdr-form-frage{font-weight:600;font-size:.9rem}.tdr-form-answer{margin-top:.3rem;font-size:.9rem;white-space:pre-wrap}.tdr-genwrap{border-top:1px solid var(--border);padding-top:.75rem}.tdr-progress{display:flex;align-items:center;gap:.75rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem 1.2rem}.tdr-progress-count{font-size:.85rem;font-weight:700;color:var(--text-light);background:var(--bg, #f1f3f6);border-radius:999px;padding:.15rem .6rem}.tdr-progressbar{height:5px;border-radius:999px;background:var(--border-light, #e8ebf0);overflow:hidden}.tdr-progressbar-fill{height:100%;border-radius:999px;background:var(--success, #22884c);transition:width .3s ease}.tdr-head-actions{margin-left:auto;display:flex;gap:.4rem}.tdr-hint{margin:0;font-size:.85rem;color:var(--text-light)}.tdr-add{display:flex;flex-direction:column;gap:.6rem;background:var(--card-bg);border:1px dashed var(--border);border-radius:var(--radius-lg);padding:.65rem .8rem}.tdr-add-field{display:flex;flex-direction:column;gap:.25rem}.tdr-add input,.tdr-add textarea{width:100%;box-sizing:border-box}.tdr-add textarea{min-height:4.4rem;padding:.55rem .7rem;font-family:var(--font-sans);font-size:.9rem;line-height:1.4;border:1px solid var(--border);border-radius:var(--radius-md);resize:vertical}.tdr-add textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1f}.tdr-add-field .thv2-meta{line-height:1.35}.tdr-add-actions{display:flex;gap:.5rem;align-items:center}.tdr-st{width:1.4rem;height:1.4rem;flex:0 0 auto;margin-top:.15rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:.85rem;font-weight:700;background:var(--bg, #f1f3f6);color:var(--text-light)}.tdr-st--done,.tdr-st--checked{background:var(--success-light, #eaf7ef);color:var(--success, #22884c)}.tdr-st--in_progress{background:var(--info-light, #e8f0fe);color:var(--primary, #0552cc)}.tdr-state{font-size:.78rem}.tdr-state--done,.tdr-state--checked{background:var(--success-light, #eaf7ef);color:var(--success, #22884c)}.tdr-state--in_progress{background:var(--info-light, #e8f0fe);color:var(--primary, #0552cc)}.tdr-del--done{opacity:.75}.tdr-output{margin-left:auto;display:flex;gap:.4rem}.tdr-form-head{display:flex;align-items:center;gap:.4rem;justify-content:space-between}.tdr-form-q--missing{border-color:var(--warning, #e2b203)}.tdr-form-missing{margin-top:.35rem;font-size:.85rem;color:var(--text-light);display:flex;align-items:center;gap:.3rem}.tdr-dellist{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.tdr-dellist .tdr-del{border:none;border-radius:0;margin-bottom:0;padding:.8rem 1rem}.tdr-dellist .tdr-del+.tdr-del{border-top:1px solid var(--border-light)}.tdr-dellist .tdr-del:hover{background:var(--well)}.tdr-dellist .tdr-del--proposed{border-left:2px dashed var(--warning);background:var(--warning-light)}.tdr-del-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tdr-ws{display:grid;gap:1.25rem;grid-template-areas:"aside" "main";align-items:start}.tdr-ws-main{grid-area:main;min-width:0;display:flex;flex-direction:column;gap:.75rem}.tdr-ws-aside{grid-area:aside;display:flex;flex-direction:column;gap:.75rem}@media(min-width:1440px){.tdr-ws{grid-template-columns:minmax(0,1fr) 320px;grid-template-areas:"main aside"}.tdr-ws-aside{position:sticky;top:1rem}}.tdr-ws-title{font-size:var(--fs-lg);letter-spacing:-.01em}.tdr-aside-sec{border:1px solid var(--border);border-radius:var(--radius-md);padding:.8rem .95rem;display:flex;flex-direction:column;gap:.45rem}.tdr-aside-task{margin:0;font-size:var(--fs-sm);line-height:1.55;color:var(--text-medium)}.tdr-output-stack .btn{width:100%;justify-content:flex-start}.tdr-genwrap .gen-result,.tdr-genwrap .gen-container-head{max-width:860px}.tdr-anchors{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;margin-top:.3rem}.tdr-anchors--col{flex-direction:column;align-items:stretch}.tdr-anchors-label{font-size:.78rem;color:var(--text-light)}.tdr-anchor{font-size:.78rem;font-family:var(--font-mono, ui-monospace, monospace);color:var(--primary, #0552cc);background:var(--info-light, #e8f0fe);border:1px solid transparent;border-radius:var(--radius-sm, 6px);padding:.15rem .5rem;cursor:pointer;text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tdr-anchor:hover{border-color:var(--primary, #0552cc)}.tdr-source-overlay{position:fixed;inset:0;z-index:1200;background:#0a162859;display:flex;justify-content:flex-end;animation:tdr-source-fade .12s ease-out}@keyframes tdr-source-fade{0%{opacity:0}to{opacity:1}}.tdr-source{width:min(600px,94vw);height:100%;overflow-y:auto;background:var(--card-bg, #fff);padding:1.1rem 1.3rem 2rem;box-shadow:-12px 0 40px #0a16282e;animation:tdr-source-slide .16s ease-out}@keyframes tdr-source-slide{0%{transform:translate(24px)}to{transform:translate(0)}}.tdr-source-head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding-bottom:.6rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--card-bg, #fff);z-index:1}.tdr-source-close{margin-left:auto}.tdr-source-sec{margin-top:.9rem}.tdr-source-reqs{margin:.35rem 0 0;padding-left:1.1rem;font-size:.875rem}.tdr-source-reqs li{margin-bottom:.25rem}.tdr-source-text{margin:.35rem 0 0;padding:.7rem .85rem;background:var(--well, #f6f8fb);border:1px solid var(--border-light);border-radius:var(--radius-md, 8px);font-family:inherit;font-size:.85rem;line-height:1.55;white-space:pre-wrap;word-break:break-word}.tdr-source-demand{margin:.5rem 0 0;padding:.45rem .7rem;font-size:.85rem;background:var(--info-light, #e8f0fe);border-radius:var(--radius-sm, 6px);color:var(--primary, #0552cc)}.tdr-source-demand--warn{background:var(--warning-light, #fffbeb);color:var(--text-dark);border:1px solid var(--warning, #f59e0b)}.tdr-protocol{border:1px solid var(--border-light);border-radius:var(--radius-md, 8px);background:var(--well, #f6f8fb)}.tdr-protocol-head{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;width:100%;background:none;border:0;padding:.45rem .75rem;cursor:pointer;text-align:left;font:inherit;color:inherit}.tdr-protocol-title{font-weight:600;font-size:var(--fs-sm, .875rem)}.tdr-protocol-usage{margin-left:auto;font-family:var(--font-mono)}.tdr-protocol-log{margin:0;padding:.6rem .8rem;max-height:280px;overflow:auto;border-top:1px solid var(--border-light);font-family:var(--font-mono);font-size:.76rem;line-height:1.55;white-space:pre-wrap;word-break:break-word;color:var(--text-medium)}.tdrv4-banner--warn{align-items:flex-start}.tdr-failed{margin-top:.3rem;font-size:.82rem}.tdr-failed summary{cursor:pointer;color:var(--primary, #0552cc)}.tdr-failed ul{margin:.3rem 0 0;padding-left:1.1rem}.tdr-failed li{margin-bottom:.15rem}.gen-badge--warn{background:var(--warning-light, #fffbeb);color:var(--text-dark);border-color:var(--warning, #f59e0b)}.tdr-pageimg{margin-top:.35rem}.tdr-pageimg-bar{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.35rem}.tdr-pageimg-nav{display:inline-flex;gap:.25rem}.tdr-pageimg-img{display:block;width:100%;height:auto;border:1px solid var(--border-light);border-radius:var(--radius-md, 8px);background:#fff}.tdr-pageimg-skel{height:240px;width:100%}.tdr-pageimg-open{display:block;width:100%;padding:0;border:none;background:none;cursor:zoom-in;border-radius:var(--radius-md, 8px)}.tdr-pageimg-open:hover .tdr-pageimg-img{border-color:var(--primary)}.tdr-pageimg-open:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tdr-anchor-wrap{display:inline-flex;align-items:center;gap:.1rem;max-width:100%}.tdr-anchors--col .tdr-anchor-wrap{display:flex}.tdrv4-req-note .viewer-link--icon,.tdr-source-reqs .viewer-link--icon,.tdrv4-crit .viewer-link--icon,.gen-prov-chip .viewer-link--icon{width:18px;height:18px;margin-left:.15rem}.gen-prov-chip{display:inline-flex;align-items:center}.tdrv4-wording-links{display:inline-flex;align-items:center;gap:.75rem}.tdrv4{display:flex;gap:0;align-items:stretch;min-height:60vh}.tdrv4-side{flex:0 0 290px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-bg);overflow:hidden;align-self:flex-start;position:sticky;top:.5rem;max-height:calc(100vh - 2rem)}.tdrv4-side-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem .8rem;border-bottom:1px solid var(--border);font-size:.85rem}.tdrv4-tree{overflow-y:auto;flex:1}.tdrv4-filegrp{border-bottom:1px solid var(--border-light);padding:.2rem 0}.tdrv4-node{display:flex;align-items:center;gap:.5rem;width:100%;padding:.4rem .8rem;border:none;background:none;text-align:left;cursor:pointer;font:inherit;color:var(--text-dark);border-left:3px solid transparent}.tdrv4-node:hover{background:var(--well)}.tdrv4-node.is-active{background:#f0fbff;border-left-color:var(--accent, #00d4ff)}.tdrv4-node--del{padding-left:2.1rem;font-size:.85rem}.tdrv4-node--file{padding-top:.5rem}.tdrv4-node-main{display:flex;flex-direction:column;min-width:0;gap:.1rem}.tdrv4-node--file .tdrv4-node-name{font-weight:600;font-size:.82rem;word-break:break-all}.tdrv4-node--del .tdrv4-node-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tdrv4-node-meta{font-family:var(--font-mono, ui-monospace, monospace);font-size:.68rem;color:var(--text-muted)}.tdrv4-node--more{justify-content:space-between;color:var(--text-light);font-size:.85rem}.tdrv4-node--link{color:var(--primary);font-size:.85rem;justify-content:space-between}.tdrv4-attcount{font-family:var(--font-mono, ui-monospace, monospace);font-size:.72rem;background:var(--well);border-radius:999px;padding:.05rem .45rem}.tdrv4-basisdot{width:11px;text-align:center;color:var(--text-muted);flex:0 0 auto}.tdrv4-side-sec{border-bottom:1px solid var(--border-light)}.tdrv4-side-foot{display:flex;align-items:center;justify-content:space-between;gap:.4rem;flex-wrap:wrap;padding:.45rem .8rem;border-top:1px solid var(--border)}.tdrv4-legend{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-mono, ui-monospace, monospace);font-size:.62rem;color:var(--text-muted)}.tdrv4-main{flex:1;min-width:0;padding-left:1rem;display:flex;flex-direction:column;gap:.75rem}.tdrv4-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem .8rem;font-size:.875rem;background:var(--warning-light, #fffbeb);border:1px solid var(--warning, #f59e0b);border-radius:var(--radius-md)}.tdrv4-dot{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:50%;font-size:.55rem;font-weight:700;font-family:var(--font-mono, ui-monospace, monospace);line-height:1;background:var(--card-bg);border:1.5px solid var(--text-muted);color:transparent}.tdrv4-dot--busy{background:var(--primary);border-color:var(--primary);color:#fff}.tdrv4-dot--done{background:var(--success);border-color:var(--success);color:#fff}.tdrv4-dot--warn{background:var(--warning);border-color:var(--warning);color:#fff}.tdrv4-kind{font-family:var(--font-mono, ui-monospace, monospace);font-size:.62rem;font-weight:700;letter-spacing:.04em;border-radius:var(--radius-sm);padding:.14rem .4rem}.tdrv4-kind--text{background:var(--info-light, #e8f0fe);color:var(--primary)}.tdrv4-kind--form{background:#f3e8ff;color:#7c3aed}.tdrv4-kind--att{background:var(--well);color:var(--text-medium)}.tdrv4-kind--basis{background:#f1f5f9;color:#64748b}.tdrv4-todo{margin:0;padding:.45rem .7rem;font-size:.875rem;font-weight:500;background:var(--info-light, #e8f0fe);color:var(--primary);border-radius:var(--radius-md)}.tdrv4-reqlist{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.tdrv4-req{display:flex;align-items:flex-start;gap:.6rem;padding:.7rem .9rem;cursor:pointer;background:var(--card-bg)}.tdrv4-req+.tdrv4-req{border-top:1px solid var(--border-light)}.tdrv4-req:hover{background:var(--well)}.tdrv4-req--proposed{border-left:2px dashed var(--warning);background:var(--warning-light)}.tdrv4-req-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.tdrv4-req-head{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.tdrv4-req-note{font-size:.82rem;color:var(--text-light)}.tdrv4-created{font-size:.8rem}.tdrv4-created-label{font-family:var(--font-mono, ui-monospace, monospace);font-size:.7rem;color:var(--accent-dark, #00a8cc);font-weight:700}.tdrv4-check{width:1.15rem;height:1.15rem;flex:0 0 auto;margin-top:.1rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.7rem;font-weight:700;color:#fff;background:var(--card-bg)}.tdrv4-check.is-done{background:var(--success);border-color:var(--success)}.tdrv4-crumb{display:flex;align-items:center;gap:.4rem;font-family:var(--font-mono, ui-monospace, monospace);font-size:.72rem;color:var(--text-muted)}.tdrv4-crumblink{border:none;background:none;padding:0;cursor:pointer;font:inherit;color:var(--primary)}.tdrv4-crumblink:hover{text-decoration:underline}.tdrv4-more{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.45rem .7rem;background:var(--well);border:1px solid var(--border-light);border-radius:var(--radius-md)}.tdrv4-expert{display:inline-flex;align-items:center;gap:.35rem;font-size:.82rem}.tdrv4-hint{margin:0 0 .5rem;font-size:.85rem;color:var(--text-light)}.tdrv4-wording{border:1px solid var(--border);border-radius:var(--radius-md);padding:.8rem 1rem;background:var(--card-bg);display:flex;flex-direction:column;gap:.5rem}.tdrv4-wording>p{margin:0;font-size:.95rem;line-height:1.55}.tdrv4-wording .btn{align-self:flex-start}.tdrv4-crit ul{margin:.25rem 0 0;padding-left:1.1rem;font-size:.85rem}.tdrv4-crit li{margin:.15rem 0}.tdrv4-start{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}@media(max-width:900px){.tdrv4-start{grid-template-columns:1fr}}.tdrv4-startcard{border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem 1.1rem;background:var(--card-bg);display:flex;flex-direction:column;gap:.45rem}.tdrv4-startcard--primary{border-color:var(--accent-dark, #00a8cc);background:#f0fbff}.tdrv4-startcard p{margin:0;font-size:.875rem;color:var(--text-medium)}.tdrv4-startcard .btn{align-self:flex-start;margin-top:.25rem}.tdrv4-strip{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.tdrv4-chip{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .7rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-bg);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.tdrv4-chip--warn{border-color:var(--warning);background:var(--warning-light)}.tdrv4-chip.is-open{border-color:var(--accent-dark, #00a8cc);border-width:1.5px}.tdrv4-chip-val{font-family:var(--font-mono, ui-monospace, monospace);font-size:.72rem;font-weight:700;color:var(--text-medium)}.tdrv4-chip--warn .tdrv4-chip-val{color:#b45309}.tdrv4-chip--ok .tdrv4-chip-val{color:var(--success)}.tdrv4-chip-caret{font-size:.6rem;color:var(--text-muted)}.tdrv4-expand{border:1px solid var(--accent-dark, #00a8cc);border-radius:var(--radius-md);padding:.7rem .9rem;background:var(--card-bg);display:flex;flex-direction:column;gap:.6rem}.tdrv4-chapters{display:flex;flex-direction:column;gap:.6rem;max-width:920px}.tdrv4-chapter{border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem .95rem;background:var(--card-bg);display:flex;flex-direction:column;gap:.45rem}.tdrv4-chapter-head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.tdrv4-chapter-head strong{font-size:.95rem}.tdrv4-chapter-text{font-size:.9rem;line-height:1.6;white-space:pre-wrap}.tdrv4-review{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.45rem .7rem;font-size:.85rem;background:var(--warning-light);border-radius:var(--radius-sm);color:#7c2d12}.tdrv4-findings li{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.tdrv4-findings .gen-badge{font-size:.72rem}.tdrv4-node--postaward .tdrv4-node-name{color:var(--text-light);font-weight:400}.tdr-synth{border:1px solid var(--border);border-radius:var(--radius-md);padding:.65rem .9rem;background:var(--well);display:flex;flex-direction:column;gap:.45rem}.tdr-synth--warn{border-color:var(--warning);background:var(--warning-light)}.tdr-synth-head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.tdr-synth-head .btn{margin-left:auto}.tdr-synth-note{margin:0;font-size:.85rem;color:var(--text-medium)}.tdr-synth-confirm{display:flex;flex-direction:column;gap:.4rem}.tdr-synth-confirm p{margin:0;font-size:.875rem;line-height:1.5}.tdr-synth-actions{display:flex;gap:.4rem;flex-wrap:wrap}.tdr-synth-list{margin:0;padding:0;list-style:none;font-size:.84rem;display:grid;gap:.2rem}.tdr-synth-list li{display:flex;align-items:center;gap:.45rem}.tdr-synth-state{font-size:.72rem;font-weight:600;padding:.05rem .4rem;border-radius:var(--radius-sm, 4px);border:1px solid var(--border);color:var(--text-light);min-width:4.2rem;text-align:center}.tdr-synth-state--draft{border-color:var(--warning);color:var(--text-medium)}.tdr-synth-state--final{border-color:var(--success, #16a34a);color:var(--success, #16a34a)}.chat-container{display:flex;flex-direction:column;height:calc(100vh - 220px);min-height:400px;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:1.25rem;text-align:center;padding:3rem 2rem}.chat-empty-icon-wrap{width:56px;height:56px;border-radius:16px;background:var(--primary-light);display:flex;align-items:center;justify-content:center}.chat-empty-icon-wrap svg{width:26px;height:26px;stroke:var(--primary)}.chat-empty-title{font-size:1.05rem;font-weight:600;color:var(--text-dark)}.chat-empty-text{font-size:.9rem;max-width:420px;line-height:1.6;color:var(--text-light)}.chat-suggestions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:.5rem}.chat-suggestion{padding:.45rem .9rem;border:1px solid var(--border);border-radius:100px;background:var(--card-bg);color:var(--text-medium);font-family:var(--font-sans);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s ease}.chat-suggestion:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light);box-shadow:var(--shadow-sm)}.chat-messages{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem;background:var(--background)}.chat-message{display:flex;gap:.625rem;max-width:80%;animation:chatSlideIn .25s ease-out}@keyframes chatSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-message--user{align-self:flex-end;flex-direction:row-reverse}.chat-message--assistant{align-self:flex-start}.chat-message-avatar{width:30px;height:30px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.78rem;font-weight:700;letter-spacing:.02em}.chat-message--user .chat-message-avatar{background:var(--primary);color:#fff}.chat-message--assistant .chat-message-avatar{background:var(--gradient-brand);color:#fff}.chat-message--user .chat-message-content{background:var(--primary);color:#fff;border-radius:var(--radius-md) var(--radius-md) 4px var(--radius-md);box-shadow:var(--shadow-brand)}.chat-message--assistant .chat-message-content{background:var(--card-bg);color:var(--text-dark);border:1px solid var(--border);border-radius:var(--radius-md) var(--radius-md) var(--radius-md) 4px;box-shadow:var(--shadow-sm)}.chat-message-content{padding:.75rem 1rem;font-size:.9rem;line-height:1.65;white-space:pre-wrap;word-break:break-word}.chat-sources{margin-top:.75rem;padding-top:.625rem;border-top:1px solid var(--border-light)}.chat-sources-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.35rem}.chat-source-item{display:flex;align-items:baseline;gap:.35rem;font-size:.8125rem;padding:.2rem 0;color:var(--text-light)}.chat-source-item:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--primary);flex-shrink:0;margin-top:.35rem}.chat-source-filename{font-weight:600;color:var(--primary)}.chat-source-excerpt{color:var(--text-muted);font-style:italic}.chat-thinking{display:flex;align-items:center;gap:.625rem;padding:.75rem 1rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md) var(--radius-md) var(--radius-md) 4px;box-shadow:var(--shadow-sm);color:var(--text-light);font-size:.875rem}.chat-thinking-dots{display:flex;gap:4px}.chat-thinking-dots span{width:5px;height:5px;border-radius:50%;background:var(--primary);opacity:.4;animation:chatPulse 1.4s ease-in-out infinite}.chat-thinking-dots span:nth-child(2){animation-delay:.2s}.chat-thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes chatPulse{0%,80%,to{opacity:.25;transform:scale(.85)}40%{opacity:1;transform:scale(1.1)}}.chat-input-area{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;background:var(--card-bg);border-top:1px solid var(--border)}.chat-input{flex:1;padding:.6rem 1rem;border:1px solid var(--border);border-radius:100px;font-family:var(--font-sans);font-size:.9rem;background:var(--background);color:var(--text-dark);outline:none;transition:border-color .15s,box-shadow .15s}.chat-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0052cc1f}.chat-input::placeholder{color:var(--text-muted)}.chat-send-btn{width:36px;height:36px;border-radius:50%;border:none;background:var(--gradient-brand);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;flex-shrink:0;box-shadow:var(--shadow-brand)}.chat-send-btn:hover:not(:disabled){transform:scale(1.08);box-shadow:0 6px 20px -2px #0052cc59}.chat-send-btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.chat-error{color:var(--danger);background:var(--danger-light);font-size:.85rem;padding:.5rem .75rem;border-radius:var(--radius-sm);text-align:center}.vg{font-size:var(--fs-base);color:var(--text-dark)}.vg-loading,.vg-empty{padding:40px 24px;text-align:center;color:var(--text-light)}.vg-empty{border:1px dashed var(--border);border-radius:var(--radius-md)}.vg-empty--sm{padding:24px;border:none}.vg-empty p{margin:0 0 6px}.vg-sub{font-size:var(--fs-sm);color:var(--text-light);margin:0;line-height:1.5}.vg-muted{color:var(--text-light)}.vg-warn{color:var(--warning)}.vg-pstrip-wrap{margin-bottom:16px}.vg-pstrip{display:flex;align-items:center;gap:0;padding:12px 0;border-bottom:1px solid var(--border);flex-wrap:wrap;row-gap:10px}.vg-pstrip-seg{display:flex;align-items:center}.vg-station{display:flex;align-items:center;gap:10px;padding:6px 10px;border:none;background:transparent;border-radius:var(--radius-sm);font-family:inherit;cursor:pointer;text-align:left}.vg-station:hover,.vg-station.is-current{background:var(--well)}.vg-station-circle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;flex:none;font-family:var(--font-mono);font-size:var(--fs-sm);font-weight:700;background:var(--well);color:var(--text-light);border:1.5px solid var(--border)}.vg-station.is-done .vg-station-circle{background:var(--success-light);border-color:var(--success);color:var(--success)}.vg-station.is-active .vg-station-circle{background:var(--ink, #0a1628);border-color:var(--accent, var(--primary));color:#fff;border-width:2px}.vg-station-txt{display:flex;flex-direction:column;gap:1px;min-width:0}.vg-station-label{font-size:var(--fs-sm);font-weight:500;color:var(--text-light)}.vg-station.is-active .vg-station-label,.vg-station.is-done .vg-station-label{color:var(--text-dark)}.vg-station.is-active .vg-station-label{font-weight:600}.vg-station-sub{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap}.vg-station-sub.is-warn{color:var(--warning)}.vg-thread{width:22px;height:2.5px;border-radius:2px;background:var(--border);margin:0 4px;flex:none}.vg-thread.is-done{background:var(--accent, var(--primary))}.vg-pstrip-spacer{flex:1}.vg-next{display:flex;align-items:center;gap:10px}.vg-next-label{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.vg-completeness--strip{margin-top:10px}.vg-link{border:none;background:none;padding:0;font:inherit;font-size:var(--fs-sm);color:var(--primary);cursor:pointer}.vg-link:hover{text-decoration:underline}.vg-error{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:9px 12px;background:var(--danger-light);color:var(--danger);border-radius:var(--radius-sm);font-size:var(--fs-sm)}.vg-notice{margin-bottom:12px;padding:9px 12px;background:var(--well);color:var(--text-medium);border-radius:var(--radius-sm);font-size:var(--fs-sm);line-height:1.5}.vg-notice--warn{background:var(--warning-light);color:#92400e}.vg-notice--ok{background:var(--success-light);color:#065f46}.vg-progress{margin-bottom:16px}.vg-progress-bar{height:5px;background:var(--well);border-radius:3px;overflow:hidden}.vg-progress-fill{height:100%;background:var(--primary);transition:width var(--t-base) var(--ease)}.vg-progress-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px;font-size:var(--fs-sm);color:var(--text-light)}.vg-panel{max-width:1100px}.vg-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:16px}.vg-panel-head h2{font-size:var(--fs-lg);font-weight:600;margin:0 0 4px}.vg-panel-actions{display:flex;gap:8px;flex:none}.vg-summary-text{font-size:var(--fs-md);line-height:1.6;margin:0 0 18px;max-width:78ch}.vg-stat-row{display:flex;gap:10px;margin-bottom:22px;flex-wrap:wrap}.vg-stat{flex:1;min-width:150px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--canvas)}.vg-stat--warn{border-color:var(--warning);background:var(--warning-light)}.vg-stat-value{display:block;font-size:var(--fs-2xl);font-weight:700;font-family:var(--font-mono);line-height:1.1}.vg-stat-label{font-size:var(--fs-xs);color:var(--text-light)}.vg-section{margin-bottom:22px}.vg-section h3{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600;margin:0 0 8px}.vg-trade-chips{display:flex;flex-wrap:wrap;gap:6px}.vg-trade-chip{display:inline-flex;align-items:center;gap:6px;background:var(--well);border-radius:var(--radius-sm);padding:4px 9px;font-size:var(--fs-sm)}.vg-trade-count{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-light)}.vg-list{margin:0;padding-left:18px;font-size:var(--fs-sm);color:var(--text-medium)}.vg-question-list{list-style:none;margin:0;padding:0}.vg-question-list li{display:flex;gap:10px;padding:7px 0;border-bottom:1px solid var(--border-light);font-size:var(--fs-sm)}.vg-oz-link{border:none;background:var(--well);color:var(--primary);font-family:var(--font-mono);font-size:var(--fs-xs);padding:2px 6px;border-radius:3px;cursor:pointer;flex:none;align-self:flex-start}.vg-oz-link:hover{background:var(--primary-light)}.vg-review-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}.vg-filter-group{display:flex;gap:2px}.vg-filter{padding:5px 11px;border:1px solid var(--border);background:var(--canvas);color:var(--text-light);font-size:var(--fs-xs);font-family:inherit;cursor:pointer}.vg-filter:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.vg-filter:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.vg-filter.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.vg-input{padding:6px 9px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);color:var(--text-dark);font-size:var(--fs-sm);font-family:inherit;box-sizing:border-box;width:100%}.vg-input:focus{outline:none;border-color:var(--primary)}textarea.vg-input{resize:vertical}.vg-search{flex:1;min-width:180px}.vg-review-toolbar>.vg-input:not(.vg-search){width:auto;min-width:150px}.vg-count{font-size:var(--fs-xs);color:var(--text-light);white-space:nowrap}.vg-bulk{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-bottom:10px;background:var(--primary-light);border-radius:var(--radius-sm);font-size:var(--fs-sm);flex-wrap:wrap}.vg-bulk .vg-input{width:auto;min-width:150px}.vg-list-pane{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--canvas);max-height:68vh;overflow-y:auto}.vg-list-head{position:sticky;top:0;display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--well);border-bottom:1px solid var(--border);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600;z-index:1}.vg-row{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border-light);cursor:pointer}.vg-row:hover{background:var(--well)}.vg-row.is-selected{background:var(--primary-light)}.vg-row.is-excluded{opacity:.55}.vg-row:last-child{border-bottom:none}.vg-row-main{flex:1;min-width:0}.vg-row-top{display:flex;gap:8px;align-items:baseline}.vg-oz{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-light);flex:none}.vg-oz--lg{font-size:var(--fs-sm);color:var(--primary)}.vg-row-text{font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vg-row-meta{display:flex;align-items:center;gap:7px;margin-top:3px;font-size:var(--fs-xs);color:var(--text-light);flex-wrap:wrap}.vg-cat-dot{width:7px;height:7px;border-radius:50%;flex:none}.vg-row-cat{font-weight:500}.vg-row-trade{background:var(--well);padding:1px 5px;border-radius:3px}.vg-conf{font-family:var(--font-mono);font-weight:600}.vg-conf.is-high{color:var(--success)}.vg-conf.is-mid{color:var(--warning)}.vg-conf.is-low{color:var(--danger)}.vg-source{color:var(--text-muted)}.vg-flag{background:var(--warning-light);color:#92400e;padding:1px 5px;border-radius:3px;font-weight:500}.vg-flag--muted{background:var(--well);color:var(--text-muted)}.vg-longtext,.vg-refcontext{font-size:var(--fs-sm);line-height:1.55;color:var(--text-medium);background:var(--well);padding:10px 12px;border-radius:var(--radius-sm);margin-bottom:10px;max-height:200px;overflow-y:auto;white-space:pre-wrap}.vg-refcontext{font-size:var(--fs-xs)}.vg-question{padding:9px 12px;background:var(--warning-light);color:#92400e;border-radius:var(--radius-sm);font-size:var(--fs-sm);margin-bottom:10px}.vg-reason{font-size:var(--fs-xs);color:var(--text-light);margin:0 0 14px;line-height:1.5}.vg-rule-id{font-family:var(--font-mono);background:var(--well);padding:1px 4px;border-radius:3px;margin-left:5px}.vg-field{display:block;margin-bottom:12px}.vg-field>span{display:block;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600;margin-bottom:4px}.vg-suggestions{list-style:none;margin:0 0 8px;padding:8px 10px;background:var(--well);border-radius:var(--radius-sm);font-size:var(--fs-xs);color:var(--text-light)}.vg-suggestions li{margin-bottom:3px}.vg-suggestions li:last-child{margin-bottom:0}.vg-sub-picker{display:flex;flex-direction:column;gap:3px}.vg-sub-option{display:flex;align-items:center;gap:7px;padding:4px 7px;border-radius:var(--radius-sm);font-size:var(--fs-sm);cursor:pointer}.vg-sub-option.is-active{background:var(--primary-light)}.vg-check{display:flex;align-items:center;gap:7px;font-size:var(--fs-sm);color:var(--text-medium);margin-bottom:14px;cursor:pointer}.vg-detail-actions{display:flex;gap:6px;flex-wrap:wrap}.vg-request-trade{margin-left:8px;font-size:var(--fs-xs);background:var(--well);padding:2px 6px;border-radius:3px;color:var(--text-light)}.vg-light{width:10px;height:10px;border-radius:50%;flex:none}.vg-light--ok{background:var(--success)}.vg-light--warn{background:var(--warning)}.vg-light--bad{background:var(--danger)}.vg-light--muted{background:var(--text-muted)}.vg-light-text{font-size:var(--fs-xs);font-weight:500;white-space:nowrap}.vg-light-text--ok{color:var(--success)}.vg-light-text--warn{color:var(--warning)}.vg-light-text--bad{color:var(--danger)}.vg-light-text--muted{color:var(--text-light)}.vg-label-inline{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600;margin-right:6px}.vg-oz-display{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-dark)}.vg-inline{display:flex;flex-direction:column;gap:3px;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600}.vg-inline .vg-input{width:auto;min-width:160px;text-transform:none;letter-spacing:0;font-weight:400}.vg-request-actions{display:flex;gap:6px;flex-wrap:wrap}.vg-preview{margin-top:12px;padding:12px;background:var(--well);border-radius:var(--radius-sm)}.vg-preview-subject,.vg-preview-attachments{font-size:var(--fs-sm);margin-bottom:8px}.vg-preview-body{font-family:var(--font-mono);font-size:var(--fs-xs);line-height:1.6;white-space:pre-wrap;margin:0;max-height:320px;overflow-y:auto;background:var(--canvas);padding:12px;border-radius:var(--radius-sm)}.vg-completeness{border:1px solid var(--warning);background:var(--warning-light);border-radius:var(--radius-md);padding:12px 14px;margin-bottom:16px}.vg-completeness h3{font-size:var(--fs-sm);font-weight:600;margin:0 0 8px;color:#92400e}.vg-completeness ul{list-style:none;margin:0;padding:0}.vg-completeness li{display:flex;align-items:baseline;gap:8px;padding:4px 0;font-size:var(--fs-sm);color:var(--text-medium);flex-wrap:wrap}.vg-comp-count{font-family:var(--font-mono);font-weight:700;min-width:26px;text-align:right;color:#92400e}.vg-comp-ozs{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.vg-strip-wrap{margin-bottom:14px}.vg-strip{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--well);border-radius:var(--radius-md)}.vg-strip-chips{display:flex;gap:6px;flex-wrap:wrap;flex:1;min-width:0}.vg-chip{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--canvas);cursor:pointer;font-family:inherit;font-size:var(--fs-xs);color:var(--text-medium);transition:border-color var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}.vg-chip:hover{background:var(--well);border-color:var(--text-muted)}.vg-chip.is-static{cursor:default}.vg-chip.is-static:hover{background:var(--canvas);border-color:var(--border)}.vg-chip-value{font-family:var(--font-mono);font-weight:700;font-size:var(--fs-sm)}.vg-chip--warn{border-color:var(--warning)}.vg-chip--warn .vg-chip-value{color:var(--warning)}.vg-chip--bad{border-color:var(--danger)}.vg-chip--bad .vg-chip-value{color:var(--danger)}.vg-chip--ok{border-color:var(--success);color:var(--success)}.vg-chip--quiet{color:var(--text-light)}.vg-spacer{flex:1}.vg-actions-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;margin-bottom:12px;background:var(--well);border-radius:var(--radius-sm)}.vg-actions-bar .vg-check{margin-bottom:0}.vg-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--canvas)}.vg-table th{text-align:left;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);font-weight:600;padding:9px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.vg-table td{padding:9px 10px;border-bottom:1px solid var(--border-light);vertical-align:top}.vg-table tbody tr:last-child td{border-bottom:none}.vg-table tbody tr:hover{background:var(--well)}.vg-table tr.is-due{background:var(--warning-light)}.vg-table .vg-input{width:auto;min-width:130px}.vg-input--date{min-width:140px}.vg-input--num{width:84px;min-width:0}.vg-num{text-align:right;font-family:var(--font-mono);white-space:nowrap}.vg-table--rows tr.is-clickable{cursor:pointer}.vg-table--rows tr.is-clickable:hover{background:var(--primary-light)}.vg-row-chevron{color:var(--text-muted);text-align:right;font-size:var(--fs-md)}.vg-filter-count{margin-left:6px;font-family:var(--font-mono);opacity:.7}.vg-unmatched{list-style:none;margin:8px 0 0;padding:0}.vg-unmatched li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 0;flex-wrap:wrap}.vg-unmatched .vg-input{width:auto;min-width:220px}.vg-flag--angebot{background:var(--primary-light);color:var(--primary)}.vg-flag--absage{background:var(--well);color:var(--text-light)}.vg-flag--rueckfrage,.vg-flag--unklar{background:var(--warning-light);color:#92400e}.vg-flag--ok{background:var(--success-light);color:var(--success)}.vg-markup{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.vg-markup .vg-input{width:auto;min-width:0}.vg-markup select.vg-input{min-width:96px}.vg-markup .vg-label-inline{margin-right:0}.vg-btn{padding:7px 13px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);color:var(--text-medium);font-size:var(--fs-sm);font-weight:500;font-family:inherit;cursor:pointer;white-space:nowrap}.vg-btn:hover:not(:disabled){background:var(--well)}.vg-btn:disabled{opacity:.45;cursor:default}.vg-btn--sm{padding:5px 10px;font-size:var(--fs-xs)}.vg-btn--primary{background:var(--primary);border-color:var(--primary);color:#fff}.vg-btn--primary:hover:not(:disabled){background:var(--primary-hover)}.vg-btn--ghost{border-color:transparent;color:var(--text-light)}.vg-modal-backdrop{position:fixed;inset:0;background:#0a162873;display:flex;align-items:center;justify-content:center;padding:24px;z-index:100}.vg-modal{background:var(--canvas);border-radius:var(--radius-lg);padding:22px;width:100%;max-width:560px;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.vg-handover-ozs{max-height:210px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px}.vg-handover-ozs .vg-sub-option{justify-content:flex-start}.vg-handover-ozs .vg-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vg-modal h3{font-size:var(--fs-md);font-weight:600;margin:0 0 6px}.vg-code{font-family:var(--font-mono);font-size:var(--fs-xs);background:var(--well);padding:12px;border-radius:var(--radius-sm);overflow-x:auto;margin:12px 0}.vg-modal-actions{display:flex;justify-content:flex-end;gap:8px}.vg-drawer-scrim{position:fixed;inset:0;background:#0a162847;z-index:60}.vg-drawer{position:fixed;top:0;right:0;bottom:0;width:min(620px,100vw);display:flex;flex-direction:column;background:var(--canvas);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);z-index:61;padding:16px 18px;overflow:hidden}.vg-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--border-light)}.vg-drawer-title{display:flex;align-items:flex-start;gap:10px;min-width:0}.vg-drawer-title .vg-light{margin-top:6px}.vg-drawer-controls{display:flex;gap:12px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--border-light)}.vg-drawer-tabs{display:flex;gap:2px;padding:10px 0}.vg-drawer-tab{padding:6px 12px;border:none;background:none;border-bottom:2px solid transparent;font-family:inherit;font-size:var(--fs-sm);color:var(--text-light);cursor:pointer}.vg-drawer-tab.is-active{color:var(--primary);border-bottom-color:var(--primary)}.vg-drawer-tab:disabled{opacity:.4;cursor:default}.vg-drawer-body{flex:1;overflow-y:auto;min-height:0}.vg-drawer-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--border-light)}.vg-table--positions{border:none}.vg-table--positions td{vertical-align:top}.vg-table--positions tr.is-awarded{background:var(--success-light)}.vg-pos-oz{width:1%}.vg-pos-text{font-size:var(--fs-sm);color:var(--text-dark)}.vg-pos-action{text-align:right;white-space:nowrap}.vg-alt{margin-top:3px;padding:0;border:none;background:none;font-family:inherit;font-size:var(--fs-xs);color:var(--text-light);cursor:pointer;text-decoration:underline dotted}.vg-alt.is-cheaper{color:var(--warning);font-weight:600}.vg-quote-summary{padding:10px 0;border-bottom:1px solid var(--border-light);font-size:var(--fs-sm)}.vg-timeline{list-style:none;margin:0;padding:0;font-size:var(--fs-sm)}.vg-timeline li{display:flex;gap:12px;padding:6px 0 6px 12px;border-left:2px solid var(--border);color:var(--text-medium)}.vg-timeline-at{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-light);white-space:nowrap;min-width:130px}.vg-panel--wide{max-width:none}.vg-matrix-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--canvas);margin-bottom:12px}.vg-matrix{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.vg-matrix th,.vg-matrix td{padding:8px 10px;border-bottom:1px solid var(--border-light);text-align:left;vertical-align:top}.vg-matrix thead th{font-size:var(--fs-xs);color:var(--text-light);font-weight:600;border-bottom:1px solid var(--border);background:var(--canvas)}.vg-matrix-pos{position:sticky;left:0;background:var(--canvas);z-index:2;min-width:240px;max-width:320px;border-right:1px solid var(--border-light)}.vg-matrix tbody tr:hover .vg-matrix-pos,.vg-matrix tbody tr:hover{background:var(--well)}.vg-matrix tbody tr.is-awarded .vg-matrix-pos,.vg-matrix tbody tr.is-awarded{background:var(--success-light)}.vg-matrix-oz{display:block;padding:0;border:none;background:none;text-align:left;font-family:inherit;cursor:pointer;color:inherit}.vg-matrix-oz .vg-oz{display:inline-block;margin-right:6px}.vg-matrix-col{min-width:120px}.vg-matrix-name{padding:0;border:none;background:none;font-family:inherit;font-size:var(--fs-sm);font-weight:600;color:var(--text-dark);cursor:pointer;text-align:left}.vg-matrix-name:hover{color:var(--primary)}.vg-matrix-award{min-width:150px}.vg-cell{text-align:right;padding:4px 6px}.vg-cell--none{background:repeating-linear-gradient(-45deg,transparent,transparent 5px,var(--well) 5px,var(--well) 6px)}.vg-cell-mark{font-family:var(--font-mono)}.vg-cell-price{display:block;width:100%;padding:5px 8px;border:1px solid transparent;border-radius:var(--radius-sm);background:none;font-family:inherit;cursor:pointer;text-align:right;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.vg-cell-price:hover:not(:disabled){border-color:var(--primary);background:var(--primary-light)}.vg-cell-price:disabled{cursor:default}.vg-cell-price.is-awarded{background:var(--success);border-color:var(--success);color:#fff}.vg-cell-value{display:block;font-family:var(--font-mono);font-weight:600}.vg-cell-meta{display:block;font-size:var(--fs-xs);color:var(--text-light)}.vg-cell-price.is-best .vg-cell-meta{color:var(--success);font-weight:600}.vg-cell-price.is-awarded .vg-cell-meta{color:#ffffffd9}.vg-matrix tfoot td,.vg-matrix tfoot th{border-top:1px solid var(--border);border-bottom:none;font-size:var(--fs-sm)}.vg-focus{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}.vg-focus .vg-input:not(.vg-search){width:auto;min-width:150px}.vg-filter-menu{position:relative}.vg-filter-menu>.vg-filter{border-radius:var(--radius-sm)}.vg-filter-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:20;min-width:240px;padding:4px;background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.vg-filter-pop-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;border-radius:var(--radius-sm);background:none;font-family:inherit;font-size:var(--fs-sm);color:var(--text-medium);text-align:left;cursor:pointer}.vg-filter-pop-item:hover{background:var(--well)}.vg-filter-pop-item.is-active{background:var(--primary-light);color:var(--primary)}.vg-sheet{margin-bottom:18px}.vg-sheet-head{display:flex;align-items:baseline;gap:10px;width:100%;padding:8px 10px;border:none;border-bottom:1px solid var(--border);background:none;font-family:inherit;font-size:var(--fs-md);color:var(--text-dark);text-align:left;cursor:pointer}.vg-sheet-head:hover{background:var(--well)}.vg-sheet-caret{color:var(--text-muted);width:12px}.vg-sheet-sum{margin-left:auto;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--success)}.vg-sheet-actions{padding:8px 0}.vg-pricelist{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--canvas);overflow:hidden;margin-bottom:12px}.vg-pricelist-row{display:grid;grid-template-columns:minmax(240px,2fr) minmax(200px,3fr) minmax(120px,1fr);gap:12px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--border-light)}.vg-pricelist-row:last-child{border-bottom:none}.vg-pricelist-row.is-awarded{background:var(--success-light)}@media(max-width:900px){.vg-pricelist-row{grid-template-columns:1fr}}.vg-pricelist-pos{display:flex;flex-direction:column;gap:2px;padding:0;border:none;background:none;font-family:inherit;text-align:left;cursor:pointer;min-width:0}.vg-pricelist-pos:hover .vg-pos-text{color:var(--primary)}.vg-pricelist-offers{display:flex;gap:6px;flex-wrap:wrap}.vg-pricelist-award{text-align:right;font-size:var(--fs-sm)}.vg-offer-chip{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--canvas);font-family:inherit;font-size:var(--fs-xs);color:var(--text-medium);cursor:pointer}.vg-offer-chip strong{font-family:var(--font-mono);font-size:var(--fs-sm)}.vg-offer-chip:hover:not(:disabled){border-color:var(--primary);background:var(--primary-light)}.vg-offer-chip.is-best{border-color:var(--success)}.vg-offer-chip.is-awarded{background:var(--success);border-color:var(--success);color:#fff}.vg-offer-chip.is-awarded .vg-sub{color:#ffffffd9}.vg-list-pane--wide{max-height:none}.vg-list-pane--wide .vg-row{align-items:center}.vg-row-chevron{color:var(--text-muted);font-size:var(--fs-md);padding-left:8px;flex:none}.vg-drawer-oz{display:flex;align-items:baseline;gap:8px}.vg-drawer-nav{display:flex;gap:2px;flex:none}.vg-timeline--ok{border-left-color:var(--success)}.vg-timeline--warn{border-left-color:var(--warning)}.vg-timeline--bad{border-left-color:var(--danger)}.vg-start{display:flex;justify-content:center;padding:48px 0}.vg-start-card{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:620px;padding:44px 56px;background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md);text-align:center}.vg-start-card h2{margin:0;font-size:var(--fs-lg)}.vg-start-card p{margin:0;color:var(--text-light);line-height:1.55}.vg-start-count{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--success-light);border:1.5px solid var(--success);color:var(--success);font-family:var(--font-mono);font-size:var(--fs-md);font-weight:700}.vg-start-meta{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted)}.vg-review-progress{display:flex;align-items:center;gap:14px;margin-bottom:12px}.vg-progressline{width:220px;height:6px;border-radius:3px;background:var(--border-light);overflow:hidden}.vg-progressline-fill{display:block;height:100%;border-radius:3px;background:var(--accent, var(--primary))}.vg-kbd-hint{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);border:1px solid var(--border);border-radius:99px;padding:2px 9px}.vg-questions{border:1.5px solid var(--warning);border-radius:var(--radius-md);background:var(--canvas);padding:14px 18px;margin-bottom:14px;display:flex;flex-direction:column;gap:10px}.vg-questions-head{display:flex;align-items:center;gap:10px}.vg-question-row{display:flex;align-items:center;gap:14px;padding-top:10px;border-top:1px solid var(--border-light)}.vg-question-main{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.vg-question-text{font-size:var(--fs-sm);color:var(--warning)}.vg-question-actions{display:flex;align-items:center;gap:6px;flex:none}.vg-group{border-bottom:1px solid var(--border-light)}.vg-group:last-child{border-bottom:none}.vg-group-head{display:flex;align-items:center;gap:10px;padding:11px 12px;background:var(--well);position:sticky;top:0;z-index:2;flex-wrap:wrap;row-gap:6px}.vg-group-head strong{font-size:var(--fs-sm)}.vg-group-toggle{border:none;background:none;cursor:pointer;color:var(--text-light);font-size:var(--fs-xs);padding:2px 4px}.vg-group-meta{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted)}.vg-row-quick{display:flex;align-items:center;gap:6px;flex:none}.vg-row.is-kbd{outline:2px solid var(--accent, var(--primary));outline-offset:-2px}.vg-btn--ok{background:var(--success-light);border-color:var(--success);color:var(--success)}.vg-btn--ok:hover:not(:disabled){background:var(--success-light);filter:brightness(.97)}.vg-cards{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}.vg-card{background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 18px}.vg-card--warn{border:1.5px solid var(--warning)}.vg-card-row{display:flex;align-items:center;gap:14px}.vg-card-check{flex:none;display:flex}.vg-avatar{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;flex:none;background:var(--well);border:1px solid var(--border);color:var(--text-light);font-size:var(--fs-sm);font-weight:600}.vg-card-main{flex:1;min-width:0;cursor:pointer;display:flex;flex-direction:column;gap:5px}.vg-card-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.vg-card-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vg-chip-quiet{font-family:var(--font-mono);font-size:var(--fs-xs);background:var(--well);border-radius:99px;padding:2px 9px;color:var(--text-medium)}.vg-card-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:none}.vg-mono{font-family:var(--font-mono);font-size:var(--fs-xs)}.vg-suggest{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:8px}.vg-suggest-row{display:flex;align-items:center;gap:12px;padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);font-family:inherit;font-size:var(--fs-sm);cursor:pointer;text-align:left}.vg-suggest-row:hover{border-color:var(--primary)}.vg-suggest-row .vg-sub{flex:1}.vg-sendbar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md);margin-top:4px}.vg-mailbox{display:flex;align-items:center;gap:18px;padding:14px 18px;background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:14px}.vg-mailbox-id{display:flex;flex-direction:column;gap:2px;flex:none}.vg-label-tiny{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.vg-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px}.vg-tile{display:flex;flex-direction:column;gap:5px;padding:16px 18px;background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md)}.vg-tile--ok{border-color:var(--success)}.vg-tile-value{font-family:var(--font-mono);font-size:var(--fs-xl);font-weight:700}.vg-tile--ok .vg-tile-value{color:var(--success)}.vg-transferlist{background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 18px;display:flex;flex-direction:column;gap:8px}.vg-transferlist-head{padding-bottom:6px;border-bottom:1px solid var(--border-light)}.vg-transferrow{display:flex;align-items:center;gap:12px;padding:7px 0;border-bottom:1px solid var(--border-light)}.vg-transferrow:last-of-type{border-bottom:none}.vg-transferrow .vg-row-text{flex:1;min-width:0}.vg-done{display:flex;flex-direction:column;align-items:center;gap:12px;padding:44px 24px;background:var(--canvas);border:1.5px solid var(--success);border-radius:var(--radius-md);text-align:center}.vg-done h2{margin:0;font-size:var(--fs-xl)}.vg-done-check{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--success-light);border:2px solid var(--success);color:var(--success);font-size:26px;font-weight:700;font-family:var(--font-mono)}.vg-done-note{max-width:460px}.vg-recipients{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.vg-rcp-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 6px 2px 9px;border-radius:99px;background:var(--primary-light);color:var(--primary);font-size:var(--fs-xs);font-weight:600}.vg-rcp-x{border:none;background:none;color:inherit;cursor:pointer;font-size:13px;line-height:1;padding:0 2px;opacity:.7}.vg-rcp-x:hover{opacity:1}.vg-rcp-anchor{position:relative;display:inline-flex}.vg-rcp-pop{position:absolute;top:calc(100% + 6px);right:0;z-index:20;width:380px;background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:12px;display:flex;flex-direction:column;gap:6px;text-align:left;font-weight:400}.vg-rcp-pop-head{display:flex;flex-direction:column;gap:2px;padding-bottom:6px;border-bottom:1px solid var(--border-light)}.vg-rcp-pop-head strong{font-size:var(--fs-sm)}.vg-rcp-pop-foot{display:flex;justify-content:flex-end;padding-top:4px}.vg-rcp-opt{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas);font-family:inherit;font-size:var(--fs-sm);cursor:pointer;text-align:left}.vg-rcp-opt:hover{border-color:var(--primary)}.vg-rcp-opt.is-active{background:var(--primary-light);border-color:var(--primary)}.vg-rcp-opt .vg-sub{flex:1;min-width:0}.vg-rcp-name{font-weight:600;flex:none}.vg-rcp-box{width:16px;height:16px;flex:none;border-radius:4px;border:1.5px solid var(--border);background:var(--canvas);display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff}.vg-rcp-box.is-on{background:var(--primary);border-color:var(--primary)}.vg-row-rcp{font-size:var(--fs-xs);color:var(--text-medium)}.vg-row-rcp.is-missing{color:var(--warning);font-weight:500}.vg-preview{background:var(--canvas);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px 18px;display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.vg-preview-head{display:flex;flex-direction:column;gap:2px;padding-bottom:8px;border-bottom:1px solid var(--border-light)}.vg-preview-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border-light);flex-wrap:wrap}.vg-preview-row:last-of-type{border-bottom:none}.vg-preview .vg-sendbar{margin-top:6px}.vg-chip-btn{border:none;cursor:pointer;font-family:var(--font-mono)}.vg-chip-btn:hover{background:var(--primary-light);color:var(--primary)}.vg-card-positions{margin-top:10px;padding:8px 0 0 52px;border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:4px}.vg-card-pos{display:flex;align-items:center;gap:10px;font-size:var(--fs-sm)}.vg-card-pos .vg-row-text{flex:1;min-width:0}.vg-sentblock{margin:14px 0;display:flex;flex-direction:column;gap:4px}.vg-sentblock-head{display:flex;align-items:baseline;gap:10px;padding:4px 0 6px}.vg-sentrow{display:flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--well);font-family:inherit;font-size:var(--fs-sm);cursor:pointer;text-align:left;width:100%}.vg-sentrow:hover{border-color:var(--border);background:var(--canvas)}.vg-notice--row{display:flex;align-items:center;gap:14px;justify-content:space-between}.vo-container{padding:0}.vo-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.vo-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.vo-summary{font-size:.8125rem;color:var(--text-secondary)}.vo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1rem}.vo-card{background:var(--card-bg);border:1px solid var(--border);border-radius:10px;overflow:hidden}.vo-card-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;border-bottom:1px solid var(--border);background:var(--background)}.vo-card-vendor{font-weight:600;font-size:.9375rem;color:var(--text-primary)}.vo-card-badge{display:inline-flex;align-items:center;gap:.25rem;background:var(--primary-light);color:var(--primary);font-size:.8125rem;font-weight:600;padding:.2rem .6rem;border-radius:100px}.vo-card-body{padding:.75rem 1rem}.vo-product-group{margin-bottom:.75rem}.vo-product-group:last-child{margin-bottom:0}.vo-product-name{font-size:.8125rem;font-weight:600;color:var(--text-primary);margin-bottom:.375rem}.vo-item-list{list-style:none;margin:0;padding:0}.vo-item{display:flex;align-items:baseline;gap:.5rem;padding:.25rem 0;font-size:.8125rem;color:var(--text-secondary)}.vo-item-oz{font-weight:600;color:var(--text-primary);min-width:3rem;flex-shrink:0}.vo-item-desc{flex:1;min-width:0}.vo-item-qty{flex-shrink:0;font-variant-numeric:tabular-nums;color:var(--text-tertiary)}.vo-email-preview{padding:.75rem 1rem;border-top:1px solid var(--border);background:var(--background)}.vo-email-text{margin:0;font-family:inherit;font-size:.8125rem;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;word-wrap:break-word}.vo-card-footer{padding:.625rem 1rem;border-top:1px solid var(--border)}.vo-card-actions{display:flex;gap:.5rem}.vo-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;border:none;border-radius:6px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s}.vo-action-btn--secondary{background:var(--background);color:var(--text-secondary);border:1px solid var(--border)}.vo-action-btn--secondary:hover{background:var(--border);color:var(--text-primary)}.vo-action-btn--active{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.vo-action-btn--primary{background:var(--primary);color:#fff}.vo-action-btn--primary:hover{background:var(--primary-hover)}.vo-action-btn--copied,.vo-action-btn--copied:hover{background:var(--success)}.vo-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--text-tertiary)}.vo-empty-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.4}.vo-empty p{margin:0;font-size:.9375rem;max-width:400px;line-height:1.5}.vo-loading{display:flex;align-items:center;justify-content:center;padding:3rem;color:var(--text-tertiary);font-size:.9375rem}.am-container{padding:0}.am-summary-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem}.am-summary-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border-radius:100px;font-size:.85rem;font-weight:600}.am-summary-badge--total{background:var(--primary-light);color:var(--primary)}.am-summary-badge--accepted{background:#dcfce7;color:#166534}.am-summary-badge--annotated{background:#fef3c7;color:#92400e}.am-summary-badge--rejected{background:#fee2e2;color:#991b1b}.am-summary-badge--unknown{background:var(--background);color:var(--text-tertiary);border:1px solid var(--border)}.am-summary-values{display:flex;gap:1.25rem;font-size:.8125rem;color:var(--text-secondary);margin-bottom:1rem}.am-summary-values strong{color:var(--text-primary)}.am-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.am-search{flex:1;min-width:200px;padding:.5rem .75rem;border:1px solid var(--border);border-radius:8px;font-size:.8125rem;background:var(--card-bg);color:var(--text-primary);outline:none;transition:border-color .15s}.am-search:focus{border-color:var(--primary)}.am-filter-select{padding:.5rem .75rem;border:1px solid var(--border);border-radius:8px;font-size:.8125rem;background:var(--card-bg);color:var(--text-primary);cursor:pointer}.am-actions{display:flex;gap:.5rem;margin-left:auto}.am-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;border:1px solid var(--border);border-radius:8px;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s;background:var(--card-bg);color:var(--text-primary)}.am-btn:hover{background:var(--background);border-color:var(--primary)}.am-btn--danger{color:var(--danger, #ef4444)}.am-btn--danger:hover{background:#fee2e2;border-color:var(--danger, #ef4444)}.am-btn--invoice{background:var(--primary);color:#fff;border-color:var(--primary)}.am-btn--invoice:hover{opacity:.9;background:var(--primary);border-color:var(--primary)}.am-btn--invoice:disabled{opacity:.6;cursor:not-allowed}.am-table-wrap{overflow-x:auto}.am-table{width:100%;border-collapse:collapse;font-size:.8125rem}.am-table th{text-align:left;padding:.6rem .75rem;font-weight:600;color:var(--text-secondary);border-bottom:2px solid var(--border);white-space:nowrap;font-size:.8125rem;text-transform:uppercase;letter-spacing:.03em}.am-table td{padding:.55rem .75rem;border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:top}.am-table tbody tr:hover{background:var(--background)}.am-row--clickable{cursor:pointer}.am-col-oz{font-weight:600;white-space:nowrap;min-width:5rem}.am-col-text{max-width:320px}.am-col-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.am-col-status{white-space:nowrap}.am-status{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .55rem;border-radius:100px;font-size:.8125rem;font-weight:600}.am-status--accepted{background:#dcfce7;color:#166534}.am-status--annotated{background:#fef3c7;color:#92400e}.am-status--rejected{background:#fee2e2;color:#991b1b}.am-status--unknown{background:var(--background);color:var(--text-tertiary);border:1px solid var(--border)}.am-status--approved{background:#dcfce7;color:#166534}.am-status--overpaid{background:#fef3c7;color:#92400e}.am-status--unmatched{background:var(--background);color:var(--text-tertiary);border:1px solid var(--border)}.am-status--review{background:#dbeafe;color:#1e40af}.am-confidence{display:inline-block;margin-left:.4rem;font-size:.78rem;color:var(--text-tertiary);font-weight:500}.am-expand-hint{display:inline-block;margin-left:.35rem;font-size:.78rem;color:var(--text-tertiary)}.am-detail-row td{padding:0 .75rem .75rem;border-bottom:1px solid var(--border);background:var(--background)}.am-detail-row:hover{background:var(--background)!important}.am-detail{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem}.am-detail-label{font-weight:600;color:var(--text-tertiary);margin-right:.35rem;font-size:.8125rem;text-transform:uppercase;letter-spacing:.02em}.am-detail-note{color:var(--text-secondary);font-style:italic;line-height:1.5}.am-detail-annotation{display:flex;flex-direction:column;gap:.35rem}.am-detail-annotation-text{color:var(--text-secondary);line-height:1.4}.am-changed-fields{display:flex;flex-direction:column;gap:.25rem}.am-changed-field{display:flex;align-items:center;gap:.4rem;padding:.3rem .6rem;background:var(--card-bg);border:1px solid var(--border);border-radius:6px;font-size:.775rem}.am-cf-field{font-weight:600;color:var(--text-primary);text-transform:capitalize}.am-cf-old{color:#991b1b;text-decoration:line-through;font-variant-numeric:tabular-nums}.am-cf-arrow{color:var(--text-tertiary)}.am-cf-new{color:#166534;font-weight:600;font-variant-numeric:tabular-nums}.am-cf-evidence{margin-left:auto;color:var(--text-tertiary);font-size:.725rem;max-width:40%;text-align:right}.am-detail-evidence{display:flex;flex-direction:column;gap:.3rem}.am-signals{display:flex;flex-wrap:wrap;gap:.35rem}.am-signal{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;background:var(--card-bg);border:1px solid var(--border);border-radius:4px;font-size:.725rem}.am-signal-type{color:var(--text-tertiary);font-weight:600;font-size:.675rem;text-transform:uppercase;letter-spacing:.02em}.am-signal-value{color:var(--text-secondary)}.am-decision-rule{font-size:.725rem;color:var(--text-tertiary);font-family:monospace;padding:.2rem .5rem;background:var(--card-bg);border-radius:4px;border:1px solid var(--border);width:fit-content}.am-detail-page{font-size:.8125rem;color:var(--text-tertiary)}.am-page-viewer{margin-top:.75rem}.am-page-image-wrap{position:relative;display:inline-block;max-width:100%;line-height:0}.am-page-image{max-width:100%;max-height:70vh;border:1px solid var(--border);border-radius:6px}.am-bbox{position:absolute;pointer-events:none;box-sizing:border-box}.am-bbox--position{border:2px dashed rgba(59,130,246,.7);background:#3b82f60f;border-radius:3px}.am-bbox--signal{border-radius:2px;pointer-events:auto;cursor:help;transition:opacity .15s}.am-bbox--signal:hover{opacity:.8;outline:1px solid rgba(0,0,0,.3)}.am-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--text-tertiary)}.am-empty p{margin:0;font-size:.9375rem;max-width:400px;line-height:1.5}.am-loading{display:flex;align-items:center;justify-content:center;padding:3rem;color:var(--text-tertiary);font-size:.9375rem}.am-error{padding:.75rem 1rem;margin-bottom:1rem;background:#fee2e2;color:#991b1b;border-radius:8px;font-size:.8125rem}.am-success{padding:.75rem 1rem;margin-bottom:1rem;background:#dcfce7;color:#166534;border-radius:8px;font-size:.8125rem}.am-inv-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem;margin-bottom:1rem}.am-inv-card{padding:1rem 1.15rem;border-radius:10px;border:1px solid var(--border);background:var(--card-bg)}.am-inv-card-label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin-bottom:.35rem}.am-inv-card-value{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}.am-inv-card-count{font-size:.725rem;color:var(--text-tertiary);margin-top:.2rem}.am-inv-card--invoice{border-left:3px solid #3b82f6}.am-inv-card--invoice .am-inv-card-value{color:#1d4ed8}.am-inv-card--approved{border-left:3px solid #22c55e}.am-inv-card--approved .am-inv-card-value{color:#166534}.am-inv-card--rejected{border-left:3px solid #ef4444}.am-inv-card--rejected .am-inv-card-value{color:#991b1b}.am-inv-card--overpaid{border-left:3px solid #f59e0b}.am-inv-card--overpaid .am-inv-card-value{color:#92400e}.am-inv-card--review{border-left:3px solid #94a3b8}.am-inv-card--review .am-inv-card-value{color:var(--text-secondary)}.am-inv-status-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.am-cmp-cell{display:flex;flex-direction:column;gap:.1rem;text-align:right}.am-cmp-invoice{font-weight:600;font-variant-numeric:tabular-nums}.am-cmp-aufmass{font-size:.78rem;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.am-cmp-discrepancy .am-cmp-invoice{color:#991b1b}.am-cmp-discrepancy{padding:.15rem .3rem;border-radius:4px;background:#ef44440f}.am-cmp-match .am-cmp-invoice{color:#166534}.am-inv-discrepancy-list{display:flex;flex-direction:column;gap:.35rem}.am-inv-discrepancy-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .65rem;background:var(--card-bg);border:1px solid var(--border);border-radius:6px;font-size:.775rem;flex-wrap:wrap}.am-inv-disc-field{font-weight:600;color:var(--text-primary);min-width:80px}.am-inv-disc-values{display:flex;align-items:center;gap:.4rem;flex:1}.am-inv-disc-invoice{color:#991b1b;font-variant-numeric:tabular-nums}.am-inv-disc-aufmass{color:#166534;font-weight:600;font-variant-numeric:tabular-nums}.am-inv-disc-pct{margin-left:auto;font-weight:700;font-size:.8125rem;font-variant-numeric:tabular-nums;padding:.1rem .4rem;border-radius:4px}.am-inv-disc-pct--over{color:#991b1b;background:#fee2e2}.am-inv-disc-pct--under{color:#166534;background:#dcfce7}.am-inv-correction-chain{display:flex;flex-direction:column;gap:.25rem}.am-inv-amounts{display:flex;gap:1.25rem;font-size:.85rem;padding:.4rem .65rem;background:var(--card-bg);border:1px solid var(--border);border-radius:6px}.am-inv-amount-approved{color:#166534;font-weight:600}.am-inv-amount-overpaid{color:#991b1b;font-weight:600}.am-inv-pages-sidebyside{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:.75rem}@media(max-width:900px){.am-inv-pages-sidebyside{grid-template-columns:1fr}}.am-inv-page-panel{display:flex;flex-direction:column;gap:.35rem}.am-inv-page-panel-label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);padding:.25rem .5rem;background:var(--card-bg);border:1px solid var(--border);border-radius:6px 6px 0 0;width:fit-content}.am-bbox--invoice{border-color:#f97316b3;background:#f973160f}.am-page-strip{max-height:70vh;overflow-y:auto;border:1px solid var(--border);border-radius:6px;scroll-behavior:smooth}.am-page-strip .am-page-image-wrap{position:relative;line-height:0}.am-page-strip .am-page-image{width:100%;display:block;border:none;border-radius:0;max-height:none}.am-page-strip .am-page-image-wrap+.am-page-image-wrap{border-top:2px dashed var(--border)}.am-inv-page-panel .am-page-strip{border-radius:0 6px 6px}.am-page-strip-container{display:flex;flex-direction:column}.am-page-strip-toolbar{display:flex;align-items:center;gap:.25rem;padding:.3rem .5rem;background:var(--card-bg);border:1px solid var(--border);border-bottom:none;border-radius:6px 6px 0 0;align-self:flex-end}.am-page-strip-container>.am-page-strip{border-radius:0 0 6px 6px}.am-zoom-btn{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border:1px solid var(--border);border-radius:4px;background:var(--card-bg);color:var(--text-primary);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .15s;line-height:1}.am-zoom-btn:hover:not(:disabled){background:var(--background);border-color:var(--primary);color:var(--primary)}.am-zoom-btn:disabled{opacity:.35;cursor:not-allowed}.am-zoom-label{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;padding:0 .3rem;height:1.6rem;border:none;background:transparent;color:var(--text-secondary);font-size:.78rem;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer;transition:color .15s}.am-zoom-label:hover{color:var(--primary)}.am-page-strip-inner{min-width:100%;transition:width .15s ease}.am-inv-page-panel .am-page-strip-toolbar{border-radius:0 6px 0 0}.am-inv-page-panel .am-page-strip-container>.am-page-strip{border-radius:0 0 6px 6px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sidebar{display:flex;flex-direction:column;flex-shrink:0;height:100vh;position:sticky;top:0;background:var(--canvas)}.sidebar-logo-header{padding:1.25rem 1.5rem;display:flex;align-items:center;background:var(--card-bg);border-bottom:1px solid var(--border);flex-shrink:0}.sidebar-logo-header img{height:44px;width:auto;display:block;object-fit:contain}.sidebar-body{display:flex;flex-direction:row;flex:1;min-height:0}.rail{width:56px;background:var(--ink);display:flex;flex-direction:column;align-items:center;padding:1rem 0;flex-shrink:0}.rail-nav{display:flex;flex-direction:column;gap:.25rem}.rail-icon{position:relative;width:40px;height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#ffffff8c;background:transparent;border:none;cursor:pointer;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.rail-icon:hover{background:#ffffff14;color:#fff}.rail-icon--active{background:#ffffff1a;color:#fff}.rail-icon--active:before{content:"";position:absolute;left:-8px;top:8px;bottom:8px;width:2px;border-radius:2px;background:var(--gradient-brand-vertical)}.rail-bottom{margin-top:auto;padding-bottom:.5rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.rail-language-toggle{position:relative}.rail-language-toggle:after{content:"";position:absolute;bottom:-.25rem;left:50%;transform:translate(-50%);width:24px;height:1px;background:#fff3}.flag-emoji{font-size:1.5rem;line-height:1;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));transition:transform .15s ease}.rail-language-toggle:hover .flag-emoji{transform:scale(1.1)}.rail-avatar{width:32px;height:32px;border-radius:50%;background:var(--gradient-brand);color:#fff;font-weight:700;font-size:.8125rem;display:flex;align-items:center;justify-content:center}.sidebar-panel{width:240px;background:var(--card-bg);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.sidebar-new-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.7rem 1rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.9375rem;font-weight:600;cursor:pointer;transition:background var(--t-fast) var(--ease)}.sidebar-new-btn:hover{background:var(--primary-hover)}.sidebar-top{padding:1.25rem 1.25rem 1rem;position:relative}.sidebar-new-menu{position:absolute;top:calc(100% - .25rem);left:1.25rem;right:1.25rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:50;overflow:hidden}.sidebar-new-menu-item{display:flex;align-items:center;gap:.6rem;width:100%;padding:.65rem .85rem;background:none;border:none;font-family:var(--font-sans);font-size:.9rem;color:var(--text-dark);cursor:pointer;transition:background .12s;text-align:left}.sidebar-new-menu-item:hover{background:var(--primary-light)}.sidebar-new-menu-item+.sidebar-new-menu-item{border-top:1px solid var(--border)}.sidebar-new-name-input{width:100%;padding:.65rem .85rem;border:none;font-family:var(--font-sans);font-size:.9rem;color:var(--text-dark);background:transparent;outline:none}.sidebar-new-name-input::placeholder{color:var(--text-muted)}.sidebar-section-label{padding:1rem 1.5rem .5rem;font-size:.75rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.sidebar-history{flex:1;overflow-y:auto;padding:.25rem .75rem;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.sidebar-history::-webkit-scrollbar{width:4px}.sidebar-history::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.sidebar-empty{padding:2rem 1rem;text-align:center}.sidebar-empty p{color:var(--text-light);font-size:.9rem}.sidebar-empty-hint{font-size:.84rem!important;color:var(--text-muted)!important;margin-top:.35rem}.sidebar-item{display:flex;align-items:center;gap:.7rem;width:100%;padding:.65rem .85rem;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease;text-align:left;font-family:var(--font-sans);margin-bottom:2px}.sidebar-item:hover:not(:disabled){background:var(--background)}.sidebar-item--active{background:var(--primary-light)!important;border-color:#0052cc26}.sidebar-item--active .sidebar-item-name{color:var(--primary);font-weight:600}.sidebar-item-icon{display:flex;flex-shrink:0;color:var(--text-muted)}.sidebar-item--active .sidebar-item-icon{color:var(--primary)}.sidebar-item-spinner{width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.sidebar-item-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.sidebar-item-name{font-size:.9rem;font-weight:500;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-item-meta{font-size:.78rem;color:var(--text-muted)}.sidebar-item-badge{flex-shrink:0;font-size:.75rem;font-weight:600;padding:.15rem .45rem;border-radius:100px}.sidebar-item-badge--processing{background:var(--warning-light);color:#92400e}.sidebar-item-add-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .15s,background .15s,color .15s}.sidebar-item:hover .sidebar-item-add-btn{opacity:1}.sidebar-item-add-btn:hover{background:var(--primary);color:#fff}.sidebar-item-delete-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .15s,background .15s,color .15s}.sidebar-item:hover .sidebar-item-delete-btn{opacity:1}.sidebar-item-delete-btn:hover{background:var(--danger, #e53e3e);color:#fff}.sidebar-item--disabled{opacity:.65}.sidebar-item--disabled:hover{opacity:1;cursor:default}.sidebar-bottom{margin-top:auto;padding:0 .75rem 1rem}.sidebar-divider{height:1px;background:var(--border);margin:0 .25rem .65rem}.sidebar-profile{display:flex;align-items:center;gap:.65rem;width:100%;padding:.6rem .85rem;background:transparent;border:none;border-radius:var(--radius-md);font-family:var(--font-sans);text-align:left}.sidebar-avatar{width:32px;height:32px;border-radius:50%;background:var(--gradient-brand);color:#fff;font-weight:700;font-size:.85rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-profile-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.sidebar-profile-name{font-size:.9rem;font-weight:600;color:var(--text-dark)}.sidebar-profile-role{font-size:.78rem;color:var(--text-muted)}.project-header{background:var(--card-bg);border-bottom:1px solid var(--border);padding:1.5rem 2.5rem 1.25rem}.project-header-content{max-width:1680px;margin:0;display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem}.project-title{font-size:var(--fs-2xl);font-weight:700;color:var(--text-dark);letter-spacing:-.025em;margin-bottom:.35rem}.project-meta{display:flex;gap:1.25rem;margin-bottom:.75rem}.meta-item{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;color:var(--text-light)}.project-badges{display:flex;flex-wrap:wrap;gap:.5rem}.project-header-actions{display:flex;gap:.5rem;flex-shrink:0;align-items:flex-start;padding-top:.2rem}.project-header-actions .btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.app-layout{display:flex;min-height:100vh}.app-main{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--canvas)}.global-error{background:var(--danger-light);color:var(--danger);padding:.75rem 1.5rem;text-align:center;font-weight:500}.welcome-screen{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative}.welcome-screen:before{content:"";position:absolute;top:20%;right:10%;width:400px;height:400px;background:radial-gradient(ellipse at center,rgba(0,82,204,.04) 0%,transparent 70%);pointer-events:none}.welcome-content{text-align:center;max-width:480px;position:relative}.welcome-icon{color:var(--primary);opacity:.25;margin-bottom:1.5rem}.welcome-title{font-size:1.75rem;font-weight:800;color:var(--text-dark);letter-spacing:-.03em;margin-bottom:.75rem}.welcome-subtitle{color:var(--text-light);font-size:.95rem;line-height:1.65;margin-bottom:2rem}.welcome-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:var(--gradient-brand);color:#fff;border:none;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:var(--shadow-brand)}.welcome-cta:hover{box-shadow:0 6px 24px -2px #0052cc66;transform:translateY(-2px)}.welcome-features{display:flex;justify-content:center;gap:2rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--border)}.welcome-feature{display:flex;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.875rem;font-weight:500}.welcome-feature svg{color:var(--primary);opacity:.6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;height:36px;padding:0 1rem;border:none;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--fs-base);font-weight:500;cursor:pointer;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease);white-space:nowrap}.btn.btn--sm{height:30px;padding:0 .75rem;font-size:var(--fs-sm)}.btn.btn--xs{height:26px;padding:0 .55rem;font-size:var(--fs-xs)}.btn--primary{background:var(--primary);color:#fff}.btn--primary:hover{background:var(--primary-hover)}.btn--secondary{background:var(--card-bg);color:var(--text-medium);border:1px solid var(--border)}.btn--secondary:hover{background:var(--well);border-color:var(--primary);color:var(--primary)}.btn--ghost{background:transparent;color:var(--text-medium)}.btn--ghost:hover{background:var(--primary-light);color:var(--primary)}.btn--danger{background:#dc2626;color:#fff;border-color:#dc2626}.btn--danger:hover{background:#b91c1c}.btn:disabled{opacity:.55;cursor:default}.btn.is-busy{pointer-events:none;opacity:.85}.btn.is-busy:before{content:"";width:13px;height:13px;flex:0 0 auto;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite}.dashboard-content{max-width:1680px;margin:0;padding:2rem 2.5rem 3rem}.dashboard-tabs{display:flex;gap:.25rem;background:var(--card-bg);border-bottom:1px solid var(--border);padding:0 2.5rem;max-width:100%;overflow-x:auto}.dashboard-tab{position:relative;display:inline-flex;align-items:center;gap:.45rem;height:44px;padding:0 1rem;border:none;background:none;font-family:var(--font-sans);font-size:var(--fs-base);font-weight:500;color:var(--text-light);cursor:pointer;transition:color var(--t-fast) var(--ease),background var(--t-fast) var(--ease);white-space:nowrap}.dashboard-tab:hover{color:var(--text-dark);background:var(--well)}.dashboard-tab--active{color:var(--text-dark);font-weight:600}.dashboard-tab--active:after{content:"";position:absolute;left:.5rem;right:.5rem;bottom:0;height:2px;border-radius:2px 2px 0 0;background:var(--gradient-brand)}.dashboard-tab-chip{font-size:.71875rem;font-weight:600;line-height:1;padding:.2rem .4rem;border-radius:999px;background:var(--well);color:var(--text-light);border:1px solid var(--border)}.dashboard-tab--active .dashboard-tab-chip{background:var(--primary-light);color:var(--primary);border-color:transparent}@media(max-width:1024px){.kpi-strip{grid-template-columns:repeat(3,1fr)}.card-grid{grid-template-columns:1fr}.project-header-content{flex-direction:column}.project-header-actions{flex-wrap:wrap}.gng-grid{grid-template-columns:1fr}}@media(max-width:640px){.kpi-strip{grid-template-columns:repeat(2,1fr)}.dashboard-content,.project-header{padding:1rem}.insights-grid{grid-template-columns:1fr}}.modal-overlay{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;animation:fadeIn .2s ease}.modal-panel{background:var(--card-bg);border-radius:var(--radius-xl);width:100%;max-width:520px;box-shadow:0 24px 64px -12px #00000040;animation:modalSlideIn .25s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.modal-title{font-size:1.1rem;font-weight:700;color:var(--text-dark);letter-spacing:-.01em}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .15s}.modal-close:hover{background:var(--background);color:var(--text-dark)}.modal-close:disabled{opacity:.3;cursor:not-allowed}.modal-body{padding:1.5rem}.modal-drop-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:2.5rem 1.5rem;text-align:center;transition:all .25s ease;cursor:pointer}.modal-drop-zone:hover{border-color:var(--primary);background:var(--primary-light)}.modal-drop-zone--active{border-color:var(--primary);background:var(--primary-light);box-shadow:0 0 0 4px #0052cc1a}.modal-drop-zone--uploading{pointer-events:none;opacity:.8}.modal-drop-content{display:flex;flex-direction:column;align-items:center;gap:.65rem}.modal-drop-icon{color:var(--text-muted);transition:color .3s}.modal-drop-zone:hover .modal-drop-icon,.modal-drop-zone--active .modal-drop-icon{color:var(--primary)}.modal-drop-text{font-size:.95rem;font-weight:500;color:var(--text-medium)}.modal-drop-hint{font-size:.85rem;color:var(--text-muted)}.modal-browse-btn{display:inline-flex;align-items:center;padding:.6rem 1.5rem;background:var(--gradient-brand);color:#fff;border-radius:var(--radius-md);font-weight:600;font-size:.9rem;cursor:pointer;transition:all .25s ease;box-shadow:var(--shadow-brand);border:none}.modal-browse-btn:hover{box-shadow:0 6px 24px -2px #0052cc66;transform:translateY(-1px)}.modal-drop-filetypes{font-size:.8125rem;color:var(--text-muted);max-width:320px}.modal-error{margin-top:.75rem;padding:.65rem;background:var(--danger-light);color:var(--danger);border-radius:var(--radius-md);text-align:center;font-size:.9rem;font-weight:500}.upload-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.processing-screen{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}.processing-screen:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(ellipse at center,rgba(0,82,204,.04) 0%,transparent 70%);pointer-events:none}.processing-container{width:100%;max-width:480px;text-align:center;position:relative;z-index:1}.processing-logo{display:none}.processing-container h2{font-size:1.35rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-dark)}.processing-spinner-large{width:56px;height:56px;border:3px solid var(--border);border-top-color:var(--accent);border-right-color:var(--primary);border-radius:50%;animation:spin .9s linear infinite;margin:0 auto 1.5rem}.progress-bar-container{width:100%;height:4px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:2rem}.progress-bar{height:100%;background:var(--gradient-brand);border-radius:2px;transition:width .4s ease}.processing-steps{text-align:left;display:flex;flex-direction:column;gap:.5rem}.processing-step{display:flex;align-items:center;gap:.75rem;padding:.4rem 0;font-size:.9rem}.step--done{color:var(--success)}.step--active{color:var(--text-dark);font-weight:500}.step--pending{color:var(--text-muted)}.step-indicator{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.step-spinner{width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}.step-dot{width:6px;height:6px;background:var(--border);border-radius:50%}.preview-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:1.5rem;animation:fadeIn .2s ease}.preview-modal{background:var(--card-bg);border-radius:var(--radius-xl);width:100%;max-width:1200px;height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 64px -12px #0000004d;animation:modalSlideIn .25s ease}.preview-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;border-bottom:1px solid var(--border);flex-shrink:0}.preview-header-info{display:flex;align-items:center;gap:.75rem;min-width:0}.preview-title{font-size:1rem;font-weight:700;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-doc-type{font-size:.8125rem;color:var(--text-light);white-space:nowrap}.preview-header-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.preview-body{flex:1;display:flex;min-height:0;overflow:hidden}.preview-document{flex:1;min-width:0;overflow-y:auto;background:#e5e7eb;padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;position:relative}.preview-form-panel{width:340px;flex-shrink:0;border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.preview-form-title{display:flex;align-items:center;gap:.5rem;padding:.85rem 1rem;font-size:.88rem;font-weight:600;color:var(--text-dark);border-bottom:1px solid var(--border);flex-shrink:0}.preview-form-count{margin-left:auto;font-size:.78rem;font-weight:600;padding:.15rem .5rem;background:var(--background);border-radius:100px;color:var(--text-light)}.preview-form-fields{flex:1;overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.preview-form-field{padding:.65rem .75rem;border-radius:var(--radius-md);border:1px solid var(--border-light);background:var(--card-bg);transition:opacity .15s,border-color .15s}.preview-form-field:hover{border-color:var(--border)}.preview-form-field--disabled{opacity:.4}.preview-form-field-header{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.4rem}.preview-field-checkbox{accent-color:var(--primary);width:14px;height:14px;margin-top:2px;flex-shrink:0;cursor:pointer}.preview-field-label{flex:1;min-width:0}.preview-field-name{font-size:.85rem;font-weight:600;color:var(--text-dark);display:block;line-height:1.3}.preview-field-desc{font-size:.78rem;color:var(--text-light);display:block;line-height:1.3}.preview-field-input{width:100%;padding:.4rem .6rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.875rem;outline:none;transition:border-color .2s;box-sizing:border-box}.preview-field-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1f}.preview-field-checkbox-value{display:flex;align-items:center;gap:.4rem;font-size:.875rem;color:var(--text-medium);cursor:pointer;padding:.2rem 0}.preview-field-checkbox-value input{accent-color:var(--primary);width:15px;height:15px}.preview-field-actions{display:flex;align-items:center;gap:.4rem;margin-top:.3rem;flex-wrap:wrap}.preview-field-match-hint{font-size:.78rem;color:var(--primary);opacity:.7}.preview-field-positioned-hint{display:inline-flex;align-items:center;gap:.2rem;font-size:.78rem;color:var(--success, #059669);opacity:.7}.preview-field-delete{display:flex;align-items:center;justify-content:center;width:20px;height:20px;margin-left:auto;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .15s;flex-shrink:0}.preview-field-delete:hover{background:var(--danger-light);color:var(--danger)}.preview-form-field--placing{border-color:var(--primary)!important;box-shadow:0 0 0 2px #0052cc26}.btn--xs{padding:.2rem .5rem;font-size:.78rem}.btn--outline{background:transparent;border:1px solid var(--border-color);color:var(--text-muted)}.btn--outline:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.match-review-btn{margin-left:auto}.btn--active{background:var(--primary-light)!important;color:var(--primary)!important;border-color:var(--primary)!important}.pdf-viewer-container{display:flex;flex-direction:column;align-items:center;gap:.75rem;width:100%}.pdf-page{position:relative;background:#fff;box-shadow:0 2px 8px #0000001f;border-radius:2px}.pdf-text-overlay,.pdf-annotation-overlay{position:absolute;top:0;left:0}.pdf-field-highlight{position:absolute;background:#3b82f61f;border-bottom:2px solid rgba(59,130,246,.5);border-radius:1px;cursor:grab;transition:background .2s,border-color .2s,box-shadow .15s;overflow:hidden;display:flex;align-items:center;padding:0 3px;font-family:Arial,Helvetica,sans-serif;font-size:10px;line-height:1.2;color:#3b82f666;white-space:nowrap;-webkit-user-select:none;user-select:none}.pdf-field-highlight:hover{border-color:#3b82f6cc;box-shadow:0 0 0 1px #3b82f64d}.pdf-field-highlight--filled{background:#22c55e26;border-bottom-color:#22c55e99;color:#15803d;font-weight:600}.pdf-field-highlight--filled:hover{border-color:#22c55ee6;box-shadow:0 0 0 1px #22c55e4d}.pdf-field-highlight--dragging{cursor:grabbing;box-shadow:0 2px 8px #0003;opacity:.85;z-index:10}.pdf-field-highlight--manual{border-style:dashed;border-width:1px;border-bottom-width:2px;border-color:#6366f199;background:#6366f11a}.pdf-field-highlight--manual.pdf-field-highlight--filled{border-color:#6366f199;background:#6366f11f;color:#4338ca}.pdf-add-mode .pdf-viewer-container,.pdf-add-mode .pdf-page{cursor:crosshair}.pdf-add-mode .pdf-page canvas{cursor:crosshair}.pdf-field-picker{background:var(--card-bg, #fff);border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-lg, 8px);box-shadow:0 8px 24px #00000026;min-width:220px;max-width:280px;overflow:hidden;animation:fadeIn .15s ease}.pdf-field-picker-title{padding:.6rem .85rem;font-size:.8125rem;font-weight:600;color:var(--text-light, #64748b);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-light, #f1f5f9)}.pdf-field-picker-list{max-height:240px;overflow-y:auto;padding:.25rem}.pdf-field-picker-empty{padding:1rem;text-align:center;font-size:.875rem;color:var(--text-muted, #94a3b8)}.pdf-field-picker-item{display:flex;flex-direction:column;gap:.1rem;width:100%;padding:.5rem .65rem;background:transparent;border:none;border-radius:var(--radius-sm, 4px);cursor:pointer;text-align:left;font-family:var(--font-sans, system-ui);transition:background .1s}.pdf-field-picker-item:hover{background:var(--primary-light, #eff6ff)}.pdf-field-picker-name{font-size:.875rem;font-weight:600;color:var(--text-dark, #1e293b)}.pdf-field-picker-value{font-size:.78rem;color:var(--text-light, #64748b);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pdf-field-picker-custom{display:flex;gap:.35rem;padding:.5rem .6rem;border-bottom:1px solid var(--border-light, #f1f5f9)}.pdf-field-picker-custom-input{flex:1;min-width:0;padding:.35rem .5rem;border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-sm, 4px);font-family:var(--font-sans, system-ui);font-size:.85rem;outline:none;transition:border-color .2s}.pdf-field-picker-custom-input:focus{border-color:var(--primary, #0052CC);box-shadow:0 0 0 2px #0052cc1f}.pdf-field-picker-divider{padding:.25rem .6rem;text-align:center;font-size:.75rem;font-weight:500;color:var(--text-muted, #94a3b8);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-light, #f1f5f9)}.pdf-field-picker-divider span{background:var(--card-bg, #fff);padding:0 .4rem}.docx-viewer-container{width:100%;max-width:700px}.docx-rendered{background:#fff;padding:2rem 2.5rem;box-shadow:0 2px 8px #0000001f;border-radius:2px;font-family:var(--font-sans);font-size:.9rem;line-height:1.6;color:var(--text-dark);min-height:400px}.docx-rendered h1{font-size:1.4rem;margin:1rem 0 .5rem}.docx-rendered h2{font-size:1.2rem;margin:.8rem 0 .4rem}.docx-rendered h3{font-size:1rem;margin:.6rem 0 .3rem}.docx-rendered p{margin:.3rem 0}.docx-rendered table{border-collapse:collapse;width:100%;margin:.5rem 0}.docx-rendered td,.docx-rendered th{border:1px solid var(--border);padding:.4rem .6rem;font-size:.9rem}.docx-rendered ul,.docx-rendered ol{padding-left:1.5rem;margin:.3rem 0}.preview-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:#e5e7eb;color:var(--text-light);font-size:.9rem}.preview-loading-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.preview-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3rem 1rem;color:var(--text-light);text-align:center;min-height:300px}.preview-placeholder svg{opacity:.4}.preview-placeholder p{font-size:.9rem}@media(max-width:900px){.preview-body{flex-direction:column}.preview-form-panel{width:100%;max-height:40vh;border-left:none;border-top:1px solid var(--border)}.preview-document{min-height:200px}}.kpi-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:.75rem;margin-bottom:1.5rem}.kpi-tile{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem;display:flex;align-items:flex-start;gap:.75rem;transition:all .2s ease}.kpi-content{min-width:0}.kpi-tile:hover{box-shadow:var(--shadow-md);border-color:var(--border-light)}.kpi-icon{color:var(--primary);flex-shrink:0;margin-top:.1rem}.kpi--warning .kpi-icon{color:var(--warning)}.kpi--urgent .kpi-icon{color:var(--danger)}.kpi-value{font-size:1.35rem;font-weight:600;color:var(--text-dark);line-height:1.2;letter-spacing:-.02em;overflow-wrap:break-word}.kpi-label{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-light);margin-top:.25rem;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.kpi-subtitle{font-size:.8125rem;font-weight:600;color:var(--primary);margin-top:.1rem}.kpi--urgent .kpi-subtitle,.kpi--urgent .kpi-value{color:var(--danger)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem}.card-title{font-size:.95rem;font-weight:600;color:var(--text-dark);margin-bottom:1rem}.card-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.card-title-row .card-title{margin-bottom:0}.card-body{display:flex;flex-direction:column;gap:.65rem}.info-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.info-label{font-size:.85rem;color:var(--text-light);white-space:nowrap;flex-shrink:0}.info-value{font-size:.9rem;color:var(--text-dark);font-weight:500;text-align:right}.info-value.highlight{color:var(--primary)}.info-value.text-urgent{color:var(--danger);font-weight:600}.days-left{font-size:1rem}.chip-group{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.chip{display:inline-flex;padding:.15rem .5rem;background:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;color:var(--text-medium)}.chip--norm{background:#fef3c7;border-color:#fcd34d;color:#92400e}.risk-badge{padding:.2rem .65rem;border-radius:100px;font-size:.8125rem;font-weight:600}.risk--high{background:var(--danger-light);color:#991b1b}.risk--medium{background:var(--warning-light);color:#92400e}.risk--low{background:var(--success-light);color:#065f46}.risk-row{display:flex;align-items:center;gap:.6rem}.risk-indicator{display:flex;align-items:center;flex-shrink:0}.risk-on{color:var(--warning)}.risk-off{color:var(--success)}.risk-label{font-size:.9rem;color:var(--text-medium)}.section{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:1rem}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;row-gap:.5rem}.section-header-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;row-gap:.5rem;min-width:0}.section-title{font-size:.95rem;font-weight:600;color:var(--text-dark)}.count-badge{font-size:.85rem;color:var(--text-light);background:var(--background);padding:.2rem .6rem;border-radius:100px}.filter-bar{margin-bottom:.75rem}.filter-input{width:100%;max-width:280px;padding:.45rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.9rem;outline:none;transition:all .2s}.filter-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0052cc1f}.table-container{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th{text-align:left;padding:.6rem .75rem;font-weight:600;font-size:.8125rem;color:var(--text-light);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--border);background:var(--background)}.data-table td{padding:.55rem .75rem;border-bottom:1px solid var(--border-light);color:var(--text-medium)}.data-table tbody tr:hover{background:#f8fafc}.cell-num{color:var(--text-muted);width:40px}.cell-id{font-weight:600;color:var(--text-dark);white-space:nowrap;width:100px}.cell-desc{display:flex;flex-direction:column;gap:2px}.item-short-text{font-weight:500;color:var(--text-dark);line-height:1.3}.item-long-text{font-size:.85rem;color:var(--text-muted);line-height:1.35}.cell-desc--expandable{cursor:pointer}.cell-desc--expandable:hover .item-desc-toggle{color:var(--primary)}.item-desc-toggle{font-size:.8125rem;color:var(--text-muted);margin-top:2px;-webkit-user-select:none;user-select:none}.item-trade-section{display:inline-block;font-size:.78rem;color:var(--primary);background:var(--primary-light, rgba(37, 99, 235, .08));padding:1px 6px;border-radius:3px;width:fit-content;margin-top:2px}.cell-qty{text-align:right;white-space:nowrap;width:60px;font-variant-numeric:tabular-nums}.cell-unit{white-space:nowrap;width:50px;color:var(--text-muted)}.row--lumpsum{background:var(--bg-muted, rgba(0, 0, 0, .02))}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem}.category-item{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;border-radius:var(--radius-md);font-size:.9rem}.category--found{background:var(--success-light);color:#065f46}.category--missing{background:var(--danger-light);color:#991b1b}.category-indicator{display:flex;flex-shrink:0}.insights-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.insight-item{padding:.75rem;background:var(--background);border-radius:var(--radius-md)}.insight-label{font-size:.8125rem;color:var(--text-light);margin-bottom:.35rem}.insight-value{font-size:.9rem;font-weight:500;color:var(--text-dark)}.effort-badge{display:inline-flex;padding:.2rem .65rem;border-radius:100px;font-size:.85rem;font-weight:600}.go-no-go-section{border:2px solid var(--primary-light)}.gng-grid{display:grid;grid-template-columns:1fr 240px;gap:1.5rem;align-items:start}.gng-criteria{display:flex;flex-direction:column;gap:1rem}.gng-criterion{padding:.75rem;background:var(--background);border-radius:var(--radius-md)}.gng-criterion-header{margin-bottom:.6rem}.gng-criterion-label{font-weight:600;font-size:.9rem;color:var(--text-dark);display:block}.gng-criterion-desc{font-size:.85rem;color:var(--text-light)}.gng-slider-row{display:flex;gap:.4rem}.gng-option{flex:1;padding:.4rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);font-family:var(--font-sans);font-size:.85rem;font-weight:500;color:var(--text-medium);cursor:pointer;transition:all .15s;text-align:center}.gng-option:hover{border-color:var(--text-light)}.gng-option--active{border-color:transparent;color:#fff}.gng-option--low.gng-option--active{background:var(--danger)}.gng-option--medium.gng-option--active{background:var(--warning);color:#fff}.gng-option--high.gng-option--active{background:var(--success)}.gng-result{background:var(--background);border-radius:var(--radius-lg);padding:1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem}.gng-result-label{font-size:.85rem;color:var(--text-light);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.gng-result-badge{font-size:1.75rem;font-weight:800;padding:.25rem 1.5rem;border-radius:var(--radius-lg)}.rec--go{color:#065f46;background:var(--success-light)}.rec--maybe{color:#92400e;background:var(--warning-light)}.rec--nogo{color:#991b1b;background:var(--danger-light)}.gng-result-detail{font-size:.8125rem;color:var(--text-muted);max-width:180px}.badge{display:inline-flex;align-items:center;padding:.2rem .65rem;border-radius:100px;font-size:.8125rem;font-weight:500;white-space:nowrap}.badge--procurement{background:#dbeafe;color:#1e40af}.badge--procedure{background:#e0e7ff;color:#3730a3}.badge--status{background:var(--success-light);color:#065f46}.badge--fire{background:#fef3c7;color:#92400e}.badge--ai{background:#e8f1fc;color:#0052cc}.badge--success{background:var(--success-light);color:#065f46}.badge--neutral{background:var(--background);color:var(--text-light)}.rec-banner{display:flex;align-items:flex-start;gap:1.25rem;padding:1.25rem 1.5rem;border-radius:var(--radius-lg);margin-bottom:1.5rem;border:1px solid}.rec-banner--go{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#a7f3d0}.rec-banner--maybe{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#fcd34d}.rec-banner--nogo{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#fca5a5}.rec-banner-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:.35rem 1rem;border-radius:var(--radius-md);font-size:.9rem;font-weight:800;letter-spacing:.06em;line-height:1}.rec-banner--go .rec-banner-badge{background:#065f46;color:#fff}.rec-banner--maybe .rec-banner-badge{background:#92400e;color:#fff}.rec-banner--nogo .rec-banner-badge{background:#991b1b;color:#fff}.rec-banner-content{flex:1;min-width:0}.rec-banner-summary{font-size:.9375rem;line-height:1.55;color:var(--text-medium);margin-bottom:.75rem}.rec-banner-reasons{display:flex;flex-wrap:wrap;gap:.5rem}.rec-reason{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;font-weight:500;padding:.25rem .65rem;border-radius:100px;white-space:nowrap}.rec-banner--go .rec-reason{background:#065f461a;color:#065f46}.rec-banner--maybe .rec-reason{background:#92400e1a;color:#92400e}.rec-banner--nogo .rec-reason{background:#991b1b1a;color:#991b1b}.warnings-section{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.5rem}.warning-item{display:flex;align-items:flex-start;gap:.65rem;padding:.65rem 1rem;background:var(--warning-light);border-left:3px solid var(--warning);border-radius:0 var(--radius-md) var(--radius-md) 0;font-size:.9rem;color:#78350f;line-height:1.45}.warning-item svg{flex-shrink:0;color:var(--warning);margin-top:1px}.findings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.finding-card{padding:1rem;background:var(--background);border-radius:var(--radius-md);border:1px solid var(--border-light)}.finding-label{font-size:.78rem;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem}.finding-value{font-size:.9rem;font-weight:600;color:var(--text-dark);margin-bottom:.35rem;line-height:1.35}.finding-detail{font-size:.85rem;color:var(--text-light);line-height:1.45}.doc-category{margin-bottom:1rem}.doc-category:last-child{margin-bottom:0}.doc-category-title{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;color:var(--text-dark);margin-bottom:.5rem;padding-bottom:.4rem;border-bottom:1px solid var(--border-light)}.doc-category-count{font-weight:400;font-size:.8125rem;color:var(--text-muted)}.doc-files{display:flex;flex-direction:column;gap:.25rem}.doc-file{display:flex;align-items:center;gap:.65rem;padding:.45rem .65rem;border-radius:var(--radius-md);transition:background .15s}.doc-file:hover{background:var(--background)}.doc-file-icon{display:flex;flex-shrink:0;color:var(--text-muted)}.doc-file-info{flex:1;min-width:0}.doc-file-name{font-size:.875rem;font-weight:500;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-file-desc{font-size:.8125rem;color:var(--text-light)}.doc-file-action{flex-shrink:0}.doc-action-badge{display:inline-flex;padding:.15rem .5rem;border-radius:100px;font-size:.78rem;font-weight:500;background:var(--primary-light);color:var(--primary);white-space:nowrap}.doc-manual-badge{display:inline-flex;padding:.15rem .45rem;border-radius:100px;font-size:.75rem;font-weight:600;background:#fef3c7;color:#92400e;white-space:nowrap;text-transform:uppercase;letter-spacing:.03em}.doc-file-classify{display:inline-flex;align-items:center;flex-shrink:0}.doc-classify-select{font-family:var(--font-sans);font-size:.78rem;font-weight:500;padding:.2rem 1.4rem .2rem .45rem;border:1px solid var(--border);border-radius:var(--radius-sm, 4px);background:var(--card-bg);color:var(--text-dark);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236b7280' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .35rem center;transition:border-color .15s}.doc-classify-select:hover{border-color:var(--primary)}.doc-classify-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px rgba(var(--primary-rgb, 59, 130, 246),.15)}.doc-classify-spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite}.doc-file--reclassifying{opacity:.55;pointer-events:none}.action-group{margin-bottom:1rem}.action-group:last-child{margin-bottom:0}.action-group-title{font-size:.8125rem;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem;padding-bottom:.35rem;border-bottom:1px solid var(--border-light)}.action-item{display:flex;align-items:center;gap:.65rem;padding:.4rem .5rem;border-radius:var(--radius-md);transition:background .15s}.action-item:hover{background:var(--background)}.action-effort{display:inline-flex;padding:.15rem .5rem;border-radius:100px;font-size:.78rem;font-weight:600;flex-shrink:0;min-width:52px;justify-content:center}.effort--low{background:var(--success-light);color:#065f46}.effort--medium{background:var(--warning-light);color:#92400e}.effort--high{background:var(--danger-light);color:#991b1b}.action-text{font-size:.9rem;color:var(--text-medium);line-height:1.4}@media(max-width:1024px){.match-cards,.calc-summary-grid{grid-template-columns:repeat(2,1fr)}.offer-form-grid,.findings-grid{grid-template-columns:1fr}}@media(max-width:640px){.dashboard-tabs{padding:0 1rem}.match-cards,.calc-summary-grid,.findings-grid{grid-template-columns:1fr}.rec-banner{flex-direction:column;gap:.75rem}.rec-banner-reasons{flex-direction:column}}.item-analysis-hint{font-size:.9rem;color:var(--text-light);margin-bottom:1rem}.row--expanded{background:var(--primary-light)}.btn--sm{padding:.3rem .65rem;font-size:.85rem}.match-cell{padding:1rem .75rem!important;background:var(--background)}.match-loading{display:flex;align-items:center;gap:.75rem;padding:1rem;color:var(--text-light);font-size:.9rem}.match-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.match-card{background:var(--card-bg);border:2px solid var(--border);border-radius:var(--radius-lg);padding:1rem;cursor:pointer;transition:all .2s ease}.match-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.match-card--selected{border-color:var(--success);background:#f0fdf4}.match-card-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.match-score{display:inline-flex;padding:.2rem .6rem;border-radius:100px;font-size:.85rem;font-weight:700}.match-score--green{background:var(--success-light);color:#065f46}.match-score--yellow{background:var(--warning-light);color:#92400e}.match-score--neutral{background:var(--background);color:var(--text-light)}.match-score--unreviewed{background:var(--background);color:var(--text-muted, #9ca3af);border:1px dashed var(--border, #e2e8f0);font-weight:600}.match-product-name{font-size:.9rem;font-weight:600;color:var(--text-dark);margin-bottom:.4rem}.match-details{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.4rem}.match-details span{font-size:.8125rem;color:var(--text-light);padding:.1rem .4rem;background:var(--background);border-radius:var(--radius-sm)}.match-data-sources{display:flex;gap:.4rem;margin-bottom:.4rem}.match-source-badge{font-size:.78rem;font-weight:600;padding:.1rem .5rem;border-radius:100px}.match-source-badge--lv{color:var(--primary);background:var(--primary-light, rgba(37, 99, 235, .08))}.match-source-badge--spec{color:#9333ea;background:#9333ea14}.match-reason{font-size:.85rem;color:var(--text-medium);margin-bottom:.5rem;line-height:1.4}.match-price{font-size:.95rem;font-weight:700;color:var(--primary)}.match-vector-score{font-size:.78rem;color:var(--text-muted);padding:.1rem .4rem;background:var(--background);border-radius:var(--radius-sm)}.match-pills{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.5rem}.match-pill{display:inline-flex;padding:.15rem .5rem;border-radius:100px;font-size:.78rem;font-weight:500;line-height:1.4}.match-pill--green{background:var(--success-light);color:#065f46}.match-pill--red{background:var(--danger-light);color:#991b1b}.match-pill--yellow{background:#fef3c7;color:#92400e}.match-lv-text{margin-top:.5rem;margin-bottom:.5rem;border-top:1px solid var(--border);padding-top:.4rem}.match-lv-toggle{background:none;border:none;cursor:pointer;font-size:.8125rem;font-weight:600;color:var(--primary);padding:.2rem 0;font-family:var(--font-sans)}.match-lv-toggle:hover{text-decoration:underline}.match-lv-content{font-size:.8125rem;color:var(--text-medium);line-height:1.5;margin-top:.4rem;padding:.5rem;background:var(--background);border-radius:var(--radius-sm);white-space:pre-wrap}.ia-filter-bar{display:flex;align-items:center;gap:12px;row-gap:6px;padding:8px 12px;margin-bottom:8px;background:var(--card-bg, #fff);border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-md, 10px);flex-wrap:wrap}.ia-search{flex:1;min-width:0}.ia-search-icon{color:var(--text-muted, #9ca3af);flex-shrink:0}.ia-search-input{flex:1;min-width:0;border:none;background:transparent;font-family:var(--font-sans);font-size:.875rem;color:var(--text-dark, #0a1628);padding:2px 8px;outline:none}.ia-search-input::placeholder{color:var(--text-muted, #9ca3af)}.ia-search-clear{border:none;background:none;color:var(--text-muted, #9ca3af);font-size:1.1rem;cursor:pointer;padding:0 4px;line-height:1}.ia-search-clear:hover{color:var(--text-dark, #0a1628)}.ia-filters{display:flex;align-items:center;gap:8px;row-gap:6px;flex-shrink:0;flex-wrap:wrap;min-width:0}.ia-filter-divider{width:1px;height:20px;background:var(--border, #e2e8f0);flex-shrink:0}.ia-filter-group{display:flex;border:1px solid var(--border, #e2e8f0);border-radius:8px;overflow:hidden}.ia-filter-group--reviewed .ia-filter-chip--active{background:#16a34a}.ia-filter-group--reviewed .ia-filter-chip--active:hover{background:#15803d}.ia-filter-chip{padding:4px 10px;border:none;background:transparent;font-family:var(--font-sans);font-size:.8125rem;font-weight:500;color:var(--text-light, #6b7280);cursor:pointer;transition:all .15s;white-space:nowrap;display:flex;align-items:center;gap:4px}.ia-filter-chip+.ia-filter-chip{border-left:1px solid var(--border, #e2e8f0)}.ia-filter-chip:hover{background:var(--background, #f8f9fa);color:var(--text-dark, #0a1628)}.ia-filter-chip--active{background:var(--primary, #0052CC);color:#fff}.ia-filter-chip--active:hover{background:var(--primary-hover, #003d99);color:#fff}.ia-filter-chip--green.ia-filter-chip--active{background:#16a34a}.ia-filter-chip--green.ia-filter-chip--active:hover{background:#15803d}.ia-filter-count{font-size:.8125rem;font-weight:700;padding:0 5px;border-radius:10px;background:#fff3;min-width:16px;text-align:center}.ia-filter-chip:not(.ia-filter-chip--active) .ia-filter-count{background:var(--border-light, #f1f5f9);color:var(--text-muted, #9ca3af)}.ia-filter-select{padding:4px 8px;border:1px solid var(--border, #e2e8f0);border-radius:8px;font-family:var(--font-sans);font-size:.8125rem;color:var(--text-dark, #0a1628);background:#fff;cursor:pointer}.ia-result-count{font-size:.8125rem;font-weight:600;color:var(--text-muted, #9ca3af);font-variant-numeric:tabular-nums;white-space:nowrap}.ia-reviewed-badge{display:inline-flex;align-items:center;gap:2px;margin-left:5px;padding:1px 5px;border-radius:4px;background:#f0fdf4;border:1px solid #bbf7d0;font-size:.75rem;font-weight:700;color:#16a34a;letter-spacing:.02em;text-transform:uppercase;vertical-align:middle;line-height:1.5}.ia-export-menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--card-bg, #fff);border-radius:10px;border:1px solid var(--border, #e2e8f0);box-shadow:0 4px 6px -1px #0028640f,0 12px 28px -4px #0028641f;z-index:100;min-width:220px;overflow:hidden;padding:4px 0;animation:ia-export-in .12s ease-out}@keyframes ia-export-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ia-export-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 14px;border:none;background:none;text-align:left;cursor:pointer;font-family:var(--font-sans);font-size:.8125rem;color:var(--text-dark, #0a1628);transition:background .1s}.ia-export-item:hover{background:var(--border-light, #f1f5f9)}.ia-export-item:disabled{color:var(--text-muted, #9ca3af);cursor:default}.ia-export-item:disabled:hover{background:none}.ia-export-item--active{background:var(--border-light, #f1f5f9);color:var(--primary, #0052CC);font-weight:600}.ia-export-count{font-size:.78rem;font-weight:600;color:var(--text-muted, #9ca3af);font-variant-numeric:tabular-nums}.ia-export-sep{height:1px;margin:4px 10px;background:var(--border, #e2e8f0)}.calc-btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border, #e2e8f0);border-top-color:var(--primary, #0052CC);border-radius:50%;animation:calc-spin .7s linear infinite;vertical-align:middle}.btn--primary .calc-btn-spinner{border-color:#ffffff4d;border-top-color:#fff}@keyframes calc-spin{to{transform:rotate(360deg)}}.ia-prep-summary{display:flex;align-items:stretch;gap:1px;margin-bottom:8px;border-radius:var(--radius-md, 10px);overflow:hidden;border:1px solid var(--border, #e2e8f0);background:var(--border, #e2e8f0)}.ia-prep-summary-block{flex:1;display:flex;flex-direction:column;align-items:center;padding:8px 12px;background:var(--card-bg, #fff);gap:3px}.ia-prep-summary-label{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted, #9ca3af)}.ia-prep-summary-bar{width:100%;height:6px;border-radius:3px;background:var(--border-light, #f1f5f9);overflow:hidden}.ia-prep-summary-fill{height:100%;border-radius:3px;transition:width .4s ease}.ia-prep-summary-fill--product{background:linear-gradient(90deg,#d97706,#f59e0b)}.ia-prep-summary-fill--calc{background:linear-gradient(90deg,var(--primary, #0052CC),#2d7ff9)}.ia-prep-summary-fill--reviewed{background:linear-gradient(90deg,#16a34a,#4ade80)}.ia-prep-summary-value{font-size:.9375rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-dark, #0a1628)}.ia-prep-summary-sub{font-size:.78rem;color:var(--text-muted, #9ca3af);font-variant-numeric:tabular-nums}.offer-container{display:flex;flex-direction:column;gap:1rem}.offer-sections-status{display:flex;flex-direction:column;gap:.5rem}.offer-section-item{display:flex;align-items:center;gap:.75rem;padding:.65rem .75rem;border-radius:var(--radius-md);background:var(--background)}.offer-section-icon{display:flex;flex-shrink:0}.offer-section-title{font-size:.9rem;font-weight:600;color:var(--text-dark)}.offer-section-desc{font-size:.8125rem;color:var(--text-light)}.offer-section-item .badge{margin-left:auto}.offer-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.form-field{display:flex;flex-direction:column;gap:.3rem}.form-field label{font-size:.8125rem;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.03em}.form-field input{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.9rem;color:var(--text-dark);outline:none;transition:border-color .2s}.form-field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0052cc1a}.form-field input[readonly]{background:var(--background);color:var(--text-medium)}.offer-textarea{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.9rem;line-height:1.6;color:var(--text-dark);outline:none;resize:vertical;transition:border-color .2s;box-sizing:border-box}.offer-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0052cc1a}.offer-actions{display:flex;justify-content:flex-end;padding:.5rem 0}.offer-preview-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.offer-preview{background:var(--card-bg);border-radius:var(--radius-xl);width:100%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003}.offer-preview-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border)}.offer-preview-header h3{font-size:1.1rem;font-weight:600}.offer-preview-body{padding:2rem;overflow-y:auto;flex:1}.offer-preview-letterhead{font-size:.9rem;color:var(--text-medium);margin-bottom:2rem}.offer-preview-recipient{font-size:.9rem;color:var(--text-dark);margin-bottom:1.5rem}.offer-preview-date{font-size:.9rem;color:var(--text-light);text-align:right;margin-bottom:1.5rem}.offer-preview-body h4{font-size:1rem;margin-bottom:.25rem}.offer-preview-ref{font-size:.85rem;color:var(--text-light);margin-bottom:1.5rem}.offer-preview-text p{font-size:.9rem;line-height:1.6;color:var(--text-medium);margin-bottom:.25rem}.offer-preview-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid var(--border)}.submission-container{display:flex;flex-direction:column;gap:1rem}.submission-deadline{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;border-radius:var(--radius-lg);font-size:.9rem}.submission-deadline--ok{background:var(--success-light);color:#065f46}.submission-deadline--urgent{background:var(--warning-light);color:#92400e}.submission-deadline--critical{background:var(--danger-light);color:#991b1b;animation:pulse-bg 2s ease-in-out infinite}@keyframes pulse-bg{0%,to{opacity:1}50%{opacity:.85}}.submission-deadline-icon{display:flex;flex-shrink:0}.submission-deadline-text{display:flex;flex-direction:column;gap:.15rem}.submission-deadline-text strong{font-size:.95rem}.submission-deadline-text span{font-size:.85rem;opacity:.8}.submission-readiness{display:flex;flex-direction:column;gap:.4rem}.readiness-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-medium)}.readiness-ok{color:var(--success);font-weight:700}.readiness-warn{color:var(--warning);font-weight:700}.checklist-group-title{font-size:.9rem;font-weight:600;color:var(--text-dark);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.04em}.checklist-items{display:flex;flex-direction:column;gap:.35rem}.checklist-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .65rem;border-radius:var(--radius-md);cursor:pointer;transition:background .15s}.checklist-item:hover{background:var(--background)}.checklist-checkbox{width:18px;height:18px;accent-color:var(--primary);flex-shrink:0;cursor:pointer}.checklist-label{font-size:.9rem;color:var(--text-medium);flex:1}.checklist-label--done{text-decoration:line-through;color:var(--text-muted)}.checklist-required{font-size:.78rem;font-weight:600;color:var(--danger);padding:.1rem .4rem;background:var(--danger-light);border-radius:var(--radius-sm)}.submission-actions{text-align:center;padding:1rem 0}.btn--lg{padding:.75rem 2rem;font-size:1rem}.submission-hint{font-size:.85rem;color:var(--text-muted);margin-top:.5rem}.autofill-banner{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #93c5fd;border-radius:var(--radius-lg);margin-bottom:1.25rem}.autofill-banner-icon{color:var(--primary);flex-shrink:0}.autofill-banner-content{font-size:.9rem;color:var(--text-medium)}.autofill-banner-content strong{color:var(--text-dark)}.autofill-doc-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:.75rem;overflow:hidden;transition:opacity .2s}.autofill-doc-card--disabled{opacity:.5}.autofill-doc-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-bottom:1px solid var(--border-light)}.autofill-doc-info{display:flex;align-items:center;gap:.75rem}.autofill-doc-toggle input{accent-color:var(--primary);width:16px;height:16px;cursor:pointer}.autofill-doc-name{font-size:.88rem;font-weight:600;color:var(--text-dark)}.autofill-doc-type{font-size:.8125rem;color:var(--text-light)}.autofill-format-badge{display:inline-flex;padding:.2rem .6rem;border-radius:100px;font-size:.78rem;font-weight:700;letter-spacing:.03em}.autofill-format-badge--pdf{background:#fef2f2;color:#dc2626}.autofill-format-badge--docx{background:#eff6ff;color:#2563eb}.autofill-format-badge--xlsx{background:#ecfdf5;color:#059669}.autofill-field-table{padding:.5rem 1rem .75rem}.autofill-field-header{display:grid;grid-template-columns:1.5fr 1fr 1.5fr .7fr 32px;gap:.5rem;padding:.4rem 0;font-size:.78rem;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-light)}.autofill-field-row{display:grid;grid-template-columns:1.5fr 1fr 1.5fr .7fr 32px;gap:.5rem;padding:.45rem 0;align-items:center;border-bottom:1px solid var(--border-light);font-size:.875rem;transition:opacity .15s}.autofill-field-row:last-child{border-bottom:none}.autofill-field-row--disabled{opacity:.4}.autofill-field-name{font-weight:500;color:var(--text-dark);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.autofill-field-match{color:var(--text-medium);font-size:.85rem}.autofill-field-value{min-width:0}.autofill-value-input{width:100%;padding:.3rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.85rem;outline:none;transition:border-color .2s}.autofill-value-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1a}.autofill-checkbox-value{display:flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--text-medium);cursor:pointer}.autofill-checkbox-value input{accent-color:var(--primary)}.autofill-confidence{display:inline-flex;padding:.15rem .45rem;border-radius:100px;font-size:.78rem;font-weight:600}.confidence--high{background:var(--success-light);color:#065f46}.confidence--medium{background:var(--warning-light);color:#92400e}.confidence--low{background:var(--danger-light);color:#991b1b}.autofill-doc-actions{display:flex;align-items:center;gap:.5rem}.confidence--manual{background:#e0e7ff;color:#3730a3}.autofill-error{padding:.65rem 1rem;background:var(--danger-light);color:var(--danger);border-radius:var(--radius-md);font-size:.9rem;font-weight:500;text-align:center;margin-bottom:.75rem}.autofill-actions{text-align:center;padding:1rem 0}.autofill-actions a{text-decoration:none}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.doc-autofill-badge{display:inline-flex;padding:.12rem .45rem;border-radius:100px;font-size:.75rem;font-weight:600;background:#dbeafe;color:#1e40af;margin-right:.35rem}.doc-time-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.12rem .45rem;border-radius:100px;font-size:.75rem;font-weight:600;background:#fef3c7;color:#92400e;margin-right:.35rem}.doc-time-badge svg{flex-shrink:0}.text-muted{color:var(--text-muted)}.settings-page{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:2rem;max-width:700px}.settings-page-body{overflow-y:auto;flex:1;padding-top:1rem}.settings-section{margin-bottom:1.25rem}.settings-section-title{font-size:.95rem;font-weight:600;color:var(--text-dark);margin-bottom:.35rem}.settings-section-subtitle{font-size:.875rem;color:var(--text-light);line-height:1.5;margin-bottom:1rem}.settings-loading{padding:1.5rem;text-align:center;color:var(--text-muted);font-size:.9rem}.advisory-note-list{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.75rem;max-height:240px;overflow-y:auto}.advisory-note-empty{padding:1rem;text-align:center;color:var(--text-muted);font-size:.9rem;background:var(--background);border-radius:var(--radius-md)}.advisory-note-item{display:flex;align-items:center;gap:.5rem;padding:.55rem .75rem;background:var(--background);border-radius:var(--radius-md);border:1px solid var(--border-light)}.advisory-note-text{flex:1;font-size:.9rem;color:var(--text-medium);line-height:1.4}.advisory-note-delete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .15s}.advisory-note-delete:hover{background:var(--danger-light);color:var(--danger)}.advisory-note-input{display:flex;gap:.5rem}.advisory-note-input input{flex:1;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.9rem;outline:none;transition:border-color .2s}.advisory-note-input input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0052cc1f}.settings-save-btn{width:100%;justify-content:center;margin-top:.25rem}.profile-field-list{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.75rem;max-height:220px;overflow-y:auto}.profile-field-item{display:flex;flex-direction:column;gap:.35rem;padding:.55rem .75rem;background:var(--background);border-radius:var(--radius-md);border:1px solid var(--border-light)}.profile-field-info{display:flex;align-items:center;gap:.5rem}.profile-field-name{font-size:.9rem;font-weight:600;color:var(--text-dark)}.profile-field-category-badge{font-size:.75rem;font-weight:500;padding:.1rem .4rem;border-radius:100px;background:var(--surface-alt, #f1f5f9);color:var(--text-muted, #64748b)}.profile-field-type-badge{font-size:.75rem;font-weight:600;padding:.1rem .4rem;border-radius:100px;text-transform:uppercase;letter-spacing:.04em}.profile-field-type-badge--text{background:#dbeafe;color:#1e40af}.profile-field-type-badge--checkbox{background:#e0e7ff;color:#3730a3}.profile-field-value-row{display:flex;align-items:center;gap:.5rem}.profile-field-value-input{flex:1;padding:.35rem .6rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.875rem;outline:none;transition:border-color .2s}.profile-field-value-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #0052cc1a}.profile-checkbox-toggle{display:flex;align-items:center;gap:.4rem;cursor:pointer;flex:1}.profile-checkbox-toggle input{accent-color:var(--primary);width:16px;height:16px}.profile-checkbox-label{font-size:.875rem;color:var(--text-medium)}.profile-field-add-row{display:flex;gap:.4rem;align-items:center}.profile-field-add-name{flex:1;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.9rem;outline:none;transition:border-color .2s}.profile-field-add-name:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0052cc1f}.profile-field-add-type{padding:.5rem;border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.875rem;background:var(--card-bg);color:var(--text-medium);outline:none;cursor:pointer}.profile-field-add-category{width:7rem;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.875rem;background:var(--card-bg);color:var(--text-medium);outline:none;transition:border-color .2s}.profile-field-add-category:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0052cc1f}.profile-field-add-value{flex:1;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.9rem;outline:none;transition:border-color .2s}.profile-field-add-value:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0052cc1f}.product-schema-list{display:flex;flex-direction:column;gap:.375rem}.product-schema-item{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg)}.product-schema-item-order{width:1.5rem;text-align:center;font-size:.8125rem;font-weight:600;color:var(--text-muted)}.product-schema-item-key{font-family:SF Mono,Fira Code,monospace;font-size:.8125rem;color:var(--text-muted);background:var(--background);padding:.125rem .375rem;border-radius:4px}.product-schema-move-btns{display:flex;flex-direction:column;gap:0;margin-left:auto}.product-schema-move-btns .btn{padding:0 .25rem;line-height:1;font-size:.75rem;min-height:0}.catalog-add-extra-field{display:flex;align-items:center;gap:.5rem;padding-top:.5rem;border-top:1px dashed var(--border);margin-top:.5rem}.catalog-add-extra-field .input{flex:1}.catalog-tabs{display:flex;gap:2px;margin-bottom:20px;background:var(--background, #f1f5f9);border-radius:10px;padding:3px}.catalog-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:none;background:transparent;border-radius:8px;font-family:var(--font-sans);font-size:13px;font-weight:600;color:var(--text-light, #6b7280);cursor:pointer;transition:all .15s ease}.catalog-tab:hover{color:var(--text-dark, #1a1a2e);background:#ffffff80}.catalog-tab--active{background:var(--card-bg, #fff);color:var(--text-dark, #1a1a2e);box-shadow:0 1px 3px #00000014}.catalog-tab--active svg{color:var(--primary, #0052CC)}.catalog-layout{display:grid;grid-template-columns:320px 1fr;gap:1rem;min-height:400px}.catalog-list{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-bg);overflow-y:auto;max-height:600px}.catalog-item{padding:.75rem 1rem;border-bottom:1px solid var(--border);cursor:pointer;transition:background .15s ease}.catalog-item:hover{background:var(--background)}.catalog-item--active{background:var(--primary-light, #e8f0fe);border-left:3px solid var(--primary)}.catalog-item-name{font-size:.9rem;font-weight:600;color:var(--text-dark);margin-bottom:.25rem}.catalog-item-meta{display:flex;gap:.4rem;flex-wrap:wrap}.catalog-item-meta span{font-size:.78rem;color:var(--text-light);padding:.1rem .35rem;background:var(--background);border-radius:var(--radius-sm)}.catalog-lv-count{background:var(--primary)!important;color:#fff!important;font-weight:600}.catalog-spec-count{background:#9333ea!important;color:#fff!important;font-weight:600}.catalog-search{position:sticky;top:0;z-index:2;display:flex;align-items:center;padding:.6rem .75rem;border-bottom:1px solid var(--border);background:var(--card-bg)}.catalog-search-icon{flex-shrink:0;color:var(--text-muted)}.catalog-search-input{flex:1;border:none;background:transparent;font-family:var(--font-sans);font-size:.875rem;color:var(--text-dark);padding:.15rem .5rem;outline:none}.catalog-search-input::placeholder{color:var(--text-muted)}.catalog-search-clear{border:none;background:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:0 .25rem;line-height:1}.catalog-search-clear:hover{color:var(--text-dark)}.catalog-list-count{padding:.35rem .75rem;font-size:.78rem;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--background)}.catalog-detail{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-bg);padding:1.25rem;overflow-y:auto;max-height:600px}.catalog-detail-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.catalog-detail-header h4{font-size:1rem;font-weight:700;color:var(--text-dark);margin-bottom:.5rem}.catalog-detail-desc{font-size:.85rem;color:var(--text-medium);margin-top:.5rem;line-height:1.5}.catalog-edit-fields{display:flex;flex-direction:column;gap:.625rem;margin-top:.75rem}.catalog-edit-field{display:flex;align-items:center;gap:.75rem}.catalog-edit-label{flex-shrink:0;width:140px;font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.catalog-edit-input{flex:1;min-width:0}.catalog-edit-actions{display:flex;gap:.5rem;margin-top:.25rem}.catalog-lv-section{margin-top:1.25rem;border-top:1px solid var(--border);padding-top:1rem}.catalog-lv-section h5{font-size:.9rem;font-weight:600;color:var(--text-dark);margin-bottom:.75rem}.catalog-lv-item{background:var(--background);border-radius:var(--radius-md);padding:.75rem;margin-bottom:.5rem}.catalog-lv-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.catalog-lv-label{font-size:.85rem;font-weight:600;color:var(--primary)}.catalog-lv-delete{padding:.2rem!important;opacity:.5}.catalog-lv-delete:hover{opacity:1;color:var(--danger)!important}.catalog-lv-text{font-size:.8125rem;color:var(--text-medium);line-height:1.5;white-space:pre-wrap}.catalog-lv-add{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}.catalog-lv-textarea{resize:vertical;min-height:80px;font-size:.85rem}.spec-card{background:var(--background);border-radius:var(--radius-md);padding:.75rem;margin-bottom:.5rem;transition:box-shadow .15s ease}.spec-card:hover{box-shadow:var(--shadow-sm)}.spec-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.spec-card-title{display:flex;align-items:center;gap:.4rem;cursor:pointer;flex:1;min-width:0}.spec-card-chevron{flex-shrink:0;color:var(--text-muted);transition:transform .2s ease}.spec-card-chevron--open{transform:rotate(90deg)}.spec-card-title-text{display:flex;align-items:baseline;gap:.4rem;min-width:0}.spec-card-name{font-size:.875rem;font-weight:600;color:var(--primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spec-card-vendor{font-size:.78rem;color:var(--text-light);font-weight:500;white-space:nowrap}.spec-card-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.spec-card-meta-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.35rem;padding-left:1.15rem}.spec-card-source{font-size:.78rem;color:var(--text-muted);font-style:italic}.spec-badges-row{display:flex;gap:.25rem;flex-wrap:wrap}.spec-badge{display:inline-flex;align-items:center;padding:.1rem .4rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;white-space:nowrap}.spec-badge--type{background:#dbeafe;color:#1e40af}.spec-badge--count{background:#ede9fe;color:#6d28d9}.spec-badge--model{background:#fef3c7;color:#92400e}.spec-badge--norm{background:#d1fae5;color:#065f46}.spec-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1px;margin-top:.6rem;background:var(--border);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.spec-grid-item{display:flex;flex-direction:column;gap:.1rem;padding:.4rem .55rem;background:var(--card-bg)}.spec-grid-key{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;line-height:1.2}.spec-grid-value{font-size:.84rem;font-weight:600;color:var(--text-dark);line-height:1.3}.spec-grid-value--yes{color:var(--success)}.spec-grid-value--no{color:var(--text-muted)}.spec-card-details-toggle{margin-top:.5rem;padding-top:.4rem;border-top:1px solid var(--border)}.spec-details-btn{display:inline-flex;align-items:center;gap:.3rem;border:none;background:none;font-family:var(--font-sans);font-size:.78rem;font-weight:500;color:var(--text-muted);cursor:pointer;padding:.15rem 0;transition:color .12s}.spec-details-btn:hover{color:var(--primary)}.spec-card-texts{margin-top:.5rem;display:flex;flex-direction:column;gap:.5rem}.spec-text-block{display:flex;flex-direction:column;gap:.2rem}.spec-text-block strong{font-size:.78rem;color:var(--text-light);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.catalog-spec-pre{font-size:.8125rem;white-space:pre-wrap;word-break:break-word;margin:.25rem 0 0;padding:.5rem;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:300px;overflow-y:auto;line-height:1.6}.catalog-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:var(--text-light);text-align:center}.catalog-empty p{margin-bottom:.3rem;font-size:.9rem}.ap-form{display:flex;flex-direction:column;gap:0}.ap-form-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:.875rem;border-bottom:1px solid var(--border-light, var(--border))}.ap-form-header h4{font-size:1.05rem;font-weight:700;color:var(--text-dark);margin:0}.ap-form-close{border:none;background:var(--background, #f1f5f9);color:var(--text-muted);cursor:pointer;padding:6px;border-radius:var(--radius-sm, 6px);transition:all .12s;display:flex;align-items:center;justify-content:center}.ap-form-close:hover{color:var(--text-dark);background:var(--border-light, #e2e8f0)}.ap-form-error{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);color:#b91c1c;font-size:.8125rem;font-weight:500;margin-bottom:1rem;animation:ap-shake .3s ease}@keyframes ap-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.ap-section{padding:1rem 0;border-bottom:1px solid var(--border-light, var(--border))}.ap-section:last-of-type{border-bottom:none}.ap-section-label{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:700;color:var(--text-light);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.ap-section-num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--primary);color:#fff;font-size:.75rem;font-weight:700;flex-shrink:0}.ap-fields{display:flex;flex-direction:column;gap:.5rem}.ap-field{position:relative}.ap-input{width:100%;padding:.625rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md, 8px);font-family:var(--font-sans);font-size:.9375rem;color:var(--text-dark);background:var(--card-bg);outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.ap-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #0052cc14}.ap-input::placeholder{color:var(--text-muted);font-weight:400}.ap-checkbox-field{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;color:var(--text-dark);cursor:pointer;padding:.375rem 0}.ap-checkbox-field input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.ap-price-group{margin:0}.ap-price-label{display:block;font-size:.8125rem;font-weight:600;color:var(--text-muted);margin-bottom:.375rem}.ap-price-row{display:flex;align-items:stretch;gap:0;border:1px solid var(--border);border-radius:var(--radius-md, 8px);overflow:hidden;background:var(--card-bg);transition:border-color .15s,box-shadow .15s}.ap-price-row:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #0052cc14}.ap-price-input-wrap{display:flex;align-items:center;flex:1;min-width:0}.ap-price-symbol{display:flex;align-items:center;justify-content:center;padding:0 .25rem 0 .75rem;font-size:.9375rem;font-weight:600;color:var(--text-muted);flex-shrink:0;-webkit-user-select:none;user-select:none}.ap-input--price{border:none!important;border-radius:0!important;box-shadow:none!important;font-size:.9375rem;font-weight:600;font-variant-numeric:tabular-nums;padding:.625rem .5rem;background:transparent;color:var(--text-dark);min-width:0}.ap-input--price:focus{box-shadow:none!important}.ap-input--price::placeholder{color:var(--text-muted);font-weight:400}.ap-price-per{display:flex;align-items:center;gap:0;border-left:1px solid var(--border-light, var(--border));background:var(--background, #f8fafc);flex-shrink:0}.ap-price-per-slash{padding:0 .25rem 0 .625rem;font-size:.8125rem;font-weight:500;color:var(--text-muted);-webkit-user-select:none;user-select:none}.ap-price-unit-select{padding:.625rem 1.5rem .625rem .125rem;border:none;background:transparent;font-family:var(--font-sans);font-size:.9375rem;font-weight:600;color:var(--text-dark);cursor:pointer;outline:none;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%236b7280' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center}.ap-price-unit-select:focus{color:var(--primary)}.catalog-price-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .5rem;background:#0052cc14;color:var(--primary, #0052CC);border-radius:5px;font-weight:600;font-size:.8125rem;font-variant-numeric:tabular-nums}.ap-textarea{width:100%;padding:.625rem .75rem;border:1px solid var(--border);border-radius:var(--radius-md, 8px);font-family:var(--font-sans);font-size:.9375rem;color:var(--text-dark);background:var(--card-bg);outline:none;resize:vertical;min-height:72px;line-height:1.5;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.ap-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px #0052cc14}.ap-textarea::placeholder{color:var(--text-muted)}.ap-extra-field{display:flex;gap:.375rem;align-items:center;margin-top:.125rem}.ap-input--extra{flex:1;min-width:0;border-style:dashed}.ap-type-select{padding:.5rem;border:1px solid var(--border);border-radius:var(--radius-md, 8px);font-family:var(--font-sans);font-size:.8125rem;color:var(--text-light);background:var(--card-bg);cursor:pointer;flex-shrink:0}.ap-add-field-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px dashed var(--border);border-radius:var(--radius-md, 8px);background:none;color:var(--text-muted);font-size:1rem;cursor:pointer;flex-shrink:0;transition:all .12s}.ap-add-field-btn:not(:disabled):hover{border-color:var(--primary);color:var(--primary);background:#0052cc0a}.ap-add-field-btn:disabled{opacity:.3;cursor:default}.ap-mode-toggle{display:flex;gap:2px;margin-left:auto;background:var(--background, #f1f5f9);border-radius:6px;padding:2px}.ap-mode-btn{display:flex;align-items:center;gap:4px;padding:5px 10px;border:none;border-radius:5px;background:transparent;font-family:var(--font-sans);font-size:.8125rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .12s;white-space:nowrap}.ap-mode-btn:hover{color:var(--text-dark)}.ap-mode-btn--active{background:var(--card-bg, #fff);color:var(--primary);box-shadow:0 1px 2px #0000000f}.ap-file-drop{display:flex;align-items:center;justify-content:center;padding:1rem;border:1.5px dashed var(--border);border-radius:var(--radius-md, 8px);cursor:pointer;transition:all .15s;background:var(--background, #f8fafc)}.ap-file-drop:hover{border-color:var(--primary);background:#0052cc05}.ap-file-placeholder{display:flex;flex-direction:column;align-items:center;gap:.375rem;color:var(--text-muted);font-size:.8125rem;font-weight:500}.ap-file-name{display:flex;align-items:center;gap:.4rem;font-size:.8125rem;font-weight:600;color:var(--primary)}.ap-file-remove{border:none;background:none;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:0 2px;line-height:1}.ap-file-remove:hover{color:var(--danger, #dc2626)}.ap-form-actions{display:flex;align-items:center;gap:.75rem;padding-top:1.125rem}.ap-submit-btn{display:flex;align-items:center;gap:.4rem;font-weight:600;font-size:.9375rem;padding:.625rem 1.25rem}@media(max-width:900px){.catalog-layout{grid-template-columns:1fr}}.add-item-row{background:var(--background)!important;border-top:2px dashed var(--border)}.add-item-row:hover{background:var(--background)!important}.input--inline{padding:.3rem .5rem;font-size:.875rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-sans);color:var(--text-dark);background:var(--card-bg);outline:none;transition:border-color .15s}.input--inline:focus{border-color:var(--primary)}.input--inline::placeholder{color:var(--text-muted)}.cell-actions{display:flex;align-items:center;gap:.35rem}.item-delete-btn{opacity:0;width:22px;height:22px;border:none;background:none;color:var(--text-muted);font-size:1.1rem;line-height:1;border-radius:var(--radius-sm);cursor:pointer;transition:all .12s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.data-table tbody tr:hover .item-delete-btn{opacity:1}.item-delete-btn:hover{color:var(--danger);background:var(--danger-light)}.auth-loading{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--bg-primary)}.auth-spinner{width:32px;height:32px;border:3px solid var(--border-secondary);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sidebar-logout-btn{color:var(--text-tertiary);transition:color .15s}.sidebar-logout-btn:hover{color:var(--text-primary)}.view-header{padding:24px 32px 16px;border-bottom:1px solid var(--border, #e2e8f0);background:var(--card-bg, #fff)}.view-header-title{margin:0;font-size:var(--fs-xl);font-weight:700;letter-spacing:-.02em;color:var(--text-dark, #0a1628)}.view-header-desc{margin:4px 0 0;font-size:.9rem;color:var(--text-muted, #6b7280);line-height:1.5}
