/* FOCNORM.RO – playerul video al modulelor (20–22.10.2026). Aspect inspirat de YouTube: miniatură cu buton mare de redare,
   bara cu capitole, comenzi la trecerea mouse-ului, panou cu capitolele; fără servicii externe. */
.fnv-wrap{--v-accent:var(--accent,#b3261e);--v-line:var(--line,#dcdcd7);--v-panel:var(--panel,#fff);--v-ink:var(--ink,#1d2026);--v-muted:var(--muted,#5b616b);--v-soft:var(--soft,#ecebe7);
  margin:18px 0 26px;container-type:inline-size;font-family:var(--f-body,"Public Sans",system-ui,sans-serif);color:var(--v-ink)}
.fnv-wrap[hidden]{display:none}
.fnv-lay{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@container (min-width:960px){.fnv-lay{grid-template-columns:minmax(0,1fr) 340px;gap:18px}.fnv-meta{height:0;min-height:100%}}
.fnv{position:relative;aspect-ratio:16/9;background:#000;border-radius:14px;overflow:hidden;outline:none;user-select:none;-webkit-user-select:none}
.fnv video{position:absolute;inset:0;width:100%;height:100%;display:block;background:#000}
.fnv:focus-visible{box-shadow:0 0 0 3px var(--v-accent)}
.fnv-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;cursor:pointer;border:0;padding:0;background:#000}
.fnv-poster img{width:100%;height:100%;object-fit:cover;display:block}
.fnv-top{position:absolute;left:0;right:0;top:0;padding:14px 18px 40px;background:linear-gradient(rgba(0,0,0,.62),transparent);color:#fff;display:flex;gap:12px;align-items:center;pointer-events:none}
.fnv-top .fnv-av{flex:none}
.fnv-top b{font-size:16px;font-weight:600;line-height:1.3;text-shadow:0 1px 2px rgba(0,0,0,.4)}
.fnv-av{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--v-accent);color:var(--accent-ink,#fff);font-family:var(--f-mono,"JetBrains Mono",monospace);font-size:13px;font-weight:600;letter-spacing:.02em}
.fnv-big{position:absolute;left:50%;top:50%;width:76px;height:54px;margin:-27px 0 0 -38px;border-radius:15px;background:rgba(23,23,23,.82);border:0;display:grid;place-items:center;cursor:pointer;transition:background .15s}
.fnv-big svg{width:26px;height:26px;fill:#fff;margin-left:3px}
.fnv-poster:hover .fnv-big,.fnv-poster:focus-visible .fnv-big,.fnv-big:hover{background:var(--v-accent)}
.fnv-dur{position:absolute;right:12px;bottom:12px;background:rgba(0,0,0,.8);color:#fff;font-size:13px;font-weight:600;padding:3px 6px;border-radius:5px;font-variant-numeric:tabular-nums}
/* comenzile */
.fnv-ui{position:absolute;inset:0;display:none}
.fnv.on .fnv-ui{display:block}
.fnv.on .fnv-poster,.fnv.on .fnv-dur{display:none}
.fnv-shade{position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(transparent,rgba(0,0,0,.7));pointer-events:none;transition:opacity .25s}
.fnv-bar{position:absolute;left:0;right:0;bottom:0;padding:0 12px 6px;transition:opacity .25s}
.fnv.idle .fnv-bar,.fnv.idle .fnv-shade,.fnv.idle .fnv-top{opacity:0}
.fnv.idle{cursor:none}
.fnv-prog{position:relative;height:18px;cursor:pointer;touch-action:none;display:flex;align-items:center}
.fnv-segs{position:absolute;left:0;right:0;top:7px;height:4px;display:flex;gap:2px;transition:height .1s,top .1s}
.fnv-prog:hover .fnv-segs,.fnv-prog.drag .fnv-segs{height:6px;top:6px}
.fnv-seg{position:relative;height:100%;background:rgba(255,255,255,.28);overflow:hidden;flex:none}
.fnv-seg i,.fnv-seg u{position:absolute;left:0;top:0;bottom:0;width:0}
.fnv-seg u{background:rgba(255,255,255,.45);text-decoration:none}
.fnv-seg i{background:var(--v-accent)}
.fnv-seg.hov{transform:scaleY(1.6)}
.fnv-knob{position:absolute;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--v-accent);transform:scale(0);transition:transform .1s;pointer-events:none}
.fnv-prog:hover .fnv-knob,.fnv-prog.drag .fnv-knob,.fnv-prog:focus-visible .fnv-knob{transform:scale(1)}
.fnv-prog:focus-visible{outline:2px solid #fff;outline-offset:2px;border-radius:3px}
.fnv-tip{position:absolute;bottom:26px;transform:translateX(-50%);display:none;flex-direction:column;align-items:center;gap:6px;pointer-events:none}
.fnv-tip img{width:176px;height:99px;object-fit:cover;border:2px solid #fff;border-radius:8px;background:#111}
.fnv-tip span{color:#fff;font-size:13px;font-weight:600;text-shadow:0 1px 3px #000;white-space:nowrap;text-align:center;line-height:1.35}
.fnv-tip span em{display:block;font-style:normal;font-weight:400;font-variant-numeric:tabular-nums}
.fnv-prog:hover .fnv-tip,.fnv-prog.drag .fnv-tip{display:flex}
.fnv-row{display:flex;align-items:center;gap:4px;height:44px;color:#fff}
.fnv-row button{background:none;border:0;color:#fff;width:40px;height:40px;display:grid;place-items:center;cursor:pointer;border-radius:8px;flex:none;padding:0}
.fnv-row button svg{width:24px;height:24px;fill:currentColor}
.fnv-row button:hover{background:rgba(255,255,255,.12)}
.fnv-row button:focus-visible{outline:2px solid #fff}
.fnv-vol{display:flex;align-items:center}
.fnv-vol input{width:0;opacity:0;transition:width .15s,opacity .15s;accent-color:#fff;cursor:pointer}
.fnv-vol:hover input,.fnv-vol:focus-within input{width:70px;opacity:1;margin:0 8px 0 2px}
.fnv-time{font-size:13.5px;font-variant-numeric:tabular-nums;margin:0 6px;white-space:nowrap}
.fnv-cn{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;color:#eee;background:none;border:0;cursor:pointer;padding:4px 6px;border-radius:6px;font-family:inherit}
.fnv-cn:hover{background:rgba(255,255,255,.12)}
.fnv-sp{flex:1}
.fnv-menu{position:absolute;right:12px;bottom:58px;background:rgba(28,28,28,.94);border-radius:12px;padding:8px 0;min-width:170px;display:none;color:#fff;font-size:14px}
.fnv-menu.open{display:block}
.fnv-menu p{margin:2px 16px 6px;font-size:12px;color:#bbb;letter-spacing:.04em;text-transform:uppercase}
.fnv-menu button{display:flex;width:100%;background:none;border:0;color:#fff;padding:8px 16px;font:inherit;cursor:pointer;gap:10px;align-items:center;text-align:left}
.fnv-menu button:hover,.fnv-menu button:focus-visible{background:rgba(255,255,255,.12);outline:none}
.fnv-menu button[aria-checked="true"]:before{content:"✓"}
.fnv-menu button[aria-checked="false"]:before{content:"";width:.8em}
.fnv-flash{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:rgba(0,0,0,.5);display:grid;place-items:center;opacity:0;pointer-events:none}
.fnv-flash svg{width:30px;height:30px;fill:#fff}
.fnv-flash.go{animation:fnvf .55s ease-out}
@keyframes fnvf{0%{opacity:1;transform:scale(.8)}100%{opacity:0;transform:scale(1.4)}}
.fnv-end{position:absolute;inset:0;background:rgba(0,0,0,.78);display:none;flex-direction:column;justify-content:center;padding:4% 5%;gap:14px;color:#fff}
.fnv.ended .fnv-end{display:flex}
.fnv-end h3{margin:0;font-size:clamp(14px,1.8vw,18px);font-weight:600}
.fnv-endg{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.fnv-endg a{color:#fff;text-decoration:none;font-size:clamp(11px,1.2vw,13.5px);font-weight:600;line-height:1.3;display:flex;flex-direction:column;gap:6px}
.fnv-endg a img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px;border:2px solid transparent}
.fnv-endg a:hover img,.fnv-endg a:focus-visible img{border-color:#fff}
.fnv-end .fnv-again{align-self:flex-start;background:#fff;color:#111;border:0;border-radius:999px;padding:8px 16px;font:inherit;font-weight:600;font-size:14px;cursor:pointer}
@container (max-width:600px){.fnv-endg{grid-template-columns:repeat(2,1fr)}.fnv-endg a:nth-child(n+3){display:none}.fnv-vol input{display:none}.fnv-cn{display:none}.fnv-row button.fnv-nx{display:none}}
.fnv:fullscreen{border-radius:0}
.fnv:fullscreen .fnv-top b{font-size:20px}
/* panoul din dreapta */
.fnv-meta{background:var(--v-panel);border:1px solid var(--v-line);border-radius:14px;padding:16px 16px 10px;display:flex;flex-direction:column;min-width:0;overflow:hidden}
.fnv-eye{font-family:var(--f-mono,"JetBrains Mono",monospace);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--v-accent);margin:0}
.fnv-title{font-family:var(--f-display,"Literata",Georgia,serif);font-size:19px;line-height:1.3;margin:6px 0 10px;font-weight:600}
.fnv-chan{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--v-muted);padding-bottom:12px;border-bottom:1px solid var(--v-line)}
.fnv-chan b{display:block;color:var(--v-ink);font-size:14px}
.fnv-chan .fnv-hide{margin-left:auto;background:var(--v-soft);border:1px solid var(--v-line);color:var(--v-ink);border-radius:999px;padding:5px 12px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap}
.fnv-chan .fnv-hide:hover{border-color:var(--v-accent)}
.fnv-desc{font-size:14px;line-height:1.5;color:var(--v-muted);margin:10px 0 6px}
.fnv-chh{font-size:13px;font-weight:700;margin:8px 0 4px;color:var(--v-ink)}
.fnv-chap{list-style:none;margin:0;padding:0;overflow:auto;flex:1;min-height:0}
.fnv-chap a{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;align-items:center;padding:6px;border-radius:8px;text-decoration:none;color:var(--v-ink)}
.fnv-chap a:hover,.fnv-chap a:focus-visible{background:var(--v-soft)}
.fnv-chap a.cur{background:var(--accent-soft,#f7e3e0)}
.fnv-chap img{width:88px;height:50px;object-fit:cover;border-radius:6px;background:var(--v-soft)}
.fnv-chap span{font-size:13.5px;font-weight:600;line-height:1.3}
.fnv-chap small{display:block;font-family:var(--f-mono,"JetBrains Mono",monospace);font-size:12px;color:var(--v-accent);font-weight:500;margin-top:2px}
@container (max-width:959px){.fnv-chap{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.fnv-chap li{flex:none;width:150px}.fnv-chap a{grid-template-columns:1fr;gap:4px;align-items:start}.fnv-chap img{width:100%;height:auto;aspect-ratio:16/9}}
/* videoclip ascuns */
.fnv-mini{display:flex;align-items:center;gap:14px;margin:14px 0 22px;padding:10px 12px;background:var(--panel,#fff);border:1px solid var(--line,#dcdcd7);border-radius:12px;font-family:var(--f-body,"Public Sans",system-ui,sans-serif)}
.fnv-mini[hidden]{display:none}
.fnv-mini img{width:96px;height:54px;object-fit:cover;border-radius:7px;flex:none}
.fnv-mini{flex-wrap:wrap}.fnv-mini span{font-size:14px;color:var(--muted,#5b616b);min-width:0;flex:1 1 180px}
.fnv-mini span b{display:block;color:var(--ink,#1d2026);font-size:14.5px}
.fnv-mini button{margin-left:auto;background:var(--accent,#b3261e);color:var(--accent-ink,#fff);border:0;border-radius:999px;padding:7px 14px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;white-space:nowrap}
@media (prefers-reduced-motion:reduce){.fnv *{transition:none!important;animation:none!important}}
