/* Interface pública do complemento. Estilos isolados do Elementor e do tema. */
#fpcwa-app, #fpcwa-app * { box-sizing:border-box; }
#fpcwa-app { font:15px/1.45 system-ui,-apple-system,"Segoe UI",Arial,sans-serif; color:#1a2b21; }
#fpcwa-app button, #fpcwa-app input, #fpcwa-app textarea, #fpcwa-app select {font:inherit;}
#fpcwa-app .fpcwa-launcher {position:fixed;right:18px;bottom:18px;z-index:2147482990;min-height:52px;display:flex;align-items:center;gap:9px;background:#165c38;border:0;border-radius:999px;color:white;padding:11px 18px;box-shadow:0 5px 23px #0004;cursor:pointer;font-weight:750;line-height:1;}
#fpcwa-app .fpcwa-launcher:hover {background:#0c492b;transform:translateY(-2px)}
#fpcwa-app .fpcwa-count {display:inline-flex;min-width:23px;height:23px;border-radius:999px;background:#ffdf69;color:#15391f;padding:1px 6px;align-items:center;justify-content:center;font-size:13px;font-weight:800;}
#fpcwa-app .fpcwa-backdrop {position:fixed;inset:0;z-index:2147483000;background:#03150b9e;}
#fpcwa-app .fpcwa-panel {position:fixed;right:0;top:0;height:100dvh;max-height:100%;width:min(460px,100%);z-index:2147483001;background:#f7faf7;color:#1b2b22;box-shadow:-9px 0 45px #0004;display:flex;flex-direction:column;overflow:hidden;}
#fpcwa-app .fpcwa-head {display:flex;align-items:center;gap:9px;background:#165c38;color:white;padding:20px;flex-shrink:0;}
#fpcwa-app .fpcwa-head h2 {font:700 22px/1.2 Georgia,serif;margin:0;color:white;flex:1;}
#fpcwa-app .fpcwa-close {display:inline-flex;align-items:center;justify-content:center;padding:0;background:transparent;color:white;border:1px solid #fff8;border-radius:10px;width:38px;height:38px;cursor:pointer;font-size:25px;line-height:1;text-align:center;}
#fpcwa-app .fpcwa-scroll {flex:1;overflow-y:auto;min-height:0;padding:16px 20px 22px;overscroll-behavior:contain;}
#fpcwa-app .fpcwa-items {display:grid;gap:9px;}
#fpcwa-app .fpcwa-item {background:white;border:1px solid #dbe7dd;border-radius:14px;padding:12px;display:grid;gap:8px;}
#fpcwa-app .fpcwa-item-title {font-weight:750;font-size:14px;line-height:1.35;}
#fpcwa-app .fpcwa-item-meta {color:#5b6e60;font-size:12px;}
#fpcwa-app .fpcwa-item-controls {display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;}
#fpcwa-app .fpcwa-qty {display:flex;align-items:center;gap:10px;}
#fpcwa-app .fpcwa-qty button {display:inline-flex;align-items:center;justify-content:center;padding:0;width:33px;height:33px;border-radius:9px;background:#e8f2e9;color:#135431;border:1px solid #c7d9cd;cursor:pointer;font-size:20px;line-height:1;text-align:center;}
#fpcwa-app .fpcwa-qty b {min-width:16px;text-align:center;}
#fpcwa-app .fpcwa-remove {border:0;background:transparent;text-decoration:underline;color:#a13535;cursor:pointer;font-size:12px;}
#fpcwa-app .fpcwa-subtotal {font-weight:800;color:#165c38;}
#fpcwa-app .fpcwa-empty {margin:18px 0 22px;text-align:center;color:#66776a;line-height:1.7;}
#fpcwa-app .fpcwa-total {display:flex;justify-content:space-between;align-items:baseline;padding:18px 0 12px;margin-top:12px;border-top:1px solid #d6e3d8;gap:10px;font-weight:700;}
#fpcwa-app .fpcwa-total strong {color:#165c38;font-size:23px;white-space:nowrap;}
#fpcwa-app .fpcwa-field {display:grid;gap:5px;margin-top:12px;color:#3d5545;font-size:13px;font-weight:600;}
#fpcwa-app .fpcwa-field input, #fpcwa-app .fpcwa-field textarea, #fpcwa-app .fpcwa-field select {display:block;width:100%;background:#fff;color:#1b2b22;border:1px solid #cbd8cf;border-radius:9px;min-height:41px;padding:10px 11px;outline-offset:2px;font-weight:400;}
#fpcwa-app .fpcwa-field textarea {min-height:70px;resize:vertical;}
#fpcwa-app .fpcwa-footer {flex-shrink:0;border-top:1px solid #d9e4dc;background:white;padding:14px 20px max(16px,env(safe-area-inset-bottom));}
#fpcwa-app .fpcwa-checkout {display:block;width:100%;min-height:50px;background:#20a65c;border:0;border-radius:12px;color:white;font-weight:800;cursor:pointer;font-size:15px;}
#fpcwa-app .fpcwa-checkout:hover {background:#16864a;}
#fpcwa-app .fpcwa-checkout:disabled {background:#aabbb0;cursor:not-allowed;}
#fpcwa-app .fpcwa-disclaimer {font-size:11px;color:#6f7c72;line-height:1.4;margin:8px 0 0;text-align:center;}
#fpcwa-app .fpcwa-warning {color:#8b2b16;font-size:13px;background:#fff4e9;border:1px solid #ffe1bd;border-radius:8px;margin:11px 0;padding:9px 11px;}
#fpcwa-app [hidden] {display:none!important;}
@media(max-width:560px){
 #fpcwa-app .fpcwa-launcher {right:13px;bottom:max(13px,env(safe-area-inset-bottom));padding:12px 14px;min-height:49px;}
 #fpcwa-app .fpcwa-head {padding:16px;}
 #fpcwa-app .fpcwa-scroll {padding:12px 15px;}
 #fpcwa-app .fpcwa-footer {padding:12px 15px max(16px,env(safe-area-inset-bottom));}
}

/* Finalização validada e retorno ao catálogo (v1.1). */
#fpcwa-app .fpcwa-form-title {font:700 18px/1.3 Georgia,serif;color:#183c28;margin:20px 0 4px;}
#fpcwa-app .fpcwa-form-help {font-size:12px;color:#607466;margin:0 0 10px;}
#fpcwa-app .fpcwa-field [aria-invalid="true"]:focus,
#fpcwa-app .fpcwa-field.fpcwa-invalid input,
#fpcwa-app .fpcwa-field.fpcwa-invalid select {border-color:#bb452c;outline-color:#bb452c;}
#fpcwa-app .fpcwa-added {position:fixed;z-index:2147483002;bottom:82px;right:16px;max-width:min(410px,calc(100vw - 32px));border:1px solid #cce4d1;border-radius:14px;background:#fff;color:#173d28;padding:12px 14px;display:flex;align-items:center;gap:12px;box-shadow:0 6px 26px #0004;font-size:13px;font-weight:650;}
#fpcwa-app .fpcwa-added button {border:0;background:#165c38;color:#fff;border-radius:9px;min-height:39px;padding:8px 12px;white-space:nowrap;font-weight:700;cursor:pointer;}
@media(max-width:560px) {#fpcwa-app .fpcwa-added {left:12px;right:12px;bottom:max(77px,calc(env(safe-area-inset-bottom) + 68px));justify-content:space-between;}}

#fpcwa-app .fpcwa-change{margin-top:10px;padding:10px 12px;background:#eef4f7;border-radius:10px;}
#fpcwa-app .fpcwa-change[hidden],#fpcwa-app .fpcwa-field[hidden]{display:none!important;}
