/* ==========================================================================
   Flower Form 共通スタイル（order-form.php / pickup-form.php 共通）
   baptiste.jp の style.css から抜き出したもの。CSS変数への依存なし（色は直書き）。
   ========================================================================== */

.flower-form *{box-sizing:border-box;margin:0;padding:0}
.flower-form .section-label{font-size:1.2rem;font-weight:500;letter-spacing:0.05em;color:#917347;padding-bottom:0.75rem;border-bottom:1px solid #e8e8e8;margin-top:3rem}
.flower-form .section-label:first-child{margin-top:0}
.flower-form .f-row{display:grid;grid-template-columns:220px 1fr;align-items:center;min-height:96px}
.flower-form .label-cell{padding:1.5rem 1.5rem 1.5rem 0;display:flex;align-items:center;gap:8px}
.flower-form .dot{width:8px;height:8px;border-radius:50%;background:#917347;flex-shrink:0}
.flower-form .dot-empty{width:8px;height:8px;flex-shrink:0}
.flower-form .label-text{font-size:1.1rem;color:#1a1a1a}
.flower-form .input-cell{padding:1.1rem 0}
.flower-form .f-ipt{display:block!important;width:100%!important;height:60px!important;padding:0 18px!important;border:none!important;border-radius:8px!important;font-size:1.2rem!important;font-family:'Yu Gothic','游ゴシック',YuGothic,sans-serif!important;background:#f0f0f0!important;color:#1a1a1a!important;outline:none!important;box-shadow:none!important;-webkit-appearance:none!important;appearance:none!important;transition:background .15s!important}
.flower-form .f-ipt:focus{background:#e4e4e4!important}
.flower-form textarea.f-ipt{height:auto!important;min-height:120px!important;padding:16px 18px!important;resize:vertical!important}
.flower-form .qty-ipt{width:140px!important;text-align:center!important}
.flower-form .select-wrap{position:relative;width:100%}
.flower-form .select-wrap::after{content:'▾';position:absolute;right:16px;top:50%;transform:translateY(-50%);color:#917347;font-size:16px;pointer-events:none}
.flower-form .pickup-note{font-size:1.2rem;color:#666;margin:0 0 0.5rem;padding:16px 20px;background:#f7f4ef;border-radius:8px;line-height:1.7;text-align:center}
.flower-form .price-wrap{display:block!important;width:100%!important;margin-top:1.5rem!important}
.flower-form .price-wrap .p-row{display:flex!important;justify-content:space-between!important;align-items:center!important;min-height:unset!important;grid-template-columns:unset!important;padding:14px 0!important;border-bottom:1px solid #f0f0f0!important;font-size:1.1rem!important}
.flower-form .price-wrap .p-row.total{font-size:1.3rem!important;font-weight:500!important;border-bottom:none!important;padding-top:20px!important}
.flower-form .price-wrap .p-label{color:#1a1a1a!important;font-weight:400!important}
.flower-form .price-wrap .p-value{font-weight:500!important;color:#917347!important}
.flower-form .f-error{font-size:13px;color:#c0392b;margin-top:6px;display:none}
.flower-form .f-error-banner{display:none;background:#fdf2f2;border:1px solid #e6b8b8;border-radius:8px;padding:16px 20px;margin-bottom:2rem;color:#c0392b;font-size:14px;line-height:1.9}
.flower-form .f-error-banner strong{display:block;margin-bottom:4px;font-size:15px}
.flower-form .f-ipt.field-error{background:#fdf2f2!important;box-shadow:0 0 0 2px #e6b8b8 inset!important}
.flower-form .submit-btn{display:block;width:100%;height:64px;background:#917347;color:#fff;border:none;border-radius:8px;font-size:17px;font-family:'Yu Gothic','游ゴシック',YuGothic,sans-serif;font-weight:500;cursor:pointer;margin-top:1.5rem;letter-spacing:0.04em}
.flower-form .submit-btn:disabled{background:#ccc;cursor:not-allowed}
.flower-form .komoju-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;color:#000;margin-top:1rem}

@media(max-width:600px){
    .flower-form{padding:1.5rem 1rem}
    .flower-form .f-row{grid-template-columns:1fr;min-height:auto}
    .flower-form .label-cell{padding:1.25rem 0 0.25rem}
    .flower-form .input-cell{padding:0.5rem 0 1rem}
    .flower-form .zip-row{flex-wrap:wrap}
    .flower-form .zip-row .f-ipt{width:100%!important}
    .flower-form .zip-btn{width:100%;text-align:center}
}

.flatpickr-day.selected,
.flatpickr-day.selected:hover,
.flatpickr-day.selected:focus{background:#917347!important;border-color:#917347!important}
.flatpickr-day.today{border-color:#917347!important}
.flatpickr-day.today:hover{background:#f5f0e8!important;border-color:#917347!important;color:#917347!important}

.flower-form .zip-row{display:flex;align-items:center;gap:12px}
.flower-form .zip-row .f-ipt{width:180px!important}
.flower-form .zip-btn{height:60px;padding:0 20px;background:#f0f0f0;border:none;border-radius:8px;font-size:14px;font-family:inherit;color:#917347;cursor:pointer;white-space:nowrap;transition:background .15s;flex-shrink:0}
.flower-form .zip-btn:hover{background:#e4e4e4}
.flower-form .area-outside{display:none;font-size:13px;margin-top:8px;color:#888}
.flower-form .area-outside a{color:#917347;text-decoration:underline}
.flower-form .gift-toggle{display:flex;align-items:center;gap:10px;cursor:pointer}
.flower-form .gift-toggle input[type=checkbox]{width:18px;height:18px;accent-color:#917347}
.flower-form .gift-toggle span{font-size:1.1rem;color:#1a1a1a}
.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover{color:#ddd!important;background:transparent!important}
