:root{
--bt-primary:#720101;
--bt-accent:#d4a017;
--bt-bg:#fff8f5;
--bt-text:#222;
--bt-good:#0b7d3a;
--bt-bad:#b00020;
}
.bt2tech *{box-sizing:border-box}
.bt2tech{font-family: "Noto Serif", ui-serif, serif; background:var(--bt-bg); color:var(--bt-text);
border:1px solid #eee; border-radius:16px; padding:20px; box-shadow:0 8px 20px rgba(0,0,0,.06);}
.bt2tech h2{margin:0 0 12px;font-size:28px;color:var(--bt-primary);font-weight:800;letter-spacing:.2px}
.bt2tech p.lead{margin-top:0;color:#555}
.bt2tech .form{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;margin:16px 0 8px}
.bt2tech label{font-weight:700;font-size:14px;color:#444}
.bt2tech input, .bt2tech select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:10px;background:#fff}
.bt2tech .actions{grid-column:1/-1;display:flex;gap:10px;margin-top:8px}
.bt2tech .btn{background:var(--bt-primary);color:#fff;border:none;padding:12px 16px;border-radius:12px;cursor:pointer;
font-weight:700;transition:.2s}
.bt2tech .btn.secondary{background:#333}
.bt2tech .btn:hover{transform:translateY(-1px);opacity:.95}
.bt2tech .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}
.bt2tech .card{background:#fff;border:1px solid #eee;border-radius:14px;padding:14px;min-height:120px}
.bt2tech .card h3{margin:0 0 8px;color:var(--bt-primary);font-size:18px}
.bt2tech .badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:800}
.bt2tech .good{background:#e8f5ed;color:var(--bt-good)}
.bt2tech .bad{background:#fde8ea;color:var(--bt-bad)}
.bt2tech .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.bt2tech .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.bt2tech .compass{aspect-ratio:1/1;border-radius:50%;border:10px solid var(--bt-primary);position:relative;background:#fff;overflow:hidden}
.bt2tech .legend{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.bt2tech .legend span{display:inline-flex;align-items:center;gap:6px}
.bt2tech .swatch{width:14px;height:14px;border-radius:4px;border:1px solid #ccc;display:inline-block}
.bt2tech .result{margin-top:16px}
.bt2tech .muted{color:#666;font-size:13px}
.bt2tech .table{width:100%;border-collapse:separate;border-spacing:0 8px}
.bt2tech .table tr{background:#fff;border:1px solid #eee}
.bt2tech .table td,.bt2tech .table th{padding:10px 12px}
.bt2tech .tag{background:#f3f3f3;border-radius:8px;padding:4px 8px;display:inline-block;margin:4px 6px 0 0;font-size:12px}
@media(max-width:1024px){.bt2tech .form{grid-template-columns:repeat(2,1fr)}.bt2tech .cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.bt2tech .form{grid-template-columns:1fr}.bt2tech .cards{grid-template-columns:1fr}} .bt2tech input, .bt2tech select{min-height:48px; line-height:48px;}
.bt2tech .table td:first-child, .bt2tech .badge{ white-space:nowrap; }
.bt2tech .compass .sector{ position:absolute; inset:0; border-radius:50%; opacity:.25; }
.bt2tech .compass .labels{ position:absolute; inset:0; pointer-events:none; }
.bt2tech .compass .labels div{ position:absolute; font-weight:800; color:#333; transform:translate(-50%,-50%); font-size:12px; }
.bt2tech .pill{display:inline-block;padding:6px 10px;border-radius:999px;background:#fff;border:1px solid #eee;margin:4px 6px 0 0}
.bt2tech .subsection{margin-top:16px}
.bt2tech .table th{color:#666;text-transform:uppercase;font-size:12px} .bt2tech select{
height:48px;
line-height:normal !important; padding:10px 12px;
background-color:#fff;
-webkit-appearance:auto; -moz-appearance:auto; appearance:auto;
}
.bt2tech input[type="number"],
.bt2tech input[type="text"]{
height:48px;
line-height:normal;
padding:10px 12px;
}
.bt2tech .compass .sector{ opacity:1; }  .bt2tech .compass{ position:relative; }
.bt2tech .compass .wedge{ position:absolute; inset:0; border-radius:50%; }
.bt2tech .compass .wedge.good{
background: repeating-linear-gradient(45deg, rgba(16,185,129,.55) 0 8px, rgba(16,185,129,.15) 8px 16px);
}
.bt2tech .compass .wedge.bad{
background: repeating-linear-gradient(-45deg, rgba(239,68,68,.5) 0 8px, rgba(239,68,68,.15) 8px 16px);
}
.bt2tech .compass .dividers{
position:absolute; inset:0; border-radius:50%; pointer-events:none;
background: repeating-conic-gradient(rgba(114,1,1,.85) 0 1.3deg, transparent 1.3deg 45deg);
mix-blend-mode: multiply; opacity:.8;
}
.bt2tech .compass .labels{ z-index:3; }
.bt2tech .compass .wedge{ z-index:1; }
.bt2tech .compass .dividers{ z-index:2; }