
/* UI */
.dks-map-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.6rem 0 .2rem}
.dks-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.55rem .9rem;border-radius:999px;font-weight:700;line-height:1;text-decoration:none;background:var(--dks-bg,#000);color:var(--dks-fg,#F6C41C)}
.dks-btn:hover{filter:brightness(1.1)}
.dks-modes{display:flex;gap:.25rem;margin-right:.25rem}
.dks-chip{border:0;border-radius:999px;padding:.35rem .6rem;cursor:pointer;font-weight:700;background:#eee}
.dks-chip.is-active{background:var(--dks-bg,#000);color:var(--dks-fg,#F6C41C)}

/* floater/panel */
.dkswf-route{position:fixed;right:14px;bottom:16px;z-index:9999;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 10px 25px rgba(0,0,0,.12);border-radius:12px;padding:.75rem .8rem;display:none;align-items:center;gap:.5rem}
.dkswf-route strong{font-weight:800}
.dkswf-route .dkswf-btn{border:0;border-radius:10px;padding:.45rem .7rem;cursor:pointer;font-weight:700}
.dkswf-open{background:var(--dks-bg,#000);color:var(--dks-fg,#F6C41C)}
.dkswf-clear{background:#eee;color:#333}
.dkswf-panel{display:flex;align-items:center;gap:.5rem;margin:.5rem 0 1rem}
.dkswf-panel .dkswf-btn{border:0;border-radius:10px;padding:.45rem .7rem;font-weight:700;cursor:pointer}
.dkswf-count-badge{background:#eee;border-radius:999px;padding:.35rem .6rem;font-weight:700}

/* builder */
.dkswf-page{display:block}
.dkswf-builder{display:grid;grid-template-columns: 1fr 1.2fr;gap:1rem;margin:1rem 0}
.dkswf-builder-left,.dkswf-builder-right{background:#fff;border:1px solid #eee;border-radius:12px;padding:1rem}
.dkswf-search{width:100%;padding:.55rem .65rem;border-radius:10px;border:1px solid #ddd;margin:.25rem 0 .75rem}
.dkswf-results{margin:0;padding:0;list-style:none;max-height:360px;overflow:auto}
.dkswf-results li{display:flex;align-items:center;gap:.5rem;padding:.4rem;border-bottom:1px dashed #eee}
.dkswf-results img{width:46px;height:46px;object-fit:cover;border-radius:8px;background:#f3f3f3}
.dkswf-results button{margin-left:auto}
.dkswf-route-list{margin:.5rem 0 1rem;padding-left:1.2rem}
.dkswf-route-list li{margin:.25rem 0;padding:.35rem .5rem;border:1px dashed #ddd;border-radius:8px;background:#fafafa;display:flex;align-items:center;gap:.5rem}
.dkswf-route-list .badge{background:#000;color:#F6C41C;border-radius:999px;padding:.1rem .5rem;font-weight:800}
.dkswf-route-list .rm{margin-left:auto}
.dkswf-stats{margin:.5rem 0}
.dkswf-actions .dkswf-btn{border:0;border-radius:10px;padding:.45rem .7rem;font-weight:700;cursor:pointer;margin-right:.4rem}
.dkswf-msg{margin-top:.5rem;font-weight:700}

/* listagem + single */
.dkswf-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:12px 0}
.dkswf-card{border:1px solid #eee;border-radius:12px;padding:12px;background:#fff}
.dkswf-card h4{margin:.1rem 0 .35rem;font-size:1.05rem}
.dkswf-card .meta{font-size:.9rem;color:#555;margin-bottom:.35rem}
.dkswf-route-view .dkswf-route-ol{padding-left:1.2rem}
.dkswf-route-view .badge{background:#000;color:#F6C41C;border-radius:999px;padding:.1rem .5rem;font-weight:800;margin-right:.35rem}
.dkswf-inline-modes{margin:.3rem 0 .5rem}
.dkswf-route-map{background:#fff;border:1px solid #eee}

/* modal */
.dkswf-modal{position:fixed;inset:0;background:rgba(0,0,0,.65);display:none;align-items:center;justify-content:center;z-index:99999}
.dkswf-modal.is-open{display:flex}
.dkswf-modal-inner{width:92vw;height:82vh;background:#000;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.dkswf-modal iframe{border:0;width:100%;height:100%}
.dkswf-modal .dkswf-close{position:absolute;right:8px;top:8px;background:#fff;border:0;border-radius:10px;padding:.4rem .6rem;font-weight:800;cursor:pointer}
@media (max-width: 900px){ .dkswf-builder{grid-template-columns:1fr;} }
