.studio-reset{margin-top:20px;padding-top:14px;border-top:1px solid #99777755;text-align:left}.studio-reset button{cursor:pointer;padding:10px 14px;border:1px solid #a96868;border-radius:6px;background:#35252b;color:#ffe1d9;font:inherit}.studio-reset button:focus-visible{outline:3px solid #f3c57b;outline-offset:3px}.studio-reset button:disabled{opacity:.6;cursor:wait}.studio-reset-confirm p,.studio-reset-status{font-size:14px;line-height:1.5;color:inherit}.studio-reset-confirm[hidden]{display:none!important}.studio-reset [data-reset-cancel]{background:#25312d;border-color:#81988e;color:#e8f5ed}*{box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}body,html{width:100%;height:100%;overflow:hidden;background-color:#050408;color:#e0e0e0}#canvas-container{width:100vw;height:100vh;position:absolute;top:0;left:0;z-index:1}#flash{position:absolute;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:99;opacity:0;transition:opacity .15s ease-out}#dim-alert{position:absolute;top:20%;left:50%;transform:translate(-50%,-50%) scale(.5);font-size:2.2rem;font-weight:800;text-transform:uppercase;letter-spacing:4px;color:#fff;pointer-events:none;z-index:100;opacity:0;transition:all .3s cubic-bezier(.175,.885,.32,1.275);text-shadow:0 0 30px rgba(255,255,255,.8)}.boss-banner{position:absolute;top:25px;left:50%;transform:translate(-50%);width:500px;max-width:90%;background:#0f0a19e6;border:2px solid #e74c3c;border-radius:12px;padding:10px 20px;display:flex;flex-direction:column;align-items:center;gap:6px;z-index:15;box-shadow:0 0 30px #e74c3c99}.boss-name{font-size:1.1rem;font-weight:900;letter-spacing:3px;color:#ff6b6b;text-transform:uppercase}.boss-hp-container{width:100%;height:14px;background:#000c;border-radius:6px;overflow:hidden;border:1px solid rgba(255,255,255,.2)}.boss-hp-fill{height:100%;background:linear-gradient(90deg,#c0392b,#e74c3c);box-shadow:0 0 15px #e74c3ce6;transition:width .15s ease-out}.boss-posture-container{width:78%;height:7px;background:#000000bf;border-radius:4px;overflow:hidden;border:1px solid rgba(255,215,0,.28)}.boss-posture-fill{height:100%;width:0%;background:linear-gradient(90deg,#b8860b,gold);box-shadow:0 0 12px #ffd700d9;transition:width .12s ease-out}.ctrl-table{display:flex;flex-direction:column;gap:2px;margin-bottom:14px}.ctrl-head,.ctrl-row{display:grid;grid-template-columns:1.4fr 1fr 1.15fr;align-items:center;gap:10px;padding:7px 12px}.ctrl-head{font-size:.72rem;letter-spacing:1.6px;text-transform:uppercase;color:#ffffff6b;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:4px}.ctrl-sub{margin-top:10px;padding:4px 12px;font-size:.74rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:#a29bfe}.ctrl-row{background:#ffffff08;border-radius:6px}.ctrl-row.highlight{background:#a29bfe17;border-left:2px solid #a29bfe}.ctrl-name{font-size:.86rem;color:#ffffffe6}.ctrl-table .key-badge,.ctrl-table .pad-badge{display:inline-block;padding:3px 9px;border-radius:5px;font-size:.76rem;font-weight:700;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ctrl-table .key-badge{background:#ffffff17;border:1px solid rgba(255,255,255,.18);color:#ffffffd1}.ctrl-table .pad-badge{background:#00d2d321;border:1px solid rgba(0,210,211,.38);color:#7fe9e6}.ctrl-note{margin:0 0 14px;padding:9px 12px;font-size:.8rem;line-height:1.55;color:#ffffff9e;background:#00d2d30f;border-left:2px solid rgba(0,210,211,.4);border-radius:5px}.ctrl-note strong{color:#7fe9e6}@media(max-width:640px){.ctrl-head{display:none}.ctrl-row{grid-template-columns:1fr;gap:4px}.ctrl-name{font-weight:700}}.tg-heading{margin:22px 0 6px;font-size:1.02rem;letter-spacing:2px;color:#ffd98a;text-transform:uppercase}.tg-intro{margin:0 0 12px;font-size:.86rem;line-height:1.55;color:#ffffffb8}.telegraph-legend{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.tg-row{display:grid;grid-template-columns:18px 168px 1fr;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;background:#ffffff09;border-left:3px solid transparent}.tg-swatch{width:14px;height:14px;border-radius:3px}.tg-name{font-weight:800;font-size:.82rem;letter-spacing:1.2px}.tg-desc{font-size:.8rem;color:#ffffffa8}.tg-parry{border-left-color:#fc3}.tg-parry .tg-swatch{background:#fc3;box-shadow:0 0 10px #ffcc33e6}.tg-parry .tg-name{color:#fc3}.tg-dodge{border-left-color:#f34}.tg-dodge .tg-swatch{background:#f34;box-shadow:0 0 10px #ff3344e6}.tg-dodge .tg-name{color:#f56}.tg-counter{border-left-color:#3cf}.tg-counter .tg-swatch{background:#3cf;box-shadow:0 0 10px #33ccffe6}.tg-counter .tg-name{color:#3cf}@media(max-width:620px){.tg-row{grid-template-columns:16px 1fr}.tg-desc{grid-column:1 / -1}}.interact-banner{position:absolute;bottom:12%;left:50%;transform:translate(-50%);background:#141023eb;border:2px solid #ffd700;border-radius:30px;padding:10px 24px;display:flex;align-items:center;gap:12px;z-index:20;box-shadow:0 0 25px #ffd70080;animation:bounceBanner 1.5s infinite ease-in-out}.key-hint{background:gold;color:#000;font-weight:800;padding:4px 10px;border-radius:12px;font-size:.85rem}#interact-text{font-weight:700;color:#fff;font-size:1rem;letter-spacing:1px}@keyframes bounceBanner{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,-8px)}}#hud-container{position:absolute;top:0;left:0;width:100%;padding:20px 30px;display:flex;justify-content:space-between;align-items:flex-start;z-index:10;pointer-events:none}.hud-top-left{display:flex;flex-direction:column;gap:10px;pointer-events:auto}.hud-header{display:flex;align-items:center;gap:15px;background:#0f0c19d9;padding:10px 20px;border-radius:12px;border:1px solid rgba(138,43,226,.3);box-shadow:0 8px 32px #0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cat-avatar{font-size:2.2rem;filter:drop-shadow(0 0 10px rgba(255,215,0,.5))}.bars-wrapper{display:flex;flex-direction:column;gap:6px;width:230px}.bar-container{width:100%;height:16px;background:#000000b3;border-radius:8px;overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.1)}.stamina-container{height:12px}.posture-container{height:10px}.bar-fill{height:100%;transition:width .15s ease-out}.hp-fill{background:linear-gradient(90deg,#e74c3c,#ff6b6b);box-shadow:0 0 12px #e74c3ccc}.stamina-fill{background:linear-gradient(90deg,#f1c40f,#f39c12);box-shadow:0 0 10px #f1c40fcc}.posture-fill{background:linear-gradient(90deg,#3498db,#2ecc71);box-shadow:0 0 10px #2ecc71cc}.bar-exhausted{animation:stamina-refused .35s ease-out}@keyframes stamina-refused{0%{filter:brightness(2.6) saturate(.2);transform:translate(0)}25%{transform:translate(-3px)}55%{transform:translate(3px)}to{filter:brightness(1) saturate(1);transform:translate(0)}}.bar-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.62rem;font-weight:700;color:#fff;text-shadow:1px 1px 2px #000;letter-spacing:1px}.hud-subinfo{display:flex;gap:12px;align-items:center}.badge{background:#2c3e50cc;color:#ecf0f1;padding:4px 10px;border-radius:6px;font-size:.8rem;font-weight:600;border:1px solid rgba(255,255,255,.15)}.badge-room{background:#2c3e5080;color:#b8c6d1;font-weight:500}.currency-counter{font-weight:700;color:gold;font-size:.9rem;text-shadow:0 0 8px rgba(255,215,0,.4)}.scratch-level-badge{font-size:.8rem;font-weight:600;color:#a29bfe}.hud-top-right{display:flex;gap:10px;pointer-events:auto}.btn-icon{background:#140f1ed9;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:1.3rem;padding:10px 14px;border-radius:10px;cursor:pointer;transition:all .2s}.btn-icon:hover{background:#8a2be299;transform:scale(1.05)}.map-box{max-width:800px}.map-grid-container{background:#0a0814e6;border:2px solid rgba(138,43,226,.4);border-radius:14px;padding:24px;margin:10px 0}.map-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.map-room{background:#ffffff0d;border:2px dashed rgba(255,255,255,.2);border-radius:12px;padding:20px;display:flex;flex-direction:column;align-items:center;gap:8px;transition:all .3s ease}.room-icon{font-size:1.8rem}.room-label{font-size:.85rem;font-weight:700;color:#aaa}.active-room{background:#8a2be240!important;border:2px solid #a29bfe!important;box-shadow:0 0 20px #a29bfe99!important;transform:scale(1.05)}.active-room .room-label{color:gold!important}.map-legend{font-size:.85rem;color:#bbb}.game-overlay{position:absolute;top:0;left:0;width:100vw;height:100vh;background:#05030ae0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;z-index:50;opacity:1;transition:opacity .3s ease}.modal-hidden{display:none!important;opacity:0}.menu-box,.modal-box{background:linear-gradient(145deg,#141023f2,#0a0814fa);border:2px solid rgba(138,43,226,.4);box-shadow:0 15px 50px #000c,0 0 30px #8a2be233;border-radius:20px;padding:40px 50px;width:90%;max-width:650px;max-height:90vh;overflow-y:auto;text-align:center;display:flex;flex-direction:column;gap:20px}.wide-box{max-width:1180px;padding:34px 40px}.modal-columns{display:grid;grid-template-columns:1fr 1fr;gap:6px 34px;align-items:start;text-align:left}.modal-col{display:flex;flex-direction:column;min-width:0}.modal-col .tg-heading:first-child{margin-top:0}.map-columns{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;align-items:start}.map-columns .map-grid{grid-template-columns:1fr;gap:10px}.map-columns .map-room{padding:10px 14px}.map-columns .room-icon{font-size:1.3rem}@media(max-width:1000px){.modal-columns,.map-columns{grid-template-columns:1fr}.wide-box{max-width:720px}.map-columns .map-grid{grid-template-columns:repeat(3,1fr)}}.game-title{font-size:3.5rem;font-weight:900;letter-spacing:6px;background:linear-gradient(180deg,#fff,#a29bfe);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 0 30px rgba(162,155,254,.5)}.game-subtitle{font-size:1.4rem;color:#e0dcfd;letter-spacing:3px;margin-top:-15px}.game-tagline{font-size:.95rem;color:#888;font-style:italic}.menu-buttons,.modal-footer{display:flex;flex-direction:column;gap:12px;margin-top:10px}.vertical-buttons{display:flex;flex-direction:column;gap:12px}button{font-size:1.05rem;font-weight:700;padding:14px 28px;border-radius:12px;border:none;cursor:pointer;transition:all .2s cubic-bezier(.25,.8,.25,1);letter-spacing:1px}.btn-primary{background:linear-gradient(135deg,#6c5ce7,#8e44ad);color:#fff;box-shadow:0 6px 20px #6c5ce766}.btn-primary:hover{background:linear-gradient(135deg,#7d6df8,#9b59b6);transform:translateY(-2px) scale(1.02);box-shadow:0 8px 25px #6c5ce799}.btn-secondary{background:#ffffff14;color:#dcdde1;border:1px solid rgba(255,255,255,.15)}.btn-secondary:hover{background:#ffffff2e;color:#fff;transform:translateY(-2px)}.progression-card{background:#0006;border-radius:14px;padding:18px 24px;border:1px solid rgba(255,255,255,.08);text-align:left;margin-top:10px}.progression-card h3{font-size:1.05rem;color:gold;margin-bottom:12px;text-transform:uppercase;letter-spacing:1.5px}.prog-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.prog-stat{display:flex;justify-content:space-between;font-size:.88rem}.stat-label{color:#aaa}.stat-val{font-weight:700;color:#a29bfe}.version-tag{font-size:.75rem;color:#555;margin-top:10px}.shop-box{max-width:750px}.upgrades-list{display:flex;flex-direction:column;gap:12px;max-height:340px;overflow-y:auto;padding-right:5px}.upgrade-card{display:flex;align-items:center;gap:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 18px;text-align:left;transition:all .2s}.upgrade-card:hover{background:#8a2be226;border-color:#8a2be266}.upg-icon{font-size:2rem}.upg-info{flex-grow:1}.upg-info h4{font-size:1.05rem;color:#fff}.upg-info p{font-size:.82rem;color:#aaa;margin:2px 0 6px}.upg-cost{font-size:.8rem;color:gold;font-weight:600}.btn-buy{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;padding:8px 16px;font-size:.9rem}.btn-buy:disabled{background:#555;cursor:not-allowed;opacity:.5}.controls-grid{display:flex;flex-direction:column;gap:10px;text-align:left}.control-row{display:flex;justify-content:space-between;align-items:center;background:#ffffff0a;padding:8px 14px;border-radius:8px}.key-badge{background:#8a2be24d;border:1px solid rgba(138,43,226,.5);color:#fff;padding:4px 10px;border-radius:6px;font-weight:700;font-size:.85rem}.ctrl-desc{font-size:.9rem;color:#ddd}.settings-group{display:flex;justify-content:space-between;align-items:center;background:#ffffff0a;padding:14px 20px;border-radius:10px}.settings-group label{font-size:1rem;font-weight:600}.settings-group input[type=range]{width:180px;accent-color:#8e44ad}.gameover-box{border-color:#e74c3c80}.death-title{font-size:3rem;color:#e74c3c;letter-spacing:4px;text-shadow:0 0 20px rgba(231,76,60,.6)}.gp-focus{outline:3px solid #00d2d3!important;outline-offset:3px!important;box-shadow:0 0 20px #00d2d3!important;transform:scale(1.04)!important}.settings-block{border-top:1px solid rgba(255,255,255,.12);padding-top:14px;margin-top:6px;text-align:left}.settings-heading{font-size:1rem;letter-spacing:2px;color:#7fe9e6;text-transform:uppercase;margin:0 0 6px}.settings-note{margin:0 0 12px;font-size:.8rem;line-height:1.5;color:#ffffff9e}.settings-note strong{color:#a8ffd0}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.settings-row label{margin:0}.settings-row input[type=checkbox]{width:22px;height:22px;accent-color:#a29bfe}.settings-row select{background:#ffffff14;border:1px solid rgba(255,255,255,.22);color:#ffffffe6;border-radius:6px;padding:5px 9px;font-size:.85rem}#villa-lesson{position:fixed;left:50%;bottom:26px;transform:translate(-50%);width:min(620px,calc(100% - 48px));padding:14px 22px;box-sizing:border-box;color:#eee0c7;background:#1c191de0;border:1px solid #b9996555;border-radius:5px;text-align:center;font:15px/1.5 Georgia,serif;pointer-events:none;z-index:65}#downfall-overlay{position:fixed;inset:0;z-index:999;align-items:center;justify-content:center;pointer-events:auto}.cinema-bar{position:absolute;left:0;right:0;height:11vh;background:#08070b;z-index:2}.cinema-bar-top{top:0}.cinema-bar-bottom{bottom:0}#downfall-black{position:absolute;inset:0;background:#08070b;opacity:0}#downfall-title{position:relative;text-align:center;color:#e9d5b1;opacity:0;transition:opacity .6s;text-shadow:0 3px 20px #000}#downfall-title span{font:13px/2 Georgia,serif;letter-spacing:.7em}#downfall-title h2{font:clamp(25px,5vw,62px)/1.1 Georgia,serif;margin:14px 18px;font-weight:400}#downfall-title p{color:#c2b5a3;font:italic 16px Georgia,serif}@media(max-width:700px),(pointer:coarse){.hud-top-left{position:relative}#villa-lesson{position:absolute;top:calc(100% + 10px);bottom:auto;left:0;transform:none;width:min(620px,calc(100vw - 60px));text-align:left;font-size:12px;padding:8px 12px}}
