.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.suspects-screen{--profile-yellow:#e8c36d;position:relative;overflow:hidden;background:#070b0e;color:#eef2f3}
.dossier-briefing{position:relative;width:100%;height:100%;overflow:hidden;background:url("assets/ui/profile-console-standby-v1.png") center/100% 100% no-repeat}
.dossier{position:absolute;inset:0;width:100%;height:100%;font-family:"Pretendard","Apple SD Gothic Neo","Noto Sans KR",sans-serif;transform-origin:50% 80.5%;transition:opacity .24s ease,clip-path .68s cubic-bezier(.16,.88,.24,1),filter .42s ease}
.dossier-background{position:absolute;inset:0;background:url("assets/ui/profile-glass-shell-v1.png?v=20260823-no-center-divider") center/100% 100% no-repeat;pointer-events:none}
.dossier-photo-page{position:absolute;left:18.1%;top:12.1%;width:26.7%;height:64.5%;overflow:hidden;border-radius:8px;background:transparent}
.dossier-photo-page img{display:block;width:96%;height:96%;margin:4% auto 0;object-fit:contain;object-position:center bottom;filter:saturate(.78) contrast(1.025) drop-shadow(0 12px 18px rgba(0,0,0,.22));transition:opacity .18s,transform .38s cubic-bezier(.22,.8,.24,1)}
.dossier-info-page{position:absolute;left:50.45%;top:14.1%;width:25.55%;height:61.5%;padding:1.1% .2%;overflow:hidden;background:transparent;color:#edf1f2}
.file-kicker{display:flex;align-items:center;padding-bottom:1.3%;border:0;color:#d5dddf;font:600 12px/1.2 monospace;letter-spacing:.11em}
.file-kicker:before{display:none}
.file-kicker span{margin-right:auto}.file-kicker b{font-weight:550}
.dossier-type{margin:10.5% 0 2.2%;font-size:30px;font-weight:380;letter-spacing:.17em}
.dossier-info-page h3{margin:0 0 2.5%;font-size:48px;line-height:1.08;font-weight:760;letter-spacing:.05em}
.dossier-meta{margin:0;color:#e1e7e8;font-size:16px;font-weight:550}
.dossier-fields{margin:5.3% 0 0;display:grid;border:0}
.dossier-fields>div{padding:0;border:0}
.dossier-fields dt{color:#8f9da1;font-size:10px;letter-spacing:.11em}
.dossier-fields dd{margin:5px 0 0;color:#e7ecee;font-size:15px;font-weight:580}
.victim-profile .dossier-fields{display:block}
.victim-profile .dossier-fields dd{font-size:13px;white-space:nowrap}
.suspect-profile .dossier-fields{display:block}
.suspect-profile .dossier-fields>div:first-child dd{white-space:nowrap}
.suspect-profile .dossier-fields dd{font-size:13px;line-height:1.45;word-break:keep-all;text-wrap:pretty}
.dossier-note{margin-top:7%;padding:0;border:0}
.dossier-note p{margin:0;max-width:36em;color:#c5ced0;font-size:12px;line-height:1.72;white-space:pre-line;word-break:keep-all;text-wrap:pretty}
.dossier-discovery{display:grid;grid-template-columns:.72fr 1.8fr;gap:5%;margin:7% 0 0;padding:0;border:0}
.dossier-discovery[hidden]{display:none}
.dossier-discovery>div{padding:0;border:0}
.dossier-discovery dt{color:#8f9da1;font-size:10px;letter-spacing:.11em}
.dossier-discovery dd{margin:5px 0 0;color:#e7ecee;font-size:12px;line-height:1.5;font-weight:580;white-space:nowrap}
.victim-profile .dossier-note{position:absolute;left:.2%;right:.2%;top:65.7%;height:14.7%;display:flex;align-items:center;margin:0}
.victim-profile .dossier-note p{width:100%;max-width:none;font-size:11px;line-height:1.55;text-align:left;white-space:pre-line;word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}
.suspect-profile .dossier-note{margin-top:7%}
.suspect-profile .dossier-note p{font-size:13px;line-height:1.75}
.dossier-alibi{position:absolute;left:.2%;right:.2%;top:67%;margin:0;padding:0;border:0}
.dossier-alibi[hidden]{display:none}
.dossier-alibi-label{margin:0 0 1.8%;color:#8f9da1;font-size:9px;line-height:1.25;letter-spacing:.1em}
.dossier-alibi-text{margin:0;max-width:37em;color:#e3e9ea;font-size:11px;line-height:1.55;font-weight:540;word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}
.dossier-tabs{position:absolute;left:79.55%;top:24%;width:5.65%;height:43.55%;display:grid;grid-template-rows:repeat(5,1fr);gap:.35%}
.dossier-tab{position:relative;display:grid;place-items:center;border:0;border-radius:0;background:transparent;color:#a8b2b5;cursor:pointer;padding:0 3%;text-align:center;white-space:nowrap;word-break:keep-all;font:530 clamp(8px,.62vw,11px)/1 inherit;transition:color .18s,text-shadow .18s}
.dossier-tab:hover{color:#eef2f3;text-shadow:0 0 8px rgba(232,195,109,.4)}
.dossier-tab.active{border:0;background:transparent;color:#f4d98d;box-shadow:none;text-shadow:0 0 10px rgba(232,195,109,.55)}
.dossier-tab:focus,.dossier-tab:focus-visible{outline:0}
.dossier-tab.active:before{content:"";position:absolute;left:-4px;top:50%;width:7px;height:7px;border-radius:50%;transform:translateY(-50%);background:var(--profile-yellow);box-shadow:0 0 10px rgba(232,195,109,.75)}
.dossier-tab.seen:after{content:"✓";position:absolute;right:8%;top:9%;color:var(--profile-yellow);font-size:8px}
.paper-nav{position:absolute;bottom:7.1%;height:5.35%;border:0;border-radius:0;background:transparent;color:#c7d0d2;padding:0 .35%;cursor:pointer;font-size:14px;letter-spacing:.03em;transition:color .18s,text-shadow .18s}
.paper-nav:hover{border:0;background:transparent;color:#f2d78f;text-shadow:0 0 8px rgba(232,195,109,.45)}
.paper-nav:disabled{opacity:.25;cursor:default}.paper-nav.prev{left:11.05%;width:6.2%}.paper-nav.next{right:7.8%;width:12.5%;color:#ead18c;white-space:nowrap}.paper-nav.next span{white-space:nowrap}
.brief-progress{position:absolute;left:50%;bottom:7.8%;width:29%;height:4.2%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;color:#e4d396;font:600 10px/1 monospace;letter-spacing:.1em}
.brief-progress i{display:none}
.brief-progress b{display:none}
.suspects-screen.interface-standby .dossier{opacity:0;clip-path:inset(79% 0 0);filter:blur(3px);pointer-events:none}
.suspects-screen.interface-rising .dossier{animation:glass-interface-rise .76s cubic-bezier(.16,.88,.24,1) both}
.dossier.turning .dossier-photo-page img{opacity:.38;transform:translateX(-1.5%)}
.dossier.turning .dossier-info-page{animation:data-shift .38s ease both}
@keyframes glass-interface-rise{0%{opacity:0;clip-path:inset(79% 0 0);filter:blur(3px)}55%{opacity:1;filter:blur(0)}100%{opacity:1;clip-path:inset(0);filter:none}}
@keyframes data-shift{0%{opacity:1;transform:translateX(0)}45%{opacity:.15;transform:translateX(-1.5%)}100%{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.dossier,.suspects-screen.interface-rising .dossier{animation:none;transition:none}}
