/* Cards */
.aikanen-card {
   background: #fff;
   border: 1px solid #c3c4c7;
   border-radius: 4px;
   padding: 1px 12px 12px;
   margin-top: 20px;
   max-width: 800px;
}

.aikanen-card--wide {
   max-width: 100%;
}

.aikanen-card h2 {
   margin: 8px 0 8px;
   padding: 0;
   font-size: 14px;
}

.aikanen-card .form-table th {
   width: 200px;
   padding: 16px 10px 16px 0;
}

.aikanen-card .form-table td {
   padding: 12px 10px;
}

.aikanen-card .form-table td fieldset label {
   display: block;
   margin-bottom: 8px;
}

/* Webhook URL code */
.aikanen-card code {
   padding: 2px 6px;
   background: #f0f0f1;
   border-radius: 2px;
   font-size: 12px;
   word-break: break-all;
}

/* Generate button inline with input */
#aikanen-generate-secret {
   margin-left: 8px;
   vertical-align: baseline;
}

/* Module settings conditional sections */
.aikanen-module-settings {
   border-left: 3px solid #2271b1;
}

/* Disabled state for modules when not connected */
.aikanen-card input[type="checkbox"]:disabled + span,
.aikanen-card input[type="checkbox"]:disabled ~ * {
   opacity: 0.5;
}

/* Submit button spacing */
.wrap > form > .submit {
   margin-top: 20px;
}

/* Connection card header */
.aikanen-card-header {
   display: flex;
   align-items: center;
   justify-content: space-between;
   margin: 8px 0 8px;
}

.aikanen-card-header h2 {
   margin: 0;
}

/* Status badge */
.aikanen-badge {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   font-size: 13px;
   padding: 4px 10px;
   border-radius: 1em;
}

.aikanen-badge--success { background: #edfaef; color: #1a7e2e; }
.aikanen-badge--error   { background: #fcebeb; color: #a32d2d; }
.aikanen-badge--neutral { background: #f1efea; color: #6b6b6b; }

.aikanen-dot {
   width: 7px;
   height: 7px;
   border-radius: 50%;
   display: inline-block;
   flex-shrink: 0;
}

.aikanen-dot--success { background: #1a7e2e; }
.aikanen-dot--error   { background: #a32d2d; }
.aikanen-dot--neutral { background: #6b6b6b; }

/* Masked credential value */
.aikanen-masked {
   font-family: monospace;
   font-size: 13px;
   margin-right: 6px;
}

/* Change/Cancel toggle link */
.aikanen-toggle-link {
   background: none;
   border: none;
   padding: 0;
   font-size: 12px;
   color: #2271b1;
   text-decoration: underline;
   cursor: pointer;
}

/* Error message inside connection card */
.aikanen-error-message {
   color: #a32d2d;
   font-size: 13px;
   margin: 0 0 .75rem;
}

/* Revealed token/secret inputs */
#aikanen-token-input,
#aikanen-secret-input {
   margin-top: 6px;
}