.button-danger {
  background: #fee2e2;
  color: #b91c1c;
  border: 1px solid #fca5a5;
}
.button-danger:hover {
  background: #fca5a5;
  color: #7f1d1d;
}

.step-label {
  white-space: nowrap;
  flex: 0 0 auto;
}

.import-form .panel-heading > div {
  min-width: 0;
}

.header-settings {
  border-top: 1px solid var(--line);
  margin-top: 14px;
  padding-top: 12px;
}

.header-settings summary {
  color: var(--primary);
  cursor: pointer;
  font-size: 11px;
  font-weight: 750;
}

.compact-form {
  padding: 13px 0 0;
  gap: 9px;
}

.compact-form input {
  font-size: 11px;
  padding: 8px 9px;
}

.brand-mark {
  object-fit: cover;
}

.login-body {
  min-height: 100vh;
  background: #101828;
}

.login-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, .82fr);
}

.login-panel {
  max-width: 540px;
  width: calc(100% - 72px);
  margin: auto;
  padding: 44px;
  border-radius: 24px;
  background: white;
  box-shadow: 0 28px 70px rgba(0,0,0,.23);
}

.login-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #172033;
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -.8px;
  margin-bottom: 55px;
}

.login-brand img { width: 38px; height: 38px; border-radius: 12px; }
.login-panel h1 { font-size: 34px; letter-spacing: -1.2px; line-height: 1.14; margin: 0; }
.login-panel .subtitle { max-width: 430px; line-height: 1.6; margin-bottom: 28px; }

.google-button {
  width: 100%;
  min-height: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 11px;
  background: white;
  color: #344054;
  border: 1px solid #d7ddea;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 750;
  text-decoration: none;
  box-shadow: 0 4px 11px rgba(24,32,54,.05);
}

.google-button:hover { border-color: #a99aff; color: var(--primary); }
.google-g { font-size: 19px; font-weight: 900; color: #4285f4; }
.login-domain { color: #98a2b3; text-align: center; font-size: 11px; margin: 15px 0 0; }
.login-domain b { color: #667085; }

.login-setup { border: 1px solid #f6d9a8; background: #fff8eb; border-radius: 11px; padding: 15px; color: #855000; font-size: 12px; }
.login-setup p { margin: 5px 0 0; color: #9b6c22; line-height: 1.55; }

.login-aside {
  padding: max(52px, 10vh) 12%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 38px;
  background: radial-gradient(circle at 72% 20%, #7052e9, transparent 33%), linear-gradient(145deg, #21194a, #101828 77%);
  color: white;
}

.login-aside>img { width: 78px; height: 78px; border-radius: 24px; box-shadow: 0 14px 36px rgba(0,0,0,.25); }
.login-aside h2 { font-size: 29px; line-height: 1.15; letter-spacing: -1px; max-width: 390px; margin: 7px 0 11px; }
.login-aside p { max-width: 405px; color: #c5bdf0; line-height: 1.65; font-size: 14px; margin: 0; }
.login-points { display: grid; gap: 9px; color: #e4dfff; font-size: 12px; font-weight: 650; }
.login-points span { display: flex; gap: 8px; align-items: center; }

@media (max-width: 760px) {
  .login-shell { grid-template-columns: 1fr; }
  .login-aside { display: none; }
  .login-panel { width: calc(100% - 32px); padding: 28px 23px; }
  .login-brand { margin-bottom: 46px; }
  .login-panel h1 { font-size: 29px; }
}

.urls-field-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; font-weight: 600; font-size: 14px; }
.doc-row { border: 1px solid var(--line, #e5e7eb); border-radius: 8px; padding: 10px; margin-bottom: 8px; background: #fafafa; }
.doc-row-main { display: grid; grid-template-columns: 1fr 1fr auto; gap: 8px; margin-bottom: 6px; align-items: center; }
.doc-row-extra { display: grid; grid-template-columns: 1fr 1fr auto; gap: 8px; align-items: center; margin-bottom: 6px; }
.doc-row-author { display: flex; align-items: center; gap: 8px; }
.doc-row-author-label { font-size: 12px; color: #667085; white-space: nowrap; }
.doc-row-author select, .doc-row-author input[type="number"] { flex: 1; margin: 0; min-width: 0; }
.doc-row-main input, .doc-row-extra input[type="text"] { margin: 0; }
.doc-image-label { display: flex; align-items: center; gap: 6px; font-size: 12px; color: #667085; cursor: pointer; white-space: nowrap; overflow: hidden; }
.doc-image-label input[type="file"] { margin: 0; font-size: 11px; min-width: 0; flex-shrink: 1; max-width: 130px; }
.doc-remove { background: none; border: 1px solid #e0e0e0; border-radius: 6px; color: #999; cursor: pointer; padding: 6px 10px; font-size: 13px; line-height: 1; }
.doc-remove:hover { background: #fef2f2; border-color: #f87171; color: #dc2626; }
@media (max-width: 760px) { .doc-row-main { grid-template-columns: 1fr auto; } .doc-row-main .doc-url { grid-column: 1 / -1; } .doc-row-extra { grid-template-columns: 1fr 1fr; } }
@media (max-width: 500px) { .doc-row-main { grid-template-columns: 1fr; } .doc-row-extra { grid-template-columns: 1fr; } }
