/* Suppress all transitions during window resize */
/* Submission Edit Page */
/* Conditions dialog - centered modal on all viewports */
.cond-enter-active, .cond-leave-active { transition: opacity 0.2s; }
.cond-leave-active { pointer-events: none; }
.cond-enter-from, .cond-leave-to { opacity: 0; }

/* ========================
   触控设备（无 hover 能力）
   ======================== */
@media (hover: none) and (pointer: coarse) {
    /* addr-clear-btn 保持 18×18 视觉尺寸（避免撑高 .addr-select-display 父级），
       通过绝对定位伪元素向外扩展命中区到 44×44 */
    .addr-clear-btn {
        position: relative;
    }
    .addr-clear-btn::before {
        content: '';
        position: absolute;
        inset: -13px; /* 18px 视觉 + 13px×2 命中扩展 = 44px 触控区 */
    }
    /* markdown-editor-btn 保持小（工具栏密集），但互相之间增加间距 */
    .markdown-editor-btn {
        min-width: 28px;
        min-height: 28px;
    }
}

/* 桌面端 hover 隔离：避免触屏误触发粘滞 hover 状态 */
@media (hover: hover) {
    /* 这里不重定义 hover，只是标记后续 hover 规则应该只在此包装下生效 */
    /* （现有代码的 :hover 规则已生效，此处作为文档性注释） */
}

/* ========================
   打印样式
   ======================== */
@media print {
    /* 强制亮色模式 */
    :root {
        color-scheme: light;
        --bg-primary: #FFFFFF;
        --bg-secondary: #FFFFFF;
        --bg-tertiary: #F5F5F7;
        --card-bg: #FFFFFF;
        --text-primary: #000000;
        --text-secondary: #333333;
        --border: #CCCCCC;
    }

    body {
        background: white !important;
        color: black !important;
    }

    /* 隐藏所有交互性 UI */
    .nav,
    .mobile-nav-menu,
    .mobile-menu-btn,
    .mobile-action-bar,
    .bulk-bar,
    .records-toolbar,
    .workbench-tabs,
    .toast,
    #toast-container,
    .btn,
    .page-btn,
    .col-sort .arrow,
    .preview-banner {
        display: none !important;
    }

    /* 表格可能很宽，尝试适配 */
    .table-container {
        overflow: visible !important;
        border: none !important;
    }
    table.data-table {
        min-width: 0 !important;
        white-space: normal !important;
        page-break-inside: auto;
    }
    table.data-table th {
        background: #EEEEEE !important;
        color: black !important;
    }
    tr { page-break-inside: avoid; }

    /* 表单填写页打印友好 */
    .form-cover {
        background: #F5F5F7 !important;
        color: black !important;
        border: 1px solid #CCCCCC !important;
    }
    #form-desc,
    #form-desc p,
    #form-desc span,
    #form-desc div {
        color: black !important;
    }

    /* 展开所有折叠内容 */
    .panel-right { position: static !important; transform: none !important; display: block !important; }
    .panel-right-body { overflow: visible !important; flex: none !important; }

    a { color: black !important; text-decoration: underline; }
    a::after { content: " (" attr(href) ")"; font-size: 10px; color: #666; }
}

/* 暗色模式：dialog / sheet 用 GitHub canvas-overlay 色 */
@media (prefers-color-scheme: dark) {
    .overlay-dialog,
    .overlay-sheet {
        background: var(--overlay-canvas-bg);
        border-color: var(--overlay-canvas-border);
        box-shadow: 0 8px 24px rgba(1, 4, 9, 0.5), 0 1px 3px rgba(1, 4, 9, 0.3);
    }
    .overlay-footer {
        background: var(--overlay-canvas-bg);
        border-top-color: var(--overlay-canvas-border);
    }
}

/* 触屏最小命中区 */
@media (hover: none) and (pointer: coarse) {
    .overlay-close {
        min-width: var(--min-touch);
        min-height: var(--min-touch);
    }
}

/* 打印：隐藏所有 overlay */
@media print {
    .overlay-backdrop { display: none !important; }
}

@media (max-width:767.98px){
}

/* ── 文字工具类 ─────────────────────── */
.text-hint  { font-size: 12px; color: var(--text-secondary); }
.text-meta  { font-size: 13px; color: var(--text-secondary); }

.warning-icon-warning {
    color: var(--warning);
}
.password-form-title {
    margin: 0;
    font-size: 1.75rem;
    line-height: 1.2;
    text-align: center;
}
.password-error {
    display: none;
    margin-bottom: 14px;
}
.password-submit-btn {
    width: 100%;
    justify-content: center;
}
.result-icon-success-tone {
    color: var(--success);
}
.result-icon-warning-tone {
    color: var(--warning);
}
.form-centered-markdown {
    text-align: center;
}
.form-preview-empty-alert {
    margin-bottom: 0;
}
.form-loading-fallback {
    padding: var(--iform-loading-fallback-padding, 20px);
    text-align: center;
    color: var(--text-secondary);
}
.overlay-title-stack-inline {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
    flex: 1;
}
.overlay-header-actions-inline {
    display: flex;
    align-items: center;
    gap: 8px;
}
.upload-error-text {
    color: var(--danger);
}

/* ── Pagination jump ──────────────────────────────────────────────────────── */
.pagination-jump {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-left: 8px;
    vertical-align: middle;
}
.pagination-jump-input {
    width: 52px;
    height: 28px;
    padding: 0 6px;
    border: 1px solid var(--border);
    border-radius: 6px;
    background: var(--card-bg);
    color: var(--text-primary);
    font-size: 13px;
    text-align: center;
    appearance: textfield;
    -moz-appearance: textfield;
}
.pagination-jump-input::-webkit-outer-spin-button,
.pagination-jump-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.pagination-jump-input:focus { outline: none; border-color: var(--accent); }

/* ── form-field-renderer shared styles ───────────────────────────────────────── */
.iform-page-break-divider { padding: 8px 0; }
.iform-section-hr { border: none; border-top: 2px solid var(--border); margin: 8px 0 6px; }
.iform-section-title { font-size: 13px; font-weight: 600; color: var(--text-secondary); text-transform: uppercase; letter-spacing: 0.04em; }
.iform-page-section-title { margin: 14px 0; }
/* Conditionally hidden fields in shared renderer */
.form-field-block.iform-conditional-hidden { opacity: 0.45; pointer-events: none; }
.form-field-block.iform-conditional-hidden input,
.form-field-block.iform-conditional-hidden textarea,
.form-field-block.iform-conditional-hidden select,
.form-field-block.iform-conditional-hidden button { pointer-events: none; }
