.button{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:.75rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;outline:none;text-decoration:none;position:relative;overflow:hidden;box-shadow:var(--shadow-md)}.button:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);opacity:0;transition:opacity .3s ease}.button:hover:before{opacity:1}.button--primary{background:var(--accent-gradient);color:#fff;border:1px solid transparent}.button--primary:hover:not(:disabled){background:linear-gradient(135deg,#5855f0,#7c3aed);transform:translateY(-2px);box-shadow:var(--shadow-lg),0 0 20px #6366f14d}.button--primary:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-md)}.button--secondary{background:var(--surface-bg);-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop);color:var(--text-primary);border:1px solid var(--border-color)}.button--secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);transform:translateY(-1px)}.button--outline{background:transparent;color:var(--accent-primary);border:2px solid var(--accent-primary);-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop)}.button--outline:hover:not(:disabled){background:var(--accent-gradient);color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-lg),0 0 15px #6366f133}.button--small{padding:.5rem 1rem;font-size:.875rem;gap:.375rem;border-radius:.5rem}.button--medium{padding:.75rem 2rem;font-size:1rem;gap:.5rem}.button--large{padding:1rem 2.5rem;font-size:1.125rem;gap:.75rem}.button--disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.button--loading{cursor:not-allowed;pointer-events:none}.button__loading{display:flex;align-items:center;gap:.75rem}.button__spinner{width:1.25rem;height:1.25rem;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.button:focus-visible{box-shadow:var(--shadow-lg),0 0 0 3px #6366f14d}.button:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease}.button:active:after{width:200px;height:200px}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.code-editor{height:100%;width:100%;background:linear-gradient(135deg,#0a0a0f,#1a1a1a);border:1px solid var(--border-color);border-radius:.75rem;overflow:hidden;position:relative;min-height:0;box-shadow:inset 0 1px #ffffff1a;transition:all .3s cubic-bezier(.4,0,.2,1)}.code-editor:hover{border-color:var(--border-hover);box-shadow:inset 0 1px #ffffff1a,var(--shadow-md)}.code-editor:focus-within{border-color:var(--accent-primary);box-shadow:inset 0 1px #ffffff1a,0 0 0 3px #6366f11a}.code-editor>div{height:100%!important;overflow:auto!important;position:relative!important}.code-editor textarea,.code-editor pre{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;margin:0!important;padding:16px!important;border:none!important;outline:none!important;background:transparent!important;white-space:pre-wrap!important;word-wrap:break-word!important;overflow:visible!important;resize:none!important;font-family:inherit!important;font-size:inherit!important;line-height:inherit!important}.code-editor textarea{z-index:2!important;color:transparent!important;caret-color:#fff!important}.code-editor pre{z-index:1!important;color:#fff!important;pointer-events:none!important}.code-editor pre code{display:block!important;padding:0!important;margin:0!important;background:transparent!important;color:inherit!important;white-space:inherit!important;word-wrap:inherit!important}.code-editor pre:before,.code-editor pre:after,.code-editor textarea:before,.code-editor textarea:after{content:none!important;display:none!important}.code-editor pre[class*=language-]{z-index:1!important;pointer-events:none!important;background:transparent!important}.code-editor textarea.npm__react-simple-code-editor__textarea{z-index:2!important;background:transparent!important;color:transparent!important;caret-color:#fff!important}.code-editor .npm__react-simple-code-editor__textarea,.code-editor .npm__react-simple-code-editor__textarea:focus{outline:none!important;border:none!important;box-shadow:none!important;background:transparent!important;color:transparent!important;caret-color:#fff!important;z-index:2!important}.code-editor .npm__react-simple-code-editor__textarea,.code-editor pre[class*=language-]{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:16px!important;border:none!important;white-space:pre-wrap!important;word-wrap:break-word!important;overflow:hidden!important}.code-editor ::-webkit-scrollbar{width:12px;height:12px}.code-editor ::-webkit-scrollbar-track{background:#ffffff08;border-radius:6px;margin:4px}.code-editor ::-webkit-scrollbar-thumb{background:var(--accent-gradient);border-radius:6px;border:2px solid transparent;background-clip:padding-box;transition:all .3s ease}.code-editor ::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#5855f0,#7c3aed);transform:scale(1.1)}.code-editor ::-webkit-scrollbar-corner{background:transparent}.code-editor .token.comment,.code-editor .token.prolog,.code-editor .token.doctype,.code-editor .token.cdata{color:#6a9955}.code-editor .token.punctuation{color:#d4d4d4}.code-editor .token.property,.code-editor .token.tag,.code-editor .token.boolean,.code-editor .token.number,.code-editor .token.constant,.code-editor .token.symbol,.code-editor .token.deleted{color:#b5cea8}.code-editor .token.selector,.code-editor .token.attr-name,.code-editor .token.string,.code-editor .token.char,.code-editor .token.builtin,.code-editor .token.inserted{color:#ce9178}.code-editor .token.operator,.code-editor .token.entity,.code-editor .token.url,.code-editor .language-css .token.string,.code-editor .style .token.string{color:#d4d4d4}.code-editor .token.atrule,.code-editor .token.attr-value,.code-editor .token.keyword{color:#569cd6}.code-editor .token.function,.code-editor .token.class-name{color:#dcdcaa}.code-editor .token.regex,.code-editor .token.important,.code-editor .token.variable{color:#d16969}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.review-panel{height:100%;width:100%;background:var(--surface-bg);-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop);border:1px solid var(--border-color);border-radius:1rem;padding:2rem;overflow-y:auto;overflow-x:hidden;font-size:1rem;line-height:1.7;color:var(--text-primary);position:relative;box-shadow:var(--shadow-xl);transition:all .3s cubic-bezier(.4,0,.2,1);box-sizing:border-box}.review-panel:hover{border-color:var(--border-hover);box-shadow:var(--shadow-xl),0 0 0 1px var(--accent-secondary)}.review-panel__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--text-muted);padding:3rem}.review-panel__empty h3{margin-bottom:1.5rem;color:var(--text-primary);font-size:1.75rem;font-weight:700;background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.review-panel__empty p{max-width:450px;opacity:.8;font-size:1.1rem;line-height:1.6}.review-panel__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--text-secondary)}.review-panel__spinner{width:3rem;height:3rem;border:4px solid rgba(99,102,241,.2);border-top:4px solid var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:2rem;position:relative}.review-panel__spinner:after{content:"";position:absolute;top:50%;left:50%;width:1rem;height:1rem;background:var(--accent-gradient);border-radius:50%;transform:translate(-50%,-50%);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.review-panel__error{padding:2rem;background:linear-gradient(135deg,#ef44441a,#dc35450d);border:1px solid rgba(239,68,68,.3);border-radius:1rem;color:#ff6b7d;-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop)}.review-panel__error h3{margin-bottom:1rem;color:var(--error);font-weight:600}.review-panel__content{height:100%;width:100%;word-wrap:break-word;overflow-wrap:break-word;box-sizing:border-box}.review-heading{margin-top:2rem;margin-bottom:1.5rem;color:var(--text-primary);font-weight:700;position:relative}.review-heading--1{font-size:2rem;background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;border-bottom:2px solid transparent;border-image:var(--accent-gradient) 1;padding-bottom:.75rem;margin-top:0}.review-heading--2{font-size:1.5rem;color:var(--accent-primary)}.review-heading--3{font-size:1.25rem;color:var(--text-secondary)}.review-code-inline{background:linear-gradient(135deg,#6366f11a,#8b5cf61a);color:var(--accent-primary);padding:.25rem .5rem;border-radius:.375rem;font-family:Fira Code,Fira Mono,Consolas,monospace;font-size:.9em;border:1px solid rgba(99,102,241,.2)}.review-code-block{font-family:Fira Code,Fira Mono,Consolas,monospace;font-size:.9em;background:#0000004d;border-radius:.75rem;padding:1rem;border:1px solid var(--border-color);overflow-x:auto;white-space:pre-wrap;word-break:break-word;max-width:100%}.review-list{margin:1.5rem 0;padding-left:2rem}.review-list--ordered{list-style-type:decimal}.review-list-item{margin-bottom:.75rem;color:var(--text-secondary);position:relative}.review-list-item::marker{color:var(--accent-primary);font-weight:600}.review-panel__content p{margin-bottom:1.5rem;color:var(--text-secondary)}.review-panel__content a{color:var(--accent-primary);text-decoration:underline;text-decoration-color:#6366f14d;transition:all .3s ease}.review-panel__content a:hover{color:var(--accent-secondary);text-decoration-color:var(--accent-secondary)}.review-panel__content blockquote{border-left:4px solid var(--accent-primary);margin:2rem 0;padding-left:1.5rem;font-style:italic;color:var(--text-muted);background:#6366f10d;padding:1rem 1.5rem;border-radius:0 .5rem .5rem 0}.review-panel__content table{width:100%;border-collapse:collapse;margin:2rem 0;border-radius:.5rem;overflow:hidden;box-shadow:var(--shadow-md)}.review-panel__content th,.review-panel__content td{border:1px solid var(--border-color);padding:1rem;text-align:left}.review-panel__content th{background:var(--surface-bg);font-weight:600;color:var(--text-primary)}.review-panel::-webkit-scrollbar{width:12px}.review-panel::-webkit-scrollbar-track{background:#ffffff08;border-radius:6px;margin:8px}.review-panel::-webkit-scrollbar-thumb{background:var(--accent-gradient);border-radius:6px;border:2px solid transparent;background-clip:padding-box}.review-panel::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#5855f0,#7c3aed)}.streaming-code-editor{height:100%;width:100%;display:flex;flex-direction:column;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:1rem;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.streaming-code-editor:hover{border-color:var(--border-hover);box-shadow:var(--shadow-lg)}.streaming-code-editor__header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#ffffff05;border-bottom:1px solid var(--border-color);flex-shrink:0}.streaming-code-editor__info{display:flex;align-items:center;gap:1rem}.streaming-code-editor__language{background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.streaming-code-editor__session{font-size:.75rem;color:var(--text-muted);background:#ffffff0d;padding:.25rem .5rem;border-radius:.375rem;font-family:Fira Code,monospace}.streaming-code-editor__progress{display:flex;align-items:center;gap:1rem}.streaming-progress{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.streaming-progress__label{font-size:.75rem;color:var(--text-muted);text-align:right}.streaming-progress__bar{height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;position:relative}.streaming-progress__fill{height:100%;background:var(--accent-gradient);border-radius:2px;transition:width .3s ease;position:relative}.streaming-progress__fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.streaming-code-editor__indicator{display:flex;align-items:center}.streaming-pulse{width:12px;height:12px;background:var(--accent-primary);border-radius:50%;animation:pulse 1.5s infinite;box-shadow:0 0 0 0 var(--accent-primary)}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 0 0 var(--accent-primary)}70%{transform:scale(1);box-shadow:0 0 0 10px transparent}to{transform:scale(.95);box-shadow:0 0 0 0 transparent}}.streaming-code-editor__content{flex:1;min-height:0;position:relative}.streaming-code-editor__overlay{position:absolute;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10}.streaming-overlay{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:1rem;box-shadow:var(--shadow-xl)}.streaming-overlay__spinner{width:40px;height:40px;border:3px solid rgba(99,102,241,.3);border-radius:50%;border-top-color:var(--accent-primary);animation:spin 1s ease-in-out infinite}.streaming-overlay p{margin:0;color:var(--text-muted);font-size:.875rem;text-align:center}@media (max-width: 768px){.streaming-code-editor__header{padding:.75rem 1rem;flex-direction:column;gap:.75rem;align-items:stretch}.streaming-code-editor__info{justify-content:center}.streaming-progress{min-width:auto;width:100%}.streaming-progress__label{text-align:center}}@media (max-width: 480px){.streaming-code-editor__header{padding:.5rem .75rem}.streaming-code-editor__session{font-size:.6875rem;padding:.125rem .375rem}.streaming-overlay{padding:1.5rem;margin:1rem}}.streaming-review-panel{height:100%;width:100%;display:flex;flex-direction:column;background:var(--surface-bg);-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop);border:1px solid var(--border-color);border-radius:1rem;overflow:hidden;box-shadow:var(--shadow-xl);transition:all .3s cubic-bezier(.4,0,.2,1);min-width:0}.streaming-review-panel:hover{border-color:var(--border-hover);box-shadow:var(--shadow-xl),0 0 0 1px var(--accent-primary)}.streaming-review-panel__error{padding:2rem;text-align:center;color:var(--error)}.streaming-review-panel__error h3{margin:0 0 1rem;font-size:1.25rem}.streaming-review-panel__error p{margin:0;color:var(--text-muted)}.streaming-review-panel__loading{padding:3rem 2rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem;text-align:center}.streaming-review-panel__spinner{width:48px;height:48px;border:4px solid rgba(99,102,241,.3);border-radius:50%;border-top-color:var(--accent-primary);animation:spin 1s ease-in-out infinite}.streaming-progress-bar{width:200px;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.streaming-progress-fill{height:100%;background:var(--accent-gradient);border-radius:3px;transition:width .3s ease;position:relative}.streaming-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 1.5s infinite}.streaming-review-panel__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--text-muted);padding:3rem}.streaming-review-panel__empty h3{margin-bottom:1.5rem;color:var(--text-primary);font-size:1.75rem;font-weight:700;background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.streaming-review-panel__empty p{max-width:450px;opacity:.8;font-size:1.1rem;line-height:1.6}.streaming-features{display:flex;flex-direction:column;gap:1rem;align-items:center}.streaming-feature{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#ffffff0d;border-radius:.5rem;border:1px solid var(--border-color);min-width:200px}.streaming-feature__icon{font-size:1.25rem}.streaming-review-panel__header{padding:1rem 1.5rem;background:#ffffff05;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.streaming-review-panel__header.streaming{background:#6366f10d;border-bottom-color:#6366f133}.streaming-review-panel__header.completed{background:#10b9810d;border-bottom-color:#10b98133}.streaming-status{display:flex;align-items:center;gap:1rem}.streaming-indicator{display:flex;align-items:center;gap:.25rem}.streaming-dot{width:6px;height:6px;background:var(--accent-primary);border-radius:50%;animation:streaming-pulse 1.4s infinite ease-in-out}.streaming-dot:nth-child(1){animation-delay:-.32s}.streaming-dot:nth-child(2){animation-delay:-.16s}.streaming-dot:nth-child(3){animation-delay:0s}@keyframes streaming-pulse{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.streaming-text{font-size:.875rem;color:var(--accent-primary);font-weight:500}.completion-indicator{font-size:.875rem;color:#10b981;font-weight:500;display:flex;align-items:center;gap:.5rem}.stop-streaming-btn{background:var(--error);border:none;border-radius:.375rem;padding:.375rem .75rem;font-size:.875rem;cursor:pointer;transition:all .2s ease;color:#fff;font-weight:500}.stop-streaming-btn:hover{background:#dc2626;transform:scale(1.05)}.streaming-review-panel__content{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0}.streaming-review-content{flex:1;padding:1.5rem;overflow-y:auto;position:relative;overflow-x:hidden;word-wrap:break-word;overflow-wrap:anywhere}.streaming-cursor{display:inline-block;margin-left:2px}.streaming-cursor__blink{color:var(--accent-primary);animation:blink 1s infinite;font-weight:700}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.streaming-debug{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-color)}.streaming-debug details{background:#ffffff05;border-radius:.5rem;padding:.5rem}.streaming-debug summary{cursor:pointer;font-size:.75rem;color:var(--text-muted);padding:.25rem}.streaming-chunks{max-height:200px;overflow-y:auto;margin-top:.5rem}.streaming-chunk{background:#0000004d;border-radius:.25rem;padding:.5rem;margin-bottom:.5rem;font-size:.6875rem}.streaming-chunk small{color:var(--accent-primary);display:block;margin-bottom:.25rem}.streaming-chunk pre{margin:0;white-space:pre-wrap;word-break:break-word;color:var(--text-muted)}.review-heading{color:var(--text-primary);margin-top:1.5rem;margin-bottom:1rem;line-height:1.4}.review-heading--1{font-size:1.5rem;font-weight:700;background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.review-heading--2{font-size:1.25rem;font-weight:600;color:var(--accent-primary)}.review-heading--3{font-size:1.125rem;font-weight:600}.review-code-inline{background:#ffffff1a;padding:.125rem .375rem;border-radius:.25rem;font-family:Fira Code,monospace;font-size:.875rem;color:var(--accent-secondary)}.review-code-block{background:#0006;padding:1rem;border-radius:.5rem;font-family:Fira Code,monospace;font-size:.875rem;line-height:1.5;overflow-x:auto;border:1px solid var(--border-color);max-width:100%;box-sizing:border-box;word-break:break-word}.review-list{margin:1rem 0;padding-left:1.5rem}.review-list-item{margin-bottom:.5rem;color:var(--text-primary);line-height:1.6}@media (max-width: 768px){.streaming-review-panel__header{padding:.75rem 1rem;flex-direction:column;gap:.5rem;align-items:stretch}.streaming-status{justify-content:center}.streaming-review-content{padding:1rem}.streaming-features{gap:.75rem}.streaming-feature{min-width:auto;width:100%;justify-content:center}}@media (max-width: 480px){.streaming-review-panel__empty,.streaming-review-panel__loading{padding:2rem 1rem}.streaming-review-content{padding:.75rem}.streaming-progress-bar{width:150px}}.codecritic2{height:100vh;width:100vw;display:flex;flex-direction:column;overflow:hidden;background:var(--primary-bg)}.codecritic2__header{background:#ffffff08;-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop);border-bottom:1px solid var(--border-color);padding:1.5rem 2rem;flex-shrink:0;position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center}.codecritic2__header:before{content:"";position:absolute;inset:0;background:var(--accent-gradient);opacity:.08;pointer-events:none}.codecritic2__header:after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--accent-gradient);opacity:.5}.codecritic2__title-section{position:relative;z-index:1}.codecritic2__title{font-size:2rem;font-weight:700;background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:flex;align-items:center;gap:.75rem}.codecritic2__subtitle{margin:0;color:var(--text-muted);font-size:1rem;font-weight:400}.codecritic2__badges{display:flex;gap:.75rem;align-items:center;position:relative;z-index:1}.codecritic2__badge{padding:.375rem .75rem;border-radius:.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border:1px solid transparent;transition:all .3s ease}.codecritic2__badge--new{background:linear-gradient(135deg,#ff6b6b,#ee5a24);color:#fff;box-shadow:0 4px 15px #ff6b6b4d;animation:pulse-new 2s infinite}@keyframes pulse-new{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.codecritic2__badge--streaming{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 15px #6366f14d}.codecritic2__badge--session{background:#22c55e33;color:#22c55e;border-color:#22c55e}.codecritic2__nav-button{padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;text-decoration:none;border:1px solid var(--border-color);background:var(--surface-bg);color:var(--text-primary);transition:all .3s ease;-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop)}.codecritic2__nav-button:hover{background:var(--accent-gradient);color:#fff;border-color:transparent;transform:translateY(-1px);box-shadow:0 4px 15px #6366f14d}.codecritic2__main{flex:1;padding:2rem;display:flex;gap:2rem;min-height:0}.codecritic2__editor-section{flex:1;display:flex;flex-direction:column;background:var(--surface-bg);-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop);border:1px solid var(--border-color);border-radius:1rem;overflow:hidden;min-height:0;max-height:100%;box-shadow:var(--shadow-xl);transition:all .3s cubic-bezier(.4,0,.2,1)}.codecritic2__editor-section:hover{border-color:var(--border-hover);box-shadow:var(--shadow-xl),0 0 0 1px var(--accent-primary)}.codecritic2__editor-header{padding:1.5rem 2rem;background:#ffffff05;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.codecritic2__editor-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:.5rem}.codecritic2__editor-title:before{content:"💻";font-size:1.25rem}.codecritic2__editor-controls{display:flex;gap:.75rem;align-items:center}.codecritic2__stream-btn{background:var(--accent-gradient)!important;border:none!important;color:#fff!important;font-weight:600;box-shadow:0 4px 15px #6366f14d;transition:all .3s ease}.codecritic2__stream-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #6366f166}.codecritic2__stream-btn:disabled{opacity:.6;transform:none!important;box-shadow:none!important}.codecritic2__editor-content{flex:1;padding:1.5rem;min-height:0;overflow:hidden;display:flex;flex-direction:column}.codecritic2__review-section{flex:1;min-height:0}.codecritic2__footer{background:#ffffff05;border-top:1px solid var(--border-color);padding:1rem 2rem;flex-shrink:0}.codecritic2__stats{display:flex;gap:2rem;justify-content:center;align-items:center}.codecritic2__stat{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.codecritic2__stat-label{color:var(--text-muted)}.codecritic2__stat-value{color:var(--text-primary);font-weight:600;font-family:Fira Code,monospace;background:#ffffff0d;padding:.25rem .5rem;border-radius:.25rem}.codecritic2__editor-section,.codecritic2__review-section{animation:fadeInUp .6s ease-out}.codecritic2__editor-section{animation-delay:.1s}.codecritic2__review-section{animation-delay:.2s}@media (max-width: 1024px){.codecritic2__main{padding:1.5rem;gap:1.5rem}.codecritic2__header{padding:1.5rem}.codecritic2__title{font-size:1.5rem}}@media (max-width: 768px){.codecritic2__main{flex-direction:column;padding:1rem;gap:1rem}.codecritic2__editor-section,.codecritic2__review-section{min-height:350px}.codecritic2__header{padding:1rem;flex-direction:column;gap:1rem;align-items:stretch}.codecritic2__title{font-size:1.5rem;text-align:center}.codecritic2__subtitle{text-align:center}.codecritic2__badges{justify-content:center}.codecritic2__editor-header{padding:1rem 1.5rem;flex-direction:column;gap:1rem;align-items:stretch}.codecritic2__editor-controls{justify-content:center;flex-wrap:wrap}.codecritic2__editor-content{padding:1rem}.codecritic2__stats{flex-direction:column;gap:.75rem}}@media (max-width: 480px){.codecritic2__main{padding:.75rem;gap:.75rem}.codecritic2__header{padding:.75rem}.codecritic2__title{font-size:1.25rem}.codecritic2__subtitle{font-size:.875rem}.codecritic2__badges{gap:.5rem}.codecritic2__badge{padding:.25rem .5rem;font-size:.6875rem}.codecritic2__editor-header{padding:.75rem 1rem}.codecritic2__editor-content{padding:.75rem}.codecritic2__editor-section,.codecritic2__review-section{min-height:300px;border-radius:.75rem}.codecritic2__footer{padding:.75rem 1rem}.codecritic2__stat{font-size:.75rem}}.codecritic2__nav,.admin-nav{display:flex;gap:1rem;padding:1rem;background-color:#f8f9fa;border-bottom:1px solid #e9ecef;margin-bottom:1rem}.codecritic2__nav-link,.admin-nav-link{color:#007bff;text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:.375rem;transition:all .2s ease}.codecritic2__nav-link:hover,.admin-nav-link:hover{background-color:#e7f3ff;color:#0056b3;text-decoration:none}.admin-nav-button{color:#007bff;text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:.375rem;border:1px solid #007bff;background-color:#fff;transition:all .2s ease;font-size:.875rem;display:inline-block}.admin-nav-button:hover{background-color:#007bff;color:#fff;text-decoration:none}.app__header-nav{display:flex;gap:.5rem;align-items:center}@media (max-width: 768px){.codecritic2__nav,.admin-nav{flex-direction:column;gap:.5rem;padding:.5rem}.app__header-nav{flex-direction:column;gap:.25rem}.admin-nav-button{text-align:center}}.admin-dashboard{height:100vh;width:100vw;padding:2rem;background:var(--primary-bg);overflow-y:auto}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:1rem;box-shadow:var(--shadow-lg)}.dashboard-title-section h1{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:flex;align-items:center;gap:.5rem}.dashboard-title-section h1:before{content:"📊";font-size:1.5rem}.dashboard-subtitle{margin:0;color:var(--text-muted);font-size:.875rem}.dashboard-controls{display:flex;align-items:center;gap:1rem}.codecritic-nav-button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-decoration:none;font-weight:600;font-size:.875rem;border-radius:.75rem;border:2px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #667eea4d;overflow:hidden}.codecritic-nav-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.codecritic-nav-button:hover:before{left:100%}.codecritic-nav-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66;border-color:#fff3}.codecritic-nav-button:active{transform:translateY(0);box-shadow:0 2px 10px #667eea4d}.codecritic-nav-button--v1{background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 4px 15px #4f46e54d}.codecritic-nav-button--v1:hover{box-shadow:0 8px 25px #4f46e566}.codecritic-nav-button--v2{background:linear-gradient(135deg,#06b6d4,#3b82f6);box-shadow:0 4px 15px #06b6d44d}.codecritic-nav-button--v2:hover{box-shadow:0 8px 25px #06b6d466}.codecritic-nav-button--v1:after{content:"🔧";margin-left:.5rem;font-size:1rem}.codecritic-nav-button--v2:after{content:"🚀";margin-left:.5rem;font-size:1rem}.period-selector{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-muted)}.period-select{padding:.375rem .75rem;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-primary);font-size:.875rem}.realtime-toggle{background:var(--accent-gradient)!important;border:none!important;color:#fff!important;font-weight:500;transition:all .3s ease}.realtime-toggle:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.dashboard-error{padding:1rem;background:#ef44441a;border:1px solid #ef4444;border-radius:.5rem;color:#ef4444;margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center}.dashboard-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{padding:1.5rem;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:1rem;box-shadow:var(--shadow-lg);transition:all .3s ease;display:flex;align-items:center;gap:1rem;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent-gradient);opacity:.7}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl);border-color:var(--border-hover)}.stat-icon{font-size:2rem;opacity:.8}.stat-content h3{margin:0 0 .5rem;font-size:.875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.stat-value{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:var(--text-primary);font-family:Fira Code,monospace}.stat-change{font-size:.75rem;font-weight:500;padding:.25rem .5rem;border-radius:.25rem}.stat-change.positive{background:#22c55e33;color:#22c55e}.stat-change.negative{background:#ef444433;color:#ef4444}.stat-change.neutral{background:#9ca3af33;color:var(--text-muted)}.dashboard-charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;margin-bottom:2rem}.chart-card{padding:1.5rem;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:1rem;box-shadow:var(--shadow-lg);transition:all .3s ease}.chart-card--wide{grid-column:1 / -1}.chart-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-xl)}.chart-header{margin-bottom:1rem}.chart-header h3{margin:0 0 .25rem;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.chart-header p{margin:0;font-size:.875rem;color:var(--text-muted)}.chart-container{width:100%;height:300px}.chart-tooltip{background:var(--surface-bg);border:1px solid var(--border-color);border-radius:.5rem;padding:.75rem;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop)}.tooltip-label{font-weight:600;color:var(--text-primary);margin:0 0 .5rem;font-size:.875rem}.chart-tooltip p{margin:.25rem 0;font-size:.8125rem}.dashboard-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.detail-section{padding:1.5rem;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:1rem;box-shadow:var(--shadow-lg)}.detail-section h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.health-indicators{display:flex;flex-direction:column;gap:.75rem}.health-indicator{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#ffffff05;border-radius:.5rem;border:1px solid var(--border-color)}.health-label{font-size:.875rem;color:var(--text-muted);font-weight:500}.health-status{font-size:.8125rem;font-weight:600;padding:.25rem .5rem;border-radius:.25rem}.health-status--good{background:#22c55e33;color:#22c55e}.health-status--warning{background:#fbbf2433;color:#fbbf24}.health-status--error{background:#ef444433;color:#ef4444}.activity-list{display:flex;flex-direction:column;gap:.75rem}.activity-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#ffffff05;border-radius:.5rem;border:1px solid var(--border-color)}.activity-time{font-size:.75rem;color:var(--text-muted);font-family:Fira Code,monospace;min-width:80px}.activity-text{font-size:.875rem;color:var(--text-primary);flex:1;text-align:right}@media (max-width: 1200px){.dashboard-charts-grid{grid-template-columns:1fr}.chart-card--wide{grid-column:1}}@media (max-width: 768px){.admin-dashboard{padding:1rem}.dashboard-header{flex-direction:column;gap:1rem;text-align:center}.dashboard-controls{justify-content:center;flex-wrap:wrap}.dashboard-stats-grid{grid-template-columns:1fr;gap:1rem}.dashboard-charts-grid{gap:1rem;grid-template-columns:1fr}.chart-container{height:250px}.stat-card{flex-direction:column;text-align:center;gap:.75rem}.health-indicator,.activity-item{flex-direction:column;gap:.5rem;text-align:center}.activity-text{text-align:center}}@media (max-width: 480px){.admin-dashboard{padding:.75rem}.dashboard-header,.stat-card,.chart-card,.detail-section{padding:1rem}.dashboard-title-section h1,.stat-value{font-size:1.5rem}.chart-container{height:200px}.dashboard-controls{gap:.5rem}.period-selector{flex-direction:column;gap:.25rem;text-align:center}}.dashboard-history-section{margin-top:3rem;padding:2rem;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:1rem;box-shadow:var(--shadow-lg)}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.history-title-section h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.history-subtitle{margin:0;color:var(--text-muted);font-size:.875rem}.history-controls{display:flex;align-items:center;gap:1rem}.refresh-history-btn{background:linear-gradient(135deg,#22c55e,#16a34a)!important;border:none!important;color:#fff!important}.view-all-btn{color:#6366f1;text-decoration:none;font-weight:600;padding:.5rem 1rem;border:1px solid #6366f1;border-radius:.5rem;transition:all .2s ease}.view-all-btn:hover{background:#6366f1;color:#fff;text-decoration:none}.history-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.conversation-history{max-height:70vh;overflow-y:auto}.conversation-list{display:flex;flex-direction:column;gap:1.5rem}.conversation-item{background:#ffffff05;border:1px solid var(--border-color);border-radius:1rem;padding:1.5rem;transition:all .3s ease}.conversation-item:hover{background:#ffffff0a;border-color:#667eea4d;transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.conversation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}.conversation-meta{display:flex;align-items:center;gap:1rem}.conversation-time{font-size:.875rem;color:var(--text-muted);font-family:Fira Code,monospace}.conversation-language{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:600;text-transform:uppercase}.conversation-ip{background:#ffffff1a;padding:.25rem .5rem;border-radius:.375rem;font-size:.75rem;font-family:Fira Code,monospace;color:var(--accent-secondary)}.conversation-stats{display:flex;align-items:center;gap:.5rem}.response-time-indicator{padding:.25rem .5rem;border-radius:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase}.response-time-indicator.fast{background:#22c55e33;color:#22c55e}.response-time-indicator.medium{background:#f59e0b33;color:#f59e0b}.response-time-indicator.slow{background:#ef444433;color:#ef4444}.conversation-content{display:flex;flex-direction:column;gap:1rem}.user-message,.ai-message{display:flex;flex-direction:column;gap:.75rem}.message-label{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.875rem}.message-icon{font-size:1.25rem}.user-message .message-label{color:#06b6d4}.ai-message .message-label{color:#22c55e}.message-content{margin-left:2rem}.code-block{background:#0000004d;border:1px solid var(--border-color);border-radius:.5rem;padding:1rem;font-family:Fira Code,monospace;font-size:.875rem;line-height:1.5;color:var(--text-primary);overflow-x:auto;white-space:pre-wrap;max-height:200px;overflow-y:auto}.review-content{background:#ffffff05;border:1px solid rgba(34,197,94,.2);border-radius:.5rem;padding:1rem;line-height:1.6;color:var(--text-primary);font-size:.875rem}.review-more{color:var(--text-muted);font-style:italic}.expand-btn{background:none;border:none;color:#6366f1;cursor:pointer;text-decoration:underline;font-size:.875rem}.expand-btn:hover{color:#8b5cf6}.no-conversations{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.no-conversations-icon{font-size:4rem;margin-bottom:1rem;opacity:.7}.no-conversations h3{margin:0 0 .5rem;font-size:1.25rem;color:var(--text-primary)}.no-conversations p{margin:0;color:var(--text-muted);font-size:.875rem}@media (max-width: 768px){.dashboard-history-section{padding:1rem;margin-top:2rem}.history-header{flex-direction:column;gap:1rem;align-items:flex-start}.history-controls{flex-direction:column;gap:.5rem;width:100%}.conversation-header{flex-direction:column;gap:.75rem;align-items:flex-start}.conversation-meta{flex-wrap:wrap;gap:.5rem}.conversation-item{padding:1rem}.message-content{margin-left:0}}.interaction-history{height:100vh;width:100vw;display:flex;flex-direction:column;overflow:hidden;background:var(--primary-bg);padding:2rem}.interaction-history__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:1rem;box-shadow:var(--shadow-lg)}.interaction-history__title-section h1{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.interaction-history__subtitle{margin:0;color:var(--text-muted);font-size:.875rem}.interaction-history__stats{display:flex;gap:2rem}.interaction-stat{text-align:center}.interaction-stat__value{display:block;font-size:1.5rem;font-weight:700;color:var(--accent-primary);font-family:Fira Code,monospace}.interaction-stat__label{display:block;font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.interaction-history__filters{display:flex;gap:1rem;align-items:end;margin-bottom:1rem;padding:1rem;background:#ffffff05;border:1px solid var(--border-color);border-radius:.75rem;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:120px}.filter-label{font-size:.75rem;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.filter-input,.filter-select{padding:.5rem .75rem;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-primary);font-size:.875rem;transition:all .2s ease}.filter-input:focus,.filter-select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #6366f11a}.filter-actions{display:flex;gap:.5rem;align-items:end}.interaction-history__controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.75rem 1rem;background:#ffffff05;border:1px solid var(--border-color);border-radius:.5rem}.page-size-control{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-muted)}.control-buttons{display:flex;align-items:center;gap:.5rem}.page-size-select{padding:.25rem .5rem;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:.25rem;color:var(--text-primary);font-size:.875rem}.interaction-history__error{padding:1rem;background:#ef44441a;border:1px solid #ef4444;border-radius:.5rem;color:#ef4444;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.interaction-history__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.loading-spinner{width:40px;height:40px;border:3px solid rgba(99,102,241,.3);border-radius:50%;border-top-color:var(--accent-primary);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.interaction-history__table-container{flex:1;overflow:auto;background:var(--surface-bg);border:1px solid var(--border-color);border-radius:.75rem;margin-bottom:1rem}.interaction-table{width:100%;border-collapse:collapse}.interaction-table th{background:#ffffff0d;padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:10}.interaction-table td{padding:.75rem 1rem;border-bottom:1px solid rgba(255,255,255,.05);color:var(--text-primary);font-size:.875rem;vertical-align:top}.interaction-table tr:hover{background:#ffffff05}.timestamp-cell{white-space:nowrap;font-family:Fira Code,monospace;font-size:.75rem;color:var(--text-muted)}.ip-cell code{background:#ffffff1a;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;color:var(--accent-secondary)}.clickable-ip{cursor:pointer;transition:all .2s ease}.clickable-ip:hover{background:#6366f133!important;color:#6366f1!important;transform:scale(1.05)}.language-badge{padding:.25rem .5rem;border-radius:.375rem;color:#fff;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.response-time-cell .response-time{padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500;font-family:Fira Code,monospace}.response-time.fast{background:#22c55e33;color:#22c55e}.response-time.medium{background:#fbbf2433;color:#fbbf24}.response-time.slow{background:#ef444433;color:#ef4444}.code-preview{max-width:200px;font-family:Fira Code,monospace;font-size:.6875rem;line-height:1.4;background:#0000004d;padding:.5rem;border-radius:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{padding:.25rem .5rem;border-radius:.375rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.success{background:#22c55e33;color:#22c55e}.status-badge.error{background:#ef444433;color:#ef4444}.status-badge.pending{background:#fbbf2433;color:#fbbf24}.interaction-history__empty{padding:3rem;text-align:center;color:var(--text-muted)}.interaction-history__pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#ffffff05;border:1px solid var(--border-color);border-radius:.5rem}.pagination-info{display:flex;flex-direction:column;align-items:center;gap:.25rem;font-size:.875rem;color:var(--text-primary)}.pagination-total{font-size:.75rem;color:var(--text-muted)}@media (max-width: 1024px){.interaction-history{padding:1.5rem}.interaction-history__stats{gap:1rem}.interaction-history__filters{flex-direction:column;align-items:stretch}.filter-actions{align-self:center}}@media (max-width: 768px){.interaction-history{padding:1rem}.interaction-history__header{flex-direction:column;gap:1rem;text-align:center}.interaction-history__stats{justify-content:center}.interaction-table{font-size:.75rem}.interaction-table th,.interaction-table td{padding:.5rem}.code-preview{max-width:100px}.interaction-history__pagination{flex-direction:column;gap:1rem}}@media (max-width: 480px){.interaction-history{padding:.75rem}.interaction-history__header{padding:1rem}.interaction-history__stats{flex-direction:column;gap:.5rem}.interaction-table{font-size:.6875rem}.code-preview{max-width:80px}}.app{height:100vh;width:100vw;display:flex;flex-direction:column;overflow:hidden;background:var(--primary-bg)}.app__header{background:#ffffff08;-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop);border-bottom:1px solid var(--border-color);padding:1.5rem 2rem;flex-shrink:0;position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center}.app__header:before{content:"";position:absolute;inset:0;background:var(--accent-gradient);opacity:.08;pointer-events:none}.app__header:after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--accent-gradient);opacity:.5}.app__title{font-size:1.75rem;font-weight:700;background:var(--accent-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin:0;position:relative;z-index:1}.app__header-cta{position:relative;z-index:1;display:flex;align-items:center;gap:.5rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.app__header-cta:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.app__header-arrow{font-size:1rem;line-height:1;transition:transform .3s cubic-bezier(.4,0,.2,1)}.app__header-cta:hover .app__header-arrow{transform:translate(2px,-2px)}.app__main{flex:1;padding:2rem;display:flex;gap:2rem;min-height:0}.app__editor-section{flex:1 1 0%;min-width:0;display:flex;flex-direction:column;background:var(--surface-bg);-webkit-backdrop-filter:var(--blur-backdrop);backdrop-filter:var(--blur-backdrop);border:1px solid var(--border-color);border-radius:1rem;overflow:hidden;min-height:0;max-height:100%;box-shadow:var(--shadow-xl);transition:all .3s cubic-bezier(.4,0,.2,1)}.app__editor-section:hover{border-color:var(--border-hover);box-shadow:var(--shadow-xl),0 0 0 1px var(--accent-primary)}.app__editor-header{padding:1.5rem 2rem;background:#ffffff05;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.app__editor-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:.5rem}.app__editor-title:before{content:"⚡";font-size:1.25rem}.app__editor-content{flex:1;padding:1.5rem;min-height:0;overflow:hidden;display:flex;flex-direction:column}.app__review-section{flex:1 1 0%;min-width:0;min-height:0}.app__error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;padding:3rem;text-align:center;background:var(--primary-bg)}.app__error-title{font-size:2.5rem;font-weight:700;color:var(--error);margin-bottom:1.5rem}.app__error-message{font-size:1.125rem;color:var(--text-muted);max-width:600px;line-height:1.7}@media (max-width: 1024px){.app__main{padding:1.5rem;gap:1.5rem}.app__header{padding:1.25rem 1.5rem}.app__title{font-size:1.5rem}}@media (max-width: 768px){.app{padding-top:60px}.app__main{flex-direction:column;padding:1rem;gap:1rem}.app__editor-section,.app__review-section{min-height:350px}.app__header{padding:1rem;flex-direction:column;gap:1rem;align-items:stretch}.app__title{font-size:1.375rem;text-align:center}.app__header-cta{align-self:center}.app__editor-header{padding:1rem 1.5rem;flex-direction:column;gap:1rem;align-items:stretch}.app__editor-content{padding:1rem}}@media (max-width: 480px){.app{padding-top:55px}.app__main,.app__header{padding:.75rem;gap:.75rem}.app__title{font-size:1.25rem}.app__header-cta{font-size:.875rem;padding:.5rem 1rem}.app__editor-header{padding:.75rem 1rem}.app__editor-content{padding:.75rem}.app__editor-section,.app__review-section{min-height:300px;border-radius:.75rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.app__editor-section,.app__review-section{animation:fadeInUp .6s ease-out}.app__editor-section{animation-delay:.1s}.app__review-section{animation-delay:.2s}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.loading-skeleton{background:linear-gradient(90deg,var(--surface-bg) 25%,rgba(255,255,255,.1) 50%,var(--surface-bg) 75%);background-size:400% 100%;animation:shimmer 1.2s ease-in-out infinite}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#0f0f23,#1a1a2e,#16213e);color:#fff;overflow:hidden}:root{--primary-bg: #0f0f23;--secondary-bg: #1a1a2e;--tertiary-bg: #16213e;--surface-bg: rgba(255, 255, 255, .05);--surface-hover: rgba(255, 255, 255, .08);--border-color: rgba(255, 255, 255, .1);--border-hover: rgba(255, 255, 255, .2);--accent-primary: #6366f1;--accent-secondary: #8b5cf6;--accent-gradient: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--text-primary: #ffffff;--text-secondary: #e2e8f0;--text-muted: #94a3b8;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .6);--blur-backdrop: blur(20px)}button{background:none;border:none;padding:0;margin:0;font:inherit;cursor:pointer;outline:inherit}a{color:inherit;text-decoration:none}*:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}::-webkit-scrollbar-thumb{background:var(--accent-gradient);border-radius:4px;transition:all .2s ease}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#5855f0,#7c3aed)}*{transition:all .2s cubic-bezier(.4,0,.2,1)}
