:root{color-scheme:dark;--ink:#ebe8dc;--muted:#a5ad9d;--red:#aa4e46;--gold:#b9b292;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);font-family:'Songti SC','STSong','SimSun',serif}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none;background:#080d0b;color:var(--ink)}button{appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none;-webkit-user-select:none;font:inherit;color:inherit;border:0;background:none;cursor:pointer;border-radius:0;min-height:44px}button:focus-visible{outline:2px solid #e3c89c;outline-offset:2px}button:active{filter:brightness(1.3);transform:translateY(1px)}[hidden]{display:none!important}.game{position:relative;isolation:isolate;width:100%;height:100vh;height:100dvh;overflow:hidden;background:#111c16}.scene{position:absolute;inset:0;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 70% 35%,#455241,#1e2b22 65%,#101a13)}.scene-world{position:absolute;inset:0;animation:arrival 1.2s ease-out}.room-art{width:100%;height:100%;display:block;transition:filter 1.2s}.scene:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#040a09e0,transparent 27%,transparent 60%,#070d0add),linear-gradient(90deg,#050c0966,transparent 35%,transparent 70%,#050c0966);box-shadow:inset 0 0 100px #07110b99;z-index:1}.scene.night .room-art{filter:brightness(.58) saturate(.7)}.light-leak{position:absolute;inset:12% 8% 25% 40%;pointer-events:none;opacity:.1;background:linear-gradient(120deg,transparent,#e0e3ae55,transparent);filter:blur(15px);animation:light 9s ease-in-out infinite}.hotspot{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;width:64px;min-height:60px;gap:8px;z-index:3;padding:5px;filter:drop-shadow(0 2px 4px #000)}.hotspot:active{transform:translate(-50%,-50%) scale(.96)}.hotspot i{width:9px;height:9px;border:1px solid #f2e8c7;transform:rotate(45deg);box-shadow:0 0 0 5px #e0dcc615,0 0 18px #ece1ba44;transition:box-shadow .2s}.hotspot span{font-size:11px;line-height:1.3;letter-spacing:2px;color:#eee7d4;background:#101a12c9;padding:4px 7px;border:1px solid #a5ad8644;white-space:nowrap}.hotspot:hover i{box-shadow:0 0 0 9px #e0dcc625,0 0 20px #ece1ba66}.paperpoint i{background:#d5c9a8;animation:signal 3s ease-in-out infinite}.hud{position:absolute;top:calc(var(--safe-top) + 18px);left:calc(var(--safe-left) + 28px);right:calc(var(--safe-right) + 28px);z-index:5;max-width:620px}.title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.game-title{font-size:25px;letter-spacing:4px;text-shadow:0 2px 8px #000}.game-title small{display:block;font:10px/2 sans-serif;letter-spacing:3px;color:#b3b7a5}.utilities{display:flex;gap:8px}.tool{width:48px;height:53px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;position:relative;background:#0c1412bf;border:1px solid #a9b19735;box-shadow:inset 0 0 10px #7c8b6712}.tool svg,.places svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.tool>span{font:10px/1.2 sans-serif;color:#c8cbb8}.tool b{position:absolute;top:-5px;right:-4px;background:#91463b;color:#f1e0cc;font:9px/15px sans-serif;min-width:17px;text-align:center;padding:0 2px}.status-row{display:flex;gap:30px;margin-top:17px;max-width:420px}.day-status{flex:1;display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px}#day{font-size:16px;letter-spacing:1px}#time{font:11px/24px sans-serif;color:#c1c9b6}.day-track,.mind-track{height:3px;background:#d3dab21f;width:100%;overflow:hidden}.day-track i,.mind-track i{display:block;height:100%;background:#c4c3a0;transition:width .6s}.mind-status{width:112px}.mind-status>div:first-child{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.mind-status span{font-size:11px;color:#c1c9b6}#sanity{font:15px/17px sans-serif}#sanity small{font-size:9px;color:#a5ad99}.cat-status{display:flex;align-items:center;gap:7px;font-size:10px;line-height:1.8;color:#bcc5ad;margin-top:9px}.cat-mark{color:#c8b27e;font-size:15px}#care{color:#c7ae88;margin-left:7px}.location{position:absolute;z-index:3;top:calc(var(--safe-top) + 190px);left:calc(var(--safe-left) + 30px);display:flex;align-items:center;gap:10px;text-shadow:0 2px 8px #000}#roomname{font-size:19px;letter-spacing:5px}.location small{font-size:10px;letter-spacing:2px;color:#b3bea6}.location-rule{height:20px;width:2px;background:#a5a788}.explore-hint{position:absolute;left:50%;bottom:290px;transform:translateX(-50%);color:#d5d6bd99;font-size:10px;letter-spacing:3px;white-space:nowrap;pointer-events:none;z-index:3}.bottom-ui{position:absolute;z-index:4;bottom:0;left:0;right:0;max-width:860px;margin:0 auto;padding:0 25px calc(var(--safe-bottom) + 8px)}.story{background:linear-gradient(135deg,#18211cf5,#0c1210f7);border:1px solid #a4ae8055;box-shadow:0 6px 32px #0008,inset 0 0 25px #7c875110;padding:13px 20px 15px;position:relative}.story:before,.story:after{content:'';position:absolute;top:-3px;width:20px;height:5px;border-top:1px solid #d7c69a}.story:before{left:0}.story:after{right:0}.story-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}#storytype{color:#dbcda9;font-size:12px;letter-spacing:3px}#save{font:9px/1.5 sans-serif;color:#89977b}#save:before{content:'◆';font-size:6px;margin-right:5px}.story-body{max-height:min(35dvh,300px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#6a755b transparent;-webkit-overflow-scrolling:touch}.story p{font-size:14px;line-height:1.9;letter-spacing:.5px;margin:0;color:#d8dbca}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.choices button{position:relative;min-height:46px;padding:10px 27px 10px 13px;border:1px solid #9ca47b50;background:linear-gradient(100deg,#69715426,#141d1699);color:#e3dfc8;font-size:12px;line-height:1.6;text-align:left;overflow-wrap:anywhere}.choices button:after{content:'›';position:absolute;right:11px;top:50%;transform:translateY(-50%);color:#c1bb98;font:20px/1 sans-serif}.choices button:first-child{border-color:#b5ad795e;background:linear-gradient(100deg,#a7a27336,#333a241f)}.choices button:only-child{grid-column:1/-1}.choices button:hover{background:#a0a87530}.places{display:flex;justify-content:center;gap:12px;align-items:center;margin-top:10px}.places button{position:relative;width:76px;min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#adb49f;border:1px solid transparent;background:#0c13109c}.places button.active{color:#e4d6ae;background:linear-gradient(0deg,#8e80523b,#162018a0);border-color:#b5a27155;box-shadow:inset 0 -2px #c6b789}.places span{font-size:11px;letter-spacing:3px;margin-left:3px}.places small{position:absolute;right:6px;top:4px;font-size:9px;color:#d98372}.pause-panel{position:absolute;z-index:9;top:calc(var(--safe-top) + 80px);right:calc(var(--safe-right) + 24px);width:min(280px,calc(100% - 32px));padding:10px 14px 16px;background:#111913fa;border:1px solid #a5ad8066;box-shadow:0 18px 70px #000b}.pause-title{font-size:14px;letter-spacing:3px;display:flex;align-items:center;justify-content:space-between;color:#d7c9a9}.pause-title button{width:44px;font:24px sans-serif}.pause-panel>button{display:block;width:100%;text-align:left;padding:10px 12px;margin-top:6px;min-height:48px;border:1px solid #9aab7540;background:#63734412;font-size:13px}.pause-panel>button:last-child{color:#cf9183}.grain{position:absolute;inset:0;pointer-events:none;z-index:8;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.game.danger .mind-track i{background:#b56a54}.game.danger .story{border-color:#a2554380}dialog{padding:0;border:1px solid #a5a58070;background:#101610;color:var(--ink);width:min(580px,calc(100vw - var(--safe-left) - var(--safe-right) - 24px));max-height:calc(100vh - var(--safe-top) - var(--safe-bottom) - 28px);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 28px);overflow:hidden;box-shadow:0 20px 120px #000c}dialog::backdrop{background:#020705d9;backdrop-filter:blur(6px)}.modal-frame{display:flex;flex-direction:column;max-height:inherit}.modal-bar{display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 22px;min-height:54px;background:#172017;border-bottom:1px solid #acb08736;flex-shrink:0}.modal-bar>span{font-size:10px;color:#bbc3a5;letter-spacing:2px}.close{min-width:70px;min-height:48px;font-size:12px}.close span{font:22px sans-serif;margin-left:12px;vertical-align:-2px}#modalcontent{padding:24px;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#707b60 transparent;-webkit-overflow-scrolling:touch;overflow-wrap:anywhere}dialog h2{font-size:25px;font-weight:500;letter-spacing:2px;margin:6px 0 18px}dialog h3{font-size:17px}dialog p,dialog li{font-size:14px;line-height:2}dialog ol{padding-left:24px}dialog li{padding-bottom:9px}dialog .meta{font-size:11px;line-height:1.8;color:#9ea78f}dialog .red{color:#d58476}dialog .action{min-height:48px;padding:12px 20px;background:#5e694037;border:1px solid #b2ad7670;font-size:13px}.archive-link{display:flex;align-items:center;width:100%;min-height:58px;text-align:left;border:1px solid #929c6e44;background:#6d775114;padding:14px;margin:10px 0;font-size:14px;line-height:1.6;color:#e1ddc7}.logentry{border-bottom:1px solid #747f543f;padding-bottom:14px}.ending{border-top:1px solid #747f543f;margin-top:20px;padding-top:15px}@keyframes arrival{from{opacity:0;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes signal{50%{box-shadow:0 0 0 8px #e0dcc622,0 0 22px #ece1ba55}}@keyframes light{50%{opacity:.22;transform:translateX(-15px)}}
/* Portrait: reserve HUD and thumb controls; every point uses the same scene plane as the artwork. */
@media(orientation:portrait){.scene-world{top:16%;bottom:24%;left:-10%;right:-10%}.hud{top:calc(var(--safe-top) + 12px);left:calc(var(--safe-left) + 16px);right:calc(var(--safe-right) + 16px);max-width:none}.game-title{font-size:21px;letter-spacing:2px}.game-title small{font-size:9px;letter-spacing:2px}.utilities{gap:6px}.tool{width:43px;height:50px}.status-row{max-width:none;gap:22px;margin-top:13px}.cat-status{margin-top:7px}.location{top:calc(var(--safe-top) + 160px);left:calc(var(--safe-left) + 18px)}#roomname{font-size:17px}.location small{font-size:9px}.bottom-ui{padding:0 calc(var(--safe-right) + 12px) calc(var(--safe-bottom) + 6px) calc(var(--safe-left) + 12px);max-width:650px}.story{padding:12px 14px}.story-body{max-height:31dvh}.story p{font-size:14px;line-height:1.85}.choices{gap:7px;margin-top:10px}.choices button{font-size:12px;min-height:48px;padding:9px 23px 9px 10px}.places{gap:4px;margin-top:7px}.places button{flex:1;min-width:0;min-height:58px}.explore-hint{display:none}.hotspot{width:60px;min-height:60px}.hotspot span{font-size:10px}.pause-panel{right:calc(var(--safe-right) + 12px)}}
@media(max-width:360px){.game-title{font-size:18px;letter-spacing:1px}.tool{width:40px}.utilities{gap:3px}.hud{left:12px;right:12px}.status-row{gap:14px}.mind-status{width:94px}.story p{font-size:13px}.choices button{font-size:11px}.bottom-ui{padding-left:8px;padding-right:8px}.cat-status{font-size:9px;gap:5px}.location{top:calc(var(--safe-top) + 150px)}}
/* Short portrait screens keep controls reachable; long choices scroll inside the dialogue. */
@media(orientation:portrait) and (max-height:700px){.game-title small{display:none}.status-row{margin-top:9px}.cat-status{margin-top:4px}.location{top:calc(var(--safe-top) + 132px)}.scene-world{top:15%;bottom:24%}.story{padding:9px 12px}.story p{font-size:13px;line-height:1.75}.story-body{max-height:29dvh}.choices{margin-top:8px}.places button{min-height:52px}.places svg{width:19px;height:19px}}
/* Landscape phones: scene left, dialogue right. No forced rotation or page scrolling. */
@media(orientation:landscape) and (max-height:600px){.hud{top:calc(var(--safe-top) + 9px);left:calc(var(--safe-left) + 15px);right:auto;width:49%;max-width:470px}.game-title{font-size:18px;letter-spacing:2px}.game-title small{display:none}.tool{width:40px;height:44px}.tool svg{width:18px;height:18px}.tool>span{font-size:9px}.utilities{gap:5px}.status-row{margin-top:8px;gap:15px}.cat-status{font-size:9px;margin-top:4px}.location{left:calc(var(--safe-left) + 17px);top:calc(var(--safe-top) + 135px)}.location small{font-size:9px}#roomname{font-size:16px}.scene-world{left:0;right:39%;top:8%;bottom:0}.bottom-ui{left:auto;width:43%;right:var(--safe-right);padding:0 12px calc(var(--safe-bottom) + 8px);max-height:calc(100% - var(--safe-top) - 12px);display:flex;flex-direction:column}.story{padding:10px 12px;min-height:0}.story-body{max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 120px)}.story p{font-size:12px;line-height:1.8}.choices{grid-template-columns:1fr;gap:5px;margin-top:8px}.choices button{min-height:44px;font-size:11px;padding:7px 23px 7px 10px}.places{gap:2px;margin-top:6px;flex-shrink:0}.places button{flex:1;min-width:0;min-height:49px;gap:3px}.places svg{width:19px;height:19px}.places span{font-size:10px;letter-spacing:1px}.places small{right:2px;top:0}.explore-hint{display:none}.hotspot{width:56px;min-height:54px;gap:6px}.hotspot span{font-size:9px;padding:3px 5px}.pause-panel{top:calc(var(--safe-top) + 14px);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 28px);overflow:auto}.pause-panel>button{min-height:44px;margin-top:4px;padding:8px 12px}dialog .modal-bar{min-height:48px}#modalcontent{padding:18px 22px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.note-page{min-height:100%;padding:20px 30px 0 39px;background:#000;color:#efefed;font-family:'Songti SC','STSong','Noto Serif SC',serif;font-size:16px;line-height:1.9;letter-spacing:.01em}
.note-heading{font-size:20px;line-height:1.35;margin:0 0 9px;color:#eeece7}
.note-meta{display:flex;gap:14px;align-items:center;color:#777;font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',sans-serif;font-size:10px;line-height:1.2;margin-bottom:26px}
.note-tag{padding:6px 10px;border-radius:16px;background:#242424;color:#8c8c8c}
.note-copy h3{font-size:18px;font-style:italic;font-weight:600;margin:0 0 9px;color:#f0eeea}
.note-intro{margin:0 0 32px;line-height:1.95}
.note-rules{margin:0 0 0;padding-left:31px}
.note-rules>li{padding-left:3px;margin:0 0 14px;line-height:1.9}
.note-rules>li::marker{font-size:.88em;color:#e6e5e0}
.note-rules strong{font-weight:700;color:#f5f3ed}
.note-rules em{font-style:italic}
.note-red,.note-red-inline{color:#a83b3c;font-style:italic}
.note-insert{margin:0 0 12px;padding-left:9px;letter-spacing:.24em}
.note-red-inline{font-weight:600}
.note-blue{color:#5576b7}
.note-corrupt{display:inline-block;margin-top:2px;font-style:italic;line-height:1.75;letter-spacing:.03em}
.note-crossed{height:39px;margin-top:-3px!important;margin-bottom:11px!important}
.note-scribble{display:inline-block;position:relative;width:190px;height:28px;vertical-align:middle;opacity:.95;background:linear-gradient(172deg,transparent 39%,#e6e4df 40%,#e6e4df 45%,transparent 46%),linear-gradient(7deg,transparent 48%,#e6e4df 49%,#e6e4df 54%,transparent 55%),linear-gradient(166deg,transparent 57%,#e6e4df 58%,#e6e4df 61%,transparent 62%),linear-gradient(12deg,transparent 30%,#e6e4df 31%,#e6e4df 35%,transparent 36%)}
.note-machine{margin:112px 0 26px;padding-left:10px;color:#a83b3c;font-weight:500}
.note-shout{font-size:1.38em;line-height:1.1;letter-spacing:.07em}
.note-last{margin:7px 0 0;color:#a83b3c}
.note-echoes{position:relative;height:610px;margin:0 -30px 0 -39px;color:#a83b3c;font-style:italic;font-size:18px}
.note-echoes span,.note-echoes strong{position:absolute;font-weight:400}
.note-echoes span:nth-child(1){top:45px;right:112px}
.note-echoes span:nth-child(2){top:202px;left:41px}
.note-echoes span:nth-child(3){top:355px;right:136px}
.note-echoes span:nth-child(4){top:506px;left:155px}
.note-echoes span:nth-child(5){top:535px;left:155px;opacity:.45}
.note-echoes strong{right:78px;bottom:15px;color:#a83b3c;font-size:16px;font-style:italic}
@media(max-width:600px){.note-modal{width:calc(100vw - 10px);height:94svh;max-height:94svh}.note-page{padding:18px 22px 0 34px;font-size:15px}.note-heading{font-size:19px}.note-intro{margin-bottom:27px}.note-rules{padding-left:27px}.note-rules>li{padding-left:2px;margin-bottom:13px}.note-insert{padding-left:6px;letter-spacing:.15em}.note-machine{margin-top:92px}.note-echoes{margin-left:-34px;margin-right:-22px;height:530px}.note-echoes span:nth-child(1){right:77px}.note-echoes span:nth-child(2){left:30px}.note-echoes span:nth-child(3){right:93px}.note-echoes span:nth-child(4){left:117px}.note-echoes span:nth-child(5){left:117px}.note-echoes strong{right:42px;font-size:15px}}
/* Documents remain game props, without article metadata or browser-like chrome. */
.note-modal{background:#050605}.note-modal #modalcontent{padding:0}.note-modal #modalcontent>.meta,.note-modal #modalcontent>h2,.note-meta,.note-heading{display:none}.note-page{padding:24px 25px 0 30px}.note-copy h3{margin-top:0}.note-modal .close{position:static;color:var(--ink);background:none;font-family:inherit;font-size:12px}.note-modal{width:min(580px,calc(100vw - var(--safe-left) - var(--safe-right) - 24px));height:auto;max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 28px)}.note-modal .modal-frame{max-height:inherit}.note-modal .note-intro{font-size:15px}.note-modal .note-rules>li{font-size:15px;line-height:1.95}.note-modal .note-echoes{margin-left:-30px;margin-right:-25px}.note-modal .note-page p{font-size:15px}@media(max-width:360px){.note-page{padding-left:22px;padding-right:18px}.note-modal .note-rules>li,.note-modal .note-page p{font-size:14px}.note-rules{padding-left:23px}.note-modal .note-echoes{margin-left:-22px;margin-right:-18px}}
@media(orientation:portrait){.scene-world{top:var(--scene-top,160px);bottom:var(--scene-bottom,260px)}.location{top:calc(var(--scene-top,160px) + 2px)}}
@media(orientation:landscape) and (min-height:601px){.scene-world{top:10%;bottom:var(--scene-bottom,260px)}.explore-hint{bottom:calc(var(--scene-bottom,260px) + 3px)}}
@media(orientation:landscape) and (max-height:600px){.scene-world{top:32%;bottom:3%}}
@media(orientation:portrait) and (max-height:700px){.hotspot{width:44px;min-height:44px;gap:4px;padding:0}.hotspot[data-act="bedroom"]{top:46%}.hotspot[data-act="cat"]{top:73%}.hotspot[data-act="paper"]{left:38%}}

/* Keep the dialogue footprint independent of text length and option count. */
.game{--dialogue-height:260px}
.story{height:var(--dialogue-height);min-height:0;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}
.story-heading{flex-shrink:0;min-height:22px}
.story-body{flex:1;min-height:0;max-height:none;overflow-y:auto;scrollbar-gutter:stable;touch-action:pan-y}
.story p{font-size:17px;line-height:1.9}
.choices button{font-size:15px;min-height:48px;line-height:1.7}
#storytype{font-size:14px}
#save{font-size:11px}
.places span{font-size:13px}
.tool>span{font-size:12px}
#time,.mind-status span{font-size:12px}
#sanity{font-size:17px}
#sanity small{font-size:11px}
.cat-status{font-size:12px}
#focus{color:#aab59b;margin-left:7px}
#erosion{color:#b58d78;margin-left:5px;letter-spacing:.04em}
.game.eroded #erosion{color:#c97768}
.game.eroded .location-rule{background:#b77967}
.hotspot span{font-size:12px}
dialog p,dialog li,.archive-link{font-size:16px}
dialog .meta{font-size:12px}
.note-modal .note-rules>li,.note-modal .note-page p,.note-modal .note-intro{font-size:16px}
@media(orientation:portrait){
 .game{--dialogue-height:clamp(230px,32svh,280px)}
 .story p{font-size:16px;line-height:1.85}
 .choices button{font-size:15px}
 .cat-status{font-size:11px}
 .cat-status{flex-wrap:wrap}
 #focus{margin-left:7px}
 #erosion{margin-left:5px}
 .story-body{max-height:none}
}
@media(orientation:portrait) and (max-height:700px){
 .game{--dialogue-height:210px}
 .story p{font-size:16px}
 .choices button{font-size:14px}
}
@media(max-width:360px){
 .cat-status{font-size:10px}
 #care{margin-left:2px}
 .places span{font-size:12px}
 .choices button{font-size:14px}
}
@media(orientation:landscape) and (max-height:600px){
 .game{--dialogue-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 88px)}
 .story-body{max-height:none}
 .story p{font-size:15px;line-height:1.85}
 .choices button{font-size:14px;min-height:46px}
 .places span{font-size:12px}
 .cat-status{font-size:10px}
 #focus{margin-left:3px}
 #erosion{margin-left:3px}
}

/* Source-note facsimiles keep the three reference notes' own headers, spacing, and marks. */
.note-modal .source-note{padding:21px 29px 24px 31px;min-height:0;background:#000;overflow-wrap:normal}
.note-modal .source-note .note-source-header{display:block}
.note-modal .source-note .note-heading{display:block;margin:0 0 14px;font-size:24px;font-weight:400;line-height:1.35;letter-spacing:.01em}
.note-modal .source-note .note-meta{display:flex;margin:0 0 28px;color:#777;gap:14px;font-size:12px;line-height:1.2}
.note-modal .source-note .note-tag{padding:7px 12px;border-radius:18px;background:#242424;color:#898989}
.note-modal .source-note .note-tag span{font-size:9px;margin-left:3px}
.note-modal .source-note .note-source-title{margin:0 0 12px;font-size:19px;font-style:italic;font-weight:500;line-height:1.5;letter-spacing:.01em}
.note-modal .source-note .note-subtitle{margin:0 0 45px;font-size:16px;font-style:normal;line-height:1.8;color:#efefed}
.note-modal .source-note .note-copy p{font-size:16px;line-height:1.95}
.note-modal .source-note .note-attribution{display:flex;flex-direction:column;align-items:flex-end;gap:0;margin-top:46px;padding-bottom:4px;color:#e8e6df;font-size:13px;line-height:1.45;font-family:'Songti SC','STSong','Noto Serif SC',serif}
.note-modal .source-note .note-attribution span:first-child{font-size:13px}
.note-modal .source-note .note-attribution span:last-child{font-size:14px}
.note-modal .source-note .note-blue{color:#5576b7;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.note-modal .source-note .note-rough{margin:0;white-space:pre-wrap;font-style:italic;letter-spacing:.03em;word-spacing:.22em}
.note-modal .source-note .note-rough strong{font-weight:700}
.note-modal .source-note .note-escape{display:flex;align-items:baseline;gap:22px;margin:117px 0 0;padding-left:70px;white-space:nowrap}
.note-modal .source-note .note-escape strong{font-size:32px;line-height:1.2;font-style:normal}
.note-modal .source-note .note-escape span{font-size:17px;font-style:normal}
.note-modal .source-note .note-door-intro{margin:0 0 31px;font-size:17px;line-height:1.9}
.note-modal .source-note .note-crossline{display:flex;justify-content:center;margin:0 0 54px;height:30px;line-height:1}
.note-modal .source-note .note-crossline .note-scribble{width:145px;height:25px}
.note-modal .source-note .note-door-rules{margin:0;padding-left:35px}
.note-modal .source-note .note-door-rules>li{padding-left:6px;margin:0 0 15px;font-size:17px;line-height:1.9}
.note-modal .source-note .note-door-rules>li::marker{font-size:.9em}
.note-modal .source-note .note-door-rules strong{font-weight:700}
.note-modal .source-note .note-door-rules u{ text-underline-offset:4px}
.note-modal .source-note .note-diary-copy{font-style:normal}
.note-modal .source-note .note-diary-copy .note-source-title{font-style:normal}
.note-modal .source-note .note-diary-entry{margin:0 0 43px}
.note-modal .source-note .note-diary-date{margin:0 0 8px;font-size:20px;font-weight:400;line-height:1.4}
.note-modal .source-note .note-diary-entry p{margin:0;font-size:17px;line-height:1.95}
.note-modal .source-note .note-diary-corrupt{font-style:italic}
.note-modal .source-note .note-diary-corrupt p{white-space:pre-wrap;word-spacing:.24em;letter-spacing:.02em}
.note-modal .source-note.note-diary .note-attribution{margin-top:-1px}
@media(max-width:600px){
 .note-modal .source-note{padding:18px 20px 20px 26px}
 .note-modal .source-note .note-heading{font-size:21px}
 .note-modal .source-note .note-meta{font-size:11px;margin-bottom:23px}
 .note-modal .source-note .note-source-title{font-size:18px}
 .note-modal .source-note .note-subtitle{font-size:15px;margin-bottom:34px}
 .note-modal .source-note .note-copy p{font-size:15px;line-height:1.9}
 .note-modal .source-note .note-rough{word-spacing:.12em}
 .note-modal .source-note .note-escape{margin-top:88px;padding-left:22px;gap:13px}
 .note-modal .source-note .note-escape strong{font-size:27px}
 .note-modal .source-note .note-escape span{font-size:15px}
 .note-modal .source-note .note-door-intro{font-size:16px}
 .note-modal .source-note .note-crossline{margin-bottom:39px}
 .note-modal .source-note .note-door-rules{padding-left:29px}
 .note-modal .source-note .note-door-rules>li{font-size:15px;padding-left:3px;margin-bottom:13px}
 .note-modal .source-note .note-diary-entry{margin-bottom:35px}
 .note-modal .source-note .note-diary-date{font-size:19px}
 .note-modal .source-note .note-diary-entry p{font-size:15px;line-height:1.9}
 .note-modal .source-note .note-attribution{margin-top:35px;font-size:11px}
 .note-modal .source-note .note-attribution span:first-child{font-size:11px}
 .note-modal .source-note .note-attribution span:last-child{font-size:12px}
}
@media(max-width:360px){
 .note-modal .source-note{padding-left:21px;padding-right:16px}
 .note-modal .source-note .note-heading{font-size:19px}
 .note-modal .source-note .note-door-rules>li,.note-modal .source-note .note-diary-entry p,.note-modal .source-note .note-copy p{font-size:14px}
 .note-modal .source-note .note-escape{padding-left:7px;gap:9px}
 .note-modal .source-note .note-escape strong{font-size:24px}
 .note-modal .source-note .note-escape span{font-size:13px}
}
