/* Errands add-on: layout helpers only, uses style.css variables */
.ehero{padding:34px 0 56px}
.ehead{display:flex;gap:14px;align-items:center}.ehead img{object-fit:contain;flex:0 0 auto}
.etabs{margin-top:18px}
.erow{display:grid;grid-template-columns:2fr 1fr;gap:20px;align-items:start}
.erow>div>.card+.card,.ereq+.ereq{margin-top:14px}
.ereq{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.emap{position:relative;border-radius:20px;overflow:hidden;border:1px solid var(--line);height:420px;background:#eef0f6}
.emap svg{width:100%;height:100%;display:block}
.emap .land{fill:#eef0f6}.emap .blk{fill:#fff}.emap .park{fill:#d8f5e3}
.emap .st{stroke:#dfe3ee;stroke-width:14}.emap .st.big{stroke:#fff3c4;stroke-width:22}
.emap .route-shadow{fill:none;stroke:#fff;stroke-width:16;stroke-linejoin:miter;stroke-linecap:square}
.emap .route{fill:none;stroke:var(--red);stroke-width:9;stroke-linejoin:miter;stroke-linecap:square}
.emap-tag{position:absolute;left:12px;bottom:10px;background:#fff;border-radius:999px;padding:3px 12px;font-size:12px;font-weight:600;color:var(--mut)}
.esteps{display:flex;gap:6px;flex-wrap:wrap}.esteps div{flex:1;min-width:90px;background:var(--bg);border-radius:12px;padding:8px;font-size:13px;font-weight:600;text-align:center;color:var(--mut)}
.esteps span{display:block;font-size:11px}.esteps .done{background:#d8f5e3;color:#0a7a3a}.esteps .cur{background:var(--mag);color:#fff}
.erate button{background:none;border:0;font-size:38px;color:#ccc;cursor:pointer}.erate button.on{color:#f5a623}
.etip{cursor:pointer}.etip.on{background:var(--mag);color:#fff}
.ebars{display:flex;gap:14px;align-items:flex-end;height:180px}.ebars div{flex:1;background:var(--chip);border-radius:10px 10px 0 0;position:relative}
.ebars span{position:absolute;bottom:-22px;left:0;right:0;text-align:center;font-size:12px;color:var(--mut)}
.eidx{padding-left:18px;margin:6px 0}.eidx li{margin:4px 0}
@media(max-width:900px){.erow{grid-template-columns:1fr}}
