.proposal-workspace{display:grid;gap:1rem}.proposal-card{background:#fff;border:1px solid #dbe3ee;border-radius:16px;padding:1rem}.proposal-grid{display:grid;gap:.75rem}.proposal-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.proposal-card label,.proposal-editor label{display:grid;gap:.35rem;font-weight:700;color:#334155}.proposal-card input,.proposal-card select,.proposal-card textarea,.proposal-editor input,.proposal-editor textarea{width:100%;border:1px solid #cbd5e1;border-radius:9px;padding:.65rem;background:#fff}.proposal-card textarea,.proposal-editor textarea{min-height:72px;resize:vertical}.proposal-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}.proposal-actions button,.proposal-history button,.proposal-editor button,.insight-history button{border:0;border-radius:9px;padding:.65rem 1rem;background:#1d4ed8;color:#fff;font-weight:800}.proposal-origin-legend{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.proposal-origin-legend span{border-radius:999px;padding:.25rem .55rem;background:#eff6ff;font-size:.75rem}.proposal-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.proposal-option{border:1px solid #cbd5e1;border-radius:12px;padding:.8rem}.proposal-option.recommended{border:2px solid #2563eb;background:#eff6ff}.proposal-option header{display:flex;justify-content:space-between;gap:.5rem}.proposal-option h4{margin:.15rem 0}.fit-score{font-weight:900;color:#1d4ed8;margin:.5rem 0}.proposal-empty{text-align:center;padding:2rem;color:#64748b;border:1px dashed #cbd5e1;border-radius:12px}.proposal-report-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.proposal-report-summary div{border:1px solid #e2e8f0;border-radius:10px;padding:.7rem;background:#f8fafc}.proposal-report-summary span,.proposal-report-summary strong{display:block}.proposal-history{width:100%;border-collapse:collapse}.proposal-history th,.proposal-history td{padding:.55rem;border-bottom:1px solid #e2e8f0;text-align:left}.insight-history article{border-left:3px solid #2563eb;padding:.65rem;margin:.65rem 0;background:#f8fafc}.insight-history a,.insight-history small{display:block;word-break:break-all}.document-preview-modal{position:fixed;inset:0;z-index:100000;background:rgba(15,23,42,.78);display:grid;grid-template-rows:auto 1fr}.document-preview-modal.hidden{display:none}.document-preview-toolbar{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;background:#fff;padding:.65rem 1rem}.document-preview-toolbar h3{margin-right:auto}.document-preview-toolbar button{border:0;border-radius:8px;padding:.55rem .8rem;background:#1d4ed8;color:#fff;font-weight:800}.document-preview-toolbar button:disabled{opacity:.4}.document-preview-scroll{overflow:auto;padding:1rem}.document-preview-body{width:210mm;min-height:297mm;margin:auto;background:#fff;padding:12mm;color:#111827;font-family:'Sarabun',sans-serif}.proposal-paper section{break-inside:avoid;margin-bottom:10mm}.proposal-paper .page-break{page-break-after:always;min-height:250mm;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.proposal-paper h1{font-size:28px;color:#1d4ed8}.proposal-paper h2{font-size:19px;color:#1e3a8a;border-bottom:2px solid #bfdbfe;padding-bottom:4px}.proposal-paper table{width:100%;border-collapse:collapse}.proposal-paper th,.proposal-paper td{border:1px solid #cbd5e1;padding:7px}.proposal-package{break-inside:avoid;border:1px solid #cbd5e1;border-radius:10px;padding:10px;margin:8px 0}.proposal-logo img{max-width:120px;max-height:100px}.demo-watermark{position:fixed;inset:40% auto auto 20%;font-size:90px;color:rgba(220,38,38,.12);transform:rotate(-25deg);z-index:10}.proposal-card em,.proposal-editor em{font-size:.7rem;color:#64748b;font-style:normal}@media(max-width:900px){.proposal-options,.proposal-grid.two{grid-template-columns:1fr}.proposal-report-summary{grid-template-columns:repeat(2,1fr)}.document-preview-body{width:100%;min-height:auto;padding:6mm}.document-preview-scroll{padding:.35rem}}@media print{body>*:not(.document-preview-modal){display:none!important}.document-preview-modal{position:static;display:block;background:#fff}.document-preview-toolbar{display:none}.document-preview-scroll{padding:0;overflow:visible}.document-preview-body{width:100%;padding:0}.demo-watermark{position:fixed}}
.area-picker{display:grid;gap:.45rem;margin-top:.15rem;font-weight:400}.area-chip-row{display:flex;flex-wrap:wrap;gap:.4rem}.area-chip{min-height:40px;border:1px solid #bfdbfe;border-radius:999px;padding:.45rem .85rem;background:#eff6ff;color:#1e40af;font-weight:700;font-size:.9rem;line-height:1.2;cursor:pointer}.area-chip.is-selected{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.area-chip.is-selected span{margin-left:.25rem;opacity:.85}.area-chip-quick .area-chip{background:#fff}.area-picker-hint{color:#64748b;font-size:.75rem}
.proposal-grid>label{align-content:start}
.cov-host:empty{display:none}.cov-panel{margin-top:.6rem;border:1px solid #bfdbfe;border-radius:12px;padding:.7rem;background:#f8fbff;font-weight:400;color:#1e293b;display:grid;gap:.5rem}.cov-head{display:flex;flex-wrap:wrap;gap:.25rem .6rem;align-items:baseline;justify-content:space-between}.cov-head b{color:#1e3a8a}.cov-head span{font-size:.82rem;color:#1d4ed8;font-weight:700}.cov-map{width:100%;height:auto;display:block;border-radius:10px;border:1px solid #dbeafe;background:#eef6ff}.cov-sea{fill:#eaf3fb}.cov-prov{fill:#fbfdf7;stroke:#94a3b8;stroke-width:.7}.cov-prov-label{font-size:11px;fill:#475569;text-anchor:middle;font-weight:700;paint-order:stroke;stroke:#fff;stroke-width:3px}.cov-amp-in{fill:#1d4ed8}.cov-amp-part{fill:#60a5fa}.cov-amp-edge{fill:#fff;stroke:#3b82f6;stroke-width:1}.cov-tower{fill:#dc2626;stroke:#fff;stroke-width:2}.cov-tower-label{font-size:12px;font-weight:800;fill:#991b1b;paint-order:stroke;stroke:#fff;stroke-width:3px}.cov-scale{font-size:10px;fill:#334155}.cov-legend{display:flex;flex-wrap:wrap;gap:.3rem .8rem;font-size:.72rem;color:#475569}.cov-legend i{display:inline-block;width:.8rem;height:.8rem;border-radius:999px;margin-right:.25rem;vertical-align:-1px}.cov-dot{background:#1d4ed8}.cov-dot-part{background:#60a5fa}.cov-dot-edge{background:#fff;border:1px solid #3b82f6}.cov-list{margin:0;padding-left:1rem;font-size:.82rem;display:grid;gap:.25rem;list-style:disc}.cov-muted{color:#64748b;font-size:.75rem}.cov-details summary{cursor:pointer;font-size:.82rem;font-weight:700;color:#1e40af}.cov-note{color:#64748b;font-size:.7rem;line-height:1.35}
.pick-grid{display:flex;flex-wrap:wrap;gap:.4rem;align-content:flex-start}.pick-grid.is-scroll{max-height:232px;overflow-y:auto;padding:.45rem;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;overscroll-behavior:contain}.pick-opt{display:inline-flex;align-items:center;gap:.45rem;min-height:40px;padding:.4rem .75rem;border:1.5px solid #cbd5e1;border-radius:10px;background:#fff;color:#334155;font-weight:600;font-size:.88rem;line-height:1.25;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:background-color .12s,border-color .12s}.pick-opt:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.pick-box{flex:0 0 auto;width:18px;height:18px;border:2px solid #94a3b8;border-radius:5px;background:#fff;display:inline-grid;place-items:center}.pick-opt.is-checked{border-color:#1d4ed8;background:#eff6ff;color:#1e3a8a}.pick-opt.is-checked .pick-box{background:#1d4ed8;border-color:#1d4ed8}.pick-opt.is-checked .pick-box::after{content:'';width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}.pick-group{flex:0 0 100%;font-size:.72rem;font-weight:800;color:#64748b;margin-top:.15rem}.pick-hidden-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}.area-picker-hint{display:block;min-height:1.1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pick-clusters{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.4rem}.pick-cluster{border-style:dashed;font-weight:800}.pick-opt.is-partial{border-color:#93c5fd;background:#f0f7ff}.pick-opt.is-partial .pick-box{border-color:#1d4ed8;background:linear-gradient(#1d4ed8,#1d4ed8) center/9px 2px no-repeat #fff}.sai-cluster details summary{color:#6d28d9;font-weight:700}
/* 28 ต.ค. 2569: จัดหน้าเป็น 3 ขั้น (ลูกค้าและงบ / เป้าหมาย / พื้นที่และช่องทาง) + แถบสรุปติดด้านล่าง */
.ss-steps{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin-top:.9rem;min-width:0}
.ss-step{border:1px solid #e2e8f0;border-radius:14px;padding:.9rem 1rem 1rem;background:#fff;display:grid;grid-template-columns:minmax(0,1fr);gap:.9rem;min-width:0}
.ss-step-head{display:flex;align-items:center;gap:.55rem;margin:0;font-size:1rem;font-weight:900;color:#0f172a}
.ss-step-num{flex:0 0 auto;width:26px;height:26px;border-radius:999px;background:#1d4ed8;color:#fff;display:inline-grid;place-items:center;font-size:.82rem;font-weight:900}
#rec-steps .ss-step-num{background:#7c3aed}
.ss-row3{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr)}
.ss-field{display:grid;gap:.4rem;min-width:0}
.ss-field-label{display:flex;align-items:center;gap:.5rem;font-weight:700;color:#334155}
.ss-count{font-size:.72rem;font-weight:800;line-height:1.4;border-radius:999px;padding:0 .5rem;background:#dbeafe;color:#1e40af}
#rec-steps .ss-count{background:#ede9fe;color:#5b21b6}
.ss-count:empty{display:none}
.ss-actionbar{min-width:0;position:sticky;bottom:calc(.5rem + env(safe-area-inset-bottom,0px));z-index:6;display:flex;align-items:center;gap:.75rem;padding:.65rem .75rem;border:1px solid #bfdbfe;border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 8px 24px -10px rgba(15,23,42,.35)}
#rec-steps .ss-actionbar{border-color:#ddd6fe}
.ss-summary{flex:1 1 auto;min-width:0;font-size:.85rem;font-weight:600;color:#334155;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.ss-actionbar>button{flex:0 0 auto;border:0;border-radius:10px;padding:.75rem 1.1rem;background:#1d4ed8;color:#fff;font-weight:800;white-space:nowrap}
.ss-actionbar>.flex{flex:0 0 auto}
.ss-actionbar>.flex>button:first-child{padding-left:1.25rem;padding-right:1.25rem;white-space:nowrap}
#recommender-system-tab>.overflow-hidden{overflow:clip}
/* ช่องพิมพ์เพิ่มเอง: ซ่อนไว้ กด "+ พิมพ์เพิ่มเอง" แล้วจึงแสดง */
.pick-foot{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;min-height:32px}
.pick-foot .area-picker-hint{flex:1 1 12rem;min-width:0}
.pick-add{flex:0 0 auto;border:1px dashed #94a3b8;border-radius:8px;padding:.3rem .7rem;background:#fff;color:#1e40af;font-size:.8rem;font-weight:700;cursor:pointer}
.pick-foot .pick-typing{flex:1 1 100%}
.area-picker.is-collapsed .pick-typing{display:none!important}
.area-picker:not(.is-collapsed) .pick-add{display:none}
@media(max-width:900px){.ss-row3{grid-template-columns:repeat(2,minmax(0,1fr))}.ss-row3>:first-child{grid-column:1/-1}}
@media(max-width:640px){.ss-step{padding:.8rem}.ss-actionbar{flex-direction:column;align-items:stretch;gap:.5rem}.ss-actionbar>button,.ss-actionbar>.flex{width:100%}.ss-summary{font-size:.8rem}}
@media(max-width:420px){.ss-row3{grid-template-columns:1fr}}
.pick-opt{max-width:100%}.pick-opt>span{min-width:0;overflow-wrap:anywhere}
.area-picker,.ss-field,.pick-body{grid-template-columns:minmax(0,1fr);min-width:0}
.cov-side{display:grid;gap:.5rem;align-content:start;min-width:0}
@media(min-width:1100px){#proposal-steps .cov-panel{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;column-gap:1rem}#proposal-steps .cov-head{grid-column:1/-1}#proposal-steps .cov-side{max-height:640px;overflow-y:auto;overscroll-behavior:contain;padding-right:.25rem}}
@media(max-width:640px){.ss-actionbar{padding:.5rem .6rem;gap:.4rem;bottom:calc(.35rem + env(safe-area-inset-bottom,0px))}.ss-summary{-webkit-line-clamp:1;font-size:.78rem}.ss-actionbar>button,.ss-actionbar>.flex>button{padding-top:.6rem!important;padding-bottom:.6rem!important}}
/* 28 ต.ค. 2569: ตัวค้นหาสินค้า (หน้าสั่งซื้อ / สร้างแพ็กเกจ) – ความสูงคงที่ กรองแล้วหน้าจอไม่ขยับ */
.pf{display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem;min-width:0}
.pf-bar{display:flex;align-items:center;gap:.6rem;min-width:0}
.pf-search-wrap{position:relative;flex:1 1 auto;min-width:0}
.pf-search-wrap>i{position:absolute;left:.8rem;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:.85rem;pointer-events:none}
.pf-search{width:100%;min-height:44px;padding:.55rem .8rem .55rem 2.2rem;border:1px solid #cbd5e1;border-radius:10px;background:#fff;font-size:.95rem;outline:none}
.pf-search:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.18)}
.pf-count{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);font-size:.72rem;font-weight:700;color:#64748b;white-space:nowrap;pointer-events:none}
.pf-search{padding-right:4.4rem!important}
.pf-group{flex:0 0 auto;width:12.5rem;max-width:45%;min-height:44px;padding:.5rem 2rem .5rem .75rem;border:1px solid #cbd5e1;border-radius:10px;background-color:#fff;font-size:.92rem;font-weight:700;color:#1e293b}
.pf-group:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.18)}
.pf-group[hidden]{display:none}
.pf-chips{display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.2rem;scrollbar-width:thin;overscroll-behavior-x:contain}
.pf-chips[hidden]{display:none}
.pf-chip{flex:0 0 auto;min-height:36px;padding:.3rem .75rem;border:1.5px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;font-size:.84rem;font-weight:700;white-space:nowrap;cursor:pointer}
.pf-chip span{margin-left:.2rem;font-size:.72rem;color:#64748b;font-weight:800}
.pf-chip.is-on{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.pf-chip.is-on span{color:#dbeafe}
.pf-list{height:320px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;padding:.35rem;overscroll-behavior:contain;display:flex;flex-direction:column;gap:.3rem}
.pf-head{position:sticky;top:-.35rem;z-index:1;margin:0 -.35rem;padding:.3rem .7rem;background:#eef2f7;font-size:.72rem;font-weight:800;color:#475569}
.pf-row{display:flex;align-items:center;gap:.6rem;width:100%;min-height:48px;padding:.45rem .7rem;border:1.5px solid #e2e8f0;border-radius:10px;background:#fff;text-align:left;cursor:pointer;color:#1e293b}
.pf-row:hover{border-color:#93c5fd;background:#f8fbff}
.pf-row:focus-visible{outline:2px solid #2563eb;outline-offset:1px}
.pf-row.is-selected{border-color:#1d4ed8;background:#eff6ff}
.pf-radio{flex:0 0 auto;width:18px;height:18px;border:2px solid #94a3b8;border-radius:999px;background:#fff}
.pf-row.is-selected .pf-radio{border-color:#1d4ed8;box-shadow:inset 0 0 0 3px #fff;background:#1d4ed8}
.pf-main{flex:1 1 auto;min-width:0;display:grid;gap:.1rem}
.pf-name{font-size:.9rem;font-weight:600;line-height:1.3;overflow-wrap:anywhere}
.pf-code{display:inline-block;margin-right:.45rem;padding:0 .35rem;border-radius:5px;background:#f1f5f9;color:#475569;font-size:.72rem;font-weight:800;vertical-align:1px}
.pf-extra{font-size:.72rem;color:#64748b}
.pf-tag{flex:0 0 auto;padding:.05rem .45rem;border-radius:999px;background:#ecfdf5;color:#047857;font-size:.72rem;font-weight:800;white-space:nowrap}
.pf-price{flex:0 0 auto;font-size:.9rem;color:#1d4ed8;white-space:nowrap}
.pf-empty{padding:1.5rem 1rem;text-align:center;color:#64748b;font-size:.88rem}
.pf-filter-only{margin-bottom:.25rem}
.pf-row,.pf-head,.pf-empty{flex-shrink:0}.pf-extra{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.pf-tag{padding:0 .45rem}
@media(max-width:640px){.pf-list{height:300px}.pf-row{gap:.5rem;padding:.45rem .55rem}.pf-name{font-size:.86rem}.pf-price{font-size:.84rem}.pf-search{font-size:16px}}
.pf-chip.is-zero{opacity:.45}

@media(max-width:640px){.pf-bar{gap:.4rem}.pf-group{width:10.75rem;max-width:47%;padding-left:.55rem;padding-right:1.6rem;font-size:15px}.pf-search{padding-right:3.9rem!important}}

/* 28 ต.ค. 2569 (2): หน้าสั่งซื้อ – สถานี + On Air/Online + ค้นหา แถวเดียว / รายการ 2 คอลัมน์ / แถบ "เลือกแล้ว" */
.pf-bar-order{display:grid;grid-template-columns:auto auto minmax(12rem,1fr);align-items:end;gap:.6rem}
.pf-ctl{display:grid;gap:.2rem;min-width:0}
.pf-ctl[hidden],.pf-seg[hidden]{display:none!important}
.pf-ctl>span{font-size:.72rem;font-weight:700;color:#64748b}
.pf-station,.pf-kind{min-height:44px;min-width:11rem;padding:.5rem 2rem .5rem .75rem;border:1px solid #cbd5e1;border-radius:10px;background-color:#fff;font-size:.95rem;font-weight:800;color:#0f172a}
.pf-station:focus,.pf-kind:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.18)}
.pf-seg{display:inline-flex;align-self:end;padding:3px;gap:3px;border-radius:12px;background:#e2e8f0;min-height:44px}
.pf-seg-btn{min-width:5.5rem;padding:.35rem .8rem;border:0;border-radius:9px;background:transparent;color:#334155;font-size:.88rem;font-weight:800;white-space:nowrap;cursor:pointer}
.pf-seg-btn span{margin-left:.25rem;font-size:.72rem;font-weight:800;color:#64748b}
.pf-seg-btn.is-on{background:#fff;color:#1d4ed8;box-shadow:0 1px 3px rgba(15,23,42,.15)}
.pf-seg-btn.is-on span{color:#1d4ed8}
.pf-seg-btn.is-zero{opacity:.5}
.pf-order .pf-search{padding-right:4.2rem!important}
.pf-order.pf-mode-package .pf-bar-order{grid-template-columns:auto auto minmax(12rem,1fr)}
.pf-order.pf-mode-search .pf-bar-order{grid-template-columns:1fr}
.pf-order:not(.pf-mode-produce):not(.pf-mode-package) .pf-bar-order{grid-template-columns:auto minmax(12rem,1fr)}
.pf-order .pf-list{height:392px;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,25rem),1fr));align-content:start;gap:.35rem}
.pf-order .pf-head{grid-column:1/-1}
.pf-order .pf-row{min-height:46px;padding:.4rem .65rem}
.pf-empty{grid-column:1/-1}
.pf-all-stations{display:block;margin:.6rem auto 0;padding:.45rem .9rem;border:1px solid #93c5fd;border-radius:9px;background:#eff6ff;color:#1d4ed8;font-weight:800;cursor:pointer}
.pf-picked{display:flex;align-items:center;gap:.6rem;min-height:52px;padding:.5rem .8rem;border:1.5px dashed #cbd5e1;border-radius:12px;background:#fff;color:#64748b;font-size:.88rem}
.pf-picked.is-on{border:1.5px solid #10b981;background:#ecfdf5;color:#065f46}
.pf-picked>i{color:#059669;font-size:1.1rem}
.pf-picked-name{flex:1 1 auto;min-width:0;font-weight:800;color:#064e3b;overflow-wrap:anywhere}
.pf-picked-name small{display:block;font-size:.72rem;font-weight:700;color:#047857}
.pf-picked>b{flex:0 0 auto;font-size:1.05rem;color:#065f46;white-space:nowrap}
@media(max-width:900px){.pf-bar-order,.pf-order.pf-mode-package .pf-bar-order{grid-template-columns:1fr auto}.pf-bar-order .pf-search-wrap{grid-column:1/-1}.pf-station,.pf-kind{min-width:0;width:100%}}
@media(max-width:640px){.pf-bar-order,.pf-order.pf-mode-package .pf-bar-order,.pf-order:not(.pf-mode-produce):not(.pf-mode-package) .pf-bar-order{grid-template-columns:minmax(0,1fr)}.pf-seg{display:flex}.pf-seg-btn{flex:1 1 0;min-width:0;padding:.35rem .4rem}.pf-order .pf-list{height:340px}.pf-station,.pf-kind{font-size:16px}}

/* ชื่อ + ราคาอยู่ในแถบ "เลือกแล้ว" / โปรโมชันอยู่ในกล่อง "โปรโมชันของสินค้านี้" → ซ่อนกล่องราคาเดิมที่ซ้ำ */
body.pf-has-finder #product-info{display:none!important}
.pf-picked>b small{display:block;font-size:.68rem;font-weight:700;color:#047857;text-align:right}
@media(max-width:640px){.pf-order .pf-list{display:flex;flex-direction:column}}
.pf{-webkit-text-size-adjust:100%;text-size-adjust:100%}
/* ===== 2 พ.ย. 2569: ช่องเลือกหลายข้อแบบใหม่ (ช่องสรุป + หน้าต่างเลือก / ตารางติ๊กเรียบร้อย) ===== */
.pk-inline{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,9.5rem),1fr));gap:.4rem}
.pk-opt{display:flex;align-items:center;gap:.5rem;width:100%;min-height:44px;padding:.45rem .65rem;border:1.5px solid #cbd5e1;border-radius:10px;background:#fff;color:#334155;font-size:.88rem;font-weight:600;line-height:1.25;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .12s,border-color .12s}
.pk-opt:hover{border-color:#93c5fd}
.pk-opt:focus-visible,.pk-field:focus-visible,.pk-cluster:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
.pk-opt>span{min-width:0;overflow-wrap:anywhere}
.pk-box{flex:0 0 auto;width:18px;height:18px;border:2px solid #94a3b8;border-radius:5px;background:#fff;display:inline-grid;place-items:center}
.pk-opt.is-on,.pk-cluster.is-on{border-color:#1d4ed8;background:#eff6ff;color:#1e3a8a}
.pk-opt.is-on .pk-box,.pk-cluster.is-on .pk-box{background:#1d4ed8;border-color:#1d4ed8}
.pk-opt.is-on .pk-box::after,.pk-cluster.is-on .pk-box::after{content:'';width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg)}
.pk-cluster.is-partial .pk-box{border-color:#1d4ed8;background:linear-gradient(#1d4ed8,#1d4ed8) center/9px 2px no-repeat #fff}
.pk-more{display:flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;border:1.5px dashed #94a3b8;border-radius:10px;background:#fff;color:#1e40af;font-size:.85rem;font-weight:700;cursor:pointer}
.pk-field{display:flex;align-items:center;gap:.6rem;width:100%;height:3.4rem;padding:.4rem .75rem;border:1.5px solid #cbd5e1;border-radius:12px;background:#fff;text-align:left;cursor:pointer;color:#0f172a}
.pk-field:hover{border-color:#93c5fd;background:#f8fbff}
.pk-field-text{flex:1 1 auto;min-width:0;font-size:.9rem;font-weight:700;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.pk-field-text.is-empty{color:#94a3b8;font-weight:600}
.pk-field-count{flex:0 0 auto;min-width:1.7rem;height:1.7rem;padding:0 .4rem;border-radius:999px;background:#1d4ed8;color:#fff;font-size:.8rem;font-weight:800;display:inline-grid;place-items:center}
.pk-field-count:empty{display:none}
.pk-field-icon{flex:0 0 auto;color:#64748b;font-size:.85rem}
.pk-hint{display:block;min-height:1.05em;margin-top:.15rem;color:#64748b;font-size:.75rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#rec-steps .pk-field-count{background:#7c3aed}
#rec-steps .pk-opt.is-on,#rec-steps .pk-cluster.is-on{border-color:#7c3aed;background:#f5f3ff;color:#4c1d95}
#rec-steps .pk-opt.is-on .pk-box{background:#7c3aed;border-color:#7c3aed}
/* หน้าต่างเลือก */
html.pk-open,html.pk-open body{overflow:hidden}
.pk-sheet{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:1.25rem}
.pk-sheet[hidden]{display:none}
.pk-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55)}
.pk-panel{position:relative;width:min(100%,46rem);max-height:min(88vh,48rem);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:#fff;border-radius:18px;box-shadow:0 24px 60px rgba(15,23,42,.35);overflow:hidden;font-family:inherit}
.pk-head{display:flex;align-items:center;gap:.5rem;padding:.9rem 1rem .5rem 1.15rem}
.pk-head h3{flex:1;margin:0;font-size:1.1rem;font-weight:900;color:#0f172a}
.pk-x{width:40px;height:40px;border:0;border-radius:10px;background:#f1f5f9;color:#334155;font-size:1.1rem;cursor:pointer}
.pk-tools{padding:0 1rem .6rem}
.pk-search-wrap{position:relative;display:block}
.pk-search-wrap>i{position:absolute;left:.8rem;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:.85rem;pointer-events:none}
.pk-search{width:100%;min-height:44px;padding:.55rem .8rem .55rem 2.2rem;border:1px solid #cbd5e1;border-radius:10px;font-size:16px;outline:none}
.pk-search:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.18)}
.pk-body{overflow-y:auto;overscroll-behavior:contain;padding:.1rem 1rem 1rem;display:grid;gap:.85rem;align-content:start;background:#f8fafc;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}
.pk-sec{display:grid;gap:.45rem}
.pk-sec-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:0 -1rem;padding:.55rem 1rem .35rem;background:#f8fafc;font-size:.8rem;font-weight:800;color:#475569}
.pk-group-all{border:0;background:transparent;color:#1d4ed8;font-size:.78rem;font-weight:800;cursor:pointer;padding:.2rem .3rem}
.pk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));gap:.4rem}
.pk-clusters{display:grid;gap:.4rem;margin-top:.75rem}
.pk-cluster{display:flex;align-items:center;gap:.6rem;width:100%;padding:.6rem .75rem;border:1.5px dashed #93c5fd;border-radius:12px;background:#fff;text-align:left;cursor:pointer}
.pk-cluster span{display:grid}.pk-cluster b{font-size:.92rem;color:#1e3a8a}.pk-cluster small{font-size:.75rem;color:#64748b;font-weight:700}
.pk-add{justify-self:start;display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .9rem;border:1.5px dashed #2563eb;border-radius:10px;background:#eff6ff;color:#1d4ed8;font-weight:800;cursor:pointer}
.pk-empty{padding:1.2rem .5rem .3rem;text-align:center;color:#64748b;font-size:.88rem}
.pk-foot{display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom,0px))}
.pk-sum{flex:1;font-size:.88rem;font-weight:800;color:#0f172a}
.pk-clear{border:0;background:transparent;color:#b91c1c;font-weight:700;font-size:.85rem;padding:.5rem .4rem;cursor:pointer}
.pk-clear:disabled{opacity:.35;cursor:default}
.pk-done{min-width:7rem;min-height:44px;border:0;border-radius:10px;background:#1d4ed8;color:#fff;font-weight:800;font-size:.95rem;cursor:pointer}
@media(max-width:640px){.pk-sheet{padding:0;place-items:end stretch}.pk-panel{width:100%;max-height:92vh;border-radius:18px 18px 0 0}.pk-grid{grid-template-columns:1fr}.pk-inline{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* แผนที่รัศมี: พับเก็บ */
.cov-fold{border:1px solid #bfdbfe;border-radius:12px;background:#f8fbff;margin-top:.15rem}
.cov-fold[hidden]{display:none}
.cov-fold>summary{display:flex;align-items:center;gap:.5rem;padding:.6rem .8rem;cursor:pointer;list-style:none;font-size:.85rem;font-weight:700;color:#1e3a8a}
.cov-fold>summary::-webkit-details-marker{display:none}
.cov-fold-text{flex:1;min-width:0}
.cov-fold-more{color:#1d4ed8;font-size:.8rem}
.cov-fold[open] .cov-fold-more{display:none}
.cov-fold .cov-panel{margin:0 .5rem .5rem}
.ss-count{display:none!important}
.pk-hint{height:1.25rem;min-height:0;line-height:1.25rem;margin-top:.1rem}
