.partner-monthly-quote { border-top: 1px solid #dbe3de; margin-block: 20px; color: #182620; font-size: 16px; line-height: 1.6; }
.partner-monthly-quote summary { cursor: pointer; padding-block: 16px; font-weight: 700; }
.partner-quote-content { padding-bottom: 20px; min-width: 0; }
.partner-quote-mode { display: flex; align-items: center; gap: 16px; font-weight: 600; }
.partner-quote-mode select { font: inherit; min-height: 44px; background: #fff; border: 1px solid #748b7d; border-radius: 8px; padding: 6px 16px; color: inherit; }
.partner-quote-prices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 20px; }
.partner-quote-prices p { margin: 0; color: #476052; font-size: 14px; }
.partner-quote-prices strong { display: block; color: #182620; font-size: 22px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.partner-quote-note, .partner-quote-device { margin-block: 16px; font-size: 14px; color: #4e6357; overflow-wrap: anywhere; }
.partner-quote-stages { margin: 16px 0 0; padding: 0; list-style: none; }
.partner-quote-stages li { border-top: 1px solid #dbe3de; padding: 18px 0; }
.partner-quote-stages li:first-child { padding: 18px 16px; background: #edf5f0; border: 0; border-radius: 12px; }
.partner-quote-stages li > div { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; }
.partner-quote-stages strong { color: #17664e; flex-shrink: 0; font-size: 20px; font-variant-numeric: tabular-nums; }
.partner-quote-stages p { color: #4e6357; font-size: 14px; margin: 8px 0 0; overflow-wrap: anywhere; }
.partner-quote-notice { background: #f4f6f3; border-radius: 12px; padding: 16px; color: #344f3d; font-size: 14px; }
.partner-quote-conditions { margin-bottom: 20px; }
.partner-quote-conditions ul { margin: 0; padding-left: 20px; font-size: 14px; color: #4e6357; }
.partner-quote-conditions li { margin-bottom: 10px; overflow-wrap: anywhere; }
.partner-quote-status { font-size: 14px; color: #17664e; }
.partner-monthly-quote textarea { width: 100%; min-height: 240px; box-sizing: border-box; font: inherit; padding: 12px; border: 1px solid #748b7d; border-radius: 8px; }
.partner-monthly-quote :focus-visible { outline: 3px solid #17664e; outline-offset: 3px; }
.partner-monthly-quote ::selection { background: #cbe5d7; color: #182620; }
.smartphone-monthly-quote { min-width: 0; text-align: left; }
.smartphone-monthly-quote .partner-monthly-quote { margin: 0; }
.phone-deal-actions .smartphone-monthly-quote .partner-monthly-quote > summary,
.phone-deal-actions .smartphone-monthly-quote .partner-quote-conditions > summary {
  min-height: 48px; padding: 16px 0; border: 0; border-radius: 0;
  justify-content: space-between; gap: 12px; text-align: left;
  background: transparent; color: #182620; font-size: 16px; font-weight: 700; line-height: 1.5;
}
.phone-deal-actions .smartphone-monthly-quote details > summary::after { content: '+'; display: inline-block; flex-shrink: 0; }
.phone-deal-actions .smartphone-monthly-quote details[open] > summary::after { content: '−'; }
.smartphone-monthly-quote [data-copy-partner-quote] {
  min-height: 44px; padding: 10px 16px; border: 1px solid #17664e; border-radius: 8px;
  color: #17664e; background: #fff; font: inherit; font-weight: 700; cursor: pointer;
}
.smartphone-monthly-quote [data-copy-partner-quote]:disabled,
.smartphone-monthly-quote select:disabled { opacity: .65; cursor: default; }
.smartphone-monthly-quote .partner-quote-content { padding-bottom: 0; }
@media (max-width: 480px) {
  .partner-quote-stages li > div { flex-direction: column; gap: 4px; }
  .partner-quote-prices strong { font-size: 20px; }
}
