:root{--bg-gradient: #151515;--panel-bg: #1d1d1d;--panel-bg-hover: #222222;--panel-border: transparent;--accent-purple: #d4c5b9;--accent-purple-glow: rgba(212, 197, 185, .08);--accent-emerald: #8fa38c;--accent-emerald-glow: rgba(143, 163, 140, .08);--severity-critical: #d97706;--severity-high: #cc997a;--severity-medium: #a8a297;--text-primary: #e5e5e5;--text-secondary: #a3a3a3;--text-muted: #737373;--font-sans: "Inter", "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--transition-smooth: all .2s ease}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg-gradient);color:var(--text-primary);min-height:100vh;overflow-x:hidden;line-height:1.7;-webkit-font-smoothing:antialiased}html,body,#root{height:100%}.app-container{display:flex;flex-direction:column;height:100vh;max-width:1400px;margin:0 auto;padding:1.5rem;gap:1.25rem}.app-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;background:var(--panel-bg);border-radius:12px;flex-shrink:0}.logo-section{display:flex;align-items:center;gap:.5rem}.logo-section h1{font-size:1.05rem;font-weight:600;letter-spacing:-.2px;color:var(--text-primary)}.header-actions{display:flex}.main-workspace{display:grid;grid-template-columns:1.25fr 1fr;flex:1;gap:1.25rem;min-height:0}.glass-panel{background:var(--panel-bg);border-radius:16px;display:flex;flex-direction:column;min-height:0;transition:var(--transition-smooth)}.glass-panel:hover{background:var(--panel-bg-hover)}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.03);flex-shrink:0}.panel-title{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;color:var(--text-secondary)}.chat-panel-title{gap:.75rem}.chat-panel-title-icon{width:2rem;height:2rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#d4c5b914;color:var(--accent-purple);border:1px solid rgba(212,197,185,.08)}.chat-panel-title-copy{display:flex;flex-direction:column;gap:.12rem}.chat-panel-title-copy span{color:var(--text-primary);font-size:.92rem;font-weight:600}.chat-panel-title-copy small{color:var(--text-muted);font-size:.73rem;font-weight:500}.chat-toolbar-btn{padding:.38rem .72rem;font-size:.74rem}.chat-history-container{flex:1;overflow-y:auto;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:radial-gradient(circle at top left,rgba(212,197,185,.04),transparent 32%),linear-gradient(180deg,#ffffff04,#0000)}.chat-row{display:flex;width:100%}.chat-row.user{justify-content:flex-end}.chat-row.assistant{justify-content:flex-start}.chat-bubble{max-width:min(85%,720px);padding:.95rem 1rem;border:1px solid rgba(255,255,255,.05);border-radius:20px;box-shadow:0 10px 24px #00000024;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.chat-bubble.user{background:linear-gradient(180deg,#d4c5b924,#d4c5b914);border-color:#d4c5b924;border-bottom-right-radius:8px}.chat-bubble.assistant{background:linear-gradient(180deg,#ffffff09,#0000001f);border-color:#ffffff0f;border-bottom-left-radius:8px}.chat-bubble-meta{display:flex;align-items:center;gap:.55rem;margin-bottom:.55rem;font-size:.78rem;font-weight:600}.chat-bubble-meta.user{color:#e7d8cd}.chat-bubble-meta.assistant{color:#d8cdc4}.chat-avatar{width:1.55rem;height:1.55rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.chat-avatar.user{background:#d4c5b929;color:var(--accent-purple)}.chat-avatar.assistant{background:#ffffff0f;color:#c8beb5}.chat-markdown{font-size:.93rem}.chat-markdown.user{color:#f5ede8}.chat-markdown.assistant{color:var(--text-primary)}.chat-import-btn{margin-top:.85rem;padding:.38rem .7rem;font-size:.74rem}.chat-loading-bubble{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1rem;border-radius:16px 16px 16px 8px;background:#ffffff06;border:1px solid rgba(255,255,255,.05);color:var(--text-secondary);font-size:.88rem}.chat-loading-icon{display:inline-flex;align-items:center;justify-content:center;color:#9ecbff;opacity:.92}.chat-loading-icon svg{animation:chat-loading-spin 1.2s linear infinite}@keyframes chat-loading-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chat-input-form{padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.03);background:linear-gradient(180deg,#0000000a,#0000001f);display:flex;gap:.65rem;align-items:center;flex-shrink:0}.chat-input{flex:1;min-height:2.8rem;border-radius:14px;background:#0000002e}.chat-send-btn{width:2.9rem;height:2.9rem;padding:0;border-radius:14px;flex-shrink:0}.markdown-content p{margin-bottom:.5rem;line-height:1.6}.markdown-content p:last-child{margin-bottom:0}.markdown-content ul,.markdown-content ol{margin:.5rem 0 .5rem 1.25rem;padding-left:0}.markdown-content li{margin-bottom:.2rem}.markdown-content blockquote{border-left:2px solid var(--accent-purple);background:#ffffff05;padding:.4rem .75rem;margin:.5rem 0;border-radius:0 4px 4px 0;font-size:.88rem;color:var(--text-secondary)}.markdown-content pre{background:#00000040;padding:.75rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.03);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;overflow-x:auto;margin:.5rem 0;color:var(--text-secondary)}.markdown-content code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;background:#00000026;padding:.1rem .3rem;border-radius:3px;font-size:.82rem;color:var(--accent-purple)}.editor-status-bar{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.03);font-size:.78rem;color:var(--text-muted)}.tab-nav{display:flex;background:#00000026;border-radius:10px;padding:.15rem;margin:1rem 1.25rem .25rem;flex-shrink:0}.tab-btn{flex:1;background:transparent;border:none;padding:.4rem;color:var(--text-secondary);font-size:.8rem;font-weight:500;border-radius:8px;cursor:pointer;transition:var(--transition-smooth)}.tab-btn.active{background:var(--panel-bg);color:var(--text-primary);box-shadow:0 1px 3px #0003}.panel-content{flex:1;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:1rem;min-height:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.editor-textarea{flex:1;width:100%;height:100%;background:transparent;border:none;resize:none;outline:none;font-family:var(--font-sans);font-size:1rem;color:var(--text-primary);line-height:1.8;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1.1rem;border-radius:10px;font-size:.85rem;font-weight:500;cursor:pointer;transition:var(--transition-smooth);border:1px solid transparent}.btn-icon-only{padding:.55rem;border-radius:8px}.btn-primary{background:var(--accent-purple);color:#151515}.btn-primary:hover{filter:brightness(.95)}.btn-secondary{background:#ffffff08;color:var(--text-primary)}.btn-secondary:hover{background:#ffffff0f}.btn-emerald{background:var(--accent-emerald);color:#151515}.btn-emerald:hover{filter:brightness(.95)}.btn:disabled{opacity:.35;cursor:not-allowed}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-label{font-size:.78rem;color:var(--text-secondary);font-weight:500}.form-input{width:100%;background:#00000026;border:1px solid rgba(255,255,255,.03);border-radius:8px;padding:.55rem .75rem;color:#fff;font-family:var(--font-sans);font-size:.85rem;outline:none;transition:var(--transition-smooth)}.form-input:focus{border-color:var(--accent-purple)}.profile-list{display:flex;flex-direction:column;gap:.75rem}.profile-empty{padding:.9rem 1rem;border-radius:12px;background:#0000001f;color:var(--text-muted);font-size:.82rem}.profile-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border-radius:14px;background:linear-gradient(180deg,#ffffff06,#0000001f);border:1px solid rgba(255,255,255,.04);transition:var(--transition-smooth)}.profile-card:hover{border-color:#ffffff14;background:linear-gradient(180deg,#ffffff09,#00000024)}.profile-card.active{border-color:#d4c5b938;background:linear-gradient(180deg,#d4c5b90f,#00000029);box-shadow:inset 0 0 0 1px #d4c5b90a}.profile-card-info{min-width:0;display:flex;flex-direction:column;gap:.28rem;flex:1}.profile-card-topline{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.profile-card-provider{font-size:.72rem;color:var(--text-muted);letter-spacing:.02em}.profile-card-badge{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:999px;background:#d4c5b91a;color:var(--accent-purple);font-size:.68rem;font-weight:600}.profile-card-label{color:var(--text-primary);font-size:.95rem;font-weight:600;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-card-key{color:var(--text-secondary);font-size:.76rem}.profile-card-actions{display:flex;align-items:center;gap:.45rem;flex-shrink:0}.profile-action-btn{min-width:3rem;padding:.35rem .7rem;font-size:.72rem;border-radius:999px}.profile-action-danger{color:#f0a3a3}@media (max-width: 640px){.profile-card{align-items:flex-start;flex-direction:column}.profile-card-actions{width:100%;justify-content:flex-end}}.score-card{background:#0000001a;border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.75rem;flex-shrink:0}.score-main{display:flex;align-items:baseline;justify-content:space-between}.score-num{font-family:Outfit,sans-serif;font-size:2.5rem;font-weight:700;line-height:1;color:var(--text-primary)}.score-max{font-size:.9rem;color:var(--text-muted)}.score-badge{font-size:.75rem;padding:.15rem .5rem;border-radius:6px;font-weight:500}.score-badge.excellent{background:#8fa38c1a;color:var(--accent-emerald)}.score-badge.good{background:#cc997a1a;color:#cc997a}.score-badge.warn{background:#d977061a;color:var(--severity-critical)}.score-metric{display:flex;flex-direction:column;gap:.15rem}.metric-header{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-secondary)}.metric-bar-bg{width:100%;height:4px;background:#ffffff08;border-radius:99px;overflow:hidden}.metric-bar-fill{height:100%;background:var(--accent-purple);border-radius:99px}.alert-list{display:flex;flex-direction:column;gap:.5rem}.alert-item{background:#00000014;border-left:2px solid;border-radius:0 6px 6px 0;padding:.7rem .85rem;display:flex;flex-direction:column;gap:.2rem;transition:var(--transition-smooth)}.alert-item.critical{border-left-color:var(--severity-critical)}.alert-item.high{border-left-color:var(--severity-high)}.alert-item.medium{border-left-color:var(--severity-medium)}.alert-item-header{display:flex;justify-content:space-between;align-items:center}.alert-word{font-weight:500;font-size:.85rem;color:var(--text-primary);background:#ffffff08;padding:.05rem .3rem;border-radius:3px}.alert-cat{font-size:.7rem;color:var(--text-muted)}.alert-suggestion{font-size:.78rem;color:var(--text-secondary)}.mobile-tabs{display:none}@media (max-width: 640px){html,body,#root{height:100dvh;overflow:hidden}.app-container{height:100dvh;padding:.4rem;gap:.4rem;overflow:hidden}.app-header{padding:.55rem .85rem;border-radius:10px}.logo-section h1{font-size:.95rem}.mobile-tabs{display:flex;background:#00000026;border-radius:8px;padding:.15rem;width:100%;flex-shrink:0}.mobile-tab-btn{flex:1;background:transparent;border:none;padding:.45rem;color:var(--text-secondary);font-size:.8rem;font-weight:600;border-radius:6px;cursor:pointer;text-align:center;transition:var(--transition-smooth)}.mobile-tab-btn.active{background:var(--panel-bg);color:var(--text-primary);box-shadow:0 1px 3px #0003}.main-workspace{display:flex;flex-direction:column;flex:1;min-height:0;height:auto}.main-workspace>.glass-panel{display:none;height:100%;border-radius:12px;flex:1}.main-workspace>.glass-panel.mobile-active{display:flex}.panel-header{padding:.75rem .85rem}.chat-history-container{padding:1rem .9rem;scroll-padding-bottom:calc(env(safe-area-inset-bottom,0px) + .75rem)}.chat-bubble{max-width:100%;padding:.85rem .9rem}.chat-input-form{padding:.85rem;padding-bottom:calc(.85rem + env(safe-area-inset-bottom,0px))}input,textarea,select,.form-input,.chat-input,.editor-textarea,.custom-select-trigger,.custom-select-option{font-size:16px}.panel-content{padding:.75rem .85rem;gap:.75rem;padding-bottom:calc(.85rem + env(safe-area-inset-bottom,0px))}.tab-nav{margin:.75rem .85rem .2rem}}.toast{position:fixed;top:2rem;left:50%;transform:translate(-50%);background:var(--panel-bg);border:1px solid rgba(255,255,255,.05);padding:.75rem 1.5rem;border-radius:12px;color:var(--text-primary);font-size:.9rem;z-index:1000;box-shadow:0 10px 25px -5px #00000080,0 8px 10px -6px #00000080;animation:toast-fade-in .3s cubic-bezier(.16,1,.3,1) forwards;pointer-events:none;display:flex;align-items:center;gap:.5rem}.toast-success{border-left:3px solid var(--accent-emerald)}.toast-warning{border-left:3px solid var(--severity-high)}.toast-error{border-left:3px solid var(--severity-critical)}@keyframes toast-fade-in{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}.custom-select-container{position:relative;width:100%}.custom-select-trigger{width:100%;background:#00000026;border:1px solid rgba(255,255,255,.03);border-radius:8px;padding:.55rem .75rem;color:#fff;font-size:.85rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:var(--transition-smooth);-webkit-user-select:none;user-select:none}.custom-select-trigger:hover{border-color:#ffffff1a}.custom-select-arrow{font-size:.65rem;color:var(--text-muted);transition:transform .2s ease}.custom-select-arrow.open{transform:rotate(180deg)}.custom-select-options{position:absolute;top:calc(100% + 4px);left:0;width:100%;background:var(--panel-bg);border:1px solid rgba(255,255,255,.05);border-radius:8px;box-shadow:0 10px 20px #0000004d;z-index:50;max-height:200px;overflow-y:auto;padding:.25rem 0}.custom-select-options::-webkit-scrollbar{width:4px}.custom-select-options::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:2px}.custom-select-option{padding:.5rem .75rem;font-size:.85rem;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth)}.custom-select-option:hover{background:#ffffff08;color:var(--text-primary)}.custom-select-option.selected{background:var(--accent-purple-glow);color:var(--accent-purple);font-weight:500}.confirm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:1100;animation:modal-fade-in .25s cubic-bezier(.16,1,.3,1) forwards}.confirm-modal-content{background:#1d1d1dd9;border:1px solid rgba(255,255,255,.08);padding:1.75rem;border-radius:20px;width:90%;max-width:360px;box-shadow:0 25px 50px -12px #00000080,0 0 40px #0003;animation:modal-scale-in .35s cubic-bezier(.34,1.56,.64,1) forwards;display:flex;flex-direction:column;gap:1.5rem;text-align:center}.confirm-modal-message{font-size:.95rem;font-weight:500;color:var(--text-primary);line-height:1.6;letter-spacing:-.01em;padding:0 .5rem}.confirm-modal-actions{display:flex;justify-content:center;gap:.75rem}.confirm-modal-actions .btn{flex:1;padding:.6rem 1.2rem;border-radius:12px;font-size:.85rem;font-weight:600;transition:var(--transition-smooth)}.confirm-modal-actions .btn-secondary{background:#ffffff05;border:1px solid rgba(255,255,255,.08);color:var(--text-secondary)}.confirm-modal-actions .btn-secondary:hover{background:#ffffff0f;color:var(--text-primary);border-color:#ffffff26}.confirm-modal-actions .btn-primary{background:var(--accent-purple);color:#1a1a1a;border:1px solid transparent}.confirm-modal-actions .btn-primary:hover{filter:brightness(.92)}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
