/**
 * S4 タスク作成フォーム (サブ画面)
 */

.s4c-form {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 16px;
}

.s4c-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.s4c-label {
  font-size: 13px;
  font-weight: 600;
  color: var(--mobile-text-secondary);
  display: flex;
  align-items: center;
  gap: 4px;
}

.s4c-required {
  color: #e24b4a;
  font-size: 12px;
}

.s4c-optional {
  font-size: 11px;
  color: var(--mobile-text-tertiary);
  font-weight: 400;
  margin-left: 4px;
}

.s4c-input {
  width: 100%;
  padding: 12px;
  border: 1px solid var(--mobile-border);
  border-radius: 8px;
  font-size: 15px;
  font-family: inherit;
  background: var(--mobile-surface);
  color: var(--mobile-text);
  box-sizing: border-box;
  -webkit-appearance: none;
  appearance: none;
}

.s4c-input:focus {
  outline: none;
  border-color: var(--mobile-accent);
  box-shadow: 0 0 0 3px rgba(29, 158, 117, 0.15);
}

.s4c-textarea {
  width: 100%;
  padding: 12px;
  border: 1px solid var(--mobile-border);
  border-radius: 8px;
  font-size: 15px;
  font-family: inherit;
  background: var(--mobile-surface);
  color: var(--mobile-text);
  box-sizing: border-box;
  min-height: 100px;
  resize: vertical;
}

.s4c-textarea:focus {
  outline: none;
  border-color: var(--mobile-accent);
  box-shadow: 0 0 0 3px rgba(29, 158, 117, 0.15);
}

.s4c-due-row {
  display: flex;
  gap: 8px;
  align-items: stretch;
}

.s4c-input-date {
  flex: 1;
}

.s4c-quick-due {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.s4c-quick-btn {
  background: var(--mobile-bg);
  border: 1px solid var(--mobile-border);
  border-radius: 6px;
  padding: 6px 10px;
  font-size: 12px;
  font-family: inherit;
  color: var(--mobile-text-secondary);
  cursor: pointer;
}

.s4c-quick-btn.is-active {
  background: var(--mobile-accent-light);
  border-color: var(--mobile-accent);
  color: var(--mobile-accent-dark);
  font-weight: 500;
}

.s4c-error {
  background: #FCEBEB;
  border: 1px solid #F09595;
  color: #791F1F;
  padding: 10px 12px;
  border-radius: 8px;
  font-size: 13px;
  margin: 16px 16px 0;
}

.s4c-submit-bar {
  position: sticky;
  bottom: 0;
  background: var(--mobile-surface);
  border-top: 1px solid var(--mobile-border);
  padding: 12px 16px calc(12px + env(safe-area-inset-bottom));
  display: flex;
  gap: 10px;
}

.s4c-btn-submit {
  flex: 1;
  background: var(--mobile-accent);
  color: white;
  border: none;
  border-radius: 10px;
  padding: 13px;
  font-size: 15px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}

.s4c-btn-submit:active {
  background: var(--mobile-accent-dark);
}

.s4c-btn-submit:disabled {
  background: #c8c7c0;
  cursor: not-allowed;
}
