:root{--ruq-brand:#28A860;--ruq-green:var(--ruq-brand);--ruq-green-soft:#86efac;--ruq-red:#ef4444}
.ruq-wrap{max-width:none;width:95%;margin:0 auto}
.ruq-brand{display:flex;justify-content:center;margin:10px 0 16px}
.ruq-brand img{max-width:520px;width:100%;height:auto;display:block}
.ruq-card,.ruq-driver-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:16px;margin:14px 0;box-shadow:0 1px 6px rgba(0,0,0,.05)}
.ruq-title{color:var(--ruq-brand)}
.ruq-card__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.ruq-card__title{font-size:1.1rem;font-weight:700}
.ruq-card__sub{opacity:.75}
.ruq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ruq-grid--time{grid-template-columns:repeat(3,minmax(0,1fr))}
.ruq-grid--cats{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:800px){.ruq-grid,.ruq-grid--time,.ruq-grid--cats{grid-template-columns:1fr}}
.ruq-field input,.ruq-field select,.ruq-field textarea{padding:10px;border-radius:10px;border:1px solid rgba(0,0,0,.15)}
.ruq-field input[readonly]{background:rgba(0,0,0,.03)}
.ruq-alert{padding:10px;border-radius:10px;margin:10px 0}
.ruq-alert--error{background:rgba(220,53,69,.08)}
.ruq-alert--ok{background:rgba(25,135,84,.08)}
.ruq-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
@media(max-width:800px){.ruq-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ruq-tile{border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:12px}
.ruq-tile__value{font-size:1.4rem;font-weight:800}
.ruq-tile__label{opacity:.75}
.ruq-bars{display:grid;gap:10px}
.ruq-bar__track{height:14px;border-radius:999px;overflow:hidden;border:1px solid rgba(0,0,0,.08);display:flex}
.ruq-bar__seg{display:block;height:100%}
.ruq-bar__seg--a{background:rgba(25,135,84,.35)}
.ruq-bar__seg--b{background:rgba(13,110,253,.25)}
.ruq-bar__seg--c{background:rgba(220,53,69,.25)}
.ruq-bar__label{font-weight:700;margin-bottom:4px}
.ruq-bar__meta{opacity:.75;font-size:.9rem;margin-top:4px}
.ruq-cards{display:grid;gap:12px}
.ruq-badges{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.ruq-badge{display:inline-block;padding:4px 10px;border-radius:999px;border:1px solid rgba(0,0,0,.12);font-size:.9rem}
.ruq-pill{display:inline-block;padding:6px 10px;border-radius:999px;font-weight:700;font-size:.9rem}
.ruq-pill--ok{background:rgba(25,135,84,.12)}
.ruq-pill--no{background:rgba(220,53,69,.10)}
.ruq-details summary{cursor:pointer;margin-top:10px;font-weight:700}
.ruq-detail{margin-top:10px;display:grid;gap:6px}
.ruq-actions{margin-top:10px}

/* Dispatch dashboard upgrades */
.ruq-dispatch__row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.ruq-dispatch .ruq-btn{border:0;border-radius:14px;padding:12px 14px;font-weight:900;cursor:pointer;background:var(--ruq-green);color:#fff}
.ruq-dispatch .ruq-btn--ghost{background:rgba(0,0,0,.04);color:#111;border:1px solid rgba(0,0,0,.12)}
.ruq-dispatch__status{margin-top:10px;padding:10px;border-radius:12px;background:rgba(0,0,0,.03)}
.ruq-dispatch__actions{margin:10px 0 0 0}

.ruq-donut-grid{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:16px}
@media(max-width:1100px){.ruq-donut-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}}
.ruq-donut-grid--work{grid-template-columns:repeat(5,minmax(150px,1fr))}
@media(max-width:1100px){.ruq-donut-grid--work{grid-template-columns:repeat(2,minmax(150px,1fr))}}
.ruq-donut-card{padding:12px;border:1px solid rgba(0,0,0,.08);border-radius:14px;background:#fff}
.ruq-donut{width:110px;height:110px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;position:relative}
.ruq-donut-card--work .ruq-donut{width:92px;height:92px}
.ruq-donut-link{display:block;text-decoration:none;color:inherit}
.ruq-donut-link:focus{outline:2px solid rgba(0,0,0,.15);outline-offset:4px;border-radius:16px}

.ruq-modal{position:fixed;inset:0;z-index:99999;align-items:center;justify-content:center}
.ruq-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.35)}
.ruq-modal__panel{position:relative;background:#fff;border-radius:16px;max-width:820px;width:92%;box-shadow:0 18px 45px rgba(0,0,0,.25);padding:14px}
.ruq-modal__head{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 10px;border-bottom:1px solid rgba(0,0,0,.08)}
.ruq-modal__close{background:transparent;border:0;font-size:24px;line-height:1;cursor:pointer}
.ruq-modal__body{padding:12px 8px 8px}
.ruq-cat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media(max-width:700px){.ruq-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ruq-cat-btn{padding:12px 12px;border:1px solid rgba(0,0,0,.10);border-radius:14px;background:#fff;font-weight:800;cursor:pointer}
.ruq-cat-btn:hover{box-shadow:0 8px 18px rgba(0,0,0,.10)}

.ruq-detail{margin-top:10px;border-top:1px solid rgba(0,0,0,.08);padding-top:10px}
.ruq-detail__row{margin:6px 0}
.ruq-detail__section{margin:10px 0}
.ruq-detail__note{border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:10px 12px;background:#fff;line-height:1.4;white-space:normal}
.ruq-detail__tag{display:inline-block;border:1px solid rgba(0,0,0,.08);border-radius:999px;padding:4px 10px;background:#fff;font-weight:700}
.ruq-detail__tag.is-good{color:#127a3a}
.ruq-detail__tag.is-neutral{color:#555}
.ruq-detail__tag.is-bad{color:#b12020}
.ruq-detail__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:8px}
@media(max-width:900px){.ruq-detail__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ruq-detail__pill{border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:10px 10px;background:#fff;display:flex;flex-direction:column;gap:2px}
.ruq-detail__pill span{font-size:12px;opacity:.75}
.ruq-detail__pill strong{font-size:13px}
.ruq-detail__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
@media(max-width:900px){.ruq-detail__list{grid-template-columns:1fr}}
.ruq-detail__kv{border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:10px 10px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px}
.ruq-detail__kv span{font-size:13px;opacity:.85}
.ruq-detail__kv strong.is-good{color:#127a3a}
.ruq-detail__kv strong.is-neutral{color:#555}
.ruq-detail__kv strong.is-bad{color:#b12020}
.ruq-detail__pill.is-good strong{color:#127a3a}
.ruq-detail__pill.is-neutral strong{color:#555}
.ruq-detail__pill.is-bad strong{color:#b12020}
.ruq-donut-card--work .ruq-donut:before{inset:10px}
.ruq-donut:before{content:"";position:absolute;inset:12px;background:#fff;border-radius:50%}
.ruq-donut__center{position:relative;font-weight:900}
.ruq-donut__title{text-align:center;font-weight:800;margin-top:2px}
.ruq-donut__sub{text-align:center;font-size:12px;opacity:.75;margin-top:2px}
.ruq-donut{position:relative}
.ruq-donut .ruq-donut__tooltip{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;min-width:140px;max-width:220px;background:rgba(255,255,255,.96);border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:10px 12px;box-shadow:0 10px 22px rgba(0,0,0,.10);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s ease;font-size:12px;line-height:1.25;text-align:left;z-index:5}
.ruq-donut:hover .ruq-donut__tooltip{opacity:1;visibility:visible}

.ruq-more-wrap{margin-top:12px;display:flex;justify-content:center}

.ruq-pagination{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:14px}
.ruq-pagination .is-active{border-color:var(--ruq-brand);font-weight:900}

.ruq-pill--warn{background:rgba(255,193,7,.18)}
.ruq-btn{padding:8px 12px;border-radius:10px;border:1px solid rgba(0,0,0,.15);background:#fff;cursor:pointer}
.ruq-btn--big{padding:14px 22px;font-size:1.05rem;border-radius:14px;min-width:220px}
.ruq-btn--danger{border-color:rgba(220,53,69,.35)}
.ruq-list{margin:0;padding-left:18px}
.ruq-small{font-size:.9rem;opacity:.75}
.ruq-link{opacity:.85}

/* Step form */
.ruq-steps{margin:10px 0 14px}
.ruq-steps__bar{height:10px;border-radius:999px;border:1px solid rgba(0,0,0,.08);overflow:hidden}
.ruq-steps__barfill{display:block;height:100%;width:0;background:var(--ruq-brand)}
.ruq-steps__label{margin-top:8px;font-weight:700}
.ruq-steptext{margin:10px 0 14px;padding:10px;border-radius:12px;background:rgba(0,0,0,.03)}
.ruq-stepnav{display:flex;gap:10px;justify-content:center;margin-top:14px}
.ruq-stepnav .ruq-btn{background:var(--ruq-brand);border-color:var(--ruq-brand);color:#fff}
.ruq-stepnav .ruq-btn[hidden]{display:none !important}
.ruq-title{color:var(--ruq-brand)}
.ruq-summary .ruq-card{margin:0}

.ruq-step[hidden]{display:none !important}

/* Admin tabs + subtabs */
.ruq-admin-tabs{display:flex;flex-wrap:wrap;gap:8px}
.ruq-admin-tab{display:inline-block;padding:10px 14px;border:1px solid rgba(0,0,0,.12);border-radius:999px;text-decoration:none;color:inherit}
.ruq-admin-tab.is-active{border-color:var(--ruq-brand);font-weight:800}

.ruq-tabs__header{margin-bottom:10px}
.ruq-tabs__nav{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.ruq-tab{padding:10px 14px;border:1px solid rgba(0,0,0,.12);border-radius:12px;background:#fff;cursor:pointer}
.ruq-tab.is-active{border-color:var(--ruq-brand);box-shadow:0 1px 6px rgba(0,0,0,.05);font-weight:800}
.ruq-subtabs__nav{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.ruq-subtab{padding:8px 12px;border:1px solid rgba(0,0,0,.12);border-radius:999px;background:#fff;cursor:pointer}
.ruq-subtab.is-active{border-color:var(--ruq-brand);font-weight:800}


.ruq-spacer{height:10px}
.ruq-text-bad{color:#991b1b;font-weight:800}
.ruq-h2{color:var(--ruq-brand);font-size:1.35rem;font-weight:800;margin:6px 0 10px}
.ruq-step h2{color:var(--ruq-brand)}

/* Force wizard steps to be single-screen even if theme overrides [hidden] */
.ruq-step{display:none !important;}
.ruq-step.is-active{display:block !important;}

/* Mobiel optimalisatie */
@media(max-width:600px){
  .ruq-wrap{padding:0 10px}
  .ruq-brand img{max-width:360px}
  .ruq-card{padding:14px;border-radius:16px}
  .ruq-card__head{flex-direction:column;align-items:flex-start}
  .ruq-btn--big{min-width:0;width:100%}
  .ruq-stepnav{flex-direction:column;align-items:stretch}
  .ruq-field input,.ruq-field select,.ruq-field textarea{width:100%}
  .ruq-h2{font-size:1.2rem}
  .ruq-steps__label{font-size:.95rem}
}
