/*OBF*/@font-face{font-family:'OBrush';src:url('../../fonts/obrush_c21.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+C12D,U+C130-C131,U+C139-C140,U+C154-C168,U+C194-C27D,U+C2A8,U+C2B4,U+C2B7-C2B9,U+C2DD,U+C2EB,U+C2ED-C30D,U+C368-C53B,U+C545,U+C549,U+C54C,U+C555-C557,U+C559-C55E,U+C561-C571,U+C57D-C598,U+C5B5-C5BB,U+C5BD-C5C4,U+C5C7,U+C5C9-C5CC,U+C5D1,U+C5E0-C5E3,U+C5ED-C5EE,U+C5FC-C61B,U+C625,U+C62C-C62D,U+C633-C63B,U+C644,U+C655-C6A9,U+C6B1,U+C6C0-C6CC,U+C6DC-C6F9,U+C717-C721,U+C728-C735,U+C751,U+C775,U+C783,U+C787,U+C789-C78E,U+C794-C7A4,U+C7A6,U+C7C1-C800,U+C810,U+C813,U+C81D-C838,U+C871-C881,U+C88B-C8E0,U+C8FD,U+C904-C90D,U+C92C-C99D,U+C9CA-C9F1,U+CA0D-CC3E,U+CC45-CCA8,U+CCAD,U+CCD0-CCE4,U+CD09-CD1B,U+CD5C-CD95,U+CD9C-CE35,U+CE5C-CE6D,U+CE7C-CEA1,U+CEE8,U+CEF7-CF08,U+CF20-CF8C,U+CFFC-D06C,U+D074-D07D,U+D0A8-D0B9,U+D0C1-D0D5,U+D0ED-D0F1,U+D131-D134,U+D145,U+D150-D17C,U+D1A1-D1A4,U+D1F4,U+D230-D30E,U+D31D-D328,U+D380-D398,U+D39C-D3B4,U+D3D0,U+D3ED-D45C,U+D479-D47C,U+D488-D551,U+D559,U+D56B-D56D,U+D575-D588,U+D5C8,U+D5D0-D600,U+D608-D64D,U+D658-D669,U+D68D-D749,U+D754-D790,U+D799-D7A3}@font-face{font-family:'OBrush';src:url('../../fonts/obrush_c11.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+AC04-AC07,U+AC11-AC16,U+AC1A,U+AC1D-AC54,U+AC71-AC77,U+AC81,U+AC89,U+ACA0-ACAC,U+ACBD-ACC1,U+ACE1-ACE4,U+ACE8-ACF1,U+ACF5,U+AD04-AD50,U+AD70-AD73,U+AD76-AD7F,U+AD82-ADC8,U+ADE0,U+ADF9-ADFC,U+AE09-AE0B,U+AE34,U+AE40,U+AE43-AE4A,U+AE4E-AE65,U+AE7C,U+AEBE-AECF,U+AEF4-AFC0,U+AFD4-B04A,U+B053-B08D,U+B0A1,U+B0A9-B0AB,U+B0AD-B0B3,U+B0B8-B0E5,U+B109-B10C,U+B113-B123,U+B128-B141,U+B155,U+B179-B192,U+B194-B1A8,U+B20C-B290,U+B299-B2AC,U+B2CC-B2D0,U+B2DD,U+B2E5,U+B2EB,U+B2ED-B2EE,U+B2FF,U+B304-B313,U+B355-B35C,U+B365-B371,U+B3C5-B3D5,U+B3FC-B410,U+B41C-B429,U+B451-B454,U+B460-B4C8,U+B4DD,U+B4E3,U+B4EC-B545,U+B550-B5A1,U+B5A8-B755,U+B77D-B784,U+B78F-B790,U+B799-B7C9,U+B7F0-B801,U+B808-B818,U+B825-B840,U+B85D-B86D,U+B8B0-B8E1,U+B8EC-B960,U+B975,U+B985,U+B989,U+B9AD,U+B9BD-B9C1,U+B9C9,U+B9CE,U+B9D1-B9D9,U+B9DD,U+B9E1,U+B9E5-B9FA,U+BA3C-BA4D,U+BA58-BA74,U+BA87,U+BAA9-BABB,U+BB36,U+BB47-BBA4,U+BBFC-BBFF,U+BC0C-BC11,U+BC15-BC18,U+BC1C-BC1D,U+BC25,U+BC2D-BC43,U+BC85,U+BC8C-BC94,U+BC97-BCC0,U+BCCD-BCD1,U+BCF8-BD05,U+BD10-BD59,U+BD81,U+BD90-BE14,U+BE4C-BE5A,U+BE60-BF18,U+BFCC-C090,U+C0AD,U+C0B6,U+C0BD-C0BF,U+C0C9-C0D8,U+C11D-C11E,U+C124-C12C}@font-face{font-family:'OBrush';src:url('../../fonts/obrush_s1.woff2') format('woff2');font-weight:400;font-display:swap;unicode-range:U+21-27,U+2A-2B,U+2D,U+2F,U+33-34,U+36,U+38-3E,U+40,U+43-48,U+4A-4C,U+4E-53,U+55-7E,U+FC-314E,U+FF08-FF1F}@font-face{font-family:'OBrush';src:url('../../fonts/obrush_b1.woff2') format('woff2');font-weight:400;font-display:block;unicode-range:U+28-29,U+31,U+35,U+3F,U+41-42,U+49,U+4D,U+54,U+B7,U+AC01,U+AC08,U+AC19,U+AC1C,U+AC70,U+AC78-AC80,U+AC83,U+AC8C,U+ACB9-ACBC,U+ACC4-ACE0,U+ACF3,U+ACFC,U+AD6C-AD6D,U+AD74,U+ADDC,U+AE08,U+AE38,U+AE41,U+AE4C,U+AEBC,U+AED8,U+AFC8,U+B04C,U+B0A0,U+B0A8,U+B0AC,U+B108,U+B110,U+B150,U+B178,U+B193,U+B204-B208,U+B2C8,U+B2D8,U+B2E8,U+B2F5,U+B354,U+B3D9,U+B418,U+B458,U+B4E0,U+B5A4,U+B760-B77C,U+B78D,U+B791-B798,U+B807,U+B824,U+B8E8,U+B974,U+B978-B984,U+B987,U+B9B4-B9BC,U+B9CC,U+B9D0,U+B9DE,U+B9E4,U+BA38,U+BA54,U+BABD,U+BB35,U+BB3B,U+BBF8,U+BC00,U+BC14,U+BC24,U+BC84,U+BC88,U+BC95,U+BCC4,U+BCD5,U+BCF5,U+BD09,U+BD84-BD88,U+BE5B,U+C0B0,U+C0C8,U+C120-C123,U+C148-C14B,U+C190,U+C2A4,U+C2AC,U+C2DC,U+C313,U+C544,U+C548,U+C54A,U+C554,U+C558,U+C57C,U+C5BC,U+C5C5,U+C5D4,U+C628,U+C62E,U+C654,U+C6B8,U+C6D0-C6D4,U+C704,U+C77D,U+C785,U+C791,U+C804-C808,U+C811,U+C81C,U+C84C,U+C885,U+C900,U+C911-C918,U+C9C8,U+C9F8,U+CC44,U+CCAB,U+CCB4,U+CD08,U+CD1D,U+CD98,U+CE58-CE59,U+CEEC,U+CF1C,U+CFE0,U+D070,U+D0A4,U+D0DC,U+D130,U+D138,U+D14C,U+D22C,U+D310,U+D37C,U+D399,U+D3BC,U+D3EC,U+D478,U+D480,U+D589-D5A5,U+D5CC,U+D604,U+D750-D751,U+D798}@font-face{font-family:'OBrush';src:url('../../fonts/obrush_a1.woff2') format('woff2');font-weight:400;font-display:block;unicode-range:U+20,U+2C,U+2E,U+30,U+32,U+37,U+AC00,U+AC10,U+ACB0,U+ACE7,U+AD00,U+AD81,U+ADF8,U+AE00,U+AE30,U+AE68,U+B098-B09C,U+B0B4,U+B124,U+B144,U+B294-B298,U+B2E4,U+B2EC,U+B2F4,U+B2F9,U+B300,U+B35F,U+B3C4,U+B450,U+B4DC,U+B4E4,U+B54C,U+B78C,U+B7EC,U+B85C,U+B871,U+B9AC,U+B9B0,U+B9C8,U+B9DB,U+BA39,U+BA85,U+BAA8,U+BB18-BB34,U+BB38,U+BB3C,U+BC1B,U+BC29,U+BCF4,U+BD80,U+BD89,U+BE44-BE48,U+BF51,U+C0AC,U+C0B4,U+C0BC,U+C0C1,U+C0DD-C11C,U+C12F,U+C138,U+C18C-C18D,U+C2B5,U+C2E0-C2E4,U+C2EC,U+C560,U+C5B4,U+C5C6,U+C5C8,U+C5D0,U+C5EC,U+C5F0-C5F4,U+C624,U+C640,U+C6B0,U+C6B4,U+C724,U+C73C-C74C,U+C758-C774,U+C778-C77C,U+C784,U+C788,U+C790,U+C7A5,U+C7AC,U+C801,U+C815,U+C870,U+C8FC,U+C9C0-C9C4,U+CE74-CE78,U+CEE4,U+CFE8,U+D0C0,U+D0DD,U+D1A0,U+D1B5,U+D314,U+D3B8,U+D3C9,U+D558,U+D55C-D569,U+D574,U+D654-D655,U+D68C}/*OBF*/
/* 세계관 책 v7 (10/3 밤): 검은 몰입형이 기본 + 깔끔한 쪽 몇 장. 영상은 쪽 전체 또는 검은 무대 위 액자로, 들어오자마자 말한다.
   스크롤 없음(글은 한 화면에 맞춰 자동으로 글자 크기 조정). 넘기기는 화면 어디서든 좌우로 쓸거나 양 끝을 톡 */
:root{--kr:'Noto Sans KR',"Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;--serif:'Noto Serif KR',serif;--brush:'OBrush','Noto Sans KR',serif;--red:#c8372d;color-scheme:dark}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{height:100%}
body{margin:0;background:#050405;color:#fff;font-family:var(--kr);display:flex;justify-content:center;overflow:hidden;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;overscroll-behavior:none}
button{font-family:inherit;cursor:pointer}
button *{pointer-events:none}
.stage{position:relative;width:100%;max-width:460px;height:100%;overflow:hidden;background:radial-gradient(90% 60% at 50% 45%,#1c1714,#050405 70%)}
@media (min-width:700px){.stage{height:min(100%,940px);margin:auto 0}}
.top{position:absolute;left:0;right:0;top:0;z-index:60;display:flex;align-items:center;gap:10px;padding:calc(env(safe-area-inset-top,0px) + 10px) 14px 8px}
.ib{position:relative;width:36px;height:36px;border-radius:50%;border:0;background:rgba(255,255,255,.12);display:grid;place-items:center;color:#fff;flex:none}
.ib svg{width:18px;height:18px}
.ib.mu.off::after{content:"";position:absolute;width:20px;height:2px;background:#fff;transform:rotate(-45deg)}
.top b{flex:1;min-width:0;font-size:13.5px;font-weight:700;color:rgba(255,255,255,.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.desk{position:absolute;left:10px;right:10px;top:calc(env(safe-area-inset-top,0px) + 56px);bottom:calc(env(safe-area-inset-bottom,0px) + 60px);touch-action:none}
.book{width:100%;height:100%}
.book .stf__block{filter:drop-shadow(0 26px 40px rgba(0,0,0,.6))}
.leaf{background:#0a0809;overflow:hidden}
.face{position:absolute;inset:0;overflow:hidden;background:#0a0809;color:#fff}
.face::after{content:"";position:absolute;left:0;top:0;bottom:0;width:20px;pointer-events:none;z-index:50;background:linear-gradient(90deg,rgba(0,0,0,.35),rgba(0,0,0,0))}
.bar{position:absolute;left:0;right:0;bottom:0;z-index:60;height:calc(env(safe-area-inset-bottom,0px) + 58px);padding:0 14px env(safe-area-inset-bottom,0px);display:flex;align-items:center;gap:12px;color:#fff;font-size:13px;font-weight:700}
.bar .nv{width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;display:grid;place-items:center}
.bar .nv:disabled{opacity:.3}
.bar .nv svg{width:18px;height:18px}
.prog{flex:1;height:3px;background:rgba(255,255,255,.18);position:relative}
.prog i{position:absolute;left:0;top:0;bottom:0;background:#fff;transition:width .6s}
.toc{position:absolute;inset:0;z-index:80;background:#0d0b0c;display:none;flex-direction:column;padding:calc(env(safe-area-inset-top,0px) + 64px) 22px 30px;color:#fff;overflow-y:auto}
.toc.on{display:flex}
.toc .x{position:absolute;right:14px;top:calc(env(safe-area-inset-top,0px) + 12px);width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:20px}
.toc small{font-size:13px;font-weight:900;color:#e8b04a}
.toc h3{margin:6px 0 16px;font-family:var(--brush);font-weight:400;font-size:32px}
.toc button.it{display:flex;justify-content:space-between;gap:12px;width:100%;padding:13px 0;border:0;border-top:1px solid rgba(255,255,255,.1);background:none;color:#fff;font-size:15px;font-weight:700;text-align:left}
.toc button.it span{color:rgba(255,255,255,.4);font-weight:500;font-size:13px}
.toc button.it.on{color:#e8b04a}
.toast{position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 70px);transform:translateX(-50%);z-index:70;background:rgba(255,255,255,.96);color:#111;font-size:13px;font-weight:700;padding:9px 14px;opacity:0;transition:opacity .3s;pointer-events:none;white-space:nowrap}
.toast.on{opacity:1}
.hint{position:absolute;left:0;right:0;bottom:calc(env(safe-area-inset-bottom,0px) + 72px);z-index:65;display:flex;justify-content:center;align-items:center;gap:8px;color:#fff;font-size:12.5px;font-weight:700;pointer-events:none;opacity:0;transition:opacity .5s}
.hint.on{opacity:1}
.hint i{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.18);position:relative;animation:sw 1.6s ease-in-out infinite}
.hint i::after{content:"";position:absolute;left:9px;top:9px;width:8px;height:8px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg)}
@keyframes sw{0%{transform:translateX(10px);opacity:.2}50%{opacity:1}100%{transform:translateX(-14px);opacity:.2}}

/* 공통 글(어두운 쪽 기준) */
.ch{font-size:12.5px;font-weight:900;color:var(--c2,var(--c,#e8b04a));letter-spacing:.04em}
.hd{margin:6px 0 10px;font-family:var(--brush);font-weight:400;font-size:32px;line-height:1.2;text-wrap:balance}
.nm{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:4px}
.nm b{font-family:var(--brush);font-weight:400;font-size:48px;line-height:1}
.nm span{font-size:13.5px;font-weight:800;color:var(--c2,var(--c))}
.spec{margin:8px 0 10px;font-size:12.5px;font-weight:600;color:rgba(255,255,255,.55)}
.bd{font-size:15px;line-height:1.75;color:rgba(255,255,255,.86);letter-spacing:-.012em}
.bd p{margin:0 0 10px}
.bd b{font-weight:900;color:#fff}
.q{margin:12px 0 0;font-family:var(--serif);font-weight:700;font-size:16.5px;line-height:1.5;color:#fff;text-wrap:balance}
.q::before{content:"";display:inline-block;width:18px;height:3px;background:var(--c);vertical-align:middle;margin-right:9px}
.fo{position:absolute;left:22px;right:22px;bottom:12px;display:flex;justify-content:space-between;font-size:11.5px;font-weight:600;color:rgba(255,255,255,.4);z-index:6;pointer-events:none}
.fo b{color:#fff;font-weight:900}
.lite .fo{color:#8a8178}.lite .fo b{color:#222}
/* 한 화면에 안 들어가면 글자를 한두 단계 줄인다 */
.tight .bd{font-size:14px;line-height:1.66}.tight .bd p{margin-bottom:8px}.tight .nm b{font-size:42px}.tight .hd{font-size:28px}.tight .q{font-size:15.5px}
.tight2 .bd{font-size:13.2px;line-height:1.6}.tight2 .nm b{font-size:38px}.tight2 .spec{display:none}
.rv{opacity:0;transform:translateY(12px);transition:opacity .7s var(--d,.3s),transform .7s var(--d,.3s)}
.cur .rv{opacity:1;transform:none}
.again{position:absolute;right:12px;top:12px;z-index:9;display:flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:0;border-radius:16px;background:rgba(0,0,0,.5);color:#fff;font-size:12px;font-weight:800;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.again i{width:8px;height:8px;border-radius:50%;background:var(--c)}
.sub{position:absolute;left:18px;right:18px;z-index:5;text-align:center;font-family:var(--serif);font-weight:700;font-size:20px;line-height:1.45;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.95),0 0 2px rgba(0,0,0,.8);opacity:0;transform:translateY(8px);transition:opacity .8s,transform .8s;pointer-events:none}
.sub.on{opacity:1;transform:none}

/* 1. 표지(10/4 녹트서울 2차: 옛 책 선장본 — 실 매기 · 그림 판 · 세로 제첨(붓글씨) · 낙관. kv_drama 그림은 쓰지 않음) */
.t-cover .face{background:#d9ccb0;color:#1c1915}
.t-cover .face::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;mix-blend-mode:multiply;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .35  0 0 0 0 .3  0 0 0 0 .22  0 0 0 .22 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"),radial-gradient(120% 90% at 50% 40%,rgba(255,250,235,.3),rgba(120,95,60,.2))}
.cvb{position:absolute;left:0;top:0;bottom:0;width:26px;background:linear-gradient(90deg,#c4b590,#d4c6a5);border-right:1px solid rgba(28,25,21,.25);z-index:2}
.cvb i{position:absolute;left:11px;width:5px;height:5px;border-radius:50%;background:#3a2f22}
.cvb b{position:absolute;left:13px;width:1px;background:#7a1e14}
.cva{position:absolute;left:44px;right:18px;top:22px;height:57%;overflow:hidden;background:#111;outline:1px solid #1c1915;outline-offset:4px;z-index:2}
.cva div{position:absolute;inset:-6%;background:url('https://d2ol7oe51mr4n9.cloudfront.net/user_39PvKg67WRq5T66HczulEDxUKSm/155143b6-d97a-458c-a203-3ffc230bad99.jpg') center 45%/cover;animation:cvkb 14s ease-in-out infinite alternate}
.cva video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;opacity:0;transition:opacity 1.2s}
.cva video.on{opacity:1}
.cva svg{position:absolute;left:0;top:0;width:200%;height:100%;mix-blend-mode:screen;opacity:.55;animation:cvdr 22s linear infinite}
.cva::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 40% at 50% 62%,rgba(255,210,140,.18),rgba(0,0,0,0));animation:cvfl 3.2s ease-in-out infinite alternate}
@keyframes cvkb{to{transform:scale(1.08) translate(-2%,-2%)}}
@keyframes cvdr{to{transform:translateX(-50%)}}
@keyframes cvfl{to{opacity:.4}}
.cvs{position:absolute;right:30px;top:38px;width:58px;padding:16px 0 12px;background:#efe6d2;border:1px solid #1c1915;box-shadow:0 10px 24px rgba(0,0,0,.4);display:flex;flex-direction:column;align-items:center;gap:12px;z-index:3;opacity:0;transform:translateY(-14px);transition:opacity .9s .3s,transform .9s .3s}
.t-cover.cur .cvs{opacity:1;transform:none}
.cvs h1{margin:0;writing-mode:vertical-rl;font-family:var(--brush);font-weight:400;font-size:38px;line-height:1;letter-spacing:.02em;color:#141210}
.cvs .sl{display:grid;place-items:center;width:34px;height:34px;background:#b0301c;color:#f5e9d6;font-family:var(--serif);font-weight:700;font-size:10.5px;line-height:1.05;text-align:center;transform:rotate(-4deg);opacity:.92}
.cvl{position:absolute;left:44px;right:22px;bottom:22px;z-index:2}
.cvl .k{font-family:var(--serif);font-weight:700;font-size:12px;letter-spacing:.3em;color:#b0301c}
.cvl h2{margin:8px 0 0;font-family:var(--serif);font-weight:700;font-size:20px;line-height:1.4;color:#1c1915}
.cvl p{margin:10px 0 0;font-family:var(--serif);font-size:13px;line-height:1.75;color:#4f463b}
.cvl p b{color:#1c1915}
.cvl .r{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid rgba(28,25,21,.4);font-family:var(--serif);font-weight:700;font-size:12.5px;color:#4f463b}
.cvl .r .go{display:flex;align-items:center;gap:8px;color:#1c1915}
.cvl .r .go i{width:20px;height:1.5px;background:#1c1915;position:relative;animation:cvgo 1.6s ease-in-out infinite}
.cvl .r .go i::after{content:"";position:absolute;right:0;top:-3.5px;width:7px;height:7px;border-right:1.5px solid #1c1915;border-top:1.5px solid #1c1915;transform:rotate(45deg)}
@keyframes cvgo{50%{transform:translateX(5px)}}
@media (max-height:700px){.cvs h1{font-size:30px}.cvl p{display:none}}

/* 2. 영상 한 장 가득(프롤로그 · 인물 · 그림자 손님) */
.flm{position:absolute;inset:0;background:#000 center 20%/cover no-repeat}
.flm video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;opacity:0;transition:opacity .6s}
.flm video.on{opacity:1}
.flg{position:absolute;left:0;right:0;bottom:0;height:64%;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.6) 32%,rgba(0,0,0,.95));pointer-events:none}
.flt{position:absolute;left:22px;right:22px;bottom:34px;max-height:56%;overflow:hidden}
.t-film .flt .hd,.t-vfull .flt .hd{font-size:36px}
.t-vfull .sub,.t-voice .sub{top:36%}

/* 3. 검은 무대 위 영상 액자 + 겹쳐 놓인 큰 이름 */
.t-vstage .face{background:radial-gradient(90% 55% at 50% 30%,color-mix(in srgb,var(--c) 24%,#0b0a0c),#070608 72%)}
.vs{position:absolute;left:0;right:0;top:0;bottom:30px;display:flex;flex-direction:column;padding:26px 24px 0}
.vs-fr{position:relative;flex:none;height:48%;aspect-ratio:4/5;align-self:center;overflow:hidden;background:#000 center 18%/cover no-repeat;box-shadow:0 0 0 1px color-mix(in srgb,var(--c) 70%,#fff),0 0 0 6px rgba(0,0,0,.6),0 0 0 7px color-mix(in srgb,var(--c) 40%,transparent),0 0 70px -6px color-mix(in srgb,var(--c) 55%,transparent);opacity:0;transform:scale(.94);transition:opacity .9s .1s,transform 1.1s cubic-bezier(.2,.9,.25,1) .1s}
.cur .vs-fr{opacity:1;transform:none}
.vs-fr video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s}
.vs-fr video.on{opacity:1}
.vs-fr::after{content:"";position:absolute;left:0;right:0;bottom:0;height:40%;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.75));pointer-events:none}
.vs-fr .sub{bottom:14px;font-size:16.5px}
.vs-fr .again{top:8px;right:8px}
.vs-nm{position:relative;z-index:3;margin-top:-30px;padding-left:4px}
.vs-nm .nm b{font-size:56px;text-shadow:0 6px 24px rgba(0,0,0,.85)}
.vs-tx{flex:1;min-height:0;overflow:hidden;margin-top:4px}
.tight .vs-nm .nm b{font-size:48px}

/* 4. 이야기 쪽(어두운 종이 · 명조 · 첫 글자 크게) */
.t-prose .face{background:radial-gradient(90% 60% at 50% 100%,color-mix(in srgb,var(--c) 18%,transparent),rgba(0,0,0,0) 70%),#0f0c0e}
.ps{position:absolute;left:26px;right:26px;top:30px;bottom:38px;overflow:hidden}
.ps .bd{font-family:var(--serif);font-size:15.5px;line-height:1.92;color:rgba(243,236,226,.88)}
.ps .bd p:first-child::first-letter{float:left;font-family:var(--brush);font-size:52px;line-height:.9;margin:6px 10px 0 0;color:var(--c)}
.ps .hd{color:#f3ece2}
.orn{display:flex;justify-content:center;margin:16px 0 4px}
.orn i{width:44px;height:2px;background:var(--c,#e8b04a);opacity:.85}
.tight .ps .bd{font-size:14.5px;line-height:1.8}.tight2 .ps .bd{font-size:13.6px;line-height:1.7}

/* 5. 큰 글자 쪽 */
.tyb{position:absolute;inset:-20px;background:#000 center/cover no-repeat;filter:blur(14px) brightness(.32) saturate(1.2)}
.tyw{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:40px 28px 60px}
.tyl{margin:14px 0 0;font-family:var(--brush);font-weight:400;font-size:clamp(44px,13vw,64px);line-height:1.12}
.tyl span{display:block;opacity:0;transform:translateY(26px) scale(.96);filter:blur(8px);transition:opacity 1.1s var(--d),transform 1.1s var(--d),filter 1.1s var(--d)}
.tyl span em{font-style:normal;color:var(--c)}
.t-type .tyl span em{color:var(--seal)}
.cur .tyl span{opacity:1;transform:none;filter:none}
.tys{margin:22px 0 0;font-size:15px;line-height:1.75;color:rgba(255,255,255,.78);opacity:0;transition:opacity 1s 1.6s}
.tys b{color:#fff}
.cur .tys{opacity:1}
.tyd{display:flex;gap:10px;margin-top:22px}
.tyd i{width:28px;height:3px;opacity:0;transform:scaleX(.1);transform-origin:left;transition:opacity .5s var(--d),transform .6s cubic-bezier(.2,1.6,.4,1) var(--d)}
.cur .tyd i{opacity:1;transform:none}

/* 6. 다섯 기둥 */
.stp{position:absolute;left:0;right:0;top:0;height:58%;display:flex;gap:3px}
.stp div{flex:1;position:relative;background:#000 center 16%/cover no-repeat;clip-path:inset(100% 0 0 0);transition:clip-path 1s cubic-bezier(.2,.9,.25,1) var(--d)}
.cur .stp div{clip-path:inset(0 0 0 0)}
.stp div::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.85))}
.stp div span{position:absolute;left:0;right:0;bottom:8px;z-index:1;text-align:center;line-height:1.2}
.stp div span b{display:block;font-family:var(--brush);font-weight:400;font-size:20px}
.stp div span small{display:block;font-size:10px;font-weight:800;color:var(--c)}
.stp div i{position:absolute;left:0;right:0;top:0;height:4px;background:var(--c);z-index:1}
.lw{position:absolute;left:22px;right:22px;bottom:34px;overflow:hidden}
.t-strips .lw{top:calc(58% + 20px)}
/* 7. 둘로 나뉜 쪽 */
.spw{position:absolute;left:0;right:0;top:0;height:56%}
.spw div{position:absolute;top:0;bottom:0;background:#000 center 16%/cover no-repeat;transition:clip-path 1.1s cubic-bezier(.2,.9,.25,1) .2s}
.spw .a{left:0;width:62%;clip-path:polygon(0 0,0 0,0 100%,0 100%)}
.spw .b{right:0;width:62%;clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}
.cur .spw .a{clip-path:polygon(0 0,100% 0,62% 100%,0 100%)}
.cur .spw .b{clip-path:polygon(38% 0,100% 0,100% 100%,0 100%)}
.spw::after{content:"";position:absolute;left:0;right:0;bottom:0;height:30%;background:linear-gradient(180deg,rgba(10,8,9,0),#0a0809);pointer-events:none}
.spw span{position:absolute;bottom:14px;z-index:2;font-family:var(--brush);font-size:28px;text-shadow:0 2px 10px rgba(0,0,0,.8)}
.spw span small{display:block;font-family:var(--kr);font-size:10.5px;font-weight:800;color:var(--c2,#e8b04a)}
.spw .la{left:16px}.spw .lb{right:16px;text-align:right}
.t-split .lw{top:calc(56% + 18px)}

/* 8. 두 얼굴(10/4 원형 얼굴 · 동그라미 빼고, 두 얼굴을 한 줄기 빛으로 잇는 어두운 쪽) */
.t-pairs .face{background:#060507;color:#fff}
.prw2{position:absolute;inset:0;display:flex;flex-direction:column}
.prh{padding:24px 22px 12px}
.prh .ch{color:#e8c27a}
.prh .hd{margin-bottom:6px}
.prh .lead{margin:0;font-size:13.5px;line-height:1.65;color:rgba(255,255,255,.72)}
.prb{flex:1;display:flex;flex-direction:column;gap:3px;padding:0 0 32px}
.pb{position:relative;flex:1;overflow:hidden;opacity:0;transition:opacity .8s var(--d)}
.cur .pb{opacity:1}
.pb .pa,.pb .pc{position:absolute;top:0;bottom:0;width:58%;background:#111 center 24%/cover no-repeat;transition:transform 1.2s cubic-bezier(.2,.8,.2,1) var(--d)}
.pb .pa{left:0;clip-path:polygon(0 0,100% 0,84% 100%,0 100%);transform:translateX(-18px)}
.pb .pc{right:0;clip-path:polygon(16% 0,100% 0,100% 100%,0 100%);transform:translateX(18px)}
.cur .pb .pa,.cur .pb .pc{transform:none}
.pb .pa::after,.pb .pc::after{content:"";position:absolute;inset:0}
.pb .pa::after{background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.1) 55%,rgba(0,0,0,.35))}
.pb .pc::after{background:linear-gradient(270deg,rgba(0,0,0,.7),rgba(0,0,0,.1) 55%,rgba(0,0,0,.35))}
.pb svg.seam{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.pb svg.seam line{stroke:var(--c);stroke-width:2;filter:drop-shadow(0 0 6px var(--c)) drop-shadow(0 0 2px #fff);stroke-dasharray:200;stroke-dashoffset:200;transition:stroke-dashoffset 1s ease calc(var(--d) + .4s)}
.cur .pb svg.seam line{stroke-dashoffset:0}
.pb .el{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:3px 7px;background:var(--c);color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em;box-shadow:0 0 18px var(--c)}
.pb .na,.pb .nb{position:absolute;bottom:8px;z-index:2;line-height:1}
.pb .na{left:14px}.pb .nb{right:14px;text-align:right}
.pb b{display:block;font-family:var(--brush);font-weight:400;font-size:27px;text-shadow:0 2px 12px rgba(0,0,0,.9)}
.pb small{display:block;margin-top:4px;font-size:11px;font-weight:800;color:color-mix(in srgb,var(--c) 55%,#fff);text-shadow:0 1px 8px rgba(0,0,0,.9)}
.pb .tg{position:absolute;top:7px;font-size:9.5px;font-weight:900;letter-spacing:.16em;color:rgba(255,255,255,.55)}
.pb .tg.a{left:14px}.pb .tg.b{right:14px}

/* 9. 명인의 방(어두운 쪽, 카드를 누르면 그 명인이 말한다) */
.t-gal .face{background:radial-gradient(80% 50% at 50% 30%,#2a2016,#0a0809 70%)}
.gal{position:absolute;left:16px;right:16px;top:18px;height:54%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px;perspective:900px}
.gal>button{position:relative;overflow:hidden;border:0;padding:0;background:#111 center 16%/cover no-repeat;transform-origin:50% 100%;transform:rotateX(78deg);opacity:0;box-shadow:0 0 0 1px rgba(224,178,90,.35),0 14px 20px -12px rgba(0,0,0,.8);transition:transform 1s cubic-bezier(.22,1.1,.3,1) var(--d),opacity .5s var(--d);text-align:left;color:#fff}
.cur .gal>button{transform:none;opacity:1}
.gal>button::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.88))}
.gal>button span{position:absolute;left:10px;right:8px;bottom:8px;z-index:2}
.gal>button b{display:block;font-family:var(--brush);font-weight:400;font-size:24px;line-height:1.05}
.gal>button small{display:block;margin-top:3px;font-size:11px;line-height:1.35;color:rgba(255,255,255,.8)}
.gal>button em{position:absolute;right:8px;top:8px;z-index:2;width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.5);box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}
.gal>button em::after{content:"";position:absolute;left:10px;top:8px;border-left:8px solid #fff;border-top:5px solid transparent;border-bottom:5px solid transparent}
.gal>button video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s;z-index:1}
.gal>button video.on{opacity:1}
.t-gal .lw{top:calc(54% + 34px)}

/* 10. 그림자 손님 */
.shw{position:absolute;inset:0;overflow:hidden;background:radial-gradient(70% 45% at 22% 78%,rgba(168,40,58,.32),rgba(0,0,0,0) 70%),radial-gradient(60% 45% at 80% 70%,rgba(59,90,154,.34),rgba(0,0,0,0) 70%),radial-gradient(70% 40% at 50% 100%,rgba(106,74,168,.4),rgba(0,0,0,0) 70%),#07060a}
.shw .tt{position:absolute;left:24px;right:24px;top:40px;z-index:6}
.shw .tt .ch{color:#e06a7a}
.shw .tt .tyl{font-size:clamp(42px,12.5vw,58px)}
.shw .tt p{margin:12px 0 0;font-size:14.5px;line-height:1.7;color:rgba(255,255,255,.75);opacity:0;transition:opacity 1s 1.4s}
.cur .shw .tt p{opacity:1}
.shp{position:absolute;bottom:0;transform-origin:50% 100%;opacity:0;transform:translateY(40%);transition:transform 1.6s cubic-bezier(.2,.9,.25,1) var(--d),opacity 1.2s var(--d)}
.cur .shp{opacity:1;transform:none}
.shp img{display:block;width:100%}
.shp.h{left:-14%;width:66%;z-index:3}.shp.h img{filter:drop-shadow(0 0 22px rgba(200,40,60,.6))}
.shp.g{right:-18%;width:76%;z-index:2}.shp.g img{filter:drop-shadow(0 0 22px rgba(70,110,200,.6))}
.shp.s{left:10%;width:80%;z-index:4}.shp.s img{filter:drop-shadow(0 0 20px rgba(130,90,210,.6))}
.shw .fog{position:absolute;left:0;right:0;bottom:0;height:34%;z-index:5;background:linear-gradient(180deg,rgba(7,6,10,0),rgba(7,6,10,.95));pointer-events:none}

/* 11. 여덟 글자 · 작아진 신 · 사용법(깔끔) · 2권 */
.g8w{position:absolute;left:0;right:0;top:0;bottom:34px;padding:30px 22px 0;display:flex;flex-direction:column}
.g8h{margin:8px 0 0;font-family:var(--brush);font-weight:400;font-size:44px;line-height:1.12;opacity:0;transform:translateY(14px);transition:opacity .7s .2s,transform .7s .2s}
.g8h em{font-style:normal;color:#ff5a46}
.cur .g8h{opacity:1;transform:none}
.g8t{display:grid;grid-template-columns:repeat(4,1fr);margin-top:24px;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14)}
.g8t small{text-align:center;font-size:10.5px;font-weight:700;letter-spacing:.24em;color:rgba(255,255,255,.4);padding:9px 0 2px}
.g8t i{position:relative;height:76px;display:grid;place-items:center;font-style:normal;font-family:var(--serif);font-weight:900;font-size:38px;color:#f3ece2;border-left:1px solid rgba(255,255,255,.08);opacity:0;transform:translateY(-10px);transition:opacity .6s var(--d),transform .6s var(--d)}
.g8t i:nth-of-type(4n+1){border-left:0}
.cur .g8t i{opacity:1;transform:none}
.g8t i.emp{background:radial-gradient(closest-side,rgba(255,90,70,.28),rgba(255,90,70,0))}
.g8t i.emp::before{content:"";position:absolute;inset:14px 20px;border:1px solid #ff5a46}
.cur .g8t i.emp{animation:emp 2.4s ease-in-out 1.6s 2}
@keyframes emp{50%{background:radial-gradient(closest-side,rgba(255,90,70,.55),rgba(255,90,70,0))}}
.g8b{flex:1;min-height:0;margin-top:20px;overflow:hidden}
.mini{position:absolute;left:18px;right:18px;top:18px;height:42%;display:flex;align-items:center;justify-content:center;gap:2%;background:radial-gradient(70% 60% at 50% 60%,#2a221c,#120f0d 75%);perspective:500px}
.mini i{width:18.5%;aspect-ratio:1;border-radius:50%;background:#fff 50% 14%/185% no-repeat;box-shadow:0 14px 18px -8px rgba(0,0,0,.6);transform-origin:50% 100%;transform:rotateX(60deg);opacity:0;transition:transform .9s cubic-bezier(.22,.9,.3,1) var(--d),opacity .5s var(--d)}
.cur .mini i{transform:none;opacity:1}
.t-mini .lw{top:calc(42% + 40px)}
.t-how .face{background:#fbf8f2;color:#111}
.hw{position:absolute;left:22px;right:22px;top:26px;bottom:30px}
.hw .ch{color:#c8372d}.hw .hd{color:#111}
.how{list-style:none;margin:6px 0 0;padding:0}
.how li{display:grid;grid-template-columns:24px 1fr;gap:8px;padding:11px 0;border-top:1px solid #eee;font-size:14px;color:#6a6158;line-height:1.45}
.how li em{font-style:normal;font-weight:900;font-size:16px;color:#c8372d}
.how li b{display:block;font-size:15px;font-weight:900;color:#111}
.cta{display:flex;gap:6px;margin-top:16px}
.cta button{flex:1;height:50px;border:0;background:#111;color:#fff;font-size:14.5px;font-weight:900;white-space:nowrap;padding:0 6px}
.cta button.gh{background:#fff;color:#111;box-shadow:inset 0 0 0 1.5px #111}
.nx{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:0 22px 50px}
.nx small{font-size:13px;font-weight:900;color:#e8b04a}
.nx h2{margin:8px 0 12px;font-family:var(--brush);font-weight:400;font-size:36px;line-height:1.22}
.nx p{margin:0;font-size:15.5px;line-height:1.7;color:rgba(255,255,255,.88)}
.nxbg{position:absolute;inset:0;background:#000 center 85%/cover no-repeat;filter:brightness(.42)}


/* 인물 쪽 자막: 얼굴을 가리지 않게 아래 글 위에 따옴표처럼 */
.sub.said{position:relative;left:auto;right:auto;margin:0 0 14px;text-align:left;font-size:18px;padding-left:12px;box-shadow:inset 3px 0 0 var(--c2,var(--c))}
.vs-fr .sub{bottom:44px}

/* ===== 10/4 도감 판(녹트서울 승인 17:02): 한지 쪽 · 먹 · 주홍 낙관. 인물 쪽은 영상을 크게 두고 아래에 한지 띠(액자 상자 없음) ===== */
:root{--hj:#ebe1cb;--hj2:#e2d6bb;--ink:#1c1915;--ink2:#4f463b;--ink3:#8a7d6b;--rule:rgba(28,25,21,.4);--seal:#b0301c}
.hj,.t-prose .face,.t-type .face,.t-grid8 .face,.t-strips .face,.t-split .face,.t-pairs .face,.t-gal .face,.t-mini .face,.t-how .face{background:var(--hj)!important;color:var(--ink)}
.t-pairs .pb b,.t-pairs .pb .tg{color:#fff!important}.t-pairs .pb small{color:color-mix(in srgb,var(--c) 45%,#fff)!important}
.t-prose .face::before,.t-type .face::before,.t-grid8 .face::before,.t-strips .face::before,.t-split .face::before,.t-pairs .face::before,.t-gal .face::before,.t-mini .face::before,.t-how .face::before,.pp-hj::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.55;mix-blend-mode:multiply;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .35  0 0 0 0 .3  0 0 0 0 .22  0 0 0 .22 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"),radial-gradient(120% 90% at 50% 40%,rgba(255,250,235,.32),rgba(120,95,60,.2))}
.face>*{z-index:1}
.t-prose .ch,.t-type .ch,.t-grid8 .ch,.t-strips .ch,.t-split .ch,.t-pairs .ch,.t-gal .ch,.t-mini .ch,.t-how .ch{color:var(--seal)!important}
.t-prose .hd,.t-strips .hd,.t-split .hd,.t-pairs .hd,.t-gal .hd,.t-mini .hd,.t-how .hd{color:var(--ink)!important}
.t-prose .bd,.t-strips .bd,.t-split .bd,.t-gal .bd,.t-mini .bd{color:var(--ink2)!important;font-family:var(--serif)}
.t-prose .bd b,.t-strips .bd b,.t-split .bd b,.t-gal .bd b,.t-mini .bd b{color:var(--ink)!important;box-shadow:inset 0 -6px 0 rgba(176,48,28,.16)}
.t-prose .fo,.t-type .fo,.t-grid8 .fo,.t-strips .fo,.t-split .fo,.t-pairs .fo,.t-gal .fo,.t-mini .fo,.t-how .fo{color:var(--ink3)!important}
.t-prose .fo b,.t-type .fo b,.t-grid8 .fo b,.t-strips .fo b,.t-split .fo b,.t-pairs .fo b,.t-gal .fo b,.t-mini .fo b,.t-how .fo b{color:var(--ink)!important}
/* 본문 쪽: 오른쪽 세로 제목, 왼쪽 명조 본문, 첫 글자 주홍 */
.t-prose .ps{left:24px;right:84px;top:34px}
.t-prose .ps .ch,.t-prose .ps .hd{display:none}
.psv{position:absolute;right:20px;top:30px;display:flex;flex-direction:row-reverse;gap:8px;align-items:flex-start;z-index:2}
.psv b{writing-mode:vertical-rl;font-family:var(--brush);font-weight:400;font-size:40px;line-height:1;letter-spacing:.04em;color:var(--ink)}
.psv small{writing-mode:vertical-rl;font-size:11.5px;font-weight:800;color:var(--seal);letter-spacing:.3em;padding-top:4px}
.psv i{position:absolute;right:0;top:calc(100% + 14px);display:grid;place-items:center;width:34px;height:34px;background:var(--seal);color:#f5e9d6;font-style:normal;font-family:var(--serif);font-weight:700;font-size:10px;line-height:1.05;text-align:center;transform:rotate(-4deg);opacity:.9}
.t-prose .ps .bd{color:var(--ink)!important;font-size:15.5px;line-height:1.95}
.t-prose .ps .bd p:first-child::first-letter{color:var(--seal)}
.t-prose .orn i{background:var(--seal)}
/* 큰 글자 쪽 */
.t-type .tyb{filter:sepia(.4) brightness(.95) contrast(.9);opacity:.18;mix-blend-mode:multiply}
.t-type .tyl{color:var(--ink)}
.t-type .tys{color:var(--ink2)}.t-type .tys b{color:var(--ink)}
/* 여덟 글자 */
.t-grid8 .g8h{color:var(--ink)}.t-grid8 .g8t{border-color:var(--rule)}.t-grid8 .g8t i{color:var(--ink);border-left-color:rgba(28,25,21,.16)}.t-grid8 .g8t small{color:var(--ink3)}
.t-grid8 .g8b .bd{color:var(--ink2)}.t-grid8 .g8b .bd b{color:var(--ink)}.t-grid8 .q{color:var(--ink)}
/* 다섯 기둥 · 둘로 나뉜 쪽: 그림에 가는 먹 테 */
.t-strips .stp{left:16px;right:16px;top:16px;height:calc(58% - 16px);gap:4px}
.t-strips .stp div{outline:1px solid rgba(28,25,21,.6);outline-offset:2px}
.t-split .spw{left:16px;right:16px;top:16px;height:calc(56% - 16px)}
.t-split .spw span{color:#fff}
/* 두 얼굴: 띠는 그대로, 바탕만 한지 · 글은 먹 */
.t-pairs .prh .lead{color:var(--ink2)}.t-pairs .prb{padding:0 12px 32px}
.t-pairs .pb{outline:1px solid rgba(28,25,21,.5);outline-offset:1px}
/* 명인의 방 · 작아진 신 */
.t-gal .gal>button{box-shadow:0 0 0 1px rgba(28,25,21,.6),0 10px 18px -8px rgba(0,0,0,.45)}
.t-mini .mini{background:radial-gradient(70% 60% at 50% 60%,#efe6d2,#dccfb2 75%)}
.t-how .how li{border-top-color:var(--rule);color:var(--ink2)}.t-how .how li b{color:var(--ink)}.t-how .how li em{color:var(--seal)}
.t-how .cta button{background:var(--ink)}.t-how .cta button.gh{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}
/* 인물 · 영상 쪽: 영상은 위를 가득, 아래는 찢어진 한지 띠 */
.t-film .flg,.t-vfull .flg{display:none}
.t-film .flm,.t-vfull .flm{bottom:30%}
.t-film .flt,.t-vfull .flt{left:0;right:0;bottom:0;max-height:62%;padding:30px 22px 34px;background-color:var(--hj);color:var(--ink);clip-path:polygon(0 14px,6% 6px,13% 12px,21% 3px,30% 10px,39% 2px,47% 9px,56% 4px,64% 12px,72% 3px,81% 10px,89% 5px,96% 11px,100% 4px,100% 100%,0 100%)}
.t-film .flt::before,.t-vfull .flt::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;mix-blend-mode:multiply;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .35  0 0 0 0 .3  0 0 0 0 .22  0 0 0 .22 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.t-film .flt>*,.t-vfull .flt>*{position:relative}
.t-film .flt .ch,.t-vfull .flt .ch{color:var(--seal)}
.t-film .flt .hd,.t-vfull .flt .hd,.t-vfull .flt .nm b{color:var(--ink)}
.t-vfull .flt .nm span{color:color-mix(in srgb,var(--c) 75%,#000)}
.t-film .flt .bd,.t-vfull .flt .bd{color:var(--ink2);font-family:var(--serif)}
.t-film .flt .bd b,.t-vfull .flt .bd b{color:var(--ink)}
.t-vfull .sub.said{color:var(--ink);text-shadow:none;box-shadow:inset 3px 0 0 var(--c)}
.t-vfull .fo,.t-film .fo{color:var(--ink3)}
.t-vfull .again{top:auto;bottom:calc(62% + 6px);right:12px}
/* 그림자 손님(목소리 쪽)은 먹빛 한지 */
.vo .flt{background-color:#17110f!important;color:#f3e9dc}
.vo .flt::before{opacity:.25!important;mix-blend-mode:screen!important}
.vo .flt .hd,.vo .flt .nm b{color:#f6ece0!important}.vo .flt .bd{color:rgba(243,233,220,.82)!important}.vo .flt .bd b{color:#fff!important}
.top .shb{width:auto;border-radius:0;padding:0 12px 0 10px;display:flex;gap:6px;align-items:center;font:800 13.5px "Noto Sans KR",sans-serif;color:#fff;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.top .shb svg{width:17px;height:17px}
.cvsh{border:0;background:none;padding:0;font:inherit;color:#b0301c;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
/* 인물 쪽 변주(10/4 인물 쪽이 다 똑같다) · L-cine 영상 한 장 가득 + 세로 이름 · L-top 한지가 위, 영상이 아래 */
.L-cine .flm{bottom:0!important}
.L-cine .flg{display:block!important;height:66%;background:linear-gradient(180deg,rgba(6,5,5,0),rgba(6,5,5,.6) 34%,rgba(6,5,5,.95) 78%)}
.L-cine .flt{background:none!important;clip-path:none!important;color:#f3e9dc;padding:0 22px 30px!important;max-height:54%!important}
.L-cine .flt::before{display:none!important}
.L-cine .flt .ch{color:var(--c2,var(--c))!important}
.L-cine .flt .nm b{display:none}
.L-cine .flt .nm span{color:var(--c2,var(--c))!important;font-size:15px}
.L-cine .flt .hd{color:#fff!important}
.L-cine .flt .bd{color:rgba(243,233,220,.86)!important}.L-cine .flt .bd b{color:#fff!important}
.L-cine .sub.said{color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.8)!important;box-shadow:inset 3px 0 0 var(--c2,var(--c))!important;font-size:20px}
.L-cine .fo{color:rgba(243,233,220,.55)!important}.L-cine .fo b{color:#f3e9dc!important}
.L-cine .again{top:12px!important;bottom:auto!important;right:auto!important;left:12px!important}
.vn{position:absolute;right:16px;top:18px;z-index:4;writing-mode:vertical-rl;font-family:var(--brush);font-size:clamp(64px,19vw,92px);line-height:1;color:#fff;letter-spacing:.04em;text-shadow:0 4px 30px rgba(0,0,0,.7),0 0 2px rgba(0,0,0,.6);opacity:0;transform:translateY(-14px);transition:opacity 1.2s .3s,transform 1.4s cubic-bezier(.2,.9,.25,1) .3s;pointer-events:none}
.vn::after{content:"";display:block;width:2px;height:54px;margin:14px auto 0;background:var(--c2,var(--c))}
.cur .vn{opacity:1;transform:none}
.L-top .flm{top:44%;bottom:0!important;background-position:center 6%!important}
.L-top .flm video{object-position:center 6%!important}
.L-top .flt{top:0;bottom:auto!important;max-height:none!important;overflow:visible!important;padding:24px 22px 30px!important;clip-path:polygon(0 0,100% 0,100% calc(100% - 4px),96% calc(100% - 11px),89% calc(100% - 5px),81% calc(100% - 10px),72% calc(100% - 3px),64% calc(100% - 12px),56% calc(100% - 4px),47% calc(100% - 9px),39% calc(100% - 2px),30% calc(100% - 10px),21% calc(100% - 3px),13% calc(100% - 12px),6% calc(100% - 6px),0 calc(100% - 14px))!important;box-shadow:none}
.L-top .flt .nm b{font-size:58px}
.L-top .again{top:auto!important;bottom:44px!important}
.L-top .fo{color:rgba(255,255,255,.7)!important;text-shadow:0 1px 8px rgba(0,0,0,.8)}.L-top .fo b{color:#fff!important}
.L-top .flm::after{content:"";position:absolute;left:0;right:0;bottom:0;height:22%;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.55));z-index:2;pointer-events:none}
