
.public-narration-player{
    width:min(100%,680px);
    margin:1.35rem 0 1.6rem;
    border:1px solid rgba(181,157,122,.18);
    background:
        linear-gradient(135deg,rgba(31,13,12,.5),rgba(8,7,6,.97) 46%),
        #0a0908;
    box-shadow:inset 3px 0 0 #7b0909;
}
.public-narration-main{
    width:100%;
    display:grid;
    grid-template-columns:42px minmax(0,1fr) 38px;
    align-items:center;
    gap:12px;
    padding:13px 14px;
    border:0;
    background:transparent;
    color:inherit;
    text-align:left;
    cursor:pointer;
}
.public-narration-main:disabled{
    cursor:wait;
    opacity:.68;
}
.public-narration-icon{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border:1px solid rgba(164,19,19,.34);
    background:rgba(123,9,9,.12);
    color:#b22a25;
}
.public-narration-copy{
    min-width:0;
    display:grid;
    gap:3px;
}
.public-narration-copy small{
    color:#a41313;
    font:600 .48rem/1 var(--font-mono);
    letter-spacing:.13em;
}
.public-narration-copy strong{
    color:#e7ded0;
    font:500 .9rem/1.2 var(--font-display);
}
.public-narration-copy em{
    color:#756b60;
    font:500 .49rem/1.25 var(--font-mono);
    font-style:normal;
}
.public-narration-action{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:1px solid rgba(181,157,122,.2);
    color:#c4aa70;
}
.public-narration-player[data-state="playing"] .public-narration-action{
    border-color:rgba(164,19,19,.5);
    background:rgba(123,9,9,.14);
    color:#d8b16d;
}
.public-narration-progress{
    padding:0 14px 12px 68px;
}
.public-narration-progress>div:first-child{
    display:flex;
    justify-content:space-between;
    gap:12px;
    margin-bottom:7px;
    color:#776d62;
    font:500 .47rem/1.2 var(--font-mono);
    letter-spacing:.05em;
}
.public-narration-track{
    height:2px;
    overflow:hidden;
    background:rgba(181,157,122,.12);
}
.public-narration-track i{
    display:block;
    width:0;
    height:100%;
    background:#8f1b1b;
    transition:width .15s linear;
}
.daily-reader>.public-narration-player,
.forensic-detail>.public-narration-player,
.archive-literary-detail>.public-narration-player{
    width:100%;
}
@media(max-width:600px){
    .public-narration-player{
        margin:1rem 0 1.25rem;
    }
    .public-narration-main{
        grid-template-columns:36px minmax(0,1fr) 32px;
        gap:10px;
        padding:11px 12px;
    }
    .public-narration-icon{
        width:36px;
        height:36px;
    }
    .public-narration-action{
        width:30px;
        height:30px;
    }
    .public-narration-copy strong{
        font-size:.8rem;
    }
    .public-narration-progress{
        padding:0 12px 11px 58px;
    }
}
body.case-reading .case-reader-toolbar .public-narration-player{
    flex:0 0 100%;
    width:min(100%,760px);
    margin:4px auto 0;
    border-color:color-mix(in srgb,var(--reader-border) 45%,transparent);
    background:
        linear-gradient(135deg,rgba(31,13,12,.32),rgba(8,7,6,.16) 48%),
        var(--reader-card);
    box-shadow:inset 3px 0 0 #7b0909;
}
body.case-reading[data-reader-theme="papel"] .case-reader-toolbar .public-narration-player{
    background:
        linear-gradient(135deg,rgba(125,76,47,.08),rgba(255,255,255,.04)),
        var(--reader-card);
}
body.case-reading .case-reader-toolbar .public-narration-copy strong,
body.case-reading .case-reader-toolbar .public-narration-copy em,
body.case-reading .case-reader-toolbar .public-narration-progress{
    color:var(--reader-fg);
}
@media(max-width:600px){
    body.case-reading .case-reader-toolbar .public-narration-player{
        width:100%;
        margin-top:2px;
    }
}

.narration-auth-open{overflow:hidden}
.narration-auth-overlay{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:18px;background:rgba(5,4,3,.72);backdrop-filter:blur(6px)}
.narration-auth-overlay[hidden]{display:none}
.narration-auth-dialog{position:relative;width:min(430px,100%);box-sizing:border-box;padding:26px 24px 22px;border:1px solid rgba(180,153,117,.22);background:linear-gradient(180deg,rgba(24,19,15,.98),rgba(12,10,8,.985));box-shadow:0 24px 70px rgba(0,0,0,.45);color:#e8dfd2}
.narration-auth-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border:0;background:transparent;color:#85796d;cursor:pointer}
.narration-auth-mark{width:42px;height:42px;display:grid;place-items:center;margin-bottom:14px;border:1px solid rgba(168,126,76,.28);color:#b68a56;background:rgba(104,64,26,.08)}
.narration-auth-kicker{font-size:.62rem;letter-spacing:.16em;color:#8f7f6f}
.narration-auth-dialog h2{margin:7px 34px 8px 0;font-size:1.22rem;line-height:1.2;color:#f0e6d8}
.narration-auth-intro{margin:0 0 18px;color:#9d9185;font-size:.78rem;line-height:1.55}
.narration-auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid rgba(181,157,122,.14);margin-bottom:16px}
.narration-auth-tabs button{padding:10px 8px;border:0;border-bottom:1px solid transparent;background:transparent;color:#81766b;font-size:.72rem;cursor:pointer}
.narration-auth-tabs button.active{color:#e4d8c7;border-bottom-color:#8e6840}
.narration-auth-form{display:grid;gap:12px}
.narration-auth-form[hidden]{display:none}
.narration-auth-form label:not(.narration-auth-check){display:grid;gap:6px;color:#998c7f;font-size:.7rem}
.narration-auth-form input[type=email],.narration-auth-form input[type=password],.narration-auth-form input[type=text]{width:100%;box-sizing:border-box;min-height:42px;padding:9px 10px;border:1px solid rgba(181,157,122,.2);background:#0c0a08;color:#eee4d5;outline:none}
.narration-auth-form input:focus{border-color:rgba(162,113,64,.6)}
.narration-auth-primary{min-height:42px;margin-top:3px;border:1px solid rgba(136,32,27,.45);background:rgba(111,22,18,.18);color:#eadfd0;cursor:pointer}
.narration-auth-primary:disabled{opacity:.55;cursor:wait}
.narration-auth-check{display:flex;gap:8px;align-items:flex-start;color:#8f8378;font-size:.68rem;line-height:1.45}
.narration-auth-check input{margin-top:2px}
.narration-auth-check a{color:#b79972;text-decoration:none}
.narration-auth-state{min-height:1.3em;margin:12px 0 0;color:#b49d80;font-size:.7rem;line-height:1.45}
@media(max-width:520px){.narration-auth-dialog{padding:23px 18px 19px}.narration-auth-dialog h2{font-size:1.08rem}}

.narration-turnstile-overlay{position:fixed;inset:0;z-index:2147483647;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.88)}
.narration-turnstile-box{display:grid;gap:14px;justify-items:center;padding:18px;border:1px solid rgba(181,157,122,.2);background:#120f0c;color:#e7ddcf}
.narration-turnstile-box strong{font-size:.72rem;letter-spacing:.08em}

/* Compact controls shared by light and dark reading themes */
.public-narration-player{margin:.5rem 0 .7rem}
.public-narration-main{padding:8px 11px;grid-template-columns:30px minmax(0,1fr) 30px;gap:9px}
.public-narration-icon{width:30px;height:30px}
.public-narration-action{width:28px;height:28px}
.public-narration-copy em{display:none}
.public-narration-progress{padding:0 11px 10px}
.public-narration-timeline{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin:7px 0 6px;font:500 .66rem/1.2 var(--font-mono);color:inherit}
.public-narration-timeline input{width:100%;min-width:0;accent-color:#96312a;cursor:pointer;touch-action:pan-y}
.public-narration-controls{display:flex;align-items:center;justify-content:center;gap:15px;flex-wrap:wrap}
.public-narration-controls button{min-height:32px;padding:4px 12px;border:1px solid currentColor;border-radius:4px;background:transparent;color:inherit;font:600 .7rem var(--font-mono);cursor:pointer}
.public-narration-controls button:disabled{opacity:.4;cursor:not-allowed}
.public-narration-controls label{font:500 .65rem var(--font-mono);color:inherit}
.public-narration-controls select{margin-left:4px;padding:4px;border:1px solid currentColor;border-radius:4px;background:var(--reader-card,#171311);color:var(--reader-fg,#e7ded0);font:inherit}
body.case-reading .case-reader-toolbar .public-narration-player{margin:2px auto 0}
@media(max-width:600px){.public-narration-main{grid-template-columns:30px minmax(0,1fr) 28px;padding:8px 10px}.public-narration-progress{padding:0 10px 9px}.public-narration-controls{gap:9px}}

/* Mini player: controls open only when requested */
.public-narration-player{max-width:500px;margin:.3rem auto!important}
.public-narration-main{min-height:42px;padding:5px 9px!important;grid-template-columns:25px minmax(0,1fr) 26px!important;gap:8px!important}
.public-narration-icon{width:25px!important;height:25px!important;border:0;background:transparent}
.public-narration-action{width:26px!important;height:26px!important;border:0}
.public-narration-copy small{font-size:.43rem}
.public-narration-copy strong{font-size:.72rem!important}
.public-narration-expand{display:block;width:100%;padding:3px 10px 6px;border:0;background:transparent;color:inherit;opacity:.7;text-align:center;font:500 .59rem var(--font-mono);cursor:pointer}
.public-narration-expand[hidden],.public-narration-progress[hidden]{display:none!important}
.public-narration-progress{padding:4px 10px 9px}
body.case-reading .case-reader-toolbar .public-narration-player{flex:0 1 500px;width:min(100%,500px);margin:2px auto!important}
