:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#0a0a0f,#1a1a2e);min-height:100vh;color:#e0e0e0}.app{min-height:100vh;display:flex;flex-direction:column}.header{text-align:center;padding:30px 20px;background:#0000004d;border-bottom:1px solid rgba(255,255,255,.1)}.header h1{font-size:1.8rem;background:linear-gradient(90deg,#00f5ff,#bf00ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:5px}.header p{color:#888;font-size:.9rem}.main{flex:1;padding:30px 20px;max-width:800px;margin:0 auto;width:100%}.input-section{margin-bottom:30px}textarea{width:100%;padding:15px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#0000004d;color:#fff;font-size:1rem;resize:vertical;margin-bottom:15px}textarea:focus{outline:none;border-color:#00f5ff}.analyze-btn{width:100%;padding:15px;font-size:1.1rem;font-weight:700;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.analyze-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #6366f166}.analyze-btn:disabled{opacity:.5;cursor:not-allowed}.error{background:#f443;border:1px solid #ff4444;padding:15px;border-radius:8px;margin-bottom:20px;color:#f66}.loading{text-align:center;padding:40px;color:#888}.spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#00f5ff;border-radius:50%;margin:0 auto 15px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.results{background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:25px}.score-box{text-align:center;padding:30px;border:3px solid;border-radius:12px;margin-bottom:25px;background:#0000004d}.score{font-size:4rem;font-weight:700}.verdict{font-size:1.2rem;font-weight:700;margin-top:10px;text-transform:uppercase;letter-spacing:2px}.section{margin-bottom:25px;padding-bottom:25px;border-bottom:1px solid rgba(255,255,255,.1)}.section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section h3{color:#00f5ff;font-size:.9rem;letter-spacing:1px;margin-bottom:15px}.section p{line-height:1.6;color:#ccc}.stack{display:flex;flex-direction:column;gap:10px}.stack-item{padding:15px;border-radius:8px;border-left:4px solid}.stack-item.pass{background:#00ff881a;border-color:#0f8}.stack-item.fail{background:#ff44441a;border-color:#f44}.stack-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.stack-name{font-weight:700;font-size:.85rem}.stack-status{font-size:.75rem;padding:3px 8px;border-radius:4px;background:#ffffff1a}.stack-note{font-size:.9rem;color:#aaa;margin-bottom:8px}.stack-evidence{font-size:.85rem;font-style:italic;color:#f66;padding:8px;background:#0000004d;border-radius:4px}.segments{display:flex;flex-wrap:wrap;gap:10px}.segment{background:#f443;border:1px solid #ff4444;padding:8px 12px;border-radius:6px;font-size:.9rem;color:#f66}.segment small{opacity:.7}.audit-group{margin-top:15px}.audit-group h4{font-size:.85rem;margin-bottom:10px;color:#aaa}.audit-group ul{list-style:none;padding-left:0}.audit-group li{padding:8px 12px;background:#ffffff0d;border-radius:4px;margin-bottom:5px;font-size:.9rem}.footer{text-align:center;padding:20px;color:#666;font-size:.85rem;border-top:1px solid rgba(255,255,255,.1)}
