:root{color:#19202a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html,body,#root{width:100%;height:100%;overflow:hidden}*{box-sizing:border-box;scrollbar-color:color-mix(in srgb, var(--accent) 10%, transparent) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--accent) 10%, transparent);background-clip:content-box;border:3px solid #0000;border-radius:999px}body{margin:0}button,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.theme-root{--bg:#f5f7f8;--panel:#fff;--panel-muted:#f0f3f5;--text:#17202a;--muted:#64707f;--faint:#8b95a1;--border:#dfe5ea;--border-strong:#c9d2da;--primary:#176b87;--primary-strong:#0f556c;--primary-soft:#e4f3f6;--accent:#bcbcbc;--shadow:0 18px 55px #14232d14;--focus:0 0 0 3px #176b872e;height:100svh;color:var(--text);background:linear-gradient(180deg, #ffffffb8, #fff0), var(--bg);overflow:hidden}.theme-root[data-theme=dark]{--bg:#111418;--panel:#191e24;--panel-muted:#20262e;--text:#edf2f5;--muted:#a8b2bd;--faint:#7d8995;--border:#2b333c;--border-strong:#3a4550;--primary:#65c7d6;--primary-strong:#8bdde8;--primary-soft:#16343b;--accent:#bcbcbc;--shadow:0 18px 55px #00000042;--focus:0 0 0 3px #65c7d638;background:linear-gradient(180deg, #222830e6, #11141800), var(--bg)}.app-shell{grid-template-columns:var(--left-panel-width,280px) minmax(0, 1fr) var(--right-panel-width,340px);grid-template-rows:minmax(0,1fr);gap:16px;height:100%;min-height:0;padding:16px;transition:grid-template-columns .22s;display:grid;position:relative;overflow:hidden}.is-resizing-panel .app-shell{transition:none}.sidebar,.editor-shell{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow);border-radius:8px}.sidebar{flex-direction:column;min-width:0;min-height:0;padding:18px;transition:padding .22s,border-color .22s,box-shadow .22s;display:flex;overflow:hidden}.sidebar.is-collapsed{align-items:center;padding:12px 8px}.sidebar.is-collapsed .panel-header{justify-content:center;width:100%;margin-bottom:0}.sidebar.is-collapsed .panel-title{display:none}.panel-header-actions{flex:none;align-items:center;gap:8px;display:flex}.panel-resize-handle{z-index:10;cursor:col-resize;touch-action:none;width:12px;transition:left .22s,right .22s,opacity .16s;position:absolute;top:16px;bottom:16px}.panel-resize-handle:before{content:"";background:0 0;border-radius:999px;width:2px;transition:background .14s;position:absolute;top:12px;bottom:12px;left:5px}.panel-resize-handle:hover:before{background:var(--primary)}.panel-resize-handle-left{left:calc(16px + var(--left-panel-width) + 2px)}.panel-resize-handle-right{right:calc(16px + var(--right-panel-width) + 2px)}.is-resizing-panel{cursor:col-resize;-webkit-user-select:none;user-select:none}.is-resizing-panel .panel-resize-handle{transition:none}@media (prefers-reduced-motion:reduce){.app-shell,.sidebar,.panel-resize-handle{transition:none}}.panel-header,.workspace-header,.editor-toolbar,.editor-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.panel-header{margin-bottom:18px}.eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:.72rem;font-weight:800}h1,h2,h3,p{margin:0}h1{letter-spacing:0;max-width:620px;font-size:clamp(2rem,4vw,3.5rem);line-height:1}h2{font-size:1.2rem;line-height:1.2}h3{font-size:1.08rem}.icon{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex:none}.icon-button{border:1px solid var(--border);width:40px;height:40px;color:var(--text);background:var(--panel-muted);border-radius:8px;place-items:center;transition:border-color .16s,color .16s,transform .16s;display:inline-grid}.icon-button:hover{border-color:var(--border-strong);color:var(--primary);transform:translateY(-1px)}.icon-button:focus-visible{box-shadow:var(--focus);outline:none}.collapse-toggle .icon{transition:transform .16s}.workspace{flex-direction:column;gap:18px;min-width:0;height:100%;min-height:0;display:flex}.workspace-header{flex:none;min-height:116px}.workspace-header h1{margin-top:2vh}.theme-toggle{align-self:flex-start}.editor-shell{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.editor-toolbar{border-bottom:1px solid var(--border);min-height:52px;color:var(--muted);padding:0 18px;font-size:.9rem;font-weight:700}.editor-toolbar-actions{flex:0 auto;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.editor-metadata{flex-wrap:wrap;align-items:center;gap:8px 14px;min-width:0;display:flex}.language-badge{min-height:28px;color:var(--primary-strong);background:var(--primary-soft);border-radius:999px;align-items:center;padding:0 10px;font-size:.78rem;font-weight:900;display:inline-flex}.example-select{min-width:0;color:var(--muted);align-items:center;gap:8px;font-size:.78rem;font-weight:900;display:inline-flex}.example-select select{border:1px solid var(--border);width:min(220px,28vw);height:36px;color:var(--text);background:var(--panel);border-radius:8px;padding:0 34px 0 10px;font-size:.86rem;font-weight:800}.example-select select:disabled{cursor:progress;opacity:.58}.example-select select:focus-visible{box-shadow:var(--focus);outline:none}.secondary-button{border:1px solid var(--border);min-height:36px;color:var(--text);background:var(--panel);border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:.86rem;font-weight:800;transition:border-color .16s,color .16s,background .16s;display:inline-flex}.secondary-button:hover:not(:disabled){border-color:var(--border-strong);color:var(--primary);background:var(--panel-muted)}.secondary-button:disabled{opacity:.48}.secondary-button:focus-visible{box-shadow:var(--focus);outline:none}.code-editor{--editor-gutter-width:58px;--editor-font-size:.94rem;--editor-line-height:24px;--editor-scroll-left:0px;--editor-scroll-top:0px;background:var(--panel);flex:1;min-height:0;position:relative}.code-input,.code-highlight,.line-number-gutter{appearance:none;width:100%;height:100%;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:var(--editor-font-size);font-variant-ligatures:none;letter-spacing:0;line-height:var(--editor-line-height);overflow-wrap:normal;text-rendering:auto;tab-size:2;white-space:pre;border:0;border-radius:0;margin:0;padding:22px;position:absolute;inset:0}.line-number-gutter{z-index:2;width:var(--editor-gutter-width);border-right:1px solid var(--border);color:var(--faint);background:color-mix(in srgb, var(--panel-muted) 62%, transparent);caret-color:#0000;cursor:default;pointer-events:none;resize:none;scrollbar-width:none;text-align:right;-webkit-user-select:none;user-select:none;outline:none;padding:22px 12px 22px 8px;inset:0 auto 0 0;overflow:hidden}.line-number-gutter code{transform:translateY(calc(var(--editor-scroll-top) * -1));white-space:pre;display:block}.line-number-gutter::-webkit-scrollbar{display:none}.code-input{z-index:1;resize:none;color:var(--text);caret-color:var(--text);padding-left:calc(var(--editor-gutter-width) + 18px);background:0 0;overflow:auto}.code-input.has-code{color:#0000}.code-input::placeholder{color:var(--faint)}.code-input::selection{color:var(--text);background:color-mix(in srgb, var(--primary-soft) 30%, transparent)}.code-input.has-code::selection{color:#0000}.code-input:focus{outline:none}.code-input:disabled{cursor:progress}.code-highlight{z-index:0;color:var(--text);pointer-events:none;padding-left:calc(var(--editor-gutter-width) + 18px);overflow:hidden}.code-highlight code{min-width:100%;transform:translate(calc(var(--editor-scroll-left) * -1), calc(var(--editor-scroll-top) * -1));white-space:pre;display:block}.code-highlight .hljs-keyword,.code-highlight .hljs-selector-tag,.code-highlight .hljs-title.function_{color:#176b87;font-weight:700}.code-highlight .hljs-string,.code-highlight .hljs-template-string,.code-highlight .hljs-regexp{color:#9b4e1f}.code-highlight .hljs-number,.code-highlight .hljs-literal,.code-highlight .hljs-built_in{color:#7a5ccc}.code-highlight .hljs-comment,.code-highlight .hljs-quote{color:var(--faint);font-style:italic}.code-highlight .hljs-title,.code-highlight .hljs-attr,.code-highlight .hljs-property,.code-highlight .hljs-name{color:#2d7b45}.theme-root[data-theme=dark] .code-highlight .hljs-keyword,.theme-root[data-theme=dark] .code-highlight .hljs-selector-tag,.theme-root[data-theme=dark] .code-highlight .hljs-title.function_{color:#65c7d6}.theme-root[data-theme=dark] .code-highlight .hljs-string,.theme-root[data-theme=dark] .code-highlight .hljs-template-string,.theme-root[data-theme=dark] .code-highlight .hljs-regexp{color:#e2a766}.theme-root[data-theme=dark] .code-highlight .hljs-number,.theme-root[data-theme=dark] .code-highlight .hljs-literal,.theme-root[data-theme=dark] .code-highlight .hljs-built_in{color:#b7a0ff}.theme-root[data-theme=dark] .code-highlight .hljs-title,.theme-root[data-theme=dark] .code-highlight .hljs-attr,.theme-root[data-theme=dark] .code-highlight .hljs-property,.theme-root[data-theme=dark] .code-highlight .hljs-name{color:#8fd19e}.editor-actions{border-top:1px solid var(--border);min-height:72px;color:var(--muted);padding:14px 18px;font-size:.92rem}.cursor-position{color:var(--text);flex:none;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.86rem;font-weight:800}.primary-button{white-space:nowrap;border:1px solid var(--primary-strong);color:#fff;background:var(--primary);border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:0 18px;font-weight:800;transition:background .16s,opacity .16s,transform .16s;display:inline-flex}.primary-button:hover:not(:disabled){background:var(--primary-strong);transform:translateY(-1px)}.primary-button:disabled{opacity:.52}.primary-button:focus-visible{box-shadow:var(--focus);outline:none}.spinner-icon{place-items:center;animation:.9s linear infinite spin;display:inline-grid}.sparkle-emoji{filter:brightness(0)invert();display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.session-list{flex-direction:column;gap:8px;min-width:0;min-height:0;display:flex;overflow:hidden auto}.session-item{width:100%;min-width:0;color:var(--text);background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:8px;padding:6px;display:grid}.session-item:hover,.session-item.is-active{border-color:var(--border);background:var(--panel-muted)}.session-item.is-active{border-color:var(--primary)}.session-item:focus-visible{box-shadow:var(--focus);outline:none}.session-select-button{min-width:0;color:inherit;text-align:left;background:0 0;border:0;border-radius:6px;flex-direction:column;gap:6px;padding:6px;display:flex}.session-select-button:focus-visible{box-shadow:var(--focus);outline:none}.session-delete-button{opacity:0;width:34px;height:34px}.session-item:hover .session-delete-button,.session-item:focus-within .session-delete-button{opacity:1}.session-title{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.session-meta{color:var(--muted);font-size:.82rem}.view-tabs{border:1px solid var(--border);background:var(--panel-muted);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-width:0;padding:4px;display:grid}.view-tabs button{min-width:0;height:38px;color:var(--muted);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:6px;font-size:.88rem;font-weight:800;display:inline-flex}.view-tabs button.is-active{color:var(--text);background:var(--panel);box-shadow:0 1px 4px #14232d14}.view-tabs button:disabled,.view-tabs button[aria-disabled=true]{cursor:not-allowed;opacity:.48}.view-tabs button:focus-visible{box-shadow:var(--focus);outline:none}.insight-content{flex:1;justify-content:center;align-items:flex-start;min-width:0;min-height:0;padding:24px 8px 24px 0;display:flex;overflow:hidden auto}.insight-content-chat{align-items:stretch;overflow-y:hidden}.insight-view-panel{display:contents}.insight-view-panel[hidden]{display:none}.chat-disabled-state{align-self:flex-start}.review-results-panel{overflow-wrap:anywhere;gap:16px;width:100%;min-width:0;display:grid}.review-action-panel{gap:14px;width:100%;display:grid}.review-action-panel .primary-button,.review-action-panel .cancel-button{width:100%}.review-message{border:1px solid var(--border);color:var(--text);background:var(--panel-muted);border-radius:8px;padding:10px 12px;font-size:.9rem;line-height:1.45}.review-message-warning{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));background:color-mix(in srgb, var(--accent) 14%, var(--panel))}.review-message-info{border-color:color-mix(in srgb, var(--primary) 38%, var(--border));background:color-mix(in srgb, var(--primary-soft) 72%, var(--panel))}.follow-up-chat{grid-template-rows:minmax(0,1fr) auto;gap:14px;width:100%;min-width:0;height:100%;min-height:0;max-height:100%;display:grid;overflow:hidden}.chat-thread{flex-direction:column;gap:10px;min-width:0;min-height:0;padding-right:8px;display:flex;overflow:hidden auto}.chat-message{border:1px solid var(--border);background:var(--panel);overflow-wrap:anywhere;border-radius:8px;gap:6px;max-width:92%;padding:10px 12px;line-height:1.45;display:grid}.chat-message strong{color:var(--muted);font-size:.78rem}.chat-message-user{border-color:color-mix(in srgb, var(--primary) 34%, var(--border));background:color-mix(in srgb, var(--primary-soft) 72%, var(--panel));justify-self:end;margin-left:auto}.chat-message-assistant{justify-self:start}.chat-message-thinking{color:var(--muted)}.chat-composer{border-top:1px solid var(--border);background:var(--panel);gap:8px;padding-top:14px;display:grid}.chat-composer label{color:var(--muted);font-size:.78rem;font-weight:800}.chat-composer textarea{resize:vertical;border:1px solid var(--border);width:100%;min-height:104px;color:var(--text);background:var(--panel);font:inherit;border-radius:8px;padding:10px 12px;line-height:1.45}.chat-composer textarea:focus-visible{box-shadow:var(--focus);outline:none}.review-summary{border:1px solid var(--border);background:var(--panel-muted);border-radius:8px;gap:14px;padding:14px;display:grid}.review-summary>p{color:var(--muted);line-height:1.5}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.summary-grid>div{border:1px solid var(--border);background:var(--panel);border-radius:8px;gap:3px;padding:10px;display:grid}.summary-value{color:var(--text);font-size:1.15rem;font-weight:900}.summary-label{color:var(--muted);font-size:.78rem;font-weight:800}.agent-summary{border-left:3px solid var(--primary);gap:10px;padding-left:12px;display:grid}.agent-summary p{color:var(--text);line-height:1.5}.agent-summary .secondary-button{justify-self:start}.category-filter{flex-wrap:wrap;gap:8px;display:flex}.category-chip{border:1px solid var(--border);min-height:34px;color:var(--text);background:var(--panel);border-radius:999px;align-items:center;gap:8px;padding:0 10px;font-size:.82rem;font-weight:800;display:inline-flex}.category-chip span{background:var(--panel-muted);border-radius:999px;place-items:center;min-width:22px;min-height:22px;font-size:.76rem;display:inline-grid}.category-chip.is-active{background:var(--panel-muted);border-color:currentColor}.category-correctness,.category-border-correctness{color:#176b87}.category-security,.category-border-security{color:#b42318}.category-performance,.category-border-performance{color:#8a5a00}.category-maintainability,.category-border-maintainability{color:#5b4bb7}.category-style,.category-border-style{color:#247a4d}.category-documentation,.category-border-documentation{color:#b58900}.category-other,.category-border-other{color:#5f6b7a}.category-bg-correctness{background:#176b87}.category-bg-security{background:#b42318}.category-bg-performance{background:#c47a00}.category-bg-maintainability{background:#6b5bd6}.category-bg-style{background:#2f9d62}.category-bg-documentation{background:#f2c94c}.category-bg-other{background:#7b8794}.review-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.review-filters label{color:var(--muted);gap:6px;font-size:.78rem;font-weight:800;display:grid}.review-filters select{border:1px solid var(--border);width:100%;min-height:38px;color:var(--text);background:var(--panel);font:inherit;border-radius:8px;padding:0 10px;font-size:.88rem}.review-filters select:focus-visible{box-shadow:var(--focus);outline:none}.issue-list{gap:12px;min-width:0;display:grid}.issue-card{border:1px solid var(--border);background:var(--panel);cursor:pointer;border-left:4px solid;border-radius:8px;gap:10px;min-width:0;padding:14px;display:grid}.issue-card:hover{background:var(--panel-muted)}.issue-card h3{color:var(--text);overflow-wrap:anywhere}.issue-card>p{color:var(--muted);overflow-wrap:anywhere;line-height:1.5}.issue-card-header,.issue-meta,.issue-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.issue-card-header{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.issue-card-header div{overflow-wrap:anywhere;align-items:center;gap:7px;min-width:0;display:inline-flex}.category-dot{border-radius:999px;width:9px;height:9px}.severity-pill{color:#fff;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:900}.severity-high{background:#b42318}.severity-medium{background:#aa7500}.severity-low{background:#247a4d}.issue-meta{color:var(--faint);justify-content:flex-start;font-size:.82rem;font-weight:800}.issue-suggestion{min-width:0;color:var(--muted);background:var(--panel-muted);border-radius:8px;gap:5px;padding:10px;line-height:1.45;display:grid}.issue-suggestion strong{color:var(--text);font-size:.82rem}.issue-suggestion p{overflow-wrap:anywhere}.issue-actions{justify-content:flex-start}.compact-empty{padding:14px}.empty-state{border:1px dashed var(--border-strong);width:100%;color:var(--muted);background:var(--panel-muted);border-radius:8px;justify-items:start;gap:10px;padding:18px;display:grid}.empty-state h3{color:var(--text)}.empty-state p{line-height:1.55}.status-pill{min-height:28px;color:var(--primary-strong);background:var(--primary-soft);border-radius:999px;align-items:center;padding:0 10px;font-size:.78rem;font-weight:800;display:inline-flex}@media (width<=1180px){.panel-resize-handle{display:none}.app-shell{grid-template-rows:minmax(0,1fr) minmax(220px,34svh);grid-template-columns:220px minmax(0,1fr)}.insight-panel{grid-column:1/-1;min-height:0}}@media (width<=760px){html,body,#root{height:auto;min-height:100%;overflow:hidden auto}.theme-root{height:auto;min-height:100svh;overflow:visible}.app-shell{flex-direction:column;height:auto;min-height:100svh;padding:10px;display:flex;overflow:visible}.workspace-header,.editor-actions{flex-direction:column;align-items:stretch}.workspace-header{min-height:0}.workspace{flex:none;min-height:620px}.theme-toggle{align-self:flex-end}.collapse-toggle .icon{transform:rotate(90deg)}.code-editor{min-height:360px}.primary-button{width:100%}.session-sidebar{flex:none;max-height:260px}.insight-panel{flex:none;min-height:320px}.sidebar.is-collapsed{align-items:stretch}.sidebar.is-collapsed .panel-header{justify-content:flex-end}.view-tabs button{font-size:0}.view-tabs button .icon{width:22px;height:22px}}
