Split suggest phase into side-by-side form and list
This commit is contained in:
@@ -83,51 +83,53 @@
|
||||
<h2 data-i18n="suggest.title">Suggest (up to 5)</h2>
|
||||
<p class="hint" data-i18n="suggest.hint">Only you can see your suggestions until Reveal.</p>
|
||||
</div>
|
||||
<div class="card">
|
||||
<form id="suggest-form" class="stack">
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.gameName">Game name *</span>
|
||||
<input name="name" required maxlength="100" />
|
||||
</label>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.genre">Genre</span>
|
||||
<input name="genre" maxlength="50" />
|
||||
</label>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.description">Description</span>
|
||||
<textarea name="description" maxlength="500"></textarea>
|
||||
</label>
|
||||
<div class="stack">
|
||||
<span class="label" data-i18n="form.players">Players</span>
|
||||
<div class="stack horizontal">
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.min">Min</span>
|
||||
<input name="minPlayers" type="number" min="1" max="32" inputmode="numeric" />
|
||||
</label>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.max">Max</span>
|
||||
<input name="maxPlayers" type="number" min="1" max="32" inputmode="numeric" />
|
||||
</label>
|
||||
<div class="suggest-grid">
|
||||
<div class="card">
|
||||
<form id="suggest-form" class="stack">
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.gameName">Game name *</span>
|
||||
<input name="name" required maxlength="100" />
|
||||
</label>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.genre">Genre</span>
|
||||
<input name="genre" maxlength="50" />
|
||||
</label>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.description">Description</span>
|
||||
<textarea name="description" maxlength="500"></textarea>
|
||||
</label>
|
||||
<div class="stack">
|
||||
<span class="label" data-i18n="form.players">Players</span>
|
||||
<div class="stack horizontal">
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.min">Min</span>
|
||||
<input name="minPlayers" type="number" min="1" max="32" inputmode="numeric" />
|
||||
</label>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.max">Max</span>
|
||||
<input name="maxPlayers" type="number" min="1" max="32" inputmode="numeric" />
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.screenshot">Screenshot URL</span>
|
||||
<input name="screenshotUrl" maxlength="2048" />
|
||||
</label>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.youtube">YouTube URL</span>
|
||||
<input name="youtubeUrl" maxlength="2048" />
|
||||
</label>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.gameUrl">Game website URL</span>
|
||||
<input name="gameUrl" maxlength="2048" />
|
||||
</label>
|
||||
<button type="submit" data-i18n="form.submit">Submit</button>
|
||||
</form>
|
||||
</div>
|
||||
<div class="card subcard">
|
||||
<h3 data-i18n="section.mySuggestions">Your suggestions</h3>
|
||||
<div id="my-suggestions" class="card-grid"></div>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.screenshot">Screenshot URL</span>
|
||||
<input name="screenshotUrl" maxlength="2048" />
|
||||
</label>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.youtube">YouTube URL</span>
|
||||
<input name="youtubeUrl" maxlength="2048" />
|
||||
</label>
|
||||
<label class="stack">
|
||||
<span class="label" data-i18n="form.gameUrl">Game website URL</span>
|
||||
<input name="gameUrl" maxlength="2048" />
|
||||
</label>
|
||||
<button type="submit" data-i18n="form.submit">Submit</button>
|
||||
</form>
|
||||
</div>
|
||||
<div class="card subcard">
|
||||
<h3 data-i18n="section.mySuggestions">Your suggestions</h3>
|
||||
<div id="my-suggestions" class="card-grid"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
.status-left, .status-center, .status-right { display: flex; align-items: center; gap: 10px; }
|
||||
.inline-link { font-size: 14px; margin-left: 5px; }
|
||||
.logo-mark {
|
||||
height: 60px;
|
||||
height: 65px;
|
||||
margin: -10px;
|
||||
width: auto;
|
||||
}
|
||||
@@ -52,6 +52,13 @@
|
||||
min-width: 1280px;
|
||||
}
|
||||
|
||||
.suggest-grid {
|
||||
display: grid;
|
||||
grid-template-columns: 1.1fr 1fr;
|
||||
gap: 16px;
|
||||
align-items: start;
|
||||
}
|
||||
|
||||
.phase-header {
|
||||
background: rgba(255, 255, 255, 0.9);
|
||||
border: 1px solid #e3d4bd;
|
||||
@@ -126,6 +133,11 @@ button.ghost { background: transparent; border-color: #d5c7b5; color: #2c1c0d; }
|
||||
|
||||
.subcard { margin-top: 16px; }
|
||||
|
||||
@media (max-width: 1200px) {
|
||||
.grid { min-width: auto; width: 100%; }
|
||||
.suggest-grid { grid-template-columns: 1fr; }
|
||||
}
|
||||
|
||||
.card-visual {
|
||||
height: 200px;
|
||||
background: linear-gradient(135deg, #f0d9b5, #f6b24f);
|
||||
@@ -170,7 +182,7 @@ input[type="range"].full-slider {
|
||||
width: 100%;
|
||||
height: 20px;
|
||||
border-radius: 999px;
|
||||
background: linear-gradient(90deg, #f28b3c, #f2c94c, #2ca25f);
|
||||
background: linear-gradient(90deg, #f25f3c, #f2c94c, #2ca25f);
|
||||
outline: none;
|
||||
box-shadow: inset 0 0 0 1px #e3d4bd, 0 4px 12px rgba(0,0,0,0.18);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user