.close-my-gap { border:1px solid var(--rule); border-radius:16px; background:var(--elevated); margin:0 0 24px; min-width:0; }
.close-my-gap summary { cursor:pointer; padding:20px 24px; font-weight:700; font-size:20px; }
.close-my-gap summary span { display:block; font-size:14px; font-weight:400; color:var(--muted); margin:8px 0 0; }
.comparison-body { padding:0 24px 24px; }
.comparison-body p,.comparison-body li { overflow-wrap:anywhere; line-height:1.6; }
.comparison-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:20px 0; }
.comparison-form label { display:flex; flex-direction:column; gap:8px; font-size:14px; font-weight:600; }
.comparison-form input,.comparison-form select { width:100%; min-width:0; min-height:48px; font-size:16px; color:var(--paper); background:var(--bg); border:1px solid var(--rule); border-radius:8px; padding:10px; }
.comparison-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:16px; }
.comparison-actions button,.comparison-form button { min-height:48px; padding:12px 18px; border-radius:8px; font:600 14px/1.5 Inter,sans-serif; border:1px solid var(--rule); background:var(--bg); color:var(--paper); cursor:pointer; }
.comparison-actions button:disabled { opacity:.55; cursor:default; }
.comparison-form button { background:var(--studio-forest); color:#fff; border-color:var(--studio-forest); }
.close-my-gap :focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.comparison-cards { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:20px 0; }
.comparison-card { border:1px solid var(--rule); border-radius:10px; padding:16px; min-width:0; }
.comparison-card h3 { font-size:17px; margin:0 0 12px; }
.comparison-card strong { font-size:22px; display:block; }
.comparison-card p,.comparison-card small { font-size:13px; }
.comparison-table-wrap { overflow:auto; max-width:100%; }
.comparison-table { border-collapse:collapse; width:100%; font-size:14px; }
.comparison-table th,.comparison-table td { padding:12px; text-align:left; border-bottom:1px solid var(--rule); }
.comparison-table caption { text-align:left; padding:12px 0; }
.comparison-body details { margin-top:18px; }
.comparison-body details summary { font-size:15px; padding:12px 0; }
.comparison-body [hidden] { display:none; }
@media(max-width:1000px) { .comparison-cards { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .comparison-form,.comparison-cards { grid-template-columns:minmax(0,1fr); } .comparison-body { padding:0 16px 16px; } .close-my-gap>summary { padding:18px 16px; } .comparison-actions button { width:100%; } }
