*{box-sizing:border-box}body{margin:0;font-family:system-ui,sans-serif;background:#0d1117;color:#fff}.enable-sound-screen{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px}.staff-login{height:100vh;display:flex;align-items:center;justify-content:center;background-color:#0d1117;background-size:cover;background-position:center;padding:16px}.staff-login-card{display:flex;flex-direction:column;align-items:center;gap:16px;background:#161b22eb;padding:40px 32px;border-radius:20px;box-shadow:0 12px 32px #0006;width:100%;max-width:320px}.staff-login-card .auth-logo{max-height:64px;max-width:100%}.staff-login-card input{padding:12px;border-radius:8px;border:1px solid #333;font-size:16px;width:100%;background:#0d1117;color:#fff}.enable-sound-screen button,.staff-login-card button{padding:18px 32px;font-size:20px;border-radius:12px;border:none;background:#1f6feb;color:#fff;cursor:pointer;width:100%}.enable-sound-screen button.secondary{background:#21262d;color:#8b949e;font-size:15px;padding:12px 24px}.error{color:#f85149}.call-board{padding:32px}.call-board-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.call-board-header h1{font-size:32px;margin:0}.board-subtitle{color:#8b949e;font-size:14px;margin:4px 0 0}.board-empty-hint{color:#8b949e;font-size:14px;background:#161b22;border-radius:10px;padding:14px 16px;margin-bottom:20px;max-width:560px}.call-board-header button.secondary{background:#21262d;color:#8b949e;padding:10px 20px;font-size:14px;font-weight:600;border-radius:8px;border:none;cursor:pointer}.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.board-card{background:#161b22;border-radius:16px;padding:20px;text-align:center;border:2px solid transparent}.board-card.status-arrived{border-color:#e5484d;animation:pulse 1.2s infinite}@keyframes pulse{0%,to{box-shadow:0 0 #e5484d99}50%{box-shadow:0 0 0 12px #e5484d00}}.board-card.status-ontime{background:#e6f9ec;color:#14532d}.board-card.status-overdue{background:#fff7d6;color:#7a5b00}.board-card.status-delivered{background:#fde6f0;color:#7a1f4d;opacity:.85}.board-card.status-ontime .board-card-class,.board-card.status-overdue .board-card-class,.board-card.status-delivered .board-card-class,.board-card.status-ontime .board-card-meta,.board-card.status-overdue .board-card-meta,.board-card.status-delivered .board-card-meta,.board-card.status-ontime .board-card-guardian,.board-card.status-overdue .board-card-guardian,.board-card.status-delivered .board-card-guardian{color:inherit;opacity:.7}.board-card.status-ontime .board-card-eta{color:#1f9d55}.board-card.status-overdue .board-card-eta{color:#b98900}.board-card.status-delivered .board-card-eta{color:#c2255c}.board-empty{color:#8b949e;font-size:18px}.board-card img{width:80px;height:80px;border-radius:50%;object-fit:cover;margin-bottom:12px}.board-card-name{font-size:20px;font-weight:700}.board-card-class{color:#8b949e;margin-bottom:8px}.board-card-eta{font-size:28px;font-weight:800;color:#58a6ff;margin-bottom:12px}.board-card-meta{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#8b949e;margin-bottom:12px}.board-card-guardian{display:flex;flex-direction:column;gap:1px;font-size:11px;color:#8b949e;margin-bottom:12px}.board-card-actions{display:flex;flex-direction:column;gap:8px}.board-card button.ready-button{background:#ff8a00;font-size:12px;padding:8px 14px}.board-card button.ready-button:disabled{background:#00000026;color:inherit;cursor:default}.updated-badge{display:inline-block;background:#1f6feb;color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;margin-bottom:10px;animation:flash 1s ease-in-out infinite alternate}@keyframes flash{0%{opacity:1}to{opacity:.5}}.board-card button{padding:10px 18px;border-radius:8px;border:none;background:#238636;color:#fff;font-weight:600;cursor:pointer}.board-card button.undo-button{background:#00000026;color:inherit}.scan-error{color:#f85149;font-weight:600;margin-bottom:16px}.verify-box input{width:100%;padding:10px;border-radius:8px;border:1px solid #333;background:#0d1117;color:#fff;text-align:center;font-size:18px;margin-bottom:10px}.verify-actions{display:flex;gap:8px;justify-content:center}.verify-actions button{flex:1}
