/*
 * Plugin Name: Devis Food Truck
 * Description: Styles du formulaire food truck
 * Version: 1.3.0
 */

:root {
  /* ════════════════════════════════════════════
     COULEURS — modifiez uniquement cette section
     ════════════════════════════════════════════ */
  --ft-primary:      #e2625b;
  --ft-primary-dark: #c44e47;
  --ft-grad-from:    #e2625b;
  --ft-grad-to:      #f97316;
  --ft-success:      #6ead6d;
  --ft-success-bg:   #eef6ee;
  --ft-success-text: #2a6b2c;
  --ft-soft-bg:      #fff5f5;
  --ft-soft-border:  #fca5a5;
  --ft-active-bg:    #fdf1f0;
  --ft-error:        #e2625b;
  --ft-error-bg:     #fdf1f0;
  --ft-error-border: #fca5a5;
}



.devis-ft-wrap{max-width:560px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
input,select,textarea{width:100%;border:1.5px solid #e2e8f0;border-radius:8px;background:#fff;padding:8px 12px;color:#111;font-size:13px;font-family:inherit;outline:none;transition:border-color .15s}
input:focus,select:focus,textarea:focus{border-color:var(--ft-primary);box-shadow:0 0 0 3px rgba(226,98,91,.1)}
select{appearance:none;padding-right:28px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7'%3E%3Cpath d='M1 1l4.5 4.5L10 1' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer}
textarea{resize:vertical;min-height:68px}
.ok{border-color:var(--ft-success)!important}
.er{border-color:var(--ft-primary)!important;background:var(--ft-active-bg)!important}
.lbl{font-size:11px;color:#64748b;margin-bottom:4px;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:4px}
.req{color:var(--ft-primary)}
.emsg{font-size:11px;color:var(--ft-primary-dark);margin-top:3px}
.hint{font-size:11px;color:#94a3b8;margin-top:3px}
.mb{margin-bottom:12px}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.g2h{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.gcp{display:grid;grid-template-columns:90px 1fr;gap:8px}
.rel{position:relative}
.vmark{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--ft-success);font-size:14px;pointer-events:none}
.seg{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 6px;border:1.5px solid #e2e8f0;border-radius:12px;background:#fff;cursor:pointer;font-family:inherit;width:100%;transition:border .12s,background .12s}
.seg.on{border:2px solid var(--ft-primary);background:var(--ft-active-bg)}
.seg .ico{font-size:18px}
.seg .ttl{font-size:11px;font-weight:600;color:#111;text-align:center;line-height:1.3}
.seg.on .ttl{color:var(--ft-primary-dark)}
.seg .sub{font-size:10px;color:#94a3b8}
.seg.on .sub{color:rgba(196,78,71,.6)}
.plg{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1.5px solid #e2e8f0;border-radius:11px;background:#fff;cursor:pointer;font-family:inherit;width:100%;text-align:left;transition:border .12s,background .12s}
.plg.on{border:2px solid var(--ft-primary);background:var(--ft-active-bg)}
.plg .pi{font-size:16px;flex-shrink:0}
.plg .pt{display:block;font-size:12px;font-weight:600;color:#111;line-height:1.3}
.plg.on .pt{color:var(--ft-primary-dark)}
.plg .ps{display:block;font-size:10px;color:#94a3b8;line-height:1.3}
.plg.on .ps{color:rgba(196,78,71,.6)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{display:inline-flex;align-items:center;padding:5px 12px;border:1.5px solid #e2e8f0;border-radius:999px;font-size:12px;cursor:pointer;background:#fff;color:#111;font-family:inherit;white-space:nowrap;transition:all .12s}
.chip.on{background:var(--ft-primary);border-color:transparent;color:#fff;font-weight:500}
.chip.grn{background:var(--ft-success-bg);border-color:var(--ft-success);color:var(--ft-success-text);font-weight:500}
.chip.dash{border-style:dashed;font-style:italic}
.sep{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin:14px 0 10px;padding-bottom:5px;border-bottom:1.5px solid var(--ft-primary);color:var(--ft-primary)}
.head{display:flex;align-items:center;gap:12px;padding:11px;border-radius:12px;border:1px solid var(--ft-soft-border);margin-bottom:12px;background:var(--ft-soft-bg)}
.rw{position:relative;width:44px;height:44px;flex-shrink:0}
.rpct{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--ft-primary)}
.ht{font-size:13px;font-weight:600;color:#111}
.hs{font-size:11px;color:#94a3b8;margin-top:1px}
.dots{display:flex;align-items:center;gap:5px;margin-bottom:18px}
.dw{display:flex;align-items:center}
.dwl{flex:1}
.di{display:flex;align-items:center;gap:4px}
.dot{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
.dd{color:#fff;background:var(--ft-primary)}
.da{background:var(--ft-active-bg);color:var(--ft-primary-dark);border:2px solid var(--ft-primary)}
.dt{background:#f1f5f9;color:#94a3b8;border:1px solid #e2e8f0}
.dl{font-size:10px;color:var(--ft-primary);font-weight:500}
.dline{flex:1;height:1px;margin:0 4px;background:#e2e8f0}
.dlined{background:#fca5a5}
.cal-btn{width:100%;display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:13px;border:1.5px solid #e2e8f0;border-radius:8px;background:#fff;min-height:38px;cursor:pointer;font-family:inherit;color:#94a3b8;transition:border .15s}
.cal-btn.hv{border-color:var(--ft-success);color:#111}
.cal-btn.he{border-color:var(--ft-primary);background:var(--ft-active-bg)}
.cal-btn.ho{border-color:var(--ft-primary);box-shadow:0 0 0 3px rgba(226,98,91,.1)}
.cal-panel{border:1px solid #e2e8f0;border-radius:12px;background:#fff;overflow:hidden;margin-top:4px;box-shadow:0 4px 16px rgba(0,0,0,.08)}
.cal-nav{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid #f1f5f9}
.cal-mo{font-size:13px;font-weight:600;color:#111}
.cal-arr{width:24px;height:24px;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;font-size:14px;display:flex;align-items:center;justify-content:center;color:#64748b;cursor:pointer;font-family:inherit;line-height:1}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;padding:7px}
.cal-ds{text-align:center;font-size:10px;color:#94a3b8;padding:2px 0}
.cal-d{height:28px;width:100%;border:none;border-radius:5px;font-size:11px;display:flex;align-items:center;justify-content:center;cursor:pointer;background:transparent;color:#111;font-family:inherit;transition:background .1s,color .1s}
.cal-d:hover:not([disabled]):not(.sel){background:var(--ft-active-bg);color:var(--ft-primary-dark)}
.cal-d.dis{color:#cbd5e1;cursor:default}
.cal-d.tod{font-weight:700;color:var(--ft-primary)}
.cal-d.sel{background:var(--ft-primary);color:#fff;font-weight:600}
.cui-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:13px;border:1.5px solid #e2e8f0;border-radius:8px;background:#fff;min-height:38px;cursor:pointer;font-family:inherit;color:#111;transition:border .15s}
.cui-btn.ho{border-color:var(--ft-primary);box-shadow:0 0 0 3px rgba(226,98,91,.1)}
.cui-ph{color:#94a3b8}
.cui-panel{border:1px solid #e2e8f0;border-radius:8px;background:#fff;max-height:185px;overflow-y:auto;margin-top:3px;box-shadow:0 4px 12px rgba(0,0,0,.07)}
.cui-row{display:flex;align-items:center;gap:9px;padding:7px 12px;cursor:pointer;font-size:13px;color:#111;transition:background .1s}
.cui-row:hover{background:#f8fafc}
.cui-grp-lbl{padding:6px 12px 3px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;background:#f8fafc;border-bottom:1px solid #f1f5f9;position:sticky;top:0}
.cui-row.on{color:var(--ft-primary-dark);font-weight:500}
.chk{width:16px;height:16px;border-radius:3px;border:1px solid #cbd5e1;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;transition:all .12s}
.chk.on{background:var(--ft-primary);border-color:var(--ft-primary)}
.tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.tag{display:inline-flex;align-items:center;gap:3px;background:var(--ft-active-bg);color:var(--ft-primary-dark);border:1px solid var(--ft-soft-border);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:500}
.tagx{background:none;border:none;cursor:pointer;color:inherit;opacity:.5;font-size:13px;padding:0;font-family:inherit;line-height:1}
.cp-sug{position:absolute;top:calc(100% + 2px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;z-index:50;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.08)}
.cp-item{padding:8px 12px;font-size:13px;cursor:pointer;color:#111;border-bottom:1px solid #f1f5f9;transition:background .1s}
.cp-item:last-child{border-bottom:none}
.cp-item:hover{background:var(--ft-active-bg);color:var(--ft-primary-dark)}
.ratio-ok{margin-top:7px;padding:7px 10px;border-radius:8px;font-size:12px;background:#f0fdf4;border:1px solid #86efac;color:#166534}
.ratio-lo{margin-top:7px;padding:7px 10px;border-radius:8px;font-size:12px;background:#eff6ff;border:1px solid #93c5fd;color:#1e40af}
.cbox{border-radius:10px;border:1px solid #e2e8f0;padding:11px;background:#f8fafc;margin-bottom:12px}
.cbox.er{border-color:var(--ft-primary);background:var(--ft-active-bg)}
.crow{display:flex;align-items:flex-start;gap:10px}
.cb{width:16px;height:16px;border-radius:3px;border:2px solid #cbd5e1;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;margin-top:2px;cursor:pointer;transition:all .12s;min-width:16px}
.cb.on{background:var(--ft-primary);border-color:var(--ft-primary)}
.ctxt{font-size:11px;color:#64748b;line-height:1.6}
.ibox{border-radius:12px;border:1px solid var(--ft-soft-border);padding:12px;font-size:12px;color:#64748b;line-height:1.6;background:var(--ft-soft-bg)}
.ibox strong{color:#111}
.nav{display:flex;justify-content:space-between;align-items:center;margin-top:22px;padding-top:14px;border-top:1px solid #f1f5f9}
.bbtn{background:transparent;border:none;font-size:13px;color:#94a3b8;cursor:pointer;padding:8px 0;font-family:inherit}
.bbtn:hover{color:#111}
.nbtn{padding:11px 22px;border-radius:8px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;border:none;font-family:inherit;background:var(--ft-primary);box-shadow:0 4px 14px rgba(226,98,91,.3)}
.nbtn:hover{opacity:.9}
.stitle{font-size:15px;font-weight:600;color:#111;margin-bottom:4px}
.ssub{font-size:13px;color:#64748b;margin-bottom:14px}
.mile{display:flex;align-items:center;gap:8px;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;padding:7px 11px;margin-bottom:12px;font-size:12px;color:#92400e}
.cficon{width:52px;height:52px;border-radius:50%;background:var(--ft-primary);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;box-shadow:0 4px 14px rgba(226,98,91,.3)}
.ns{display:flex;align-items:flex-start;gap:10px;padding:7px 0;border-bottom:1px solid #f1f5f9;font-size:13px}
.ns:last-child{border-bottom:none}
.nsn{width:20px;height:20px;border-radius:50%;background:var(--ft-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0;margin-top:2px}