/* OAE Import Farm Gate Price — Frontend Styles */
:root{--fgp-navy:#0a2358;--fgp-blue:#0b63e6;--fgp-blue2:#2f86ff;--fgp-ice:#eef5ff;--fgp-line:#dce6f7;--fgp-green:#1c9a5b;--fgp-red:#e2483a;--fgp-r:14px;--fgp-shadow:0 4px 20px rgba(10,35,88,.1);}
.oae-fgp-front{font-family:'Sarabun','Kanit',sans-serif;color:#101a33;}

/* Filter Bar */
.oae-fgp-filter-bar{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end;background:var(--fgp-navy);padding:20px 24px;border-radius:var(--fgp-r);margin-bottom:24px;}
.oae-fgp-filter-group{display:flex;flex-direction:column;gap:6px;}
.oae-fgp-filter-group label{color:rgba(255,255,255,.8);font-size:12.5px;font-weight:600;}
.oae-fgp-filter-group select{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;padding:9px 14px;font-family:inherit;font-size:13.5px;min-width:150px;cursor:pointer;}
.oae-fgp-filter-group select option{background:var(--fgp-navy);}

/* Buttons */
.oae-fgp-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;border-radius:999px;font-weight:600;font-family:inherit;font-size:13.5px;cursor:pointer;border:none;transition:all .2s ease;}
.oae-fgp-btn-primary{background:var(--fgp-blue2);color:#fff;}
.oae-fgp-btn-primary:hover{background:var(--fgp-blue);transform:translateY(-1px);}
.oae-fgp-btn-success{background:var(--fgp-green);color:#fff;}
.oae-fgp-btn-success:hover{filter:brightness(1.1);}
.oae-fgp-btn-danger{background:var(--fgp-red);color:#fff;}
.oae-fgp-btn-danger:hover{filter:brightness(1.1);}
.oae-fgp-btn-secondary{background:#fff;color:var(--fgp-navy);border:1px solid var(--fgp-line);}
.oae-fgp-btn-secondary:hover{background:var(--fgp-ice);}
.oae-fgp-btn:disabled{opacity:.6;cursor:not-allowed;}

/* Loading */
.oae-fgp-loading{display:flex;align-items:center;gap:12px;justify-content:center;padding:40px;color:var(--fgp-blue);font-weight:600;}
.oae-fgp-spinner{width:28px;height:28px;border:3px solid var(--fgp-ice);border-top-color:var(--fgp-blue);border-radius:50%;animation:fgpSpin .7s linear infinite;}
@keyframes fgpSpin{to{transform:rotate(360deg);}}
.oae-fgp-empty{text-align:center;padding:40px;color:#888;font-size:15px;}

/* Info bar */
.oae-fgp-info-bar{display:flex;align-items:center;justify-content:space-between;background:var(--fgp-ice);border:1px solid var(--fgp-line);border-radius:var(--fgp-r);padding:14px 20px;margin-bottom:16px;font-weight:600;color:var(--fgp-navy);}
.oae-fgp-badge{background:var(--fgp-blue);color:#fff;font-size:12px;font-weight:700;padding:4px 12px;border-radius:999px;}

/* Toolbar */
.oae-fgp-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px;}
.oae-fgp-search-wrap{position:relative;display:flex;align-items:center;gap:8px;}
.oae-fgp-search-input{border:1px solid var(--fgp-line);border-radius:999px;padding:9px 16px 9px 16px;font-family:inherit;font-size:13.5px;width:240px;outline:none;}
.oae-fgp-search-input:focus{border-color:var(--fgp-blue2);box-shadow:0 0 0 3px rgba(47,134,255,.15);}
.oae-fgp-export-btns{display:flex;gap:8px;flex-wrap:wrap;}

/* Chart */
.oae-fgp-chart-wrap{background:#fff;border:1px solid var(--fgp-line);border-radius:var(--fgp-r);padding:20px;margin-bottom:20px;box-shadow:var(--fgp-shadow);}
.oae-fgp-chart-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:16px;}
.oae-fgp-select{border:1px solid var(--fgp-line);border-radius:10px;padding:8px 14px;font-family:inherit;font-size:13px;color:var(--fgp-navy);}
.oae-fgp-canvas-wrap{position:relative;height:320px;}

/* DataTable */
.oae-fgp-table-wrap{background:#fff;border:1px solid var(--fgp-line);border-radius:var(--fgp-r);padding:20px;margin-bottom:24px;box-shadow:var(--fgp-shadow);overflow-x:auto;}
.oae-fgp-datatable thead th{background:var(--fgp-navy)!important;color:#fff!important;font-weight:600;white-space:nowrap;padding:12px 14px!important;}
.oae-fgp-datatable tbody td{padding:10px 14px!important;font-size:13.5px;vertical-align:middle;}
.oae-fgp-datatable tbody tr:nth-child(even){background:var(--fgp-ice);}
.oae-fgp-datatable tbody tr:hover{background:#dbeaff!important;}
.oae-fgp-datatable .num{text-align:right;font-family:'JetBrains Mono',Consolas,monospace;font-size:13px;}
.oae-fgp-datatable .avg{font-weight:700;color:var(--fgp-blue);}
.oae-fgp-datatable .empty-cell{color:#ccc;}
.dataTables_wrapper .dataTables_filter input{border:1px solid var(--fgp-line);border-radius:8px;padding:6px 12px;}
.dataTables_wrapper .dataTables_info{font-size:12.5px;color:#888;}

/* Usage Form */
.oae-fgp-usage-card{background:linear-gradient(135deg,var(--fgp-navy),var(--fgp-blue));color:#fff;border-radius:var(--fgp-r);padding:28px;margin-top:8px;}
.oae-fgp-usage-card h3{margin:0 0 8px;font-size:17px;font-weight:700;}
.oae-fgp-usage-card .description{color:rgba(255,255,255,.75);font-size:13px;margin:0 0 20px;}
.oae-fgp-usage-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;}
.oae-fgp-field{display:flex;flex-direction:column;gap:6px;}
.oae-fgp-field-full{grid-column:1/-1;}
.oae-fgp-field label{font-size:12.5px;font-weight:600;color:rgba(255,255,255,.85);}
.req{color:#ff8a80;}
.oae-fgp-field input,.oae-fgp-field textarea{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;padding:10px 14px;font-family:inherit;font-size:13.5px;}
.oae-fgp-field input::placeholder,.oae-fgp-field textarea::placeholder{color:rgba(255,255,255,.5);}
.oae-fgp-field input:focus,.oae-fgp-field textarea:focus{outline:none;border-color:var(--fgp-blue2);background:rgba(255,255,255,.18);}
.oae-fgp-usage-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
#fgp-usage-msg{font-size:13px;font-weight:600;}
#fgp-usage-msg.ok{color:#5be08a;}
#fgp-usage-msg.err{color:#ff8a80;}
@media(max-width:640px){.oae-fgp-filter-bar{padding:16px;}.oae-fgp-usage-fields{grid-template-columns:1fr;}.oae-fgp-toolbar{flex-direction:column;align-items:flex-start;}.oae-fgp-search-input{width:100%;}}
