*{margin:0;padding:0;box-sizing:border-box}body{font-family:Hiragino Kaku Gothic ProN,Meiryo,sans-serif;background:#000;overflow:hidden;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center;min-height:100vh}#game-container{width:1280px;height:720px;position:relative;overflow:hidden}.screen{position:absolute;top:0;left:0;width:100%;height:100%;display:none;flex-direction:column;align-items:center;justify-content:center}.screen.active{display:flex}.hidden{display:none!important}#title-screen{background:url(https://pub-9b1230e072d346798e4f3408a29ff2b6.r2.dev/assets/backgrounds/title.png) center center / cover no-repeat;justify-content:flex-end;padding-bottom:80px}.title,.subtitle{display:none}.menu{display:flex;flex-direction:column;gap:1rem;align-items:center}.menu button,#save-load-screen button,#log-screen button,#config-screen button{padding:.8rem 2rem;font-size:1.1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;transition:all .3s ease;border-radius:4px}.menu button:hover,#save-load-screen button:hover,#log-screen button:hover,#config-screen button:hover{background:#fff3;border-color:#ffffff80;transform:scale(1.05)}#game-screen{background:#000}#background{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;transition:opacity .5s ease;filter:brightness(.5)}#characters{position:absolute;bottom:160px;left:0;width:100%;height:calc(100% - 140px);display:flex;justify-content:center;align-items:flex-end;z-index:10;pointer-events:none}.character{width:700px;height:100%;background-size:contain;background-repeat:no-repeat;background-position:bottom center;transition:all .3s ease;opacity:1}.character.fade-out{opacity:0;transform:translate(30px);transition:opacity .5s ease,transform .5s ease}.character.fade-in{animation:characterFadeIn .4s ease forwards}@keyframes characterFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.character.highlight{filter:brightness(1.1)}.character:not(.highlight):not(:empty){filter:brightness(.7)}#text-window{position:absolute;bottom:0;left:0;width:100%;height:180px;background:linear-gradient(to top,#000000f2,#000c);padding:15px 30px;cursor:pointer;z-index:20}#speaker-name{font-size:1.2rem;color:#fc0;margin-bottom:8px;min-height:1.4rem}#message-text{font-size:1.1rem;color:#fff;line-height:1.7;min-height:90px}#click-indicator{position:absolute;bottom:15px;right:30px;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:12px solid #fff;animation:bounce .8s infinite;opacity:0}#click-indicator.show{opacity:1}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}#choices{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;gap:.8rem;z-index:100}#choices button{padding:1rem 2rem;font-size:1.1rem;background:#000000d9;border:2px solid #fff;color:#fff;cursor:pointer;transition:all .3s ease;min-width:500px}#choices button:hover{background:#fff3;transform:scale(1.02)}#game-ui{position:absolute;top:10px;right:10px;display:flex;gap:5px;z-index:30}#game-ui button{padding:6px 12px;font-size:.85rem;background:#00000080;border:1px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;transition:all .2s ease}#game-ui button:hover{background:#fff3}#game-ui button.active{background:#ffc80080;border-color:#fc0}#save-load-screen,#log-screen,#config-screen{background:#000000f2}#save-load-screen h2,#log-screen h2,#config-screen h2{color:#fff;margin-bottom:1.5rem;font-size:1.8rem}#save-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:800px;margin-bottom:1.5rem}.save-slot{width:240px;height:150px;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;overflow:hidden}.save-slot:hover{background:#fff3;transform:scale(1.02)}.save-slot-image{flex:1;background-size:cover;background-position:center;background-color:#333}.save-slot-info{padding:8px;color:#fff;font-size:.85rem;background:#00000080}#log-content{width:80%;max-height:400px;overflow-y:auto;margin-bottom:1.5rem;padding:1rem;background:#ffffff0d;border-radius:8px}.log-entry{padding:.6rem;border-bottom:1px solid rgba(255,255,255,.1);color:#fff}.log-entry-speaker{color:#fc0;margin-bottom:.2rem}.config-item{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.2rem;color:#fff}.config-item label{width:120px;text-align:right}.config-item input[type=range]{width:180px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#ffffff1a}::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff80}#cg-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-size:contain;background-repeat:no-repeat;background-position:center;background-color:#000000e6;z-index:15;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}#status-bar{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:8px;z-index:30;padding:10px;background:#0009;border-radius:8px;min-width:150px}.stat-item{display:flex;align-items:center;gap:8px}.stat-label{color:#fff;font-size:.85rem;min-width:30px}.stat-gauge{flex:1;height:12px;background:#fff3;border-radius:6px;overflow:hidden}.stat-fill{height:100%;background:linear-gradient(90deg,#4facfe,#00f2fe);border-radius:6px;transition:width .5s ease}.stat-fill.low{background:linear-gradient(90deg,#ff6b6b,orange)}.stat-value{color:#fff;font-size:.85rem;min-width:30px;text-align:right}#stat-popup{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:15px 30px;background:#000000d9;border:2px solid #ffcc00;border-radius:8px;color:#fff;font-size:1.3rem;z-index:200;animation:popIn .3s ease}#stat-popup.positive{border-color:#4facfe;color:#4facfe}#stat-popup.negative{border-color:#ff6b6b;color:#ff6b6b}@keyframes popIn{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}50%{transform:translate(-50%,-50%) scale(1.1)}to{transform:translate(-50%,-50%) scale(1);opacity:1}}#text-window.monologue{background:linear-gradient(to top,#1e0032f2,#320050cc)}#text-window.monologue #speaker-name{color:#c9f}#text-window.monologue #message-text{color:#e0c0ff;font-style:italic}#records-screen{background:url(https://pub-9b1230e072d346798e4f3408a29ff2b6.r2.dev/assets/backgrounds/list.png) center center / cover no-repeat;padding:30px 40px;overflow:hidden}#records-screen h2{color:#4facfe;font-size:1.6rem;margin-bottom:8px;text-align:center}.records-description{color:#fff9;margin-bottom:20px;text-align:center}.episode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-height:calc(100vh - 180px);overflow-y:auto;padding:10px 20px;margin:0 auto}.episode-card{background:#2a2a4ee6;border-radius:10px;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s;border:1px solid rgba(79,172,254,.2);min-height:180px}.episode-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #4facfe4d;border-color:#4facfe}.episode-card.locked{opacity:.5;cursor:not-allowed}.episode-card.locked:hover{transform:none;box-shadow:none;border-color:transparent}.episode-card.coming-soon{opacity:.7}.episode-header{display:flex;gap:10px;padding:10px 12px;background:#0000004d}.episode-thumbnail{width:60px;height:70px;background:#1a1a2e;border-radius:4px;background-size:contain;background-position:center bottom;background-repeat:no-repeat;flex-shrink:0;border:1px solid rgba(79,172,254,.3)}.episode-info{flex:1;min-width:0}.episode-date{font-size:.65rem;color:#4facfe;margin-bottom:2px}.episode-title{font-size:.85rem;color:#fff;font-weight:700;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.episode-status{font-size:.6rem;padding:2px 6px;border-radius:8px;display:inline-block}.episode-status.available{background:#4caf504d;color:#4caf50}.episode-status.coming-soon{background:#ff98004d;color:#ff9800}.episode-status.locked{background:#9e9e9e4d;color:#9e9e9e}.episode-body{padding:8px 12px}.episode-description{font-size:.75rem;color:#aaa;line-height:1.4;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}#patients-screen{background:linear-gradient(135deg,#1a1a2e,#16213e);padding:30px}#patients-screen h2{color:#4facfe;font-size:1.8rem;margin-bottom:20px}#patient-filters{display:flex;gap:10px;margin-bottom:20px}.filter-btn{padding:8px 16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:20px;cursor:pointer;transition:all .2s;font-size:.9rem}.filter-btn:hover{background:#fff3}.filter-btn.active{background:#4facfe;border-color:#4facfe}.patient-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:15px;max-height:480px;overflow-y:auto;padding:10px}.patient-card{background:#2a2a4ecc;border-radius:10px;overflow:hidden;cursor:pointer;transition:transform .2s;border:2px solid transparent}.patient-card:hover{transform:scale(1.05);border-color:#4facfe}.patient-card.locked{opacity:.4;filter:grayscale(1)}.patient-portrait{width:100%;height:160px;background:#1a1a2e;background-size:contain;background-position:center bottom;background-repeat:no-repeat}.patient-portrait.unknown{display:flex;align-items:center;justify-content:center;font-size:3rem;color:#444}.patient-name{padding:10px;text-align:center;font-size:.9rem;color:#fff;background:#0000004d}#chart-screen{background:linear-gradient(135deg,#1a1a2e,#16213e);padding:30px}.chart-container{background:#2a2a4e99;border-radius:16px;max-width:800px;width:100%;max-height:650px;overflow:hidden;display:flex;flex-direction:column}.chart-header{display:flex;gap:20px;padding:25px;background:#0000004d}.chart-portrait{width:150px;height:200px;background:#1a1a2e;background-size:contain;background-position:center bottom;background-repeat:no-repeat;border-radius:10px;flex-shrink:0}.chart-info{flex:1}.chart-info h2{color:#4facfe;font-size:1.8rem;margin-bottom:10px}.chart-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.chart-meta span{padding:4px 12px;background:#ffffff1a;border-radius:15px;font-size:.85rem;color:#ccc}.chart-body{padding:20px 25px;overflow-y:auto;flex:1}.chart-section{margin-bottom:20px}.chart-section h3{color:#4facfe;font-size:1rem;margin-bottom:10px;padding-bottom:5px;border-bottom:1px solid rgba(255,255,255,.1)}.chart-section p{color:#ccc;line-height:1.6;font-size:.95rem}.chart-episodes{display:flex;flex-direction:column;gap:8px}.chart-episode-item{padding:12px 15px;background:#0000004d;border-radius:8px;cursor:pointer;transition:background .2s;display:flex;align-items:center;gap:10px}.chart-episode-item:hover{background:#4facfe33}.chart-episode-item.locked{opacity:.5;cursor:not-allowed}.chart-episode-icon{width:8px;height:8px;border-radius:50%;background:#4facfe}.chart-episode-item.locked .chart-episode-icon{background:#666}.chart-episode-title{color:#fff;font-size:.9rem}.chart-actions{padding:20px 25px;background:#0000004d;display:flex;gap:15px;justify-content:center}.chart-actions button{padding:12px 25px;border-radius:25px;font-size:1rem;cursor:pointer;transition:all .2s}#btn-chart-story{background:linear-gradient(135deg,#4facfe,#00f2fe);border:none;color:#fff}#btn-chart-story:hover{transform:scale(1.05);box-shadow:0 5px 20px #4facfe66}#btn-chart-back{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff}#btn-chart-back:hover{background:#ffffff1a}.back-button{margin-top:20px;padding:10px 30px;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:25px;cursor:pointer;transition:all .2s;font-size:1rem}.back-button:hover{background:#fff3}
