/* ================================================================
   CALCULATEUR D’ASCENDANT — Le même univers bleu nuit et rose.
   ================================================================ */

.asc-panel {
  padding: clamp(24px, 4vw, 48px);
  border: 1px solid #62486f;
  border-radius: 26px;
  background: linear-gradient(125deg, #182546, #10162e);
  scroll-margin-top: 125px;
}

.asc-panel form {
  margin-top: 30px;
  max-width: 1000px;
}

.asc-panel label {
  display: block;
  font-weight: 700;
  margin: 18px 0 10px;
}

.asc-panel input:not([type="checkbox"]) {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: 15px 16px;
  border: 1px solid #94749f;
  border-radius: 12px;
  background: #080f29;
  color: #fff;
  color-scheme: dark;
  font: inherit;
}

.asc-panel input::placeholder { color: #aebad3; }
.asc-panel small, .asc-help { color: #c2cde7; line-height: 1.6; }
.asc-panel small { display: block; margin-top: 8px; }
.asc-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.asc-options, .asc-method { margin: 25px 0; padding: 20px; border: 1px solid #61456e; border-radius: 15px; }
.asc-panel summary { cursor: pointer; color: #ffa0d0; font-weight: 700; }
.asc-panel .asc-checkbox { display: flex; align-items: center; gap: 12px; }
.asc-checkbox input { width: 20px; height: 20px; accent-color: #df389f; }
.asc-panel [hidden] { display: none !important; }
.asc-status { color: #ffc0d9; font-weight: 700; }
.asc-status:empty { display: none; }
#asc-result { margin-top: 32px; padding-top: 30px; border-top: 1px solid #6a4a79; scroll-margin-top: 125px; }
.asc-card { display: grid; grid-template-columns: 1fr 1fr; align-items: center; overflow: hidden; border-radius: 20px; border: 1px solid #ab6a9c; background: #080f29; color: #fff; text-decoration: none; }
.asc-card img { display: block; width: 100%; height: auto; }
.asc-card > div { padding: 28px; }
.asc-card h3 { margin: 0 0 14px; color: #ff9bce; font: 700 clamp(25px, 3vw, 38px)/1.25 Georgia, serif; }
.asc-card p { color: #f1e8fa; }
.asc-panel :focus-visible { outline: 3px solid #ffd67d; outline-offset: 4px; }
@media (max-width: 700px) {
  .asc-fields, .asc-card { grid-template-columns: 1fr; gap: 0; }
  .asc-panel { padding: 24px 20px; }
  .asc-panel .astro-button { width: 100%; }
}
