This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
:root{--bg:#0f1220;--card:#181c30;--card2:#222744;--text:#f2f4ff;--muted:#8d93b5;--accent:#7c5cff;--ok:#22c55e;--ko:#ef4444;--r:16px}
|
||||
*{box-sizing:border-box}
|
||||
[hidden]{display:none!important}
|
||||
body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;min-height:100vh}
|
||||
h1,h2{margin:0}
|
||||
h2{font-size:1.25rem;margin-bottom:12px}
|
||||
.muted,.small{color:var(--muted)}
|
||||
.small{font-size:.85rem;word-break:break-all}
|
||||
.error{color:var(--ko);min-height:1.2em;margin:8px 0}
|
||||
.card{background:var(--card);border-radius:var(--r);padding:24px}
|
||||
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
|
||||
input[type=url],input[type=text]{flex:1;min-width:200px;padding:14px 16px;border-radius:12px;border:2px solid var(--card2);background:var(--bg);color:var(--text);font-size:1rem}
|
||||
input:focus{outline:none;border-color:var(--accent)}
|
||||
button{font:inherit;font-weight:700;border:none;border-radius:12px;padding:14px 22px;cursor:pointer;color:var(--text);background:var(--card2)}
|
||||
button:hover{filter:brightness(1.15)}
|
||||
button.primary{background:var(--accent)}
|
||||
button.ok{background:var(--ok);color:#052e12}
|
||||
button.ko{background:var(--ko)}
|
||||
button.ghost{background:transparent;border:2px solid var(--card2);color:var(--muted)}
|
||||
label{color:var(--muted);display:flex;gap:6px;align-items:center}
|
||||
|
||||
/* Master */
|
||||
.master{max-width:1200px;margin:0 auto;padding:20px}
|
||||
.master header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
|
||||
.tag{background:var(--card);padding:6px 14px;border-radius:999px;color:var(--muted);font-weight:700;letter-spacing:.05em}
|
||||
.layout{display:grid;grid-template-columns:1fr 300px;gap:20px;align-items:start}
|
||||
@media(max-width:900px){.layout{grid-template-columns:1fr}}
|
||||
.lobby-grid{display:grid;grid-template-columns:280px 1fr;gap:32px;align-items:center}
|
||||
@media(max-width:700px){.lobby-grid{grid-template-columns:1fr}}
|
||||
.qr img{width:100%;background:#fff;border-radius:12px;padding:8px;display:block}
|
||||
.video{position:relative;aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden}
|
||||
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
|
||||
.mask{position:absolute;inset:0;background:linear-gradient(135deg,#2b2250,#0f1220);display:flex;align-items:center;justify-content:center;font-size:6rem;z-index:2}
|
||||
.status{font-size:1.6rem;font-weight:800;margin:20px 0 12px;min-height:2em}
|
||||
.judge{display:flex;gap:16px;margin-bottom:16px}
|
||||
.judge button{flex:1;font-size:1.6rem;padding:22px}
|
||||
.board{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
|
||||
.board li{display:flex;align-items:center;gap:10px;background:var(--card2);padding:10px 14px;border-radius:10px}
|
||||
.board .name{flex:1;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
|
||||
.board .score{font-weight:800;font-size:1.1rem}
|
||||
.dot{width:10px;height:10px;border-radius:50%;background:var(--ok)}
|
||||
.dot.off{background:#555}
|
||||
.board.final li{font-size:1.4rem;padding:16px 20px}
|
||||
#endScreen{text-align:center}
|
||||
#endScreen .board{margin:20px auto 28px;max-width:520px;text-align:left}
|
||||
|
||||
/* Buzzer */
|
||||
.buzzer-page{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:24px;text-align:center;-webkit-user-select:none;user-select:none}
|
||||
.buzzer-page .card{width:100%;max-width:420px}
|
||||
.buzzer-page .row{flex-direction:column;align-items:stretch}
|
||||
.me{display:flex;justify-content:space-between;width:100%;max-width:420px;font-weight:700}
|
||||
#buzz{width:min(72vw,320px);aspect-ratio:1;border-radius:50%;font-size:2.6rem;font-weight:900;letter-spacing:.05em;color:#fff;background:radial-gradient(circle at 30% 30%,#ff7b7b,#d00000);box-shadow:0 12px 0 #7a0000,0 20px 40px rgba(0,0,0,.5);touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .05s,box-shadow .05s}
|
||||
#buzz:active:not(:disabled){transform:translateY(8px);box-shadow:0 4px 0 #7a0000}
|
||||
#buzz:disabled{background:#3a3f5c;box-shadow:0 12px 0 #262a40;color:#8d93b5;font-size:1.3rem;cursor:not-allowed;padding:20px}
|
||||
#msg{font-size:1.2rem;font-weight:700;min-height:1.5em}
|
||||
Reference in New Issue
Block a user