
/* WS Event Theme - standalone, looks great even if site CSS isn't loaded */
:root{
  --ws-bg1: #0a1222;
  --ws-bg2: #0e1a30;
  --ws-card: rgba(14,26,48,0.72);
  --ws-border: rgba(255,255,255,0.08);
  --ws-soft: rgba(255,255,255,0.06);
  --ws-text: #e8f1ff;
  --ws-dim: rgba(232,241,255,0.75);
  --ws-accent: #43c2ff;
  --ws-accent-2: #6cf1ff;
  --ws-danger: #ff6b7a;
  --ws-ok: #55d58a;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background: radial-gradient(1200px 600px at 20% -10%, #153055 0%, transparent 60%),
              radial-gradient(1200px 800px at 100% 0%, #0d1b35 0%, transparent 65%),
              linear-gradient(180deg, var(--ws-bg1), var(--ws-bg2));
  color: var(--ws-text);
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
a{color: var(--ws-accent)}
.ws-container{max-width:1100px;margin:32px auto;padding:0 16px}
.ws-card{
  background: var(--ws-card);
  border: 1px solid var(--ws-border);
  backdrop-filter: blur(10px);
  border-radius: 16px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.35);
  padding: 18px;
}
.ws-h2{
  margin: 0 0 12px 0;
  font-size: 28px;
  display:flex;
  align-items:center;
  gap:12px;
}
.ws-badge{
  border:1px solid var(--ws-border);
  background: var(--ws-soft);
  border-radius: 999px;
  padding: 2px 10px;
  font-size: .85rem;
  color: var(--ws-dim);
}

/* Form grid */
.ws-grid{display:grid;grid-template-columns: 1fr 1fr; gap: 14px}
.ws-grid label{display:flex; flex-direction:column; gap:6px; font-size:.95rem; color:var(--ws-dim)}
.ws-grid input[type="text"],
.ws-grid input[type="datetime-local"],
.ws-grid input[type="number"],
.ws-grid select,
textarea{
  background: rgba(0,0,0,0.25);
  border:1px solid var(--ws-border);
  border-radius: 10px;
  color: var(--ws-text);
  padding: 10px 12px;
  outline: none;
  transition: border .15s ease, box-shadow .15s ease;
}
.ws-grid input:focus, .ws-grid select:focus, textarea:focus{
  border-color: var(--ws-accent);
  box-shadow: 0 0 0 3px rgba(67,194,255,0.18);
}
textarea{min-height:120px; width:100%}
.ws-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}

/* Buttons (self-contained if site has none) */
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;border:1px solid var(--ws-border);cursor:pointer;text-decoration:none}
.btn-primary{background: linear-gradient(180deg, var(--ws-accent), var(--ws-accent-2)); color:#02121e; border-color: transparent; font-weight:700}
.btn-secondary{background: rgba(255,255,255,0.06); color: var(--ws-text)}
.btn:hover{filter:brightness(1.05)}

/* Roster */
.ws-cols{display:flex; gap:16px; flex-wrap:wrap; margin-top:10px}
.ws-col{flex:1 1 300px}
.ws-col h3{margin:8px 0; font-size:18px; color: var(--ws-dim)}
.ws-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:340px;overflow:auto}
.ws-item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:12px;background: rgba(0,0,0,0.25); border:1px solid var(--ws-border)}

.ws-note{margin-top:10px; color: var(--ws-dim)}
.ws-success{color: var(--ws-ok)}
.ws-error{color: var(--ws-danger)}
.ws-line{height:1px;background:var(--ws-border);margin:10px 0}

/* Strip list */
.ws-strip{display:flex;flex-direction:column;gap:8px}
.ws-strip-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:12px;background: var(--ws-card); border:1px solid var(--ws-border)}
.ws-strip-title{font-weight:700}
.ws-small{font-size:.9rem;color: var(--ws-dim)}
