/* 控制台样式，复用 style.css 的卡片语言 */

.console-body {
    display: block;
    background-color: #e8e8ea;
    padding: 32px 16px 64px;
    min-height: 100%;
}

.console {
    max-width: 760px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.console .card {
    padding: 28px 32px;
}

.console h1 { font-size: 1.1em; margin-bottom: 8px; }
.console h2 { font-size: 0.85em; margin: 18px 0 6px; }
.console h3 { font-size: 16px; font-weight: 600; margin: 16px 0 6px; }

.row-between {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.hint { font-size: 14px; color: #666; margin: 4px 0 8px; }

label {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 14px;
    color: #444;
    margin-bottom: 10px;
}

input, select {
    font: inherit;
    font-size: 15px;
    padding: 8px 10px;
    border: 2px solid rgba(0, 0, 0, 0.12);
    border-radius: 6px;
    background: #fff;
    min-width: 0;
}

input:focus, select:focus { outline: 2px solid #005fb8; border-color: transparent; }

button {
    font: inherit;
    font-size: 15px;
    padding: 8px 14px;
    border-radius: 6px;
    border: 2px solid transparent;
    cursor: pointer;
    white-space: nowrap;
}

button.primary { background: #005fb8; color: #fff; }
button.primary:hover { background: #0a4f96; }
button.ghost { background: rgba(0, 0, 0, 0.05); color: #333; }
button.ghost:hover { background: rgba(0, 0, 0, 0.1); }
button.danger { color: #c42b1c; }

.inline-form {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 8px;
}

.inline-form input, .inline-form select { flex: 1 1 140px; }

.tabs { display: flex; gap: 8px; margin: 12px 0; }
.tab {
    background: transparent;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    color: #666;
    padding: 6px 4px;
}
.tab.active { color: #005fb8; border-bottom-color: #005fb8; font-weight: 600; }

.badge {
    font-size: 13px;
    padding: 3px 10px;
    border-radius: 999px;
    background: #DFF6DD;
    color: #0f7b0f;
    white-space: nowrap;
}

.item {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    font-size: 14px;
    padding: 8px 10px;
    border-radius: 6px;
    background: rgba(0, 0, 0, 0.03);
    margin-bottom: 6px;
}
.item span { flex: 1 1 200px; color: #444; word-break: break-all; }
.item code { font-size: 14px; letter-spacing: 0.05em; }

.secret {
    background: #FFF4CE;
    border: 2px solid #F7D060;
    border-radius: 6px;
    padding: 12px;
    margin-bottom: 10px;
}
.secret code {
    display: block;
    word-break: break-all;
    font-size: 13px;
    margin: 6px 0;
    user-select: all;
}

.banner {
    padding: 12px 16px;
    border-radius: 8px;
    font-size: 15px;
    background: #DFF6DD;
    color: #0f7b0f;
    word-break: break-all;
}
.banner.error { background: #fde7e9; color: #c42b1c; }
.banner.ok { background: #DFF6DD; color: #0f7b0f; }
.banner.info { background: #eef3fb; color: #005fb8; }

/* 状态文案编辑器 */
.status-row {
    display: grid;
    grid-template-columns: 24px minmax(80px, 1fr) minmax(120px, 2fr) auto auto;
    gap: 6px;
    align-items: center;
    margin-bottom: 6px;
}
.status-row .st-id {
    font-family: ui-monospace, Menlo, monospace;
    font-size: 13px;
    color: #888;
    text-align: center;
}
.status-row input, .status-row select { font-size: 14px; padding: 6px 8px; }

@media (max-width: 560px) {
    .status-row {
        grid-template-columns: 24px minmax(0, 1fr) auto;
        grid-template-areas:
            "id name del"
            ".  desc desc"
            ".  color color";
    }
    .status-row .st-id { grid-area: id; }
    .status-row .st-name { grid-area: name; }
    .status-row .st-desc { grid-area: desc; }
    .status-row .st-color { grid-area: color; }
    .status-row .danger { grid-area: del; }
}
