/* Switchbike Oficina */
.sbo{--dk:#22252a;--dk2:#2d3138;--gr:#39e600;--grd:#1f9e00;--bg:#f4f5f7;--line:#e3e5e8;--mut:#5c6169;--wa:#f5b400;max-width:640px;margin:0 auto 40px;font-family:Poppins,system-ui,-apple-system,sans-serif;color:var(--dk);font-size:15px;line-height:1.5}
.sbo *{box-sizing:border-box}
.sbo a{color:inherit}
.sbo-h2{font-size:22px!important;font-weight:800!important;margin:0 0 10px!important;line-height:1.2!important;color:var(--dk)!important;text-transform:none!important;letter-spacing:0!important}
.sbo-sub{color:var(--mut);margin:0 0 16px}
.sbo-hint{font-size:13px;color:var(--mut);margin:8px 0 0;line-height:1.5}
.sbo-card{display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;margin:0 0 12px;text-decoration:none!important;color:var(--dk)!important}
.sbo-card>b,.sbo-card summary b{font-size:16px}
.sbo-center{text-align:center;padding:28px 18px}
.sbo-big{font-size:44px;line-height:1}
.sbo-alert{background:#fff1f0;border:1px solid #f3c1bd;color:#9b1c13;border-radius:12px;padding:12px 14px;margin:0 0 12px;font-size:14px}
.sbo-ok{background:#effde9;border:1px solid #bfeeac;color:#1b5e00;border-radius:12px;padding:12px 14px;margin:0 0 12px;font-size:14px}
.sbo-btn{display:flex!important;align-items:center;justify-content:center;gap:8px;width:100%;border:0;border-radius:999px!important;padding:14px 18px!important;font-weight:700!important;font-size:14px!important;cursor:pointer;text-transform:uppercase;letter-spacing:.03em;text-decoration:none!important;margin:12px 0 0!important;line-height:1.2!important;min-height:48px;box-shadow:none!important}
.sbo-btn.sbo-p{background:var(--gr)!important;color:var(--dk)!important}
.sbo-btn.sbo-d{background:var(--dk)!important;color:#fff!important}
.sbo-btn.sbo-o{background:#fff!important;border:2px solid var(--dk)!important;color:var(--dk)!important}
.sbo-btn.sbo-r{background:#fff!important;border:2px solid #d33!important;color:#d33!important}
.sbo-btn[disabled]{opacity:.45;cursor:not-allowed}
.sbo-form label,.sbo label{display:block;font-size:13px;font-weight:600;margin:12px 0 0;color:var(--dk)}
.sbo input:not([type=radio]):not([type=checkbox]):not([type=file]),.sbo select,.sbo textarea{display:block;width:100%!important;max-width:none;border:1px solid var(--line)!important;border-radius:12px!important;padding:12px!important;background:#fff!important;font-size:16px!important;margin-top:6px!important;height:auto!important;min-height:46px;color:var(--dk)!important;box-shadow:none!important}
.sbo textarea{min-height:90px}
.sbo input,.sbo select,.sbo textarea,.sbo button{font-family:inherit!important}
.sbo-check{display:flex!important;gap:10px;align-items:flex-start;font-weight:500!important;font-size:13px!important;line-height:1.45}
.sbo-check input{margin-top:3px;width:18px;height:18px;flex:0 0 18px}
.sbo-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.sbo-grid.sbo-q{grid-template-columns:2fr 1fr}
.sbo-hp{position:absolute!important;left:-9999px!important;height:1px;overflow:hidden}
.sbo-step{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px;margin:22px 0 10px}
.sbo-step span{width:28px;height:28px;border-radius:50%;background:var(--dk);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px}
.sbo-chips{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sbo-chip{position:relative;border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px!important;margin:0!important;cursor:pointer}
.sbo-chip input,.sbo-day input,.sbo-slot input{position:absolute;opacity:0;pointer-events:none}
.sbo-chip b{display:block;font-size:14px}.sbo-chip span{display:block;font-size:12px;color:var(--mut);font-weight:400}
.sbo-chip:has(input:checked),.sbo-chip.on{border:2px solid var(--grd);background:#effde9}
.sbo-days{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;-webkit-overflow-scrolling:touch}
.sbo-day{position:relative;min-width:64px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 6px!important;margin:0!important;text-align:center;cursor:pointer;font-size:12px!important;font-weight:500!important;text-transform:capitalize}
.sbo-day b{display:block;font-size:20px;line-height:1.2}
.sbo-day small{display:block;font-size:11px;color:var(--mut)}
.sbo-day:has(input:checked),.sbo-day.on{background:var(--dk);color:#fff;border-color:var(--dk)}
.sbo-day:has(input:checked) small,.sbo-day.on small{color:#c9ccd1}
.sbo-day.off{opacity:.35;pointer-events:none}
.sbo-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.sbo-slots .sbo-hint{grid-column:1/-1;margin:0}
.sbo-slot{position:relative;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 0!important;margin:0!important;text-align:center;cursor:pointer;font-size:14px!important}
.sbo-slot:has(input:checked),.sbo-slot.on{background:var(--dk);color:#fff;border-color:var(--dk)}
.sbo-slot.off{opacity:.35;pointer-events:none;text-decoration:line-through}
.sbo-tag{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;white-space:nowrap;vertical-align:middle}
.sbo-dot{width:8px;height:8px;border-radius:50%;background:currentColor}
.sbo-st0{background:#eef0f3;color:#5c6169}.sbo-st1{background:#e7f0ff;color:#2457c5}.sbo-st2{background:#fff4d6;color:#9a6a00}.sbo-st3{background:#ffe9df;color:#c2410c}.sbo-st4{background:#efe7ff;color:#6d3fc4}.sbo-st5{background:#e4fbdc;color:#1b7d00}.sbo-st6{background:#eef0f3;color:#5c6169}.sbo-st7{background:#fdecec;color:#b42318}
.sbo-bike{display:flex;gap:12px;align-items:center}
.sbo-ic{width:46px;height:46px;border-radius:12px;background:#effde9;display:flex;align-items:center;justify-content:center;flex:0 0 46px;font-size:24px}
.sbo-bike h3{font-size:17px!important;font-weight:700!important;margin:0!important;line-height:1.3!important;text-transform:none!important}
.sbo-bike p{font-size:13px;color:var(--mut);margin:2px 0 0}
.sbo-tl{list-style:none!important;margin:12px 0 0!important;padding:0!important}
.sbo-tl li{position:relative;padding:0 0 18px 30px!important;font-size:14px;list-style:none!important;margin:0!important}
.sbo-tl li:before{content:"";position:absolute;left:8px;top:18px;bottom:0;width:2px;background:var(--line)}
.sbo-tl li:last-child:before{display:none}
.sbo-tl li i{position:absolute;left:0;top:2px;width:18px;height:18px;border-radius:50%;border:2px solid var(--line);background:#fff}
.sbo-tl li.done i{background:var(--gr);border-color:var(--gr)}
.sbo-tl li.done i:after{content:"";position:absolute;left:4px;top:1px;width:5px;height:9px;border:solid var(--dk);border-width:0 2px 2px 0;transform:rotate(45deg)}
.sbo-tl li.now i{border-color:var(--gr);box-shadow:0 0 0 4px #39e60033}
.sbo-tl li b{display:block;font-weight:600}
.sbo-tl li span{font-size:12px;color:var(--mut)}
.sbo-tl li.todo{color:#9aa0a8}
.sbo-gal{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
.sbo-ph{position:relative;display:block;border-radius:12px;overflow:hidden;aspect-ratio:1/1;background:#eee}
.sbo-ph img{width:100%!important;height:100%!important;object-fit:cover;display:block}
.sbo-ph span{position:absolute;left:0;right:0;bottom:0;font-size:10px;color:#fff;padding:14px 6px 5px;background:linear-gradient(transparent,#000a);line-height:1.3}
.sbo-phw{position:relative}
.sbo-del{position:absolute;top:4px;right:4px;margin:0}
.sbo-del button,.sbo-del-inline button{width:26px;height:26px;border-radius:50%;border:0;background:#000a;color:#fff;font-size:16px;line-height:26px;padding:0;cursor:pointer}
.sbo-del-inline{display:inline;margin:0 0 0 8px}
.sbo-del-inline button{background:#eef0f3;color:#5c6169;width:22px;height:22px;line-height:22px;font-size:14px}
.sbo-msg{background:#f6f7f8;border-radius:12px;padding:10px 12px;font-size:14px;margin-top:8px;line-height:1.45}
.sbo-msg.me,.sbo-msg.sbo-cliente{background:#eef6ff}
.sbo-msg.sbo-interno{background:#fffbea;border:1px dashed #ead9a0}
.sbo-msg small{display:block;font-size:11px;color:var(--mut);margin-top:3px}
.sbo-quote{border:2px solid var(--wa);background:#fffbea}
.sbo-ql-wrap{margin-top:10px}
.sbo-ql{display:flex;justify-content:space-between;align-items:center;font-size:14px;padding:7px 0;border-bottom:1px dashed #e0d4a6;gap:10px}
.sbo-ql span{flex:1}
.sbo-tot{display:flex;justify-content:space-between;align-items:baseline;margin-top:10px}
.sbo-tot b{font-size:24px;font-weight:800}
.sbo-quote form{margin:0}
.sbo-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:4px}
.sbo-kpi div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px;text-align:center}
.sbo-kpi b{display:block;font-size:24px;line-height:1.2}.sbo-kpi span{font-size:11px;color:var(--mut)}
.sbo-filters{display:flex;gap:6px;overflow-x:auto;margin:14px 0 12px;padding-bottom:4px}
.sbo-filters a{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none!important;color:var(--dk)!important}
.sbo-filters a.on{background:var(--dk);color:#fff!important;border-color:var(--dk)}
.sbo-filters small{opacity:.7;margin-left:3px}
.sbo-job-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.sbo-code{font-size:12px;color:var(--mut);font-weight:600}
.sbo-jt{display:block;font-size:16px;line-height:1.3;margin-top:2px}
.sbo-empty{text-align:center;color:var(--mut);padding:30px 10px}
.sbo-back{display:inline-block;font-weight:600;font-size:14px;color:var(--mut)!important;margin:0 0 10px;text-decoration:none!important}
.sbo-contact{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.sbo-contact a{border:1px solid var(--line);border-radius:999px;padding:7px 12px;font-size:13px;text-decoration:none!important;font-weight:600}
.sbo-states{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.sbo-states button{border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 10px;font-size:13px;font-weight:600;cursor:pointer;text-align:left;color:var(--dk);line-height:1.3;min-height:48px}
.sbo-states button.on{border:2px solid var(--grd);background:#effde9}
.sbo-states button.sbo-cancel{color:#b42318}
.sbo-states .sbo-full{grid-column:1/-1}
.sbo-file{position:relative;overflow:hidden}
.sbo-file input{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:0}
.sbo-progress{margin-top:10px;font-size:14px;font-weight:600;color:var(--grd)}
.sbo details summary{cursor:pointer;list-style:none}
.sbo details summary::-webkit-details-marker{display:none}
.sbo-small{font-size:13px}
.sbo-panel #loginform p{margin:0}
.sbo-panel #loginform input[type=submit]{width:100%;background:var(--gr);color:var(--dk);border:0;border-radius:999px;padding:14px;font-weight:700;margin-top:14px;cursor:pointer;text-transform:uppercase}
.sbo-lb{position:fixed;inset:0;background:#000d;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:99999;padding:20px}
.sbo-lb img{max-width:100%;max-height:82vh;border-radius:12px}
.sbo-lb p{color:#fff;margin-top:10px;font-size:14px;text-align:center}
@media (max-width:520px){.sbo-grid{grid-template-columns:1fr}.sbo-grid.sbo-q{grid-template-columns:2fr 1fr}.sbo-chips{grid-template-columns:1fr 1fr}.sbo-h2{font-size:20px!important}}

/* 1.0.1 */
.sbo-search{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:15px;margin:0 0 12px;background:#fff}
.sbo-job[hidden]{display:none!important}
.sbo-card form .sbo-btn.sbo-r,.sbo-card > .sbo-btn.sbo-p{margin-top:12px}

/* 1.0.2 */
.sbo-flag-ok{color:#1b5e00!important;font-weight:700}
.sbo-flag-warn{color:#9b1c13!important;font-weight:700}

