.ka-upload {
	--ka-upload-accent: #2563eb;
	--ka-upload-ink: #172033;
	--ka-upload-muted: #65738a;
	--ka-upload-line: #dce3ee;
	width: min(100%, 980px);
	margin: 32px auto;
	padding: clamp(16px, 3vw, 30px);
	color: var(--ka-upload-ink);
	font-family: inherit;
	background: #f6f8fc;
	border: 1px solid #e4e9f1;
	border-radius: 24px;
}
.ka-upload *, .ka-upload *::before, .ka-upload *::after { box-sizing: border-box; }
.ka-upload button, .ka-upload input, .ka-upload textarea { font: inherit; }
.ka-upload :where(button, input, textarea):focus-visible { outline: 3px solid rgba(var(--ka-upload-accent-rgb, 37, 99, 235), .28); outline-offset: 3px; }
.ka-upload__hero { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(250px, .6fr); gap: 28px; align-items: center; padding: clamp(20px, 4vw, 38px); background: #fff; border: 1px solid var(--ka-upload-line); border-radius: 20px; box-shadow: 0 14px 38px rgba(23,32,51,.07); }
.ka-upload__eyebrow { margin: 0 0 8px; color: var(--ka-upload-accent); font-size: 13px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.ka-upload__hero h2 { margin: 0 0 12px; font-size: clamp(28px, 4vw, 42px); line-height: 1.12; }
.ka-upload__hero p { margin: 0; color: var(--ka-upload-muted); line-height: 1.65; }
.ka-upload__trust { display: flex; gap: 12px; padding: 17px; background: #f4f8ff; border: 1px solid #d5e2fb; border-radius: 16px; }
.ka-upload__trust > span { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; color: #fff; background: var(--ka-upload-accent); border-radius: 50%; }
.ka-upload__trust p { font-size: 14px; }
.ka-upload__card { margin-top: 20px; padding: clamp(20px, 4vw, 34px); background: #fff; border: 1px solid var(--ka-upload-line); border-radius: 20px; box-shadow: 0 8px 24px rgba(23,32,51,.055); }
.ka-upload__card h3 { margin: 0 0 8px; font-size: 23px; }
.ka-upload__card p { color: var(--ka-upload-muted); }
.ka-upload__card-head { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; margin-bottom: 24px; }
.ka-upload__auth-form label, .ka-upload__form > label, .ka-upload__grid label, [data-ka-upload-panel] label { display: grid; gap: 8px; font-weight: 700; }
.ka-upload input[type="text"], .ka-upload input[type="password"], .ka-upload input[type="url"], .ka-upload input[type="file"], .ka-upload textarea { width: 100%; min-height: 48px; padding: 11px 13px; color: var(--ka-upload-ink); background: #fff; border: 1px solid #cbd5e1; border-radius: 12px; }
.ka-upload textarea { min-height: 130px; resize: vertical; }
.ka-upload__password-row { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.ka-upload button { min-height: 46px; padding: 10px 18px; font-weight: 750; border-radius: 12px; cursor: pointer; }
.ka-upload__password-row button, .ka-upload__submit { color: #fff; background: var(--ka-upload-accent); border: 1px solid var(--ka-upload-accent); }
.ka-upload__secondary { color: var(--ka-upload-ink); background: #fff; border: 1px solid var(--ka-upload-line); }
.ka-upload__form { display: grid; gap: 20px; }
.ka-upload__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.ka-upload__type { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 0; border: 0; }
.ka-upload__type legend { margin-bottom: 10px; font-weight: 750; }
.ka-upload__type label { display: flex; gap: 12px; align-items: center; min-height: 72px; padding: 14px; background: #f9fbfe; border: 1px solid var(--ka-upload-line); border-radius: 14px; cursor: pointer; }
.ka-upload__type input { width: 20px; height: 20px; accent-color: var(--ka-upload-accent); }
.ka-upload__type span { display: grid; gap: 2px; }
.ka-upload__type small { color: var(--ka-upload-muted); font-weight: 400; }
.ka-upload__counter { justify-self: end; color: var(--ka-upload-muted); font-size: 12px; font-weight: 400; }
.ka-upload__privacy { display: flex; gap: 10px; align-items: flex-start; padding: 14px; background: #f8fafc; border: 1px solid var(--ka-upload-line); border-radius: 13px; }
.ka-upload__privacy span { display: grid; place-items: center; flex: 0 0 26px; width: 26px; height: 26px; color: #fff; background: #64748b; border-radius: 50%; }
.ka-upload__privacy p { margin: 1px 0 0; font-size: 13px; line-height: 1.55; }
.ka-upload__submit { justify-self: start; min-width: 230px; }
.ka-upload__notice { margin: 18px 0 0; padding: 14px 16px; border-radius: 13px; }
.ka-upload__notice--success { color: #125f3d; background: #edf9f3; border: 1px solid #bfe4d0; }
.ka-upload__notice--error { color: #8d2832; background: #fff3f4; border: 1px solid #f0c9cd; }
.ka-upload__honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
@media (max-width: 720px) {
	.ka-upload { margin: 16px auto; padding: 12px; border-radius: 18px; }
	.ka-upload__hero { grid-template-columns: 1fr; padding: 22px; }
	.ka-upload__card-head { display: grid; }
	.ka-upload__grid, .ka-upload__type, .ka-upload__password-row { grid-template-columns: 1fr; }
	.ka-upload__password-row button, .ka-upload__submit { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .ka-upload * { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
