/* 신성율42 V10: 신규 개인 노트 · 아침 보고서 · 최종 판결 연출 */
.notebook-panel{margin-top:22px;padding:20px 22px 21px;border:1px solid #65524d;background:linear-gradient(140deg,#1e1716 0%,#100f13 54%,#171214);color:#e9dac8;box-shadow:0 14px 32px #0007,inset 0 0 0 1px #ae92751c}
.notebook-panel.hidden{display:none}
.notebook-head{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid #66524a;padding-bottom:12px}
.notebook-head small{color:#b58a77;letter-spacing:.15em;font:10px var(--mono)}
.notebook-head h3{font:27px var(--serif);margin:5px 0 0}
.notebook-head em{color:#d08c79;font-style:normal}
.notebook-head>span{font-size:12px;color:#cdb0a0;background:#2f2928;padding:6px 8px;border-radius:3px;white-space:nowrap}
.notebook-hint{color:#b7a398;font-size:12px;line-height:1.55;margin:12px 0 14px}
.notebook-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.notebook-controls label,.note-text-label{display:flex;flex-direction:column;gap:7px;color:#cbb49f;font-size:12px}
.notebook-controls select,.note-text-label textarea{width:100%;min-width:0;background:#0d0c10;border:1px solid #716056;color:#f1e2d2;padding:11px;font:14px var(--sans);outline:none;border-radius:2px}
.notebook-controls select:focus-visible,.note-text-label textarea:focus-visible{border-color:#d59d74;box-shadow:0 0 0 2px #b67d523d}
.note-text-label{margin-top:13px}
.note-text-label textarea{resize:vertical;min-height:64px;line-height:1.5}
.notebook-footer{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:11px}
.notebook-footer button{background:linear-gradient(#562827,#33171c);border:1px solid #976259;color:#f2e1d1;padding:11px 22px;font-weight:700;letter-spacing:.05em;cursor:pointer}
.notebook-footer button:hover{border-color:#d59c87;background:linear-gradient(#713633,#462026)}
.notebook-footer small{font-size:11px;color:#a59087}
.notebook-tokens{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}
.notebook-token{border:1px solid #685454;padding:5px 9px;background:#2e2425;color:#ecd1c1;font-size:11px}
.mafia-leader-notice{border:1px solid #874046;background:linear-gradient(135deg,#4e171f,#1e1117);padding:16px;color:#f0c6c1;line-height:1.55;font-weight:700}
/* The file is visually private to each viewer; server snapshot never contains other users' notes. */
.morning-report{position:fixed;z-index:4000;inset:0;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse,#080609a6,#030306e8);backdrop-filter:blur(5px)}
.morning-report.hidden{display:none}
.morning-report-paper{position:relative;display:flex;flex-direction:column;gap:13px;width:min(680px,100%);padding:clamp(25px,5vw,50px);min-height:320px;overflow:hidden;background:
  radial-gradient(circle at 10% 20%,#725c4925,transparent 32%),
  radial-gradient(circle at 86% 80%,#765c3b20,transparent 37%),
  repeating-linear-gradient(0deg,transparent 0 27px,#6a544512 28px 29px),
  linear-gradient(124deg,#d2bda1,#eee0c4 43%,#baa183 100%);
  box-shadow:0 35px 95px #000e,inset 0 0 0 1px #594d40,inset 0 0 42px #4e382e42;
  border:8px solid #251c1c;color:#241815}
.morning-report-paper:before{position:absolute;inset:0;content:"";pointer-events:none;opacity:.3;background:repeating-linear-gradient(91deg,transparent 0 2px,#3a29180a 3px 4px);mix-blend-mode:multiply}
.morning-report-paper button{position:absolute;right:15px;top:12px;width:34px;height:34px;color:#432d23;border:1px solid #7b5c4b;background:#d7baa0;font-size:21px;cursor:pointer}
.report-number{font:11px var(--mono);letter-spacing:2px;color:#6e302c;text-transform:uppercase}
.morning-report-paper h2{font:clamp(28px,5vw,49px) var(--serif);margin:9px 0;color:#2a1a17;letter-spacing:1px}
.report-rule{height:3px;background:linear-gradient(90deg,#6d3132,#b18c66 72%,transparent);width:100%}
.morning-report-paper p{font:clamp(18px,3.6vw,25px)/1.7 var(--serif);max-width:100%;min-height:80px;margin:12px 0 7px;word-break:keep-all}
.morning-report-paper p:after{content:"";display:inline-block;height:1em;border-right:2px solid #795248;vertical-align:middle;animation:reportCaret .6s steps(1) infinite}
.morning-report-paper strong{align-self:flex-end;border:5px solid #9e3e39;color:#92342e;transform:rotate(-10deg);font:800 clamp(19px,4vw,34px) var(--serif);padding:4px 16px;letter-spacing:4px;opacity:.9}
.morning-report-paper small{margin-top:auto;color:#684f46;font-size:11px}
.morning-report.report-enter .morning-report-paper{animation:reportEnter .6s cubic-bezier(.2,.9,.2,1) both}
.morning-report.report-enter strong{animation:reportStamp .55s 1.8s both}
@keyframes reportEnter{from{transform:translateY(34px) rotate(-2deg);opacity:0}to{transform:translateY(0) rotate(0);opacity:1}}
@keyframes reportStamp{from{opacity:0;transform:rotate(-16deg) scale(1.8)}65%{opacity:1;transform:rotate(-10deg) scale(.9)}to{opacity:.9;transform:rotate(-10deg) scale(1)}}
@keyframes reportCaret{50%{opacity:0}}
/* Final judgment: silence, suspense, and a single stamp over the scene. */
.verdict-stamp{display:none;position:absolute;z-index:14;left:50%;top:71%;width:max-content;max-width:92%;padding:12px clamp(16px,3vw,34px);border:5px double #de5f55;color:#f8dfd5;background:#300b11dd;font:900 clamp(25px,4.5vw,68px) var(--serif);text-align:center;letter-spacing:.1em;box-shadow:0 0 35px #ce283747,0 0 90px #0009;transform:translate(-50%,-50%) rotate(-10deg)}
.transition-overlay.is-verdict .verdict-stamp{display:block;animation:verdictStampIn .7s 1.4s both}
.transition-overlay.is-verdict.scene-vote .verdict-stamp{border-color:#99b7a3;color:#d2e4d5;background:#1b3328df}
@keyframes verdictStampIn{from{opacity:0;transform:translate(-50%,-50%) rotate(-15deg) scale(1.7);filter:blur(8px)}65%{opacity:1;transform:translate(-50%,-50%) rotate(-9deg) scale(.9);filter:blur(0)}to{opacity:1;transform:translate(-50%,-50%) rotate(-10deg) scale(1)}}
/* Day vs. night table immersion uses current server phase (not clock time). */
.roundtable-world.mode-day .table-lightcone,.roundtable-world.mode-discussion .table-lightcone,.roundtable-world.mode-intro .table-lightcone{opacity:.57;filter:blur(14px)}
.roundtable-world.mode-night .table-back-wall{filter:brightness(.58) saturate(.75)}
.roundtable-world.mode-night .table-window{box-shadow:0 0 38px #719fcb24,inset 0 0 70px #0c385180}
.roundtable-world.mode-night .table-moon{box-shadow:0 0 48px #9bc2e565,0 0 105px #648fb84c}
.roundtable-world.mode-night .seat-eyes{opacity:.55}
@media(max-width:720px){.notebook-panel{padding:16px}.notebook-head h3{font-size:23px}.notebook-controls{gap:9px}.morning-report-paper{min-height:285px;border-width:5px;padding:25px}.verdict-stamp{top:75%}}
@media(max-width:390px){.notebook-controls{grid-template-columns:1fr}.notebook-head>span{font-size:10px}.morning-report{padding:10px}}
@media(prefers-reduced-motion:reduce){.morning-report.report-enter .morning-report-paper,.morning-report.report-enter strong,.transition-overlay.is-verdict .verdict-stamp,.morning-report-paper p:after{animation:none!important}}
body.reduce-motion .morning-report.report-enter .morning-report-paper,body.reduce-motion .morning-report.report-enter strong,body.reduce-motion .transition-overlay.is-verdict .verdict-stamp{animation:none!important}

/* V10.1 · 본인 전용 밤 보고서의 여러 줄 문장 가독성 */
.night-report-copy{white-space:pre-line;line-height:1.85}
/* 경찰 조사 결과는 본인 전용 보고서에서 줄을 나누어 표시합니다. */
#secretReportBody{white-space:pre-line;line-height:1.85}

/* V10.2 · 공개 사건 보고서 4단계와 경찰 개인 정보 */
#reportBody{white-space:pre-line;font-size:clamp(16px,2.6vw,22px);line-height:1.65;overflow-wrap:anywhere;}
.morning-report-paper{max-height:min(90vh,880px);overflow-y:auto;}
.public-morning-summary{white-space:pre-line;border-left-color:#a96e56;color:#e9d9c5;font-size:13px;line-height:2.1}
.police-only-check{border-left-color:#74a5e9;line-height:1.9}
@media(max-width:540px){#reportBody{font-size:16px;line-height:1.65}.morning-report-paper{padding:25px 22px;gap:8px}}


/* V10.3 morning report: stronger vintage paper + typewriter lines */
.morning-report-paper{background:
  linear-gradient(180deg,rgba(255,250,239,.95),rgba(229,208,177,.96)),
  radial-gradient(circle at 20% 10%,rgba(255,255,255,.65),transparent 26%),
  radial-gradient(circle at 82% 78%,rgba(109,67,38,.10),transparent 24%);
  box-shadow:0 34px 90px rgba(0,0,0,.55),0 0 0 1px rgba(110,76,51,.45),inset 0 0 120px rgba(105,72,48,.12);
}
.report-number{font:11px var(--mono);letter-spacing:2.8px;color:#705244;text-transform:uppercase}
.report-rule{height:2px;background:linear-gradient(90deg,transparent,#7d5a47 18%,#7d5a47 82%,transparent);opacity:.7}
#reportBody{display:flex;flex-direction:column;gap:8px;min-height:132px;white-space:pre-wrap}
.morning-report-paper p{font:clamp(16px,2.45vw,22px)/1.8 var(--mono);letter-spacing:.2px;color:#281b15;text-shadow:0 1px 0 rgba(255,255,255,.22)}
.morning-report-paper p:after{content:"";display:inline-block;width:1px;height:1.1em;margin-left:4px;border-right:2px solid #6e4a3f;vertical-align:middle;animation:reportCaret .7s steps(1) infinite}
.morning-report.report-finished .morning-report-paper p:after{opacity:0}
.report-line{display:block;min-height:1.8em;opacity:.98}
.report-line.done{opacity:1}
#reportStamp{opacity:0;filter:blur(2px);transform:rotate(-11deg) scale(1.7)}
#reportStamp.stamp-ready{animation:reportStamp .42s cubic-bezier(.17,.87,.32,1.35) both}
@keyframes reportCaret{0%,45%{opacity:1}46%,100%{opacity:0}}
@keyframes reportStamp{0%{opacity:0;transform:rotate(-11deg) scale(2.1)}55%{opacity:.95;transform:rotate(-11deg) scale(.92)}100%{opacity:.95;filter:none;transform:rotate(-11deg) scale(1)}}
