:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}body{color:#e7e9ee;background:#0f1115;justify-content:center;min-height:100vh;margin:0;display:flex}#root{width:100%}.app-shell{width:100%;max-width:720px;padding:2.5rem 1.5rem 4rem}.app-shell-wide{max-width:1400px}.config-form{flex-direction:column;gap:.4rem;display:flex}.config-form h1{margin-bottom:.25rem;font-size:1.4rem}.subtitle{color:#a7adba;margin-bottom:1rem;font-size:.92rem}label{margin-top:.75rem;font-weight:600}input{color:inherit;background:#171a21;border:1px solid #2b2f3a;border-radius:6px;padding:.6rem .7rem;font-size:.95rem}.hint{color:#8b91a0;margin:.2rem 0 0;font-size:.82rem}.redirect-uri-box{background:#171a21;border:1px dashed #2b2f3a;border-radius:6px;margin-top:1rem;padding:.75rem;font-size:.85rem}.redirect-uri-box code{word-break:break-all;color:#7fd0ff;margin-top:.3rem;display:block}button{background:var(--kv-accent,#c9a876);color:#16130c;cursor:pointer;border:none;border-radius:8px;align-self:flex-start;margin-top:1.25rem;padding:.65rem 1.1rem;font-family:inherit;font-weight:600;transition:filter .12s}button:hover:not(:disabled){filter:brightness(1.08)}button:disabled{opacity:.5;cursor:not-allowed}.status-line{color:#a7adba}.error-box{color:#ffb4b4;background:#2a1414;border:1px solid #5a2a2a;border-radius:6px;margin-top:1rem;padding:.75rem;font-size:.88rem}.error-panel{background:#2a1414;border:1px solid #5a2a2a;border-radius:8px;padding:1.25rem}.error-panel h2{color:#ff8080;letter-spacing:.02em;margin-top:0}.error-panel dl{grid-template-columns:max-content 1fr;gap:.3rem 1rem;display:grid}.error-panel dt{color:#d7a5a5;font-weight:600}.result-panel{background:#131722;border:1px solid #232838;border-radius:8px;padding:1.25rem}.json-block{background:#0b0e14;border-radius:6px;padding:1rem;font-size:.85rem;overflow-x:auto}.analyze-section{border-top:1px solid #232838;margin-top:1.5rem;padding-top:1.5rem}.stage-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.stage-list li{color:#6b7180;background:#131722;border-radius:6px;padding:.5rem .75rem;font-size:.9rem}.stage-list .stage-current{color:#7fd0ff;background:#1c2536;font-weight:600}.stage-list .stage-done{color:#7fe0a0}.strategy-result-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.strategy-result-header h2{margin:0}.no-strategy-box{background:#1c1a10;border:1px solid #4a3f1a;border-radius:8px;margin-bottom:1rem;padding:1rem}.strategy-card{border-radius:var(--kv-radius-md,10px);background:var(--kv-surface,#131722);border:1px solid var(--kv-border,#232838);margin-bottom:1.25rem;padding:1.25rem}.strategy-card h3{margin-top:0}.strategy-meta{color:#a7adba;flex-wrap:wrap;gap:1.25rem;margin-bottom:1rem;font-size:.85rem;display:flex}.rule-section{margin-top:1rem}.rule-section h4{text-transform:uppercase;letter-spacing:.04em;color:#8b91a0;margin:0 0 .4rem;font-size:.85rem}.rule-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.rule-item{background:#0f131c;border:1px solid #1e2330;border-radius:6px;padding:.6rem .75rem}.rule-header{align-items:center;gap:.6rem;margin-bottom:.3rem;font-size:.78rem;display:flex}.badge{text-transform:uppercase;border-radius:999px;padding:.1rem .5rem;font-size:.7rem;font-weight:600}.badge-explicit{color:#7fe0a0;background:#17331f}.badge-inferred{color:#e0c67f;background:#332c17}.badge-visual{color:#7fbfe0;background:#17232f}.badge-ruletype-hard_rule{color:#7fe0a0;background:#17331f}.badge-ruletype-guideline{color:#7fbfe0;background:#17232f}.badge-ruletype-preference{color:#e0c67f;background:#332c17}.badge-ruletype-warning,.badge-ruletype-prohibition{color:#ff9b9b;background:#331717}.badge-ruletype-definition,.badge-ruletype-observation{color:#8b91a0;background:#1c2028}.badge-category{color:#8b91a0;text-transform:capitalize;background:#1c2028}.badge-scope-scoped{color:#e0c67f;text-transform:none;text-overflow:ellipsis;white-space:nowrap;background:#1c2028;max-width:220px;overflow:hidden}.confidence,.timestamp{color:#8b91a0}.support-level{text-transform:uppercase;color:#8b91a0;background:#1c2028;border-radius:999px;padding:.1rem .5rem;font-size:.68rem;font-weight:600}.support-conflicting{color:#ff9b9b;background:#331717}.support-variant{color:#e0c67f;background:#332c17}.support-multi_source,.support-repeated_explicit{color:#7fe0a0;background:#17331f}.support-single_source,.support-inferred{color:#7fbfe0;background:#17232f}.coverage-banner{border-color:#262a33}.coverage-complete{background:#171f14;border-color:#3a4a2e}.coverage-partial{background:#1c1a10;border-color:#4a3f1a}.ci-tabs{position:static}.ci-tab-content{margin-top:.75rem}.rule-description{margin:0 0 .25rem}.rule-evidence{color:#8b91a0;margin:0;font-size:.85rem;font-style:italic}.rule-empty{color:#6b7180;margin:0;font-size:.85rem}.rule-conditions{color:#e0c67f;margin:0 0 .25rem;font-size:.85rem}.rule-numerical-values{flex-wrap:wrap;gap:.4rem;margin:0 0 .4rem;display:flex}.rule-numerical-values .mono-box{padding:.15rem .5rem;font-size:.8rem}.knowledge-section{margin-bottom:1.25rem}.knowledge-section-title{color:#d4d8e0;margin:0 0 .5rem;font-size:.95rem}.plain-list{color:#c7cad3;margin:0;padding-left:1.2rem;font-size:.9rem}.course-section{border-bottom:1px solid #262a33;margin-bottom:2rem;padding-bottom:1.5rem}.course-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.course-actions{align-items:center;gap:.75rem;display:flex}.link-button{color:var(--kv-accent,#c9a876);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;font-family:inherit;font-weight:600;text-decoration:none}.link-button:hover:not(:disabled){text-decoration:underline}.link-button:disabled{color:var(--kv-text-muted,#6b6b74);opacity:1;cursor:not-allowed;background:0 0}.setup-disclosure{background:#14161b;border:1px solid #262a33;border-radius:8px;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.88rem}.setup-disclosure summary{cursor:pointer;color:#a7adba}.setup-body{flex-direction:column;align-items:flex-start;gap:.6rem;margin-top:.75rem;display:flex}.setup-result{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.mono-box{color:#7fe0a0;background:#1c2028;border:1px solid #2e3440;border-radius:6px;padding:.35rem .6rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.mono-box-illustrative{color:#e0c67f;border-color:#3a331a}.dashboard-summary{background:#14161b;border:1px solid #262a33;border-radius:8px;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-bottom:1.25rem;padding:.75rem 1rem;display:flex}.dashboard-tiles{flex:420px;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:.5rem 1rem;display:grid}.dashboard-tile{text-align:center}.dashboard-tile-value{font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:700}.dashboard-tile-label{color:#8b91a0;text-transform:uppercase;letter-spacing:.03em;font-size:.66rem}.dashboard-spend{color:#c7cad3;border-left:1px solid #262a33;flex-wrap:wrap;gap:.25rem 1.25rem;padding-left:1.25rem;font-size:.8rem;display:flex}.course-toolbar{z-index:30;background:#14161b;border:1px solid #262a33;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin:.75rem 0;padding:.65rem .85rem;display:flex;position:sticky;top:0}.toolbar-filters{flex-wrap:wrap;flex:100%;gap:.5rem;display:flex}.toolbar-search{flex:200px;min-width:140px}.toolbar-filters select{color:inherit;background:#171a21;border:1px solid #2b2f3a;border-radius:6px;padding:.5rem .6rem;font-size:.85rem}.toolbar-selection-actions,.toolbar-primary-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.toolbar-primary-actions button:disabled{background:var(--kv-surface-2,#1a1a1f);border:1px solid var(--kv-border,#26262b);color:var(--kv-text-muted,#6b6b74);opacity:1;cursor:not-allowed}.toolbar-primary-actions button{margin-top:0}.batch-confirm{background:#171f14;border:1px solid #3a4a2e;border-radius:8px;margin-bottom:.75rem;padding:.85rem 1rem}.batch-confirm p{margin:.15rem 0;font-size:.88rem}.batch-confirm-actions{gap:.75rem;margin-top:.6rem;display:flex}.batch-confirm-actions button{margin-top:0}.status-badge{text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:.15rem .55rem;font-size:.68rem;font-weight:600;display:inline-block}.status-neutral{color:#a7adba;background:#262a33}.status-queued{color:#e0c67f;background:#332c17}.status-processing{color:#7fbfe0;background:#17232f}.status-success{color:#7fe0a0;background:#17331f}.status-error{color:#ff9b9b;background:#331717}.heartbeat-hint{font-size:.72rem}.heartbeat-waiting{color:#8b91a0}.heartbeat-no_heartbeat{color:#e0c67f}.heartbeat-recovery{color:#e0a37f;font-weight:600}.progress-cell{flex-direction:column;line-height:1.3;display:flex}.progress-stage{font-size:.82rem}.progress-detail{color:#8b91a0;font-variant-numeric:tabular-nums;font-size:.72rem}.row-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.row-error{color:#ff9b9b;cursor:help}.row-menu{display:inline-block;position:relative}.row-menu-trigger{color:#a7adba;letter-spacing:.05em;background:0 0;border:1px solid #2b2f3a;border-radius:6px;margin-top:0;padding:.2rem .5rem;font-weight:700}.row-menu-list{z-index:40;background:#1a1d24;border:1px solid #2b2f3a;border-radius:8px;flex-direction:column;min-width:150px;padding:.3rem;display:flex;position:absolute;top:calc(100% + .25rem);right:0;box-shadow:0 8px 24px #0006}.row-menu-item{text-align:left;color:inherit;background:0 0;border:none;border-radius:5px;margin-top:0;padding:.45rem .6rem;font-size:.85rem;font-weight:400}.row-menu-item:hover:not(:disabled){background:#262a33}.course-table td.col-lesson,.course-table td.col-result,.course-table td.col-chapter{white-space:normal}col.col-checkbox,col.col-index{width:2.5%}col.col-lesson{width:22%}col.col-chapter{width:10%}col.col-duration{width:9%}col.col-status{width:15%}col.col-result{width:12%}col.col-analyzed{width:9%}col.col-cost{width:6%}col.col-actions{width:12%}.status-cell{flex-direction:column;gap:.15rem;display:flex}.status-cell-top{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.course-table .status-badge{white-space:normal}.col-sort-button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;margin-top:0;padding:0}.col-sort-button:hover{color:#d4d8e0}.clamp-2-lines{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.table-scroll-area{border:1px solid #262a33;border-radius:8px;max-height:68vh;margin-top:.5rem;overflow:hidden auto}.course-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:.85rem}.course-table th,.course-table td{box-sizing:border-box;text-align:left;white-space:nowrap;text-overflow:ellipsis;vertical-align:top;border-bottom:1px solid #262a33;padding:.5rem .6rem;overflow:hidden}.course-table thead th{z-index:10;color:#a7adba;text-transform:uppercase;letter-spacing:.03em;background:#171a20;font-size:.72rem;position:sticky;top:0}.course-table tr:last-child td{border-bottom:none}.pagination-bar{color:#a7adba;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.6rem;font-size:.85rem;display:flex}.pagination-bar select{color:inherit;background:#171a21;border:1px solid #2b2f3a;border-radius:6px;padding:.3rem .5rem}.pagination-controls{align-items:center;gap:.75rem;display:flex}.pagination-controls button{margin-top:0}.lesson-cards{flex-direction:column;gap:.6rem;margin-top:.5rem;display:flex}.lesson-card{background:#14161b;border:1px solid #262a33;border-radius:8px;flex-direction:column;gap:.4rem;padding:.75rem;display:flex}.lesson-card-top{align-items:flex-start;gap:.5rem;display:flex}.lesson-card-title{font-weight:600}.lesson-card-meta{color:#c7cad3;align-items:center;gap:.6rem;font-size:.85rem;display:flex}.lesson-card-progress{color:#8b91a0;font-size:.8rem}@media (width<=720px){.course-toolbar{flex-direction:column;align-items:stretch}}.course-layout{align-items:stretch;gap:1rem;display:flex}.course-main{flex:auto;min-width:0;container:course-main/inline-size}@container course-main (width<=1000px){.hide-narrow-tier1{display:none}}@container course-main (width<=820px){.hide-narrow-tier2{display:none}}.drawer-backdrop{display:none}.lesson-drawer{background:#14161b;border-left:1px solid #262a33;flex-direction:column;flex:0 0 min(480px,38vw);display:flex}@media (width<=720px){.drawer-backdrop{z-index:90;background:#0506098c;display:block;position:fixed;inset:0}.lesson-drawer{z-index:91;flex-basis:auto;width:min(480px,100vw);position:fixed;top:0;bottom:0;right:0;box-shadow:-12px 0 32px #00000059}}@media (width<=640px){.lesson-drawer{width:100vw}}.drawer-header{border-bottom:1px solid #262a33;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;display:flex}.drawer-title{margin:0;font-size:1.05rem}.drawer-subtitle{color:#8b91a0;margin:.2rem 0 0;font-size:.82rem}.drawer-close{color:#a7adba;background:0 0;border:1px solid #2b2f3a;border-radius:6px;margin-top:0;padding:.3rem .55rem}.drawer-body{flex-direction:column;gap:.9rem;padding:1rem 1.25rem 1.5rem;display:flex;overflow-y:auto}.drawer-meta-grid{grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0;font-size:.85rem;display:grid}.drawer-meta-grid dt{color:#8b91a0}.drawer-meta-grid dd{margin:0}.drawer-rule-counts{flex-wrap:wrap;gap:.4rem;display:flex}.drawer-summary{color:#c7cad3;margin:0;font-size:.9rem}.drawer-strategy-names{margin:0}.detail-actions{align-items:center;gap:1rem;display:flex}.raw-json-disclosure summary{cursor:pointer;color:#a7adba;font-weight:600}.raw-json-actions{gap:.75rem;margin:.5rem 0;display:flex}.json-block-scroll{max-height:350px;overflow:auto}.synthesis-progress-card{background:#171a21;border:1px solid #2b2f3a;border-radius:8px;flex-direction:column;gap:.5rem;margin-top:1rem;padding:1rem 1.1rem;display:flex}.synthesis-progress-header{justify-content:space-between;align-items:baseline;display:flex}.synthesis-progress-header h3{margin:0}.synthesis-progress-stage-count{color:#8b91a0;font-size:.85rem}.synthesis-progress-stage-label{margin:0;font-weight:600}.synthesis-progress-count{color:#a7adba;margin:0;font-size:.9rem}.synthesis-progress-bar-track{background:#23262f;border-radius:999px;height:10px;position:relative;overflow:hidden}.synthesis-progress-bar-fill{background:#4b7bec;border-radius:999px;height:100%;transition:width .4s}.synthesis-progress-bar-label{color:#8b91a0;font-size:.78rem;position:absolute;top:14px;right:0}.synthesis-progress-meta{color:#a7adba;gap:1.25rem;margin-top:.75rem;font-size:.85rem;display:flex}.synthesis-heartbeat-notice{border-radius:6px;margin:0;padding:.4rem .6rem;font-size:.82rem}.synthesis-heartbeat-waiting_for_update{color:#8b91a0;background:#1b1e26}.synthesis-heartbeat-no_recent_heartbeat,.synthesis-heartbeat-waiting_for_recovery{color:#e0c67f;background:#1c1a10}.synthesis-stage-timeline{flex-direction:column;gap:.3rem;margin:.5rem 0 0;padding:0;font-size:.85rem;list-style:none;display:flex}.synthesis-stage-timeline li{align-items:center;gap:.5rem;display:flex}.synthesis-stage-marker{text-align:center;width:1.1em}.synthesis-stage-done{color:#7fe0a0}.synthesis-stage-active{color:#4b7bec;font-weight:600}.synthesis-stage-pending{color:#6b7180}.synthesis-completed-summary{background:#171f14;border:1px solid #3a4a2e;border-radius:8px;flex-wrap:wrap;align-items:center;gap:1.25rem;margin-top:1rem;padding:.65rem 1rem;font-size:.88rem;display:flex}.synthesis-completed-summary strong{color:#7fe0a0}.synthesis-failed-panel{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.synthesis-failed-panel button{margin-top:.5rem}:root{--kv-bg:#0a0a0c;--kv-surface:#131316;--kv-surface-2:#1a1a1f;--kv-surface-hover:#1f1f25;--kv-border:#26262b;--kv-border-strong:#35353c;--kv-text:#ebebee;--kv-text-secondary:#a3a3ad;--kv-text-muted:#6b6b74;--kv-accent:#c9a876;--kv-accent-hover:#dabb8d;--kv-accent-soft:#c9a8761f;--kv-accent-border:#c9a87659;--kv-success:#7fb88f;--kv-warning:#cf9a55;--kv-error:#d97b6f;--kv-success-soft:#7fb88f1f;--kv-warning-soft:#cf9a551f;--kv-error-soft:#d97b6f1f;--kv-radius-sm:7px;--kv-radius-md:11px;--kv-radius-lg:18px;--kv-radius-pill:999px;--kv-space-1:4px;--kv-space-2:8px;--kv-space-3:12px;--kv-space-4:16px;--kv-space-5:24px;--kv-space-6:32px;--kv-space-7:48px;--kv-space-8:64px;--kv-shadow-sm:0 1px 2px #00000059;--kv-shadow-md:0 6px 20px -6px #00000080;--kv-shadow-lg:0 20px 60px -12px #0009;--kv-font:-apple-system, "SF Pro Text", "Inter", system-ui, "Segoe UI", sans-serif}.knovera-shell,.knovera-landing{font-family:var(--kv-font)}.kv-card{background:var(--kv-surface);border:1px solid var(--kv-border);border-radius:var(--kv-radius-md);box-shadow:var(--kv-shadow-sm)}.knovera-cta,.knovera-cta-secondary{cursor:pointer;align-items:center;gap:.5rem;font-family:inherit;transition:background-color .12s,border-color .12s,color .12s,transform .12s;display:inline-flex}.knovera-cta{background:linear-gradient(155deg, var(--kv-accent), #b8925f);color:#16130c;border-radius:var(--kv-radius-md);border:none;padding:.8rem 1.5rem;font-size:.98rem;font-weight:600;box-shadow:0 10px 30px -10px #c9a87673}.knovera-cta:hover{background:linear-gradient(155deg, var(--kv-accent-hover), #c49f6c);transform:translateY(-1px)}.knovera-cta-arrow{transition:transform .15s}.knovera-cta:hover .knovera-cta-arrow{transform:translate(3px)}.knovera-cta-secondary{background:var(--kv-surface-2);color:var(--kv-text);border:1px solid var(--kv-border);border-radius:var(--kv-radius-sm);padding:.55rem 1.05rem;font-size:.87rem;font-weight:600}.knovera-cta-secondary:hover:not(:disabled){border-color:var(--kv-border-strong);background:var(--kv-surface-hover)}.knovera-cta-secondary:disabled{opacity:.45;cursor:not-allowed}.kv-badge{letter-spacing:.02em;border-radius:var(--kv-radius-pill);white-space:nowrap;align-items:center;gap:.3rem;padding:.22rem .65rem;font-size:.7rem;font-weight:600;display:inline-flex}.kv-badge-accent{color:var(--kv-accent);background:var(--kv-accent-soft);border:1px solid var(--kv-accent-border)}.kv-badge-success{color:var(--kv-success);background:var(--kv-success-soft)}.kv-badge-muted{color:var(--kv-text-muted);background:var(--kv-surface-2);border:1px solid var(--kv-border)}.kv-badge-danger{color:var(--kv-error);background:var(--kv-error-soft)}.kv-wordmark{color:var(--kv-text);align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.kv-wordmark-text{letter-spacing:-.01em;font-size:1.05rem;font-weight:650}.kv-mark{color:var(--kv-accent);flex-shrink:0}.knovera-shell{background:var(--kv-bg);width:100%;min-height:100vh;color:var(--kv-text);flex-direction:column;display:flex}.knovera-topnav{align-items:center;gap:var(--kv-space-6);padding:.9rem var(--kv-space-6);border-bottom:1px solid var(--kv-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#0a0a0cd9;display:flex;position:sticky;top:0}.knovera-topnav-brand{margin-right:var(--kv-space-2)}.knovera-topnav-links{flex:1;gap:.2rem;display:flex}.knovera-topnav-link{color:var(--kv-text-secondary);border-radius:var(--kv-radius-sm);padding:.4rem .75rem;font-size:.88rem;font-weight:550;text-decoration:none;transition:background-color .12s,color .12s}.knovera-topnav-link:hover,.knovera-topnav-link.active{color:var(--kv-text);background:var(--kv-surface-2)}.kv-topnav-avatar{background:var(--kv-surface-2);border:1px solid var(--kv-border);width:30px;height:30px;color:var(--kv-text-secondary);border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;font-size:.78rem;font-weight:600;display:flex}button.kv-topnav-avatar{cursor:pointer}button.kv-topnav-avatar:hover{border-color:var(--kv-accent);color:var(--kv-accent)}.kv-account-menu{display:inline-block;position:relative}.kv-account-menu-list{z-index:40;background:var(--kv-surface-2);border:1px solid var(--kv-border);border-radius:10px;flex-direction:column;min-width:200px;padding:.4rem;display:flex;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 8px 24px #0006}.kv-account-menu-email{color:var(--kv-text-secondary);word-break:break-all;padding:.4rem .6rem .3rem;font-size:.78rem}.kv-account-menu-divider{background:var(--kv-border);height:1px;margin:.2rem .4rem}.kv-account-menu-item{text-align:left;color:var(--kv-text);cursor:pointer;background:0 0;border:none;border-radius:6px;margin-top:0;padding:.45rem .6rem;font-size:.85rem;font-weight:400}.kv-account-menu-item:hover{background:var(--kv-surface-hover);color:var(--kv-accent)}.knovera-main{width:100%;max-width:1320px;padding:var(--kv-space-6) var(--kv-space-6) var(--kv-space-8);box-sizing:border-box;flex:1;margin:0 auto}.knovera-page{gap:var(--kv-space-6);flex-direction:column;display:flex}.knovera-landing{background:var(--kv-bg);width:100%;min-height:100vh;color:var(--kv-text);box-sizing:border-box;flex-direction:column;display:flex}.knovera-landing-topbar{padding:var(--kv-space-5) var(--kv-space-6) 0}.knovera-landing-body{width:100%;max-width:1320px;padding:var(--kv-space-7) var(--kv-space-6);box-sizing:border-box;flex:1;align-items:center;margin:0 auto;display:flex}.knovera-landing-grid{align-items:center;gap:var(--kv-space-8);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);width:100%;display:grid}.knovera-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--kv-accent);margin:0 0 var(--kv-space-5);align-items:center;gap:.55rem;font-size:.72rem;font-weight:650;display:inline-flex}.knovera-eyebrow:before{content:"";background:var(--kv-accent);width:16px;height:1px;display:inline-block}.knovera-landing-hero{letter-spacing:-.02em;color:var(--kv-text);margin:0 0 var(--kv-space-5);font-size:clamp(2.6rem,5vw,4.1rem);font-weight:620;line-height:1.06}.knovera-landing-support{color:var(--kv-text-secondary);max-width:46ch;margin:0 0 var(--kv-space-6);font-size:1.08rem;line-height:1.6}.knovera-landing-support strong{color:var(--kv-text);font-weight:620}.knovera-landing-cta-row{align-items:flex-start;gap:var(--kv-space-4);flex-direction:column;display:flex}.knovera-landing-microcopy{color:var(--kv-text-muted);letter-spacing:.02em;align-items:center;gap:.4rem;font-size:.82rem;display:flex}.knovera-graph-wrap{aspect-ratio:1;justify-content:center;align-items:center;max-height:520px;display:flex;position:relative}.knovera-graph-svg{width:100%;height:100%}.knovera-graph-edge{stroke:var(--kv-border-strong);stroke-width:1px;opacity:.55}.knovera-graph-edge-active{stroke:var(--kv-accent);stroke-width:1.1px;opacity:.5}.knovera-graph-node{fill:var(--kv-surface-2);stroke:var(--kv-border-strong);stroke-width:1px}.knovera-graph-node-core{fill:var(--kv-accent);stroke:none}.knovera-graph-pulse{transform-origin:50%;transform-box:fill-box;animation:4.5s ease-in-out infinite kv-pulse}.knovera-graph-pulse-delay{animation-delay:1.6s}.knovera-graph-pulse-delay-2{animation-delay:3s}@keyframes kv-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.35)}}@media (prefers-reduced-motion:reduce){.knovera-graph-pulse,.knovera-graph-pulse-delay,.knovera-graph-pulse-delay-2{animation:none}}.knovera-page-header{justify-content:space-between;align-items:center;gap:var(--kv-space-4);flex-wrap:wrap;display:flex}.knovera-page-title{letter-spacing:-.01em;margin:0;font-size:1.9rem;font-weight:620}.knovera-project-grid{gap:var(--kv-space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.knovera-empty-state{padding:var(--kv-space-6) var(--kv-space-5);color:var(--kv-text-muted);text-align:center}.knovera-empty-state p{margin:0 0 var(--kv-space-3)}.knovera-empty-state p:last-child{margin-bottom:0}.knovera-project-card{gap:var(--kv-space-4);padding:var(--kv-space-5);flex-direction:column;transition:border-color .15s,background-color .15s;display:flex}.knovera-project-card.operational:hover{border-color:var(--kv-border-strong);background:var(--kv-surface-hover)}.knovera-project-card-top{justify-content:space-between;align-items:flex-start;gap:var(--kv-space-3);flex-wrap:wrap;display:flex}.knovera-project-card-top h2{margin:0 0 .3rem;font-size:1.2rem;font-weight:600}.knovera-project-card-heading{flex:10rem;min-width:0}.knovera-project-card-badges{align-items:flex-end;gap:var(--kv-space-2);flex-direction:column;max-width:100%;margin-left:auto;display:flex}.knovera-project-card-badges .kv-badge{white-space:normal;text-align:center;line-height:1.25}.knovera-project-card-source{color:var(--kv-text-muted);margin:0;font-size:.83rem}.knovera-project-card-stats{gap:var(--kv-space-2) var(--kv-space-5);padding-top:var(--kv-space-3);border-top:1px solid var(--kv-border);flex-wrap:wrap;display:flex}.knovera-project-card-stat{flex-direction:column;gap:.1rem;display:flex}.knovera-project-card-stat-value{color:var(--kv-text);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:620}.knovera-project-card-stat-label{color:var(--kv-text-muted);font-size:.72rem}.knovera-project-card-footer{justify-content:flex-end;display:flex}.knovera-open-link{color:var(--kv-accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:.35rem;padding:0;font-size:.87rem;font-weight:600;display:inline-flex}.knovera-open-link:disabled{color:var(--kv-text-muted);cursor:not-allowed}.knovera-open-link:hover:not(:disabled) .knovera-cta-arrow{transform:translate(3px)}.knovera-project-card.secondary{box-shadow:none;background:0 0;border-style:dashed;justify-content:center;align-items:flex-start;min-height:132px}.knovera-new-project-button{align-items:flex-start;gap:var(--kv-space-2);color:var(--kv-text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;width:100%;font-family:inherit;display:flex}.knovera-new-project-button:hover{color:var(--kv-text)}.knovera-new-project-plus{border:1px solid var(--kv-border-strong);width:30px;height:30px;color:var(--kv-text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.knovera-dialog-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;padding:var(--kv-space-5);background:#060608b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.knovera-dialog{background:var(--kv-surface);border:1px solid var(--kv-border);border-radius:var(--kv-radius-lg);box-shadow:var(--kv-shadow-lg);padding:var(--kv-space-6);width:100%;max-width:420px}.knovera-dialog h2{margin:0 0 .25rem;font-size:1.15rem;font-weight:620}.knovera-dialog-subtitle{color:var(--kv-text-secondary);margin:0 0 var(--kv-space-4);font-size:.87rem}.knovera-type-options{gap:var(--kv-space-2);flex-direction:column;display:flex}.knovera-type-option{justify-content:space-between;align-items:center;gap:var(--kv-space-3);background:var(--kv-surface-2);border:1px solid var(--kv-border);border-radius:var(--kv-radius-sm);color:var(--kv-text);cursor:pointer;text-align:left;padding:.75rem 1rem;font-family:inherit;font-size:.9rem;font-weight:550;transition:border-color .12s;display:flex}.knovera-type-option.selected{border-color:var(--kv-accent-border);background:var(--kv-accent-soft)}.knovera-type-option-name{flex:1}.knovera-type-option-text{flex-direction:column;flex:1;gap:.2rem;display:flex}.knovera-type-option-desc{color:var(--kv-text-secondary);font-size:.8rem;font-weight:400}.knovera-field-error{color:var(--kv-danger,#d9534f);margin:.3rem 0 0;font-size:.82rem}.knovera-dialog-notice{margin-top:var(--kv-space-4);color:var(--kv-warning);background:var(--kv-warning-soft);border-radius:var(--kv-radius-sm);border:1px solid #cf9a554d;padding:.65rem .85rem;font-size:.84rem}.knovera-dialog-actions{margin-top:var(--kv-space-5);justify-content:flex-end;display:flex}.knovera-youtube-url-field{margin-top:var(--kv-space-4);flex-direction:column;gap:.4rem;display:flex}.knovera-youtube-url-field label{margin-top:0}.knovera-youtube-url-field input{box-sizing:border-box;width:100%}.knovera-youtube-dialog-actions{gap:var(--kv-space-3)}.knovera-login-body{width:100%;padding:var(--kv-space-6);box-sizing:border-box;flex:1;justify-content:center;align-items:center;display:flex}.knovera-login-card{width:100%;max-width:380px;padding:var(--kv-space-6);flex-direction:column;display:flex}.knovera-login-title{color:var(--kv-text);margin:0 0 .25rem;font-size:1.3rem;font-weight:620}.knovera-login-subtitle{margin:0 0 var(--kv-space-5);color:var(--kv-text-secondary);font-size:.92rem}.knovera-login-card label{margin-top:var(--kv-space-4);margin-bottom:var(--kv-space-2);color:var(--kv-text-secondary);font-size:.85rem}.knovera-login-card input{box-sizing:border-box;width:100%}.knovera-login-error{margin:var(--kv-space-4) 0 0;padding:var(--kv-space-3);border-radius:var(--kv-radius);background:var(--kv-error-soft);color:var(--kv-error);font-size:.85rem}.knovera-login-submit{width:100%;margin-top:var(--kv-space-5)}.knovera-project-header{gap:var(--kv-space-3);flex-direction:column;display:flex}.knovera-back-link{color:var(--kv-text-muted);align-items:center;gap:.3rem;width:fit-content;font-size:.83rem;text-decoration:none;transition:color .12s;display:inline-flex}.knovera-back-link:hover{color:var(--kv-text-secondary)}.knovera-project-title-row{align-items:baseline;gap:var(--kv-space-3);flex-wrap:wrap;display:flex}.knovera-project-header h1{letter-spacing:-.01em;margin:0;font-size:1.7rem;font-weight:620}.knovera-project-type{margin:0}.knovera-segmented-tabs{background:var(--kv-surface);border:1px solid var(--kv-border);border-radius:var(--kv-radius-md);width:fit-content;margin-top:var(--kv-space-2);gap:.15rem;padding:.2rem;display:inline-flex}.knovera-project-tab{color:var(--kv-text-secondary);border-radius:var(--kv-radius-sm);padding:.45rem 1rem;font-size:.86rem;font-weight:570;text-decoration:none;transition:background-color .12s,color .12s}.knovera-project-tab:hover{color:var(--kv-text)}.knovera-project-tab.active{color:var(--kv-text);background:var(--kv-surface-2);box-shadow:var(--kv-shadow-sm)}.knovera-section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--kv-text-muted);margin:0;font-size:.78rem;font-weight:650}.knovera-provider-grid{gap:var(--kv-space-4);grid-template-columns:repeat(auto-fill,minmax(230px,1fr));display:grid}.knovera-sources-loading{color:var(--kv-text-muted);margin:0;font-size:.83rem}.knovera-provider-card{padding:var(--kv-space-4);gap:var(--kv-space-3);flex-direction:column;display:flex}.knovera-provider-card.operational{border-color:var(--kv-accent-border);background:linear-gradient(165deg, var(--kv-accent-soft), var(--kv-surface) 55%)}.knovera-provider-card-top{justify-content:space-between;align-items:center;gap:var(--kv-space-2);display:flex}.knovera-provider-card-icon-row{align-items:center;gap:var(--kv-space-2);display:flex}.knovera-provider-icon{width:22px;height:22px;color:var(--kv-text-secondary);flex-shrink:0}.knovera-provider-card.operational .knovera-provider-icon{color:var(--kv-accent)}.knovera-provider-card-top h3{margin:0;font-size:.98rem;font-weight:600}.knovera-provider-desc{color:var(--kv-text-muted);margin:0;font-size:.84rem;line-height:1.5}.knovera-provider-connect-button{margin-top:var(--kv-space-2);border-radius:var(--kv-radius);border:1px solid var(--kv-border);background:var(--kv-surface-2);color:var(--kv-text);cursor:pointer;align-self:flex-start;padding:.4rem .75rem;font-size:.82rem;font-weight:600}.knovera-provider-connect-button:hover{border-color:var(--kv-accent);color:var(--kv-accent)}.knovera-youtube-source-list{margin:0 0 var(--kv-space-4);gap:var(--kv-space-2);flex-direction:column;padding:0;list-style:none;display:flex}.knovera-youtube-source-row{padding:var(--kv-space-3) var(--kv-space-4);justify-content:space-between;align-items:center;gap:var(--kv-space-3);display:flex}.knovera-youtube-source-main{flex-direction:column;gap:.15rem;min-width:0;display:flex}.knovera-youtube-source-label{letter-spacing:.04em;text-transform:uppercase;color:var(--kv-text-muted);font-size:.72rem;font-weight:650}.knovera-youtube-source-actions{align-items:center;gap:var(--kv-space-3);flex-shrink:0;display:flex}.knovera-youtube-source-title{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.knovera-youtube-source-provenance{color:var(--kv-text-muted);margin:0;font-size:.78rem}.knovera-youtube-source-provenance summary{cursor:pointer}.knovera-youtube-source-provenance ul{margin:.25rem 0 0;padding-left:1.1rem;list-style:outside}.knovera-youtube-source-provenance-multiline{flex-direction:column;gap:.1rem;display:flex}.knovera-diagnostic-tools{border:1px solid var(--kv-border);border-radius:var(--kv-radius-md);background:var(--kv-surface);padding:.85rem 1.1rem}.knovera-diagnostic-tools summary{cursor:pointer;color:var(--kv-text-secondary);font-size:.85rem;font-weight:570;list-style:none}.knovera-diagnostic-tools summary::-webkit-details-marker{display:none}.knovera-diagnostic-tools summary:before{content:"▸ ";color:var(--kv-text-muted)}.knovera-diagnostic-tools[open] summary:before{content:"▾ "}.knovera-diagnostic-tools[open] summary{margin-bottom:.9rem}.knovera-usage-month{color:var(--kv-text-muted);margin:calc(-1 * var(--kv-space-3)) 0 0;font-size:.86rem}.knovera-usage-table{flex-direction:column;display:flex;overflow:hidden}.knovera-usage-row{justify-content:space-between;align-items:center;gap:var(--kv-space-4);padding:var(--kv-space-4) var(--kv-space-5);display:flex}.knovera-usage-row+.knovera-usage-row{border-top:1px solid var(--kv-border)}.knovera-usage-project{font-size:.94rem;font-weight:600}.knovera-usage-pending{color:var(--kv-text-muted);font-size:.83rem}.knovera-usage-total-card{gap:var(--kv-space-2);padding:var(--kv-space-5);flex-direction:column;display:flex}.knovera-usage-total-label{text-transform:uppercase;letter-spacing:.04em;color:var(--kv-text-muted);font-size:.72rem}.knovera-usage-total-value{font-variant-numeric:tabular-nums;color:var(--kv-accent);font-size:2.1rem;font-weight:650}.knovera-usage-total-breakdown{gap:var(--kv-space-5);color:var(--kv-text-secondary);font-size:.86rem;display:flex}.knovera-usage-total-breakdown strong{color:var(--kv-text);font-variant-numeric:tabular-nums}.knovera-usage-zero-note{margin-top:calc(-1 * var(--kv-space-2))}.knovera-usage-project-list{gap:var(--kv-space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.knovera-usage-project-card{gap:var(--kv-space-3);padding:var(--kv-space-5);flex-direction:column;display:flex}.knovera-usage-project-card-top{justify-content:space-between;align-items:center;gap:var(--kv-space-3);display:flex}.knovera-usage-project-card-top h3{margin:0;font-size:1.02rem}.knovera-usage-project-card-costs{gap:var(--kv-space-1);color:var(--kv-text-secondary);flex-direction:column;font-size:.85rem;display:flex}.knovera-usage-project-card-costs strong{color:var(--kv-text);font-variant-numeric:tabular-nums;float:right}.knovera-usage-project-card-total{border-top:1px solid var(--kv-border);padding-top:var(--kv-space-2);color:var(--kv-text)}.knovera-usage-project-card-meta{color:var(--kv-text-muted);margin:0;font-size:.78rem}.ci-tabs{background:var(--kv-surface);border:1px solid var(--kv-border);border-radius:var(--kv-radius-md);scrollbar-width:thin;gap:.15rem;width:fit-content;max-width:100%;padding:.25rem;display:flex;overflow-x:auto}.ci-tab{color:var(--kv-text-secondary);border-radius:var(--kv-radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex-shrink:0;padding:.5rem 1rem;font-family:inherit;font-size:.85rem;font-weight:570;transition:background-color .12s,color .12s}.ci-tab:hover{color:var(--kv-text)}.ci-tab.active{color:var(--kv-text);background:var(--kv-surface-2);box-shadow:var(--kv-shadow-sm)}@media (width<=900px){.knovera-landing-grid{grid-template-columns:1fr}.knovera-graph-wrap{order:-1;max-height:320px}}@media (width<=640px){.knovera-topnav{padding:.85rem var(--kv-space-4);gap:var(--kv-space-4)}.knovera-main{padding:var(--kv-space-5) var(--kv-space-4) var(--kv-space-7)}.knovera-landing-body{padding:var(--kv-space-6) var(--kv-space-4)}.knovera-landing-topbar{padding:var(--kv-space-4) var(--kv-space-4) 0}.knovera-project-header h1{font-size:1.4rem}.knovera-page-title{font-size:1.5rem}}.link-button.danger{color:var(--kv-danger,#d9534f)}.knovera-synthesis-set-confirm-delete,.knovera-synthesis-set-detail-actions{align-items:center;gap:var(--kv-space-3);flex-wrap:wrap;display:flex}.knovera-synthesis-set-rename-form{gap:var(--kv-space-2);padding:var(--kv-space-4);margin-bottom:var(--kv-space-4);flex-direction:column;display:flex}.knovera-synthesis-set-rename-form label{color:var(--kv-text-muted);font-size:.78rem;font-weight:620}.knovera-synthesis-set-source-checkbox{align-items:center;gap:var(--kv-space-3);cursor:pointer;min-width:0;display:flex}.knovera-synthesis-set-source-checkbox input[type=checkbox]{cursor:pointer;flex-shrink:0;width:18px;height:18px}.knovera-provider-card-actions{align-items:center;gap:var(--kv-space-3);margin-top:var(--kv-space-2);flex-wrap:wrap;display:flex}.knovera-batch-import-textarea{width:100%;padding:var(--kv-space-3);border-radius:var(--kv-radius);border:1px solid var(--kv-border);background:var(--kv-surface-2);color:var(--kv-text);resize:vertical;font-family:inherit;font-size:.88rem}.knovera-batch-import-results{margin:var(--kv-space-3) 0;gap:var(--kv-space-2);flex-direction:column;max-height:260px;padding:0;list-style:none;display:flex;overflow-y:auto}.knovera-batch-import-results li{align-items:center;gap:var(--kv-space-3);font-size:.85rem;display:flex}.knovera-batch-import-url{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}
