.wp-block-pink-lp-react-calc { margin: 2em 0; }
.section-container {
    max-width: 500px; margin: 0 auto; background: #fff;
    border-width: 2px; border-style: solid; border-radius: 15px; padding: 20px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}
.lp-title { display: block; text-align: center; font-weight: bold; font-size: 1.2em; margin-bottom: 20px; }
.atena-input, .styled-input {
    width: 100%; padding: 10px; border: 1px solid #eee; border-radius: 8px; box-sizing: border-box; margin-top: 5px;
}
.small-text { font-size: 12px; color: #666; margin-top: 10px; display: block; }
.plan-group { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 15px 0; }
.plan-item { border: 1px solid #eee; border-radius: 10px; padding: 10px; text-align: center; cursor: pointer; transition: 0.2s; }
.plan-item input { display: none; }
.plan-item:has(input:checked) { border-color: inherit; background: rgba(255,133,162,0.05); }
.plan-item img { width: 100%; border-radius: 5px; margin-bottom: 5px; max-height: 120px; object-fit: cover; }
.item-label { font-size: 12px; white-space: pre-wrap; }
.opt-row { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; font-size: 14px; cursor: pointer; }
.notice-box { font-size: 11px; line-height: 1.5; color: #777; margin-top: 15px; padding: 10px; border-radius: 8px; }
.total-area { text-align: center; font-size: 1.4em; font-weight: bold; margin-top: 20px; padding-top: 15px; border-top: 2px dashed; }
.print-btn {
    width: 100%; padding: 15px; border: none; border-radius: 30px;
    color: #fff; font-weight: bold; cursor: pointer; margin-top: 15px;
}
.calc-preview-msg { padding: 40px; border: 2px dashed; text-align: center; border-radius: 10px; }

