/* Music City Generator: scoped under body.mcg */
body.mcg .tool-mount{min-height:120px}
body.mcg .tool{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(18px,3vw,34px);align-items:start}
@media(max-width:940px){body.mcg .tool{grid-template-columns:1fr}}
body.mcg .tool-panel,body.mcg .tool-out{padding:clamp(20px,2.6vw,32px);border-radius:var(--r2);background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid var(--line);backdrop-filter:blur(8px)}
body.mcg .tool-out{position:sticky;top:calc(var(--hh) + var(--abh) + 18px);display:grid;gap:16px}
@media(max-width:940px){body.mcg .tool-out{position:static}}
body.mcg .tool-out.is-over{border-color:rgba(255,106,106,.6);box-shadow:0 0 40px -10px rgba(255,106,106,.5)}
body.mcg .tool-h{margin-bottom:14px}
body.mcg .tool-h b{display:block;font-family:var(--disp);text-transform:uppercase;font-size:22px}
body.mcg .tool-h small{color:var(--mut)}
body.mcg .tool-grp{border:0;margin:0 0 18px;padding:0;display:grid;gap:8px}
body.mcg .tool-grp legend{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--cy);padding:0;margin-bottom:8px}
body.mcg .opt{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:12px;border:1px solid var(--line);background:rgba(5,8,28,.45);cursor:pointer;transition:border-color .2s,background .2s}
body.mcg .opt:hover{border-color:rgba(53,224,255,.5)}
body.mcg .opt input{width:20px;height:20px;accent-color:var(--amp);flex:none}
body.mcg .opt span{flex:1;font-size:15px;font-weight:600}
body.mcg .opt em{font-style:normal;font-family:var(--mono);font-size:12px;color:var(--mut)}
body.mcg .opt:has(input:checked){border-color:var(--amp);background:rgba(255,194,26,.1)}
body.mcg .opt--pill{padding:10px 16px;border-radius:999px}
body.mcg .quiz-opts{display:flex;flex-wrap:wrap;gap:8px}
body.mcg .tool input[type=range]{width:100%;accent-color:var(--amp);height:28px}
body.mcg .tool .fld input[type=number],body.mcg .tool .fld select{background:rgba(5,8,28,.6);color:#fff}
body.mcg .tool .fld b{color:var(--amp)}
body.mcg .tool-gauge{display:grid;place-items:center}
body.mcg .gauge{width:min(100%,300px)}
body.mcg .out-big small{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut)}
body.mcg .out-big b{display:block;font-family:var(--disp);font-size:clamp(34px,4.4vw,56px);line-height:1.05;color:var(--amp);text-shadow:0 0 30px var(--ampglow);text-transform:uppercase}
body.mcg .out-dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}
body.mcg .out-dl div{padding:12px 14px;border-radius:12px;background:rgba(5,8,28,.55);border:1px solid var(--line)}
body.mcg .out-dl dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
body.mcg .out-dl dd{font-size:17px;font-weight:800;margin-top:3px}
body.mcg .out-note{font-size:13.5px;color:var(--mut);line-height:1.5}
body.mcg .out-fit{padding:14px;border-radius:14px;background:rgba(5,8,28,.55);border:1px solid var(--line);font-size:14px}
body.mcg .out-fit ul{display:grid;gap:6px;margin:10px 0}
body.mcg .out-fit li{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px dashed var(--line)}
body.mcg .out-fit li.ok em{color:#3dffa0}
body.mcg .out-fit li.no em{color:#ff8f8f}
body.mcg .out-fit em{font-style:normal;font-family:var(--mono);white-space:nowrap}
body.mcg .out-fit small{color:var(--dim)}
body.mcg .rank{display:grid;gap:10px}
body.mcg .rank li{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(5,8,28,.55);border:1px solid var(--line)}
body.mcg .rank li.is-top{border-color:var(--amp);background:rgba(255,194,26,.1)}
body.mcg .rank-n{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ink2);font-family:var(--disp);font-weight:800}
body.mcg .rank li.is-top .rank-n{background:var(--amp);color:#0b1030}
body.mcg .rank b{font-family:var(--disp);text-transform:uppercase;font-size:19px}
body.mcg .rank small{display:block;color:var(--mut);font-size:12.5px}
body.mcg .meter{height:5px;border-radius:3px;background:rgba(255,255,255,.1);margin-top:6px;overflow:hidden}
body.mcg .meter i{display:block;height:100%;background:linear-gradient(90deg,var(--cy),var(--amp))}
body.mcg .rank-links{display:grid;gap:4px;text-align:right;font-size:12.5px}
body.mcg .rank-links a{color:var(--cy);text-decoration:underline}
body.mcg .stack{display:flex;height:16px;border-radius:8px;overflow:hidden;background:rgba(255,255,255,.08)}
body.mcg .stack i{display:block;height:100%}
body.mcg .legend{display:grid;gap:6px;font-size:13.5px}
body.mcg .legend li{display:grid;grid-template-columns:12px 1fr auto;gap:10px;align-items:center}
body.mcg .legend i{width:12px;height:12px;border-radius:4px}
body.mcg .legend em{font-style:normal;font-family:var(--mono);font-size:12px;color:var(--mut)}
body.mcg .prog{display:flex;align-items:center;gap:14px;margin-bottom:18px}
body.mcg .prog-bar{flex:1;height:10px;border-radius:6px;background:rgba(255,255,255,.1);overflow:hidden}
body.mcg .prog-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--cy),var(--amp));transition:width .4s}
body.mcg .panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;border-radius:16px;background:#10142f;border:2px solid #2a3166;box-shadow:inset 0 0 40px rgba(0,0,0,.5)}
@media(max-width:560px){body.mcg .panel-grid{grid-template-columns:1fr}}
body.mcg .brk{position:relative;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid #2f3a7a;background:#161c42;text-align:left;transition:background .2s,border-color .2s}
body.mcg .brk i{width:26px;height:40px;border-radius:5px;background:#0a0d24;border:1px solid #39428a;position:relative}
body.mcg .brk i::after{content:"";position:absolute;left:3px;right:3px;bottom:3px;height:16px;border-radius:3px;background:#59629f;transition:transform .2s,background .2s;transform:translateY(0)}
body.mcg .brk.is-on{background:#16264f;border-color:var(--cy);box-shadow:0 0 22px -8px var(--cyglow)}
body.mcg .brk.is-on i::after{background:var(--cy);transform:translateY(-17px);box-shadow:0 0 10px var(--cyglow)}
body.mcg .brk span{font-size:13.5px;font-weight:700;line-height:1.2}
body.mcg .brk em{font-style:normal;font-family:var(--mono);font-size:11px;color:var(--mut)}
body.mcg .tool-send{margin-top:6px}
body.mcg .tool-form{margin-top:12px}
body.mcg .sec--tool .tool-mount+.tool-fine{margin-top:26px}
body.mcg .sec--glow .tool{margin-bottom:30px}
body.mcg .tools-teaser{margin-top:20px}
