/* Feed editorial da Kali: cards compactos, legíveis e alinhados ao conteúdo. */
:root .app-shell .kali-feed-page {
    box-sizing:border-box;
    display:grid;
    width:100%;
    max-width:1240px;
    gap:24px;
    margin:0 auto;
    padding:24px clamp(20px,3vw,44px) calc(132px + env(safe-area-inset-bottom));
}

.kali-feed-intro {
    display:grid;
    gap:8px;
    max-width:780px;
    padding:2px 0 0;
}

.kali-feed-overline,
.kali-feed-card-kicker {
    color:var(--h-accent);
    font-size:10px;
    font-weight:700;
    letter-spacing:.16em;
    line-height:1.4;
    text-transform:uppercase;
}

.kali-feed-intro h1 {
    margin:0;
    color:var(--h-text);
    font:400 clamp(27px,3vw,36px)/1.15 var(--h-serif);
    letter-spacing:-.025em;
}

.kali-feed-intro p {
    max-width:650px;
    margin:0;
    color:var(--h-muted);
    font-size:14px;
    line-height:1.65;
}

.kali-question-invite {
    display:grid;
    grid-template-columns:48px minmax(0,1fr) auto;
    align-items:center;
    gap:16px;
    width:100%;
    min-width:0;
    padding:19px 22px;
    border:1px solid color-mix(in srgb,var(--h-accent) 42%,var(--h-border));
    border-radius:20px;
    background:linear-gradient(110deg,color-mix(in srgb,var(--h-accent) 13%,var(--h-surface)),var(--h-surface) 72%);
    box-shadow:0 12px 30px color-mix(in srgb,var(--h-text) 5%,transparent);
    color:var(--h-text);
    text-align:left;
    cursor:pointer;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.kali-question-invite:hover {
    transform:translateY(-2px);
    border-color:var(--h-accent);
    box-shadow:0 16px 34px color-mix(in srgb,var(--h-text) 9%,transparent);
}

.kali-question-invite-icon {
    display:grid;
    width:48px;
    height:48px;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--h-accent) 42%,var(--h-border));
    border-radius:16px;
    background:color-mix(in srgb,var(--h-accent) 14%,var(--h-surface));
    color:var(--h-accent);
    font-size:22px;
}

.kali-question-invite-copy {
    display:grid;
    min-width:0;
    gap:5px;
}

.kali-question-invite-copy small {
    color:var(--h-accent);
    font-size:9px;
    font-weight:700;
    letter-spacing:.15em;
}

.kali-question-invite-copy strong {
    display:-webkit-box;
    overflow:hidden;
    color:var(--h-text);
    font-size:16px;
    font-weight:650;
    line-height:1.45;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}

.kali-question-invite-copy > span {
    display:-webkit-box;
    overflow:hidden;
    color:var(--h-muted);
    font-size:12px;
    line-height:1.5;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}

.kali-question-invite-action {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:42px;
    padding:0 15px;
    border:1px solid var(--h-border);
    border-radius:14px;
    background:color-mix(in srgb,var(--h-surface) 78%,transparent);
    color:var(--h-accent);
    font-size:12px;
    font-weight:700;
    white-space:nowrap;
}

.kali-feed-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
    gap:18px;
    min-width:0;
}

.kali-feed-card.feature-card {
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:0;
    overflow:hidden;
    margin:0;
    padding:0;
    border:1px solid var(--h-border);
    border-radius:20px;
    background:var(--h-surface);
    box-shadow:0 10px 28px color-mix(in srgb,var(--h-text) 4%,transparent);
    color:var(--h-text);
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.kali-feed-card.feature-card:hover {
    transform:translateY(-2px);
    border-color:color-mix(in srgb,var(--h-accent) 50%,var(--h-border));
    box-shadow:0 16px 34px color-mix(in srgb,var(--h-text) 8%,transparent);
}

.kali-feed-open {
    display:grid;
    flex:1 1 auto;
    align-content:start;
    gap:0;
    width:100%;
    min-width:0;
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    text-align:left;
    cursor:pointer;
}

.kali-feed-open:focus-visible,
.kali-question-invite:focus-visible,
.kali-feed-actions button:focus-visible {
    outline:3px solid color-mix(in srgb,var(--h-accent) 65%,transparent);
    outline-offset:3px;
}

.kali-feed-card-image,
.kali-feed-skeleton-image,
.kali-feed-card-placeholder {
    display:block;
    width:100%;
    aspect-ratio:1.9 / 1;
    object-fit:cover;
}

.kali-feed-card-image {
    background:var(--h-bg);
    transition:transform .35s ease;
}

.kali-feed-card.feature-card:hover .kali-feed-card-image { transform:scale(1.015); }

.kali-feed-card-placeholder {
    display:grid;
    place-items:center;
    background:radial-gradient(circle at 80% 15%,color-mix(in srgb,var(--h-accent) 24%,var(--h-surface)),transparent 45%),linear-gradient(135deg,var(--h-raised),var(--h-bg));
    color:var(--h-accent);
    font-size:34px;
}

.kali-feed-card-copy {
    display:grid;
    align-content:start;
    gap:9px;
    min-width:0;
    padding:19px 20px 18px;
}

.kali-feed-card-kicker {
    overflow:hidden;
    color:var(--h-muted);
    font-size:9px;
    letter-spacing:.12em;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.kali-feed-card-kicker span { padding:0 3px; color:var(--h-accent); }

.kali-feed-card-copy > strong {
    display:-webkit-box;
    overflow:hidden;
    color:var(--h-text);
    font:600 18px/1.35 var(--font-inter);
    letter-spacing:-.015em;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
}

.kali-feed-card-summary {
    display:-webkit-box;
    overflow:hidden;
    color:var(--h-muted);
    font-size:12px;
    line-height:1.65;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
}

.kali-feed-card-open-label {
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:3px;
    color:var(--h-accent);
    font-size:11px;
    font-weight:700;
}

.kali-feed-card-footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:54px;
    padding:7px 15px 7px 20px;
    border-top:1px solid var(--h-border);
    background:color-mix(in srgb,var(--h-bg) 36%,var(--h-surface));
}

.kali-feed-card-footer time {
    min-width:0;
    overflow:hidden;
    color:var(--h-muted);
    font-size:10px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.kali-feed-actions { display:flex; align-items:center; gap:6px; margin:0; }

.kali-feed-actions .icon-button {
    display:grid;
    width:36px;
    height:36px;
    place-items:center;
    border:1px solid transparent;
    border-radius:12px;
    background:transparent;
    color:var(--h-muted);
    transition:color .15s ease,background .15s ease,border-color .15s ease;
}

.kali-feed-actions .icon-button:hover:not(:disabled) {
    border-color:var(--h-border);
    background:var(--h-raised);
    color:var(--h-accent);
}

.kali-feed-actions .icon-button:disabled { cursor:wait; opacity:.55; }

.kali-feed-empty {
    display:grid;
    justify-items:center;
    gap:12px;
    padding:48px 24px;
    border:1px dashed var(--h-border);
    border-radius:22px;
    background:color-mix(in srgb,var(--h-surface) 70%,transparent);
    text-align:center;
}

.kali-feed-empty > span { color:var(--h-accent); font-size:27px; }
.kali-feed-empty h2 { margin:0; color:var(--h-text); font:400 24px/1.25 var(--h-serif); }
.kali-feed-empty p { max-width:440px; margin:0; color:var(--h-muted); font-size:13px; line-height:1.6; }

.kali-question-skeleton {
    display:grid;
    grid-column:1 / -1;
    gap:9px;
    min-height:110px;
    padding:20px;
    border:1px solid var(--h-border);
    border-radius:20px;
    background:var(--h-surface);
}

.kali-question-skeleton .skeleton,
.kali-feed-card-skeleton .skeleton {
    display:block;
    border-radius:9px;
}

.kali-question-skeleton .skeleton:first-child { width:28%; height:10px; }
.kali-question-skeleton .skeleton:nth-child(2) { width:74%; height:20px; }
.kali-question-skeleton .skeleton:last-child { width:52%; height:12px; }

.kali-feed-card-skeleton { gap:12px !important; padding:0 0 18px !important; }
.kali-feed-skeleton-image { border-radius:0 !important; }
.kali-feed-skeleton-kicker { width:38%; height:9px; margin:5px 20px 0; }
.kali-feed-skeleton-title { width:80%; height:20px; margin:0 20px; }
.kali-feed-skeleton-line { width:calc(100% - 40px); height:11px; margin:0 20px; }
.kali-feed-skeleton-line.short { width:56%; }

/* A pergunta usa a mesma superfície e os mesmos acentos do restante do PWA. */
:root .nm-dialog.kali-question-modal .modal-card {
    border-color:var(--h-border);
    background:var(--h-surface);
}
:root .nm-dialog.kali-question-modal .modal-head,
:root .nm-dialog.kali-question-modal .modal-footer { border-color:var(--h-border); background:var(--h-surface); }
:root .nm-dialog.kali-question-modal .modal-title .titulo { color:var(--h-text); font:400 24px/1.2 var(--h-serif); }
:root .nm-dialog.kali-question-modal .modal-title .subtitulo,
:root .nm-dialog.kali-question-modal .modal-body { color:var(--h-muted); }
:root .nm-dialog.kali-question-modal .modal-title .fa { color:var(--h-accent); }
:root .nm-dialog.kali-question-modal .modal-close { border-color:var(--h-border); background:var(--h-raised); color:var(--h-text); }
:root .nm-dialog.kali-question-modal .kali-question-prompt h3 { margin:0 0 22px; color:var(--h-text); font:500 20px/1.5 var(--font-inter); }
:root .nm-dialog.kali-question-modal .kali-question-prompt .field label { color:var(--h-accent); }
:root .nm-dialog.kali-question-modal .kali-question-prompt textarea { border-color:var(--h-border); background:var(--h-bg); color:var(--h-text); }
:root .nm-dialog.kali-question-modal .modal-footer .btn-secondary { border-color:var(--h-border); background:transparent; color:var(--h-text); }
:root .nm-dialog.kali-question-modal .modal-footer .btn-primary-grad { border:0; background:var(--h-accent); color:var(--h-bg); }

@media (min-width:1450px) {
    .kali-feed-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:900px) {
    :root .app-shell .kali-feed-page { max-width:760px; padding-top:18px; }
    .kali-feed-grid { grid-template-columns:1fr; gap:14px; }
}

@media (max-width:560px) {
    :root .app-shell .kali-feed-page { gap:17px; padding:15px 16px calc(112px + env(safe-area-inset-bottom)); }
    .kali-feed-intro { gap:6px; }
    .kali-feed-intro h1 { font-size:28px; }
    .kali-feed-intro p { font-size:13px; }
    .kali-question-invite { grid-template-columns:42px minmax(0,1fr); gap:12px; padding:15px; border-radius:18px; }
    .kali-question-invite-icon { width:42px; height:42px; border-radius:14px; }
    .kali-question-invite-copy strong { font-size:14px; }
    .kali-question-invite-copy > span { font-size:11px; }
    .kali-question-invite-action { grid-column:2; justify-self:start; min-height:36px; margin-top:2px; padding:0 12px; }
    .kali-feed-card.feature-card { border-radius:18px; }
    .kali-feed-card-image,.kali-feed-skeleton-image,.kali-feed-card-placeholder { aspect-ratio:1.72 / 1; }
    .kali-feed-card-copy { gap:8px; padding:15px 15px 14px; }
    .kali-feed-card-copy > strong { font-size:16px; }
    .kali-feed-card-summary { font-size:12px; }
    .kali-feed-card-footer { min-height:48px; padding-left:15px; }
}

@media (prefers-reduced-motion:reduce) {
    .kali-question-invite,.kali-feed-card.feature-card,.kali-feed-card-image,.kali-feed-actions .icon-button { transition:none; }
}
