.ey-header{text-align:left;margin-bottom:2rem;color:#fff;display:flex;align-items:center;justify-content:space-between}.ey-header__brand{display:flex;align-items:center;gap:1rem}.ey-header__logo{font-size:2rem;font-weight:700;color:var(--ey-yellow);letter-spacing:.1em}.ey-header__divider{width:2px;height:2.5rem;background:#fff6}.ey-header__title{font-size:1.75rem;font-weight:700;margin:0;line-height:1.2}.ey-header__subtitle{font-size:.95rem;opacity:.85;margin:.15rem 0 0}.ey-header__user{position:relative;display:flex;align-items:center;gap:.75rem}.ey-header__profile-name{color:#fff;font-weight:600;font-size:.9rem;white-space:nowrap}.ey-header__avatar{width:40px;height:40px;border-radius:50%;background:var(--ey-yellow);color:var(--ey-dark);font-weight:700;font-size:.85rem;border:2px solid rgba(255,255,255,.3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:box-shadow .2s}.ey-header__avatar:hover{box-shadow:0 0 0 3px #ffe60066}.ey-header__dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:240px;background:#fff;border-radius:10px;box-shadow:0 10px 30px #00000026;z-index:100;overflow:hidden}.ey-header__dropdown-info{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.15rem}.ey-header__dropdown-name{font-weight:600;color:#2e2e38;font-size:.95rem}.ey-header__dropdown-email{font-size:.8rem;color:#747480;word-break:break-all}.ey-header__dropdown-divider{height:1px;background:#e2e8f0}.ey-header__dropdown-item{width:100%;padding:.75rem 1.25rem;border:none;background:none;text-align:left;font-size:.9rem;color:#ef4444;cursor:pointer;transition:background .15s}.ey-header__dropdown-item:hover{background:#f8fafc}.btn-sm{padding:.3rem .75rem;font-size:.8rem}.analysis-form h2{margin-bottom:.5rem}.analysis-form .help-text{color:var(--text-secondary);font-size:.9rem;margin-bottom:1.5rem}.analysis-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.analysis-form .checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.analysis-form .checkbox-group input[type=checkbox]{width:auto;cursor:pointer}@media(max-width:768px){.analysis-form .form-row{grid-template-columns:1fr}}.status-banner{padding:1.25rem;border-radius:8px;margin-bottom:1.5rem;border-left:4px solid;display:flex;align-items:center;gap:1rem}.status-banner--blocked{background:#fee2e2;border-left-color:var(--danger-color)}.status-banner--allowed{background:#d1fae5;border-left-color:var(--success-color)}.status-banner--error{background:#fee2e2;border-left-color:var(--danger-color)}.status-banner__icon{font-size:2rem}.status-banner h3{font-size:1.25rem;margin:0 0 .25rem}.status-banner p{color:var(--text-secondary);font-size:.9rem;margin:0}.domain-mismatch-banner{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;margin-bottom:1.5rem;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;border-left:4px solid var(--warning-color)}.domain-mismatch-banner p{margin:0;font-size:.95rem}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.info-card{padding:1rem;background:var(--bg-color);border-radius:8px;border:1px solid var(--border-color)}.info-card__label{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem}.info-card__value{font-size:1.05rem;font-weight:600}.badge{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.85rem;font-weight:600}.badge--cache{background:#dbeafe;color:#1e40af}.badge--embeddings{background:#fef3c7;color:#92400e}.badge--llm{background:#fce7f3;color:#9f1239}.badge--override{background:#f3e8ff;color:#6b21a8}.badge--critical{background:#fee2e2;color:#991b1b}.badge--high{background:#fed7aa;color:#9a3412}.badge--medium{background:#fef3c7;color:#92400e}.badge--low{background:#d1fae5;color:#065f46}.badge--cobol{background:#6366f1;color:#fff}.cobol-analysis{border-left:4px solid #6366f1;background:#f5f3ff;margin-bottom:1.5rem}.cobol-analysis h3{color:#4f46e5;margin-bottom:.75rem}.cobol-op{display:inline-block;background:#e0e7ff;padding:.2rem .5rem;border-radius:4px;font-size:.85rem;margin:.15rem .25rem .15rem 0;color:#3730a3;font-family:Courier New,monospace}.details-section{margin-bottom:1.5rem}.details-content{background:var(--bg-color);padding:1rem;border-radius:8px;font-family:Courier New,monospace;font-size:.85rem;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.metric{padding:1rem;background:var(--bg-color);border-radius:8px;display:flex;flex-direction:column;gap:.5rem}.metric__label{font-size:.85rem;color:var(--text-secondary)}.metric__value{font-size:1.25rem;font-weight:700;color:var(--ey-yellow)}.stats-panel__error{color:var(--danger-color);margin-top:.5rem}.stats-panel__controls{margin-top:1rem}.stats-panel__badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.examples-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.example-card{padding:1rem;background:var(--bg-color);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s;text-align:left;font-family:inherit;font-size:inherit;color:inherit}.example-card:hover{border-color:var(--ey-yellow);transform:translateY(-2px);box-shadow:var(--shadow)}.example-card h4{margin:0 0 .5rem}.example-card p{font-size:.9rem;color:var(--text-secondary);margin:0}.example-card--cobol{border-left:4px solid #6366f1;background:linear-gradient(135deg,#f5f3ff,#ede9fe)}.example-card--cobol h4{color:#4f46e5}.examples-panel__cobol-heading{margin-top:1.5rem;margin-bottom:.5rem}.spinner-container{text-align:center;padding:3rem}.spinner{width:50px;height:50px;border:4px solid var(--border-color);border-top-color:var(--ey-yellow);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}@keyframes spin{to{transform:rotate(360deg)}}.login-page{display:flex;min-height:100vh}.login-page__left{flex:1;background:#2e2e38;display:flex;align-items:center;justify-content:center;padding:3rem}.login-page__branding{max-width:460px;color:#fff}.login-page__logo{font-size:2.2rem;font-weight:700;color:#2e2e38;background:#ffe600;padding:.35rem .9rem;border-radius:4px;display:inline-block;margin-bottom:2rem;letter-spacing:.08em}.login-page__headline{font-size:2.4rem;font-weight:700;line-height:1.2;margin:0 0 1rem}.login-page__tagline{font-size:1.05rem;opacity:.8;line-height:1.7;margin:0 0 2rem}.login-page__features{list-style:none;padding:0;margin:0}.login-page__features li{position:relative;padding-left:1.6rem;margin-bottom:.75rem;font-size:.95rem;opacity:.85}.login-page__features li:before{content:"✓";position:absolute;left:0;color:#ffe600;font-weight:700}.login-page__right{flex:1;background:#f5f5f6;display:flex;align-items:center;justify-content:center;padding:3rem}.login-page__card{text-align:center;padding:3rem 2.5rem;background:#fff;border-radius:12px;box-shadow:0 8px 30px #00000014;max-width:420px;width:100%}.login-page__card-title{font-size:1.6rem;font-weight:700;color:#2e2e38;margin:0 0 .5rem}.login-page__card-subtitle{color:#6c6c78;margin:0 0 2rem;font-size:.95rem;line-height:1.5}.login-page__error{background:#fee2e2;color:#991b1b;border-radius:8px;padding:.75rem 1rem;margin-bottom:1.25rem;font-size:.9rem}.login-page__form{text-align:left}.login-page__label{display:block;font-size:.85rem;font-weight:600;color:#2e2e38;margin-bottom:.4rem}.login-page__input{width:100%;padding:.75rem 1rem;font-size:.95rem;border:1.5px solid #d1d5db;border-radius:8px;outline:none;transition:border-color .2s;margin-bottom:1.25rem;box-sizing:border-box}.login-page__input:focus{border-color:#ffe600;box-shadow:0 0 0 3px #ffe60040}.login-page__input:disabled{background:#f5f5f6;cursor:not-allowed}.login-page__btn{width:100%;padding:.85rem 1.5rem;font-size:1rem}@media(max-width:768px){.login-page{flex-direction:column}.login-page__left{padding:2rem 1.5rem}.login-page__headline{font-size:1.8rem}.login-page__features{display:none}.login-page__right{padding:2rem 1.5rem}}:root{--ey-yellow: #ffe600;--ey-dark: #2e2e38;--ey-gray: #747480;--ey-light-gray: #f5f5f6;--primary-color: var(--ey-yellow);--success-color: #10b981;--warning-color: #f59e0b;--danger-color: #ef4444;--info-color: #3b82f6;--bg-color: #f8fafc;--card-bg: #ffffff;--text-primary: #1e293b;--text-secondary: #64748b;--border-color: #e2e8f0;--shadow: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--ey-dark);color:var(--text-primary);line-height:1.6;min-height:100vh}.app{display:flex;flex-direction:column;min-height:100vh}.app__body{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:2rem}.card{background:var(--card-bg);border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow-lg)}.card h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text-primary)}.help-text{color:var(--text-secondary);font-size:.9rem;margin-bottom:1.5rem}.form-group{margin-bottom:1.5rem}label{display:block;margin-bottom:.5rem;font-weight:500}textarea,select,input[type=text]{width:100%;padding:.75rem;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}textarea{resize:vertical;font-family:Courier New,monospace}textarea:focus,select:focus,input[type=text]:focus{outline:none;border-color:var(--ey-yellow);box-shadow:0 0 0 3px #ffe60026}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:var(--ey-yellow);color:var(--ey-dark);width:100%}.btn-primary:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--ey-gray);color:#fff;margin-bottom:1rem}.btn-secondary:hover{background:#5a5a66}.app__footer{text-align:center;padding:1.5rem 2rem;color:#ffffffb3;font-size:.85rem;background:var(--ey-dark);border-top:1px solid rgba(255,255,255,.08)}.error-banner{background:#fee2e2;border-left:4px solid var(--danger-color);border-radius:8px;padding:1.25rem;margin-bottom:2rem;color:#991b1b}@media(max-width:768px){.app__body{padding:1rem}.card{padding:1.5rem}}
