:root{--bg:#0b132b;--card:#fff;--ink:#0b132b;--muted:#667;--primary:#1b9aaa}*{box-sizing:border-box}body,html{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:#f6f7fb;color:var(--ink)}.sf-page{position:relative;overflow:visible;width:100%;max-width:none}.sf-nav{position:-webkit-sticky;position:sticky;top:0;z-index:1000}a{color:var(--primary);text-decoration:none}h1,h2,h3{margin:.2rem 0 .4rem}.muted{color:#6b7280;font-size:.9rem}.container{max-width:1100px;margin:0 auto;padding:1rem}.stack{display:flex;flex-direction:column;gap:.75rem}.grid{display:grid;grid-gap:.75rem;gap:.75rem}.btn{background:var(--primary);color:#fff;border:0;padding:.6rem .9rem;border-radius:8px;cursor:pointer}.btn.secondary{background:#e9eef6;color:#0b132b}.card{background:#fff;border:1px solid #e6e8ef;border-radius:12px;padding:12px;box-shadow:0 1px 2px rgba(0,0,0,.04)}table{border-collapse:collapse;width:100%}td,th{border:1px solid #eef0f4;padding:.5rem .6rem;font-size:14px;vertical-align:top}th{background:#f1f3f8}input,select,textarea{width:100%;padding:.6rem .7rem;border:1px solid #cfd6e4;border-radius:8px;background:#fff}.alloc-card{position:relative}.alloc-mismatch{outline:2px solid #ef4444;background:#fee2e2}.badge-mismatch{position:absolute;top:4px;right:6px;color:#b91c1c;font-weight:700}.sf-dragging .match-chip,.sf-dragging .sf-chip:not(.rbd-dragging){pointer-events:none}