Limit uploads by request total size

This commit is contained in:
shkim
2026-05-10 20:22:33 +09:00
parent c07777371d
commit 00e0fe60b4
5 changed files with 283 additions and 26 deletions
+147
View File
@@ -0,0 +1,147 @@
:root {
color-scheme: light;
--ink: #16202a;
--muted: #667085;
--line: #d4dce7;
--bg: #f5f7fb;
--panel: #ffffff;
--accent: #0f766e;
--accent-dark: #115e59;
}
* {
box-sizing: border-box;
}
body {
margin: 0;
min-height: 100vh;
background: var(--bg);
color: var(--ink);
font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.upload-page {
width: min(920px, calc(100% - 28px));
margin: 24px auto;
}
.hero {
min-height: 300px;
position: relative;
overflow: hidden;
border-radius: 8px;
background: #20313b;
}
.hero__media {
position: absolute;
inset: 0;
background:
linear-gradient(90deg, rgba(12, 20, 28, 0.78), rgba(12, 20, 28, 0.18)),
url("/assets/hero.svg");
background-size: cover;
background-position: center;
}
.hero__content {
position: relative;
width: min(620px, calc(100% - 36px));
padding: 48px 28px;
color: white;
}
.eyebrow {
margin: 0 0 8px;
font-size: 13px;
font-weight: 700;
text-transform: uppercase;
}
h1 {
margin: 0;
font-size: 34px;
line-height: 1.18;
}
.summary {
margin: 14px 0 0;
max-width: 520px;
color: rgba(255, 255, 255, 0.86);
font-size: 16px;
}
.upload-panel {
margin-top: 16px;
padding: 20px;
border: 1px solid var(--line);
border-radius: 8px;
background: var(--panel);
}
.dropzone {
display: block;
padding: 24px;
border: 2px dashed var(--line);
border-radius: 8px;
background: #fbfcfe;
cursor: pointer;
}
.dropzone__title,
.dropzone__meta {
display: block;
}
.dropzone__title {
font-size: 18px;
font-weight: 750;
}
.dropzone__meta {
margin-top: 6px;
color: var(--muted);
font-size: 14px;
}
input[type="file"] {
margin-top: 16px;
width: 100%;
}
button {
margin-top: 16px;
width: 100%;
border: 0;
border-radius: 6px;
padding: 13px 16px;
background: var(--accent);
color: white;
font: inherit;
font-weight: 750;
cursor: pointer;
}
button:hover {
background: var(--accent-dark);
}
@media (max-width: 640px) {
.upload-page {
width: calc(100% - 18px);
margin: 9px auto;
}
.hero {
min-height: 260px;
}
.hero__content {
width: 100%;
padding: 36px 20px;
}
h1 {
font-size: 28px;
}
}