.meeting-game{padding:24px;min-height:100vh;background:#1e303c;color:#233947}.meeting-game .computer-screen{max-width:1500px;margin:auto;border:1px solid #58707a;border-radius:12px;overflow:hidden;background:#f2efe5;box-shadow:0 24px 80px #0005}.meeting-top{display:flex;align-items:center;gap:30px;background:#243b4b;color:#dfe7e6;padding:16px 24px;font-size:13px}.meeting-top button{background:none;color:inherit;padding:0;margin-right:auto}.meeting-layout{padding:22px;display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:20px}.meeting-heading{display:flex;justify-content:space-between;align-items:center;height:70px;border-bottom:1px solid #c9c7bb;padding:0 18px;background:#faf8ef}.meeting-heading h1{font-size:23px;margin:3px 0}.meeting-heading small{font-size:11px;color:#7d867f}.meeting-heading>span{white-space:nowrap;font-size:13px;letter-spacing:1px;color:#687a80}.meeting-heading b{font-size:23px;color:#254b59}.meeting-left{min-width:0}.meeting-stage{position:relative;height:clamp(400px,38vw,560px);overflow:hidden;background:#eae3d3;border:1px solid #c5c1b4;border-top:0}.meeting-character{position:absolute;inset:25px 29% 0 0;display:flex;align-items:end;justify-content:center}.meeting-character .cast-portrait{width:100%;height:100%;object-fit:contain;object-position:bottom;animation:none;transform:none}.meeting-live{position:absolute;z-index:2;top:18px;left:20px;font-size:10px;letter-spacing:1px;color:#51716e}.meeting-trust{position:absolute;right:20px;top:18px;z-index:2;display:flex;align-items:center;gap:12px;font-size:10px;color:#64736e}.meeting-trust b{font-size:22px;letter-spacing:3px;color:#bf6454}.meeting-trust i{font-style:normal;color:#b2b6b0}.meeting-bubble{position:absolute;top:85px;right:24px;width:42%;background:#fffdf5;border:2px solid #324d5a;border-radius:18px;padding:23px;box-shadow:5px 7px 0 #253b4616;z-index:3}.meeting-bubble:before{content:'';position:absolute;left:-13px;top:50px;width:22px;height:22px;background:#fffdf5;border-left:2px solid #324d5a;border-bottom:2px solid #324d5a;transform:rotate(45deg)}.meeting-bubble small{font-size:10px;color:#8a968f}.meeting-bubble p{font-size:clamp(16px,1.45vw,22px);line-height:1.75;margin:8px 0;word-break:keep-all;overflow-wrap:anywhere}.meeting-bubble button{background:#e9eee9;color:#365a61;padding:8px 10px;font-size:12px;margin-top:10px}.meeting-name{position:absolute;bottom:60px;left:20px;background:#243b4beF;color:white;padding:12px 24px;border-left:4px solid #c1a069;display:flex;gap:9px;flex-direction:column;z-index:3}.meeting-name b{font-size:20px}.meeting-name span{font-size:11px;color:#c6d3d7}.meeting-prev,.meeting-next{position:absolute;bottom:15px;background:#294b5c;color:#fff;padding:10px 15px;font-size:12px;z-index:3;border-radius:4px}.meeting-prev{left:15px}.meeting-next{right:15px}.meeting-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:12px}.meeting-actions button{padding:17px 10px;background:#294b5c;color:white;border-radius:5px;font-size:16px;border-bottom:4px solid #162f3b}.meeting-actions .meeting-object{background:#a54a40;border-color:#75362f}.meeting-actions button:last-child{background:#37766e;border-color:#23534c}.meeting-game button:disabled{opacity:.4;cursor:default}.meeting-footnote{font-size:11px;color:#74817b;margin:12px 0 0;text-align:center}.meeting-right{display:flex;flex-direction:column;gap:16px;min-width:0}.meeting-cabinet{background:#fcfaf2;border:1px solid #cccbbf;border-radius:6px;overflow:hidden}.meeting-cabinet header{padding:18px 18px 12px}.meeting-cabinet header small{letter-spacing:2px;font-size:9px;color:#88958d}.meeting-cabinet h2{font-size:20px;margin:6px 0}.meeting-cabinet h2 span{float:right;color:#9ca69e;font-size:15px}.meeting-cabinet .case-file{margin:0;padding:14px 16px;border-top:1px solid #e1e0d7;width:100%;background:transparent}.meeting-cabinet .case-file b{font-size:13px}.meeting-dali{flex:1;min-height:290px;display:flex;align-items:center;flex-direction:column;background:#e1e9e2;border:1px solid #c7d2c8;border-radius:8px;padding:18px 16px 10px;position:relative;overflow:hidden}.meeting-dali-speech{position:relative;z-index:1;background:#fffef6;border-radius:12px;padding:14px 17px;box-shadow:0 3px 0 #31493812;width:100%}.meeting-dali-speech b{color:#a57c43;font-size:12px}.meeting-dali-speech p{font-size:13px;line-height:1.7;margin:5px 0}.standing-dali{width:190px;height:190px;overflow:hidden;position:relative;margin-top:6px}.standing-dali img{position:absolute;width:200%;height:200%;max-width:none;left:0;top:0;object-fit:fill}.meeting-dali>small{font-size:9px;color:#7c9084;margin-top:auto}.meeting-game .file-layer{inset:65px 15px 20px;position:absolute;z-index:20}.meeting-intro{position:absolute;inset:0;width:100%;height:100%;z-index:100;background:#1b3048ed;color:#fff9e8;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;animation:meeting-arrival .35s ease-out}.meeting-intro small{letter-spacing:4px;color:#c7b788}.meeting-intro strong{font-size:clamp(30px,5vw,70px);border-block:2px solid #c7b788;padding:22px 50px;letter-spacing:7px}.meeting-intro span{font-size:18px}.meeting-intro i{font-size:11px;opacity:.6;font-style:normal}.dialogue-history{display:grid;gap:8px;max-height:45vh;overflow:auto}.dialogue-history button{display:flex;gap:14px;text-align:left;padding:15px;background:#f1f0e8;color:#304b57;font-size:14px;line-height:1.7}.dialogue-history button[aria-current=true]{outline:2px solid #477f7e;outline-offset:-2px}.dialogue-history small{color:#a15241;white-space:nowrap}.meeting-stage.issue .meeting-bubble{border-color:#477f6c}.meeting-stage.hint .meeting-bubble{border-color:#ae7660}@keyframes meeting-arrival{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}
@media(max-width:950px){.meeting-game{padding:8px}.meeting-layout{padding:12px;gap:12px;grid-template-columns:minmax(0,1fr) 230px}.meeting-bubble{right:14px;padding:16px;width:46%}.meeting-heading h1{font-size:19px}.meeting-stage{height:450px}.standing-dali{width:165px;height:165px}}
@media(max-width:700px){.meeting-layout{grid-template-columns:1fr}.meeting-top{padding:12px;gap:12px;font-size:10px}.meeting-heading{padding:12px;height:auto;gap:10px}.meeting-heading h1{font-size:18px}.meeting-stage{height:490px}.meeting-character{inset:130px 15% 0 0}.meeting-bubble{top:60px;right:16px;width:65%;padding:14px}.meeting-bubble p{font-size:16px}.meeting-name{bottom:60px;padding:10px 16px}.meeting-actions button{font-size:13px;padding:14px 5px}.meeting-right{display:grid;grid-template-columns:1fr 1fr}.meeting-dali{min-height:260px;padding:10px}.meeting-dali-speech p{font-size:11px}.standing-dali{width:140px;height:140px}.meeting-cabinet .case-file{padding:13px 8px}.meeting-cabinet .case-file b{font-size:11px}.meeting-game .file-layer{position:fixed;inset:60px 8px 20px}.meeting-intro strong{padding:20px;letter-spacing:3px}}
@media(prefers-reduced-motion:reduce){.meeting-intro{animation:none}}
.meeting-game .standing-dali{width:246px;max-width:100%;height:auto;aspect-ratio:714 / 551;flex-shrink:0}
.meeting-game .standing-dali img{width:200%;height:auto;max-width:none;object-fit:contain;transform:translate(0,0)}
.meeting-game .standing-dali[data-expression="happy"] img{transform:translate(0,-50%)}
.meeting-game .standing-dali[data-expression="concerned"] img{transform:translate(-50%,-50%)}
body:has(dialog.evidence-modal[open]) .meeting-game .standing-dali img{transform:translate(-50%,0)}
.meeting-game:has(.file-layer.has-documents) .standing-dali[data-expression="neutral"] img{transform:translate(-50%,0)}
@media(max-width:950px){.meeting-game .standing-dali{width:214px}}
@media(max-width:700px){.meeting-game .standing-dali{width:182px}}
@media(max-width:700px){.meeting-character{inset:210px 15% 0 0}.meeting-bubble{top:55px;width:calc(100% - 32px);max-height:210px;overflow:auto}.meeting-bubble p{font-size:15px;line-height:1.6}.meeting-bubble:before{display:none}.meeting-name{left:12px;max-width:42%;padding:8px 12px}.meeting-name b{font-size:17px}}
.meeting-bubble p,.dialogue-history button span,.document-paper td,.evidence-line strong{white-space:pre-line}

.meeting-intro.leaving{animation:meeting-departure .35s ease-in forwards;pointer-events:auto}@keyframes meeting-departure{to{opacity:0;transform:scale(1.025)}}@media(prefers-reduced-motion:reduce){.meeting-intro.leaving{animation:meeting-departure .35s linear forwards;transform:none}}

.call-ended{display:none;position:absolute;inset:0;z-index:10;align-items:center;justify-content:center;text-align:center;padding:24px;background:#050708;color:#e4e9ec;font-size:clamp(17px,2vw,25px);letter-spacing:.04em}
.meeting-stage.call-powerdown,.meeting-stage.call-disconnected{background:#050708}
.call-powerdown>:not(.call-ended){pointer-events:none;animation:call-switch-off .65s ease-in forwards!important;transform-origin:center}
.call-powerdown .call-ended{display:flex;opacity:0;animation:call-end-message .15s .5s forwards!important}
.call-disconnected>:not(.call-ended){visibility:hidden;pointer-events:none}
.call-disconnected .call-ended{display:flex}
@keyframes call-switch-off{0%{filter:brightness(1);transform:scale(1)}45%{filter:brightness(2);transform:scale(1,.015)}75%{opacity:1;transform:scale(.01,.015)}100%{opacity:0;transform:scale(0)}}
@keyframes call-end-message{to{opacity:1}}
@media(prefers-reduced-motion:reduce){.call-powerdown>:not(.call-ended){animation:call-soft-off .65s linear forwards!important}@keyframes call-soft-off{to{opacity:0}}}

.meeting-dali{position:relative;padding-top:30px}.dali-analysis-clock{position:absolute;right:14px;top:6px;font-size:14px;color:#244757;font-variant-numeric:tabular-nums}

.meeting-game .standing-dali[data-expression="thinking"] img{transform:translate(-50%,0)}
