:root{--bg-1: #f8fbff;--bg-2: #edf3ff;--bg-3: #fff8e7;--text-main: #0f172a}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Roboto,Arial,sans-serif;color:var(--text-main);background:radial-gradient(circle at 12% 14%,rgba(26,115,232,.12) 0,transparent 35%),radial-gradient(circle at 85% 12%,rgba(251,188,4,.14) 0,transparent 33%),radial-gradient(circle at 82% 85%,rgba(52,168,83,.12) 0,transparent 31%),linear-gradient(135deg,var(--bg-1) 0%,var(--bg-2) 55%,var(--bg-3) 100%);overflow:hidden}#root{height:100vh}.app-shell{height:100vh;padding:1.1rem}:root{--google-blue: #1a73e8;--google-red: #ea4335;--google-yellow: #fbbc04;--google-green: #34a853;--ink-900: #1f2937;--ink-700: #4b5563;--panel-bg: #ffffff;--line: #dbe2f1}.analyzer-shell{height:calc(100vh - 1.4rem);width:min(1380px,100%);display:grid;grid-template-rows:auto 1fr;gap:.9rem}.analyzer-header{background:linear-gradient(135deg,#1a73e824,#fbbc042e,#34a85324);border-radius:16px;border:1px solid var(--line);padding:1rem 1.25rem}.analyzer-header h1{margin:0;color:var(--ink-900);font-size:clamp(1.25rem,1.8vw,1.8rem);letter-spacing:.01em}.analyzer-layout{min-height:0;display:grid;grid-template-columns:1.06fr 1fr;gap:.9rem}.analyzer-form,.results-panel{min-height:0;border:1px solid var(--line);border-radius:16px;background:var(--panel-bg);padding:.8rem}.analyzer-form{display:grid;grid-template-rows:auto auto auto auto;gap:.55rem;overflow:hidden;align-content:start}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.field-card{border:1px solid #e7edf8;border-radius:12px;padding:.6rem;background:#fcfdff}.field-card label{display:block;color:var(--google-blue);font-weight:700;margin-bottom:.18rem}.field-description{margin:0 0 .4rem;color:var(--ink-700);font-size:.83rem;line-height:1.28}.analyzer-form input,.analyzer-form select,.analyzer-form button{width:100%;border-radius:10px;font-size:.95rem}.analyzer-form input,.analyzer-form select{border:1px solid #c6d3ec;background:#fff;color:var(--ink-900);padding:.58rem .68rem}.analyzer-form input:focus,.analyzer-form select:focus{outline:none;border-color:var(--google-blue);box-shadow:0 0 0 3px #1a73e826}.analyzer-form button{border:none;color:#fff;font-weight:700;padding:.66rem .8rem;background:linear-gradient(135deg,var(--google-blue),#5f97f6,var(--google-green));cursor:pointer;transition:transform .14s ease,box-shadow .2s ease}.analyzer-form button:hover{transform:translateY(-1px);box-shadow:0 8px 18px #1a73e847}.analyzer-form button:disabled{opacity:.75;cursor:not-allowed;transform:none;box-shadow:none}.field-help{display:block;margin-top:.32rem;color:var(--google-green);font-size:.82rem}.file-list{margin-top:.35rem;border:1px solid #cde0ff;border-radius:8px;padding:.45rem .55rem;background:#f5faff;max-height:70px;overflow:auto}.file-list p{margin:.13rem 0;font-size:.85rem;color:#123a74}.results-panel{display:grid;grid-template-rows:auto auto auto 1fr;gap:.4rem}.results-panel h2{margin:0;color:var(--google-red);font-size:1.15rem}.results-list{min-height:0;overflow:auto;display:grid;gap:.55rem}.result-card{border:1px solid #e5ebf6;border-left:5px solid var(--google-yellow);border-radius:10px;padding:.52rem .66rem;background:#fff}.result-card h3{margin:0 0 .25rem;color:#0f3063;font-size:.98rem}.result-card p{margin:.16rem 0;color:#374151;font-size:.86rem;line-height:1.3}.summary-text{margin:0;color:#0f5132;font-weight:700;font-size:.89rem}.meta-text{margin:0;color:#4b5563;font-size:.83rem}.status-text{margin:0;color:var(--google-blue);font-size:.86rem;font-weight:700}.error-text{margin:0;color:var(--google-red);font-size:.86rem;font-weight:700}.diagnostic-text{margin:0;padding:.7rem;border-radius:10px;border:1px solid #f8d7da;background:#fff5f5;color:#7f1d1d;font-size:.75rem;white-space:pre-wrap;word-break:break-word}.empty-results{min-height:100%;display:grid;place-items:center;border:1px dashed #ced9ee;border-radius:10px;color:#6b7280;font-size:.9rem;text-align:center;padding:1rem}@media (max-width: 980px){.analyzer-shell{height:auto}.analyzer-layout,.field-grid{grid-template-columns:1fr}.results-list,.analyzer-form{max-height:none;overflow:auto}}
