:root{color-scheme:dark;--ink:#251927;--gold:#e9bb66;--paper:#ead5a6;--cream:#fff0c8;--purple:#40243f;--mint:#87c9b9}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{background:#100c16;color:var(--cream);font:16px/1.45 Georgia,'Times New Roman',serif}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.42}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ffdb73;outline-offset:4px}svg.symbol{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}a{color:inherit}#app{height:100%;width:100%}.adventure-shell{height:100dvh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 35%,#422434,#120d18 70%)}.game-hud{height:44px;flex:none;display:flex;align-items:center;gap:25px;padding:0 20px;background:linear-gradient(#3c2c30,#241923);border-bottom:3px solid #120f17;box-shadow:0 3px 0 #b08b5340;z-index:3;font-size:14px;letter-spacing:.02em}.room-name{color:#f2d7a0;font-weight:bold;margin-right:auto;white-space:nowrap}.game-hud .currency{color:#edcd83}.game-hud .day{color:#b4c6bd}.hud-controls{display:flex;gap:7px}.hud-controls button{display:grid;place-items:center;width:30px;height:28px;padding:2px;background:#1e1b25;border:1px solid #7d5b50;border-radius:4px}.hud-controls svg{width:18px;height:18px}.world-wrap{flex:1;min-height:0;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden}.stage{position:relative;aspect-ratio:16/9;width:min(100%,calc((100dvh - 182px)*1.7777778));max-height:100%;overflow:hidden;isolation:isolate;box-shadow:0 0 80px #000;border:2px solid #0b0910;user-select:none}.backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:0}.stage .vignette{position:absolute;inset:0;z-index:1;pointer-events:none;box-shadow:inset 0 0 80px #1710234d}.scene-fade{animation:arrival .35s ease-out}.stage.walk{cursor:crosshair}.stage.look{cursor:help}.stage.take{cursor:grab}.stage.use{cursor:pointer}.stage.talk{cursor:pointer}.hotspot{position:absolute;z-index:5;background:transparent;border:2px solid transparent;border-radius:15%;padding:0;color:#ffe2a0}.hotspot:hover{border-color:#ffdb7655;background:#ffd56a0b}.hotspot:focus-visible{outline:2px dashed #fff1ab;outline-offset:1px}.hotspot .hotspot-name{position:absolute;left:50%;top:0;transform:translate(-50%,-100%);background:#201322e8;border:1px solid #c29a66;padding:3px 9px;border-radius:4px;white-space:nowrap;color:#ffeac3;font-size:13px;opacity:0;pointer-events:none;text-shadow:1px 1px #000}.hotspot:hover .hotspot-name,.hotspot:focus-visible .hotspot-name{opacity:1}.show-hotspots .hotspot{border:2px dashed #ffdf8b99;background:#ffe2a511}.show-hotspots .hotspot:after{content:'✦';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:24px;color:#fff1c5;text-shadow:0 1px 6px #271224}.actor{position:absolute;background-repeat:no-repeat;border:0;z-index:7;transform:translate(-50%,-100%);padding:0;background-color:transparent;filter:drop-shadow(1px 3px 1px #130a1c66);transform-origin:center bottom}.actor.hero{pointer-events:none;z-index:8}.actor-shadow{position:absolute;width:9%;height:2.2%;border-radius:50%;background:#160d1c66;filter:blur(5px);transform:translate(-50%,-50%);z-index:4;pointer-events:none}.actor.npc:hover{filter:drop-shadow(0 0 3px #f7cd70)}.actor .hotspot-name{position:absolute;top:-2%;left:50%;transform:translate(-50%,-100%);color:#fff0ce;white-space:nowrap;opacity:0;background:#251c2d;padding:4px 9px;border:1px solid #a47a55;font-size:13px}.actor:hover .hotspot-name,.actor:focus-visible .hotspot-name,.show-hotspots .actor .hotspot-name{opacity:1}.move-ring{position:absolute;z-index:3;width:3%;aspect-ratio:2;border:2px solid #f9da8899;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;animation:point .7s ease-out forwards}.caption-line{height:29px;flex:none;text-align:center;background:#1e1523;border-top:2px solid #5e3d43;border-bottom:2px solid #110b13;color:#e4c68c;font-size:14px;line-height:25px;text-shadow:1px 1px #000;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:0 12px}.action-dock{height:109px;flex:none;display:flex;align-items:center;justify-content:center;gap:22px;padding:10px 25px;background:repeating-linear-gradient(1deg,#3b2a2c 0,#3b2a2c 8px,#39272c 9px,#3b2a2c 11px);box-shadow:inset 0 4px 0 #6c4b3d,inset 0 -5px 12px #140f1b;border-top:2px solid #140c14}.verbs{display:grid;grid-template-columns:repeat(3,80px);gap:5px}.verb{border:2px solid #130e1b;background:linear-gradient(#684650,#432f3c);border-radius:7px;box-shadow:inset 1px 1px 0 #bc84674d,2px 2px 0 #150f1a;color:#d4c0aa;font-size:12px;display:flex;align-items:center;gap:5px;padding:5px 7px;white-space:nowrap}.verb svg{width:20px;height:20px}.verb.active{background:linear-gradient(#a67644,#765139);color:#fff1bc;border-color:#e9bc70;box-shadow:0 0 9px #e9b86722}.verb:hover:not(:disabled){color:#fff3d4;filter:brightness(1.15)}.inventory{display:flex;gap:7px;padding:8px 12px;background:#211a23;border:3px solid #684c3f;border-radius:9px;box-shadow:inset 0 2px 12px #0009;min-width:300px;height:83px;align-items:center;position:relative}.inventory:before{content:'INVENTAR';position:absolute;left:15px;top:-11px;background:#3a282d;padding:0 8px;color:#ab8b65;font:9px/12px 'Segoe UI',sans-serif;letter-spacing:.15em}.inventory-slot{width:56px;height:56px;flex:none;background:radial-gradient(#504131,#2b2430);border:1px solid #8d6a47;border-radius:5px;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 12px #0006;position:relative}.inventory-slot svg{width:34px;height:34px;color:#e4b873;filter:drop-shadow(1px 2px 0 #0009)}.inventory-slot.selected{border:2px solid #ffdc77;box-shadow:0 0 10px #e6b76455}.inventory-slot.empty{opacity:.3;background:#17151e;border-style:dashed;cursor:default}.inventory-slot:hover .item-name{opacity:1}.item-name{position:absolute;bottom:115%;left:50%;transform:translateX(-50%);white-space:nowrap;background:#1c1624;border:1px solid #ad875f;padding:4px 8px;font-size:12px;opacity:0;pointer-events:none;z-index:30}.dock-tools{display:flex;gap:10px}.dock-tool{width:65px;height:76px;background:linear-gradient(135deg,#73523f,#473039);border:3px solid #211521;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;box-shadow:2px 3px 0 #120c16;color:#e5c59a;font-size:11px}.dock-tool svg{width:29px;height:29px}.dock-tool:hover{filter:brightness(1.2)}.game-overlay{position:absolute;inset:0;z-index:20;pointer-events:none;display:flex;align-items:end;justify-content:center;padding:20px}.game-overlay:empty{display:none}.speech{position:relative;width:94%;background:linear-gradient(110deg,#eeddb5,#e3c590);color:#2c1c2d;border:3px solid #261725;border-radius:13px 9px 18px 8px;box-shadow:5px 7px 0 #130e1e99,inset 0 0 32px #ab784333;pointer-events:auto;display:grid;grid-template-columns:88px 1fr;gap:17px;padding:20px 23px;max-height:66%;overflow:auto}.speech:before{content:'';position:absolute;top:-13px;left:100px;width:23px;height:23px;transform:rotate(45deg);background:#ead4a8;border-left:3px solid #261725;border-top:3px solid #261725}.speech-portrait{width:88px;height:109px;background:#654655;border:3px solid #39232e;border-radius:50% 45% 48% 43%;overflow:hidden;position:relative;box-shadow:2px 3px 0 #b38b60}.portrait-sprite{position:absolute;top:0;left:0;background-repeat:no-repeat;width:100%;height:280px}.speaker{font-weight:bold;text-transform:uppercase;font-size:12px;letter-spacing:.1em;color:#834355;margin-bottom:5px}.speech p{font-size:18px;line-height:1.45;margin:0 25px 10px 0}.speech .close-speech{position:absolute;top:9px;right:12px;background:none;border:0;color:#754656;font-size:22px}.dialogue-choices{display:grid;gap:4px}.choice{background:transparent;border:0;color:#513452;text-align:left;padding:6px 9px;border-radius:3px;font-size:15px;line-height:1.3;display:block;width:100%}.choice:before{content:'➜';margin-right:8px;color:#9c5b41}.choice:hover:not(:disabled){background:#a47f4a26;color:#7b2c53}.choice:disabled{opacity:.45}.choice small{color:#856b58}.paper-scrim{position:fixed;inset:0;z-index:40;background:#130c1cbb;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:30px}.paper-scrim:empty{display:none}.paper{background:#ead5a7;color:#392533;border:4px solid #39242d;border-radius:6px 12px 8px 9px;box-shadow:10px 12px 0 #0006,inset 0 0 70px #9c6b3b44;width:min(830px,92vw);max-height:88vh;overflow:auto;padding:28px 34px;position:relative;background-image:repeating-linear-gradient(0deg,transparent 0,transparent 31px,#62411d0b 32px)}.paper.wide{width:min(1080px,94vw)}.paper h1,.paper h2,.paper h3{font-weight:bold;color:#52303d;line-height:1.2}.paper h1{font-size:32px;letter-spacing:-.03em;margin:0 35px 10px 0}.paper h2{font-size:22px;margin:20px 0 10px}.paper h3{font-size:17px;margin:10px 0}.paper p{margin:10px 0;font-size:15px;line-height:1.55}.paper small{color:#82664e;font-size:12px}.paper .paper-close{position:absolute;right:14px;top:9px;border:0;background:none;color:#785149;font-size:26px}.paper .stamp{display:inline-block;color:#9c3d4b;border:2px solid #9c3d4b;padding:3px 9px;transform:rotate(-4deg);font:700 11px 'Segoe UI',sans-serif;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}.paper button{border:2px solid #4b2c38;border-radius:5px;background:#80513f;color:#fff0c8;padding:8px 13px;box-shadow:2px 2px 0 #9b7659;line-height:1.25}.paper button:hover:not(:disabled){background:#9b6646}.paper button.primary{background:#733e59;border-color:#422138}.paper button.ink{border:0;box-shadow:none;background:transparent;color:#713b55;text-decoration:underline;padding:5px}.paper input,.paper select{width:100%;padding:9px 10px;border:0;border-bottom:2px solid #916f59;background:#fff0cd66;color:#402736;border-radius:0;font:17px Georgia}.paper input[type=checkbox],.paper input[type=radio]{width:18px;height:18px;accent-color:#75395b}.paper label{font-size:13px;font-weight:bold;color:#805146}.paper .actions{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0}.paper .split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.paper .row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:10px 0;border-bottom:1px dashed #a88c65}.paper .row:last-child{border-bottom:0}.paper .row strong{display:block}.paper .row small{display:block}.paper .row p{margin:3px 0}.paper .document-intro{border-bottom:2px solid #a18359;padding-bottom:15px;margin-bottom:20px}.paper .form-line{display:block;margin:16px 0}.paper .check{display:flex;align-items:center;gap:8px;font-size:15px;padding:9px;background:#bb965226;margin:5px 0}.paper .estimate{border:2px dashed #927358;padding:13px;margin:20px 0;transform:rotate(-.5deg);font-size:15px}.paper .estimate strong{font-size:22px;color:#843d51}.paper .genres{display:flex;gap:7px;flex-wrap:wrap}.paper .genres label{display:flex;align-items:center;gap:6px;padding:8px;border:1px solid #9d7953;border-radius:4px;cursor:pointer}.paper .empty-note{padding:25px 0;font-style:italic;color:#82634c}.paper .note{background:#a56c3d20;border-left:3px solid #a05d45;padding:11px 15px;margin:16px 0;font-size:13px}.paper .chapter-lines{list-style:none;margin:18px 0;padding:0}.paper .chapter-lines li{padding:6px 0}.paper .chapter-lines li.done{color:#35745b}.paper .map-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.paper .map-place{min-height:90px;background:#d1b581;color:#623a43;border:2px solid #95734c;box-shadow:3px 3px 0 #9c7959;transform:rotate(-1deg);display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;font-size:14px}.paper .map-place:nth-child(2n){transform:rotate(1deg)}.paper .map-place svg{width:28px;height:28px;color:#865d4f}.paper .map-place.current{background:#b88860;color:#fff0c8}.paper .ledger{width:100%;border-collapse:collapse;font-size:13px}.paper .ledger td,.paper .ledger th{text-align:left;padding:9px 6px;border-bottom:1px solid #ab8d62}.paper .ledger th{font-size:11px;color:#896247;text-transform:uppercase}.paper .ledger button{font-size:12px;padding:5px 8px}.paper .crew-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.crew-page{border:1px solid #ac895d;padding:15px;background:#f5e2ba66;box-shadow:2px 3px 0 #b7956866}.crew-photo{height:220px;display:flex;align-items:end;justify-content:center;background:radial-gradient(ellipse,#a9836a,#c7aa80);border:3px solid #fff0ca;box-shadow:1px 2px 3px #815a4b;position:relative;overflow:hidden;margin-bottom:14px}.crew-photo .figure{height:95%;background-repeat:no-repeat}.crew-page h2{margin:5px 0}.crew-page p{font-size:13px}.crew-page .actions{gap:5px;margin-bottom:0}.crew-page button{font-size:12px;padding:6px 9px}.paper .menu-options{display:grid;gap:12px;padding:12px 0}.paper .menu-options button,.paper .menu-options a{text-align:left;padding:13px;font-size:16px}.paper a{color:#7a3c50}.paper .tagline{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#8b6c50}.paper .journal-entry{padding:10px 0;border-bottom:1px solid #b2946a}.paper .journal-entry span{font-size:11px;color:#934850;display:block;margin-bottom:3px}.paper .journal-entry p{margin:0;font-size:14px}.book-tabs{display:flex;gap:8px;margin:14px 0}.book-tabs button{background:#be9766;color:#593646}.boot-screen{height:100dvh;display:grid;place-content:center;justify-items:center;text-align:center;background:#271a2e;color:#e6c58c;gap:12px}.boot-screen h1{font-size:40px}.title-screen{height:100dvh;background:center/cover;display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate}.title-screen:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1a102b66,#1a102bbd);z-index:-1}.title-plaque{background:#2d192be8;border:5px solid #b58651;border-radius:16px 8px 18px 7px;box-shadow:0 0 0 4px #241427,12px 14px 0 #130d1999;padding:38px 48px;text-align:center;max-width:580px;margin:25px;transform:rotate(-1deg)}.title-plaque .eyebrow{font-size:13px;letter-spacing:.18em;color:#d8aa74}.title-plaque h1{font-size:clamp(48px,6vw,72px);line-height:.98;text-shadow:4px 5px #140c1b;color:#edca85;margin:17px 0}.title-plaque h1 em{font-style:normal;font-size:38px;color:#ea94b0;display:block;margin-bottom:10px}.title-plaque p{font-size:17px;color:#d9bd99;margin:22px 0;line-height:1.6}.title-plaque button{font-weight:bold;font-size:21px;padding:14px 23px;border:3px solid #221524;box-shadow:3px 4px 0 #100c16;border-radius:6px;background:#b17e47;color:#fff0c3}.title-plaque button:hover{background:#c18b52}.title-plaque small{display:block;font-size:11px;color:#a98a77;margin-top:22px}.busy .hotspot,.busy .actor.npc,.busy .action-dock{pointer-events:none}.busy .caption-line{color:#a08a72}.pause-symbol{position:absolute;right:18px;top:14px;color:#eed6a7;font-size:11px;letter-spacing:.12em;background:#2115259c;padding:5px 9px;border:1px solid #b9956666;z-index:2;pointer-events:none}#toast{position:fixed;top:54px;left:50%;transform:translateX(-50%);z-index:100;background:#e7d2a7;color:#3a2131;border:3px solid #462b39;border-radius:6px;box-shadow:3px 4px 0 #0007;padding:12px 22px;display:none;max-width:80vw;font-size:15px}#toast.error{background:#ecc6b4}.hidden{display:none!important}dialog#dialog{display:none}.sound-row{display:flex;align-items:center;gap:15px}.sound-row input{width:140px;accent-color:#853e5f}
@keyframes arrival{from{opacity:.3;filter:brightness(.5)}to{opacity:1;filter:brightness(1)}}@keyframes point{0%{opacity:1;scale:.5}100%{opacity:0;scale:1.8}}
@media(max-width:1000px){.game-hud{font-size:12px;gap:14px;padding:0 12px}.action-dock{padding:9px;gap:12px}.verbs{grid-template-columns:repeat(3,68px)}.verb{font-size:10px;padding:6px 4px;gap:3px}.verb svg{width:17px}.inventory{min-width:240px;padding:8px;gap:5px}.inventory-slot{width:46px;height:53px}.dock-tool{width:52px}.speech{padding:14px 18px;gap:12px;grid-template-columns:70px 1fr}.speech-portrait{width:70px;height:86px}.speech p{font-size:16px}.choice{font-size:13px}.paper{padding:25px}.game-hud .energy-hud{display:none}}
@media(max-width:650px) and (orientation:portrait){.game-hud{height:54px;gap:7px;flex-wrap:wrap;padding:6px 10px;font-size:11px}.room-name{width:100%;font-size:12px}.hud-controls{position:absolute;top:8px;right:8px}.hud-controls button{width:25px;height:25px}.world-wrap{align-items:flex-start;overflow:visible;flex:1;display:block;background:#160f1d}.stage{width:100%;max-height:none;border:0;overflow:visible;aspect-ratio:16/9;margin-top:15px}.backdrop,.stage .vignette{border-bottom:2px solid #714b52}.actor .hotspot-name,.hotspot .hotspot-name{font-size:9px}.game-overlay{top:100%;bottom:auto;min-height:0;padding:12px 8px;align-items:start;background:#160f1d}.speech{width:100%;max-height:calc(100dvh - 440px);grid-template-columns:1fr;gap:0;padding:14px 16px;min-height:130px}.speech-portrait{display:none}.speech p{font-size:15px;margin-right:20px}.speaker{font-size:11px}.choice{font-size:13px;padding:7px 3px}.speech:before{display:none}.action-dock{height:142px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:65px 55px;gap:8px;padding:9px}.inventory{grid-column:1/-1;grid-row:1;min-width:0;height:60px;justify-content:center;padding:3px}.inventory-slot{width:47px;height:45px}.inventory-slot svg{width:28px;height:28px}.inventory:before{font-size:8px;top:-8px}.verbs{grid-template-columns:repeat(3,55px);gap:3px;justify-content:start}.verb{font-size:9px;padding:3px;gap:2px}.verb svg{width:15px;height:15px}.dock-tools{gap:6px;justify-content:end}.dock-tool{height:51px;width:47px;font-size:9px;gap:2px;border-width:2px}.dock-tool svg{width:22px;height:22px}.caption-line{height:26px;font-size:11px;line-height:22px}.paper-scrim{padding:12px}.paper{padding:22px 18px;max-height:90dvh;width:96vw}.paper h1{font-size:27px}.paper .split{grid-template-columns:1fr;gap:5px}.paper .map-list{grid-template-columns:repeat(2,1fr)}.paper .map-place{font-size:12px;min-height:75px}.paper .crew-pages{grid-template-columns:1fr}.paper .ledger{font-size:11px}.paper .ledger td{padding:7px 3px}.paper .row{gap:10px}.paper .row button{font-size:12px;padding:7px}.title-plaque{padding:27px 23px}.title-plaque h1{font-size:48px}.title-plaque p{font-size:15px}}
@media(max-height:600px) and (orientation:landscape){.game-hud{height:30px;font-size:11px}.stage{width:min(100%,calc((100dvh - 110px)*1.7777778))}.action-dock{height:60px;padding:4px;gap:15px}.verbs{grid-template-columns:repeat(3,65px);gap:3px}.verb{font-size:9px;padding:2px 5px}.verb svg{width:14px;height:14px}.inventory{height:49px;min-width:240px;padding:4px}.inventory-slot{width:40px;height:38px}.inventory-slot svg{height:25px}.dock-tool{height:47px;width:50px;font-size:9px;gap:1px}.dock-tool svg{height:22px}.caption-line{height:20px;line-height:17px;font-size:11px}.speech{padding:10px 16px;grid-template-columns:54px 1fr;max-height:85%;gap:10px}.speech-portrait{width:54px;height:70px}.speech p{font-size:13px;margin-bottom:5px}.speaker{font-size:10px}.choice{font-size:11px;padding:4px}.game-overlay{padding:10px}.paper{max-height:94vh;padding:20px 25px}.paper h1{font-size:25px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
