*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--wi-font);background:var(--wi-soft);color:#111;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
img{max-width:100%;display:block}
.container{width:min(100% - 32px,var(--wi-max));margin-inline:auto}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border-radius:999px;border:1px solid transparent;font-weight:700;font-size:14px;cursor:pointer;transition:.2s}
.btn-green{background:var(--wi-green);color:#04120a;border-color:var(--wi-green)}
.btn-green:hover{background:var(--wi-green-dark);color:#fff}
.btn-outline{background:transparent;border-color:rgba(255,255,255,.25);color:#fff}
.btn-outline:hover{border-color:#fff}
.btn-dark{background:#111;color:#fff}
.btn-sm{height:36px;padding:0 14px;font-size:13px}
.badge-new{display:inline-flex;align-items:center;background:#ef4444;color:#fff;font-size:10px;font-weight:800;padding:2px 6px;border-radius:999px;margin-left:6px;vertical-align:middle}
.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:rgba(34,197,94,.12);color:var(--wi-green);font-size:12px;font-weight:700}
.status{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px}
.status.available,.status.open{background:rgba(34,197,94,.15);color:#16a34a}
.status.busy{background:rgba(249,115,22,.15);color:#ea580c}
.status.offline,.status.closed{background:rgba(148,163,184,.2);color:#64748b}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:var(--wi-radius);padding:16px}
.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#111;color:#fff;padding:12px 18px;border-radius:12px;z-index:9999;font-size:13px;box-shadow:var(--wi-shadow);opacity:0;pointer-events:none;transition:.25s}
.toast.show{opacity:1}
.modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:1000;display:none;align-items:center;justify-content:center;padding:16px}
.modal-bg.show{display:flex}
.modal{width:min(100%,420px);background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--wi-shadow)}
.modal-h{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid #eee;font-weight:800}
.modal-b{padding:16px}
