/* 启动页与细节适配（v2） */

.boot {
    position: fixed;
    inset: 0;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg);
    transition: opacity var(--dur-4) var(--ease), visibility var(--dur-4);
}

.boot.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.boot-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    animation: fade-up var(--dur-4) var(--ease-out) both;
}

.boot-mark {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background-color: var(--brand);
    background-image: url("../img/brand.svg"), linear-gradient(150deg, var(--brand), var(--brand-strong));
    background-size: 56%, 100%;
    background-position: center, center;
    background-repeat: no-repeat;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: none;
}

.boot-text { text-align: center; }

.boot-name {
    font-family: var(--font-display);
    font-size: 22px;
    font-weight: var(--weight-semibold);
    letter-spacing: 0.01em;
}

.boot-sub {
    margin-top: 3px;
    font-size: 10.5px;
    letter-spacing: 0.14em;
    color: var(--muted-2);
    text-transform: none;
}

.boot-bar {
    width: 132px;
    height: 2px;
    border-radius: 99px;
    background: var(--surface-3);
    overflow: hidden;
    margin-top: 4px;
}

.boot-bar span {
    display: block;
    width: 40%;
    height: 100%;
    border-radius: 99px;
    background: var(--brand);
    animation: boot-slide 1.15s var(--ease) infinite;
}

@keyframes boot-slide {
    0% { transform: translateX(-110%); }
    100% { transform: translateX(360%); }
}

/* 顶部栏图标按钮在移动端更紧凑 */

@media (max-width: 900px) {
    .topbar-actions .btn-icon {
        width: 32px;
        height: 32px;
    }
}

@media (max-width: 640px) {
    .hide-sm { display: none !important; }
    .page-actions .btn { flex: 1; }
    .page-actions .dropdown { flex: 1; }
    .page-actions .dropdown-trigger { width: 100%; justify-content: space-between; }
    .card-pad { padding: var(--sp-4); }
    .card-pad-lg { padding: var(--sp-4); }
    .greeting h1 { font-size: 27px; }
    .continue-card { padding: 22px 0; }
    .continue-card h3 { font-size: 25px; }
    .mini-stats { gap: 18px; }
    .result-hero { padding: 18px 0; }
    .result-actions .btn { min-width: 0; }
    .sentence-card .sc-head { padding: 14px 0 8px; }
    .modal-head { padding: 20px 18px 0; }
    .modal-body { padding: 18px 18px; }
    .modal-foot { padding: 14px 18px 18px; }
    .topbar-mobile-brand { font-size: 15px; }
}

/* 打印（报告离线保存） */

@media print {
    .sidebar,
    .topbar,
    .tabbar,
    .result-bottom,
    .result-actions,
    .toast-stack {
        display: none !important;
    }
    .shell { display: block; }
    .view { padding: 0; max-width: none; }
    body { background: #fff; }
    .card,
    .sentence-card,
    .result-hero,
    .summary-card {
        box-shadow: none !important;
        break-inside: avoid;
    }
    .sentence-card { page-break-inside: avoid; border-top-color: #ccc; }
    .result-hero { border-bottom-color: #ccc; }
}
