.egc-app{--egc-p:#800030;--egc-g:#d4991c;--egc-b:37,150,220;max-width:900px;margin:0 auto;font-family:inherit}
.egc-app *{box-sizing:border-box}
.egc-card{position:relative;background:#fff;border-radius:14px;padding:36px 24px 40px;box-shadow:0 2px 14px rgba(0,0,0,.06);text-align:center;min-height:320px}
.egc-title{margin:0 0 24px;font-size:26px;font-weight:700;color:#000;line-height:1.2}
.egc-note{color:#666}
.egc-stage{position:relative;max-width:760px;margin:0 auto;line-height:0}
.egc-stage img{width:100%;height:auto;display:block;user-select:none;-webkit-user-drag:none}
.egc-svg{position:absolute;inset:0;width:100%;height:100%}
.egc-poly{fill:transparent;stroke:transparent;stroke-width:1.5;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .2s;outline:none}
.egc-poly:hover,.egc-poly:focus{fill:rgba(var(--egc-b),.25)}
.egc-poly.sev-minimal{fill:rgba(var(--egc-b),.35);stroke:#fff}
.egc-poly.sev-moderate{fill:rgba(var(--egc-b),.55);stroke:#fff}
.egc-poly.sev-severe{fill:rgba(var(--egc-b),.75);stroke:#fff}
.egc-actions{margin-top:28px}
.egc-btn{display:inline-flex;align-items:center;gap:6px;background:var(--egc-p);color:#fff!important;border:0;border-radius:6px;padding:10px 22px;font-size:14px;font-weight:600;letter-spacing:.3px;cursor:pointer;text-decoration:none;transition:opacity .2s}
.egc-btn svg{width:16px;height:16px}
.egc-btn:hover{opacity:.88}
.egc-btn:disabled{background:#c4c4c4;cursor:not-allowed;opacity:1}
.egc-gold-btn{background:var(--egc-g)}
.egc-modal{position:absolute;inset:0;background:rgba(245,248,252,.82);display:flex;align-items:center;justify-content:center;z-index:5;border-radius:14px}
.egc-modal-box{background:#fff;border-radius:4px;box-shadow:0 4px 22px rgba(0,0,0,.25);padding:24px 28px;width:200px;text-align:left}
.egc-radio{display:block;margin:0 0 8px;font-size:14px;cursor:pointer}
.egc-radio input{margin-right:6px}
.egc-gold{display:block;width:100%;margin-top:16px;background:var(--egc-g);color:#fff;border:0;border-radius:3px;padding:9px;font-weight:600;cursor:pointer}
.egc-gold:hover{background:var(--egc-p)}
.egc-link{display:block;margin:10px auto 0;background:none;border:0;color:#777;font-size:12px;text-decoration:underline;cursor:pointer}
.egc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:620px;margin:0 auto}
.egc-opt,.egc-hair{background:#fff;border:0;cursor:pointer;font:inherit;color:inherit;padding:0}
.egc-opt{border-radius:8px;box-shadow:0 1px 8px rgba(0,0,0,.14);padding:8px 8px 6px;border:2px solid transparent}
.egc-opt.on{border-color:#8bc34a}
.egc-pic{position:relative;display:block;line-height:0}
.egc-pic img,.egc-sw{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;border-radius:6px}
.egc-tick{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:#8bc34a;color:#fff;font:700 12px/20px sans-serif;font-style:normal}
.egc-lbl{display:block;margin-top:6px;font-size:14px;font-weight:500}
.egc-hairs{display:flex;justify-content:center;gap:22px;flex-wrap:wrap}
.egc-circle{display:flex;width:76px;height:76px;border-radius:50%;background:#fff;box-shadow:0 1px 8px rgba(0,0,0,.18);border:2px solid #eee;align-items:center;justify-content:center;margin:0 auto}
.egc-circle svg,.egc-circle img{width:34px;height:52px;object-fit:contain}
.egc-hair.on .egc-circle{border-color:#8bc34a}
.egc-selects{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.egc-selects select{min-width:190px;padding:9px 12px;border:1px solid #333;border-radius:3px;background:#fff;font:inherit;font-size:14px}
.egc-result{position:relative;overflow:hidden;width:300px;max-width:100%;margin:0 auto;padding:22px 10px 26px;border-radius:6px;color:#fff;background:linear-gradient(115deg,#d9534f 0%,#e0a030 50%,#6aa84f 100%)}
.egc-star{position:absolute;left:-18px;bottom:-18px;width:90px;height:90px;background:rgba(255,255,255,.18);clip-path:polygon(50% 0,61% 20%,82% 10%,80% 33%,100% 40%,84% 56%,96% 78%,72% 76%,64% 100%,50% 82%,36% 100%,28% 76%,4% 78%,16% 56%,0 40%,20% 33%,18% 10%,39% 20%)}
.egc-rl{font-size:18px;font-weight:600;position:relative}
.egc-num{font-size:46px;font-weight:700;line-height:1.25;position:relative}
@media(max-width:600px){.egc-card{padding:26px 14px 30px}.egc-title{font-size:21px}.egc-grid{grid-template-columns:repeat(2,1fr);gap:12px}.egc-hairs{gap:14px}.egc-circle{width:64px;height:64px}.egc-selects select{width:100%}}
