/* Layout controls extend the standard /hosting/ card styles in tariff-cards.css. */
.allpanels-tariffs__toolbar { display: flex; justify-content: flex-end; margin-bottom: 26px; }
.allpanels-tariffs__toolbar[hidden] { display: none; }
.allpanels-tariffs__view { display: inline-flex; padding: 4px; border: 1px solid #d8e4f0; border-radius: 9px; background: #f4f8fc; }
.allpanels-tariffs__view button { display: inline-flex; align-items: center; padding: 8px 10px; border: 0; border-radius: 6px; background: transparent; color: #61758a; cursor: pointer; }
.allpanels-tariffs__view button svg { width: 18px; height: 18px; }
.allpanels-tariffs__view button.is-active { background: #fff; box-shadow: 0 2px 7px rgba(35,57,79,.13); color: #2278d8; }
.allpanels-tariffs__view button:hover { color: #2278d8; }
.allpanels-tariffs__group + .allpanels-tariffs__group { margin-top: 40px; }
.allpanels-tariffs__group-title { margin: 0 0 24px; color: #1f3449; font-size: 24px; line-height: 1.3; font-weight: 700; }
.allpanels-tariffs .storage-tariff-row { justify-content: center; margin: 0 -10px -20px; }
.allpanels-tariffs .storage-tariff-col { flex: 0 0 33.333333%; width: 33.333333%; max-width: 33.333333%; padding: 0 10px; box-sizing: border-box; }
.allpanels-tariffs .storage-tariff-card { box-sizing: border-box; min-width: 0; height: auto; }
.allpanels-tariffs .storage-tariff-card__head { flex-wrap: wrap; min-height: 59px; gap: 10px; }
.allpanels-tariffs .storage-tariff-card__panel { flex-shrink: 1; }
.allpanels-tariffs .storage-tariff-card__price { white-space: nowrap; }
.allpanels-tariffs .storage-tariff-card__button { box-sizing: border-box; }
.allpanels-tariffs .storage-tariff-card__bottom { border-top: 0; }
.allpanels-card__details { display: block; grid-column: 1 / -1; min-width: 0; }
.allpanels-card__details summary { width: fit-content; margin: auto; color: #2278d8; cursor: pointer; }
.allpanels-card__details p { margin: 10px 0 0; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; white-space: pre-line; }
.allpanels-tariffs a:focus-visible, .allpanels-tariffs summary:focus-visible, .allpanels-tariffs__view button:focus-visible { outline: 2px solid #2278d8; outline-offset: 4px; }
.allpanels-card__sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.allpanels-tariffs-note { margin: 24px 0 0; color: #6c7682; font-size: 13px; }
.allpanels-tariffs-note a { color: #2278d8; }
.allpanels-tariffs-message { padding: 20px; border: 1px solid #e6ebf1; border-radius: 6px; background: #f1f6fc; }
.allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-row { margin: 0; gap: 24px; }
.allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-col { flex-basis: 100%; width: 100%; max-width: 100%; margin: 0; padding: 0; }
.allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-card { display: grid; grid-template-columns: minmax(100px, 1fr) 120px minmax(240px, 2fr) minmax(160px, 1fr) 120px; grid-template-areas: "head disk features price action"; align-items: center; gap: 20px; min-height: 0; }
.allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-card__head { grid-area: head; min-height: 0; margin: 0; }
.allpanels-tariffs[data-standard-tariff-layout="list"] .allpanels-card__disk { grid-area: disk; grid-template-columns: 1fr; margin: 0; }
.allpanels-tariffs[data-standard-tariff-layout="list"] .allpanels-card__features { grid-area: features; min-width: 0; margin: 0; }
.allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-card__pricing { grid-area: price; margin: 0; }
.allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-card__bottom { grid-area: action; margin: 0; padding: 0; border-top: 0; }
@media (max-width: 1199px) {
    .allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-card { grid-template-columns: minmax(0, 1fr) minmax(180px, .65fr); grid-template-areas: "head price" "disk price" "features action"; align-items: start; gap: 20px 28px; }
    .allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-card__head { justify-content: flex-start; }
    .allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-card__features { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 20px; text-align: left; }
    .allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-card__feature--full { grid-column: auto; }
    .allpanels-tariffs[data-standard-tariff-layout="list"] .allpanels-card__details { text-align: left; }
    .allpanels-tariffs[data-standard-tariff-layout="list"] .allpanels-card__details summary { margin-left: 0; }
    .allpanels-tariffs[data-standard-tariff-layout="list"] .storage-tariff-card__bottom { align-self: end; }
}
@media (max-width: 991px) {
    .allpanels-tariffs .storage-tariff-col { flex-basis: 50%; width: 50%; max-width: 50%; }
}
@media (max-width: 767px) {
    .allpanels-tariffs .storage-tariff-row { margin: 0; gap: 20px; }
    .allpanels-tariffs .storage-tariff-col { flex-basis: 100%; width: 100%; max-width: 100%; margin: 0; }
    /* Both view modes use the same reading order on a phone. */
    .allpanels-tariffs[data-standard-tariff-layout] .storage-tariff-card { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: "head" "price" "disk" "features" "action"; align-items: start; gap: 20px; min-height: 0; padding: 20px 16px; }
    .allpanels-tariffs[data-standard-tariff-layout] .storage-tariff-card__head { grid-area: head; justify-content: space-between; min-height: 0; margin: 0; text-align: left; }
    .allpanels-tariffs[data-standard-tariff-layout] .storage-tariff-card__pricing { grid-area: price; margin: 0; text-align: left; }
    .allpanels-tariffs[data-standard-tariff-layout] .storage-tariff-card__price { margin: 0 0 6px; font-size: 26px; text-align: left; }
    .allpanels-tariffs[data-standard-tariff-layout] .storage-tariff-card__annual { text-align: left; line-height: 1.5; }
    .allpanels-tariffs[data-standard-tariff-layout] .storage-tariff-card__discount { line-height: 1.5; }
    .allpanels-tariffs[data-standard-tariff-layout] .storage-tariff-card__features { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; margin: 0; text-align: left; }
    .allpanels-tariffs[data-standard-tariff-layout] .allpanels-card__disk { grid-area: disk; }
    .allpanels-tariffs[data-standard-tariff-layout] .allpanels-card__features { grid-area: features; }
    .allpanels-tariffs[data-standard-tariff-layout] .storage-tariff-card__feature--full { grid-column: auto; }
    .allpanels-tariffs[data-standard-tariff-layout] .storage-tariff-card__feature strong { overflow-wrap: anywhere; }
    .allpanels-tariffs[data-standard-tariff-layout] .allpanels-card__details { text-align: left; }
    .allpanels-tariffs[data-standard-tariff-layout] .allpanels-card__details summary { margin-left: 0; }
    .allpanels-tariffs[data-standard-tariff-layout] .storage-tariff-card__bottom { grid-area: action; margin: 0; padding: 0; }
}
@media (prefers-reduced-motion: reduce) {
    .allpanels-tariffs .storage-tariff-card, .allpanels-tariffs .storage-tariff-card__button { transition: none; }
    .allpanels-tariffs .storage-tariff-card:hover { transform: none; }
}
