body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.story-overlay{align-items:center;background-color:#000000f2;display:flex;font-family:Courier New,Courier,monospace;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.story-container{background-color:#000;height:100%;max-height:100vh;max-width:400px;overflow:hidden;position:relative;width:100%}.story-close-btn{align-items:center;background-color:#000000b3;border:2px solid #fff;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;font-weight:700;height:40px;justify-content:center;position:absolute;right:20px;top:calc(50px + env(safe-area-inset-top));transition:all .2s ease;width:40px;z-index:1001}.story-close-btn:hover{background-color:#fff3;transform:scale(1.1)}.story-progress-bars{display:flex;gap:4px;left:20px;position:absolute;right:80px;top:calc(50px + env(safe-area-inset-top));z-index:1001}.progress-bar-container{background-color:#ffffff4d;border-radius:2px;flex:1 1;height:3px;overflow:hidden}.progress-bar{background-color:#fff;border-radius:2px;height:100%;transition:width .05s linear}.progress-bar.active{background:linear-gradient(90deg,#8b0000,#fff)}.story-slide{display:flex;flex-direction:column;height:100%;width:100%}.story-background,.story-slide{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;position:relative;-webkit-user-select:none;user-select:none}.story-background{filter:grayscale(100%) contrast(120%);flex:1 1;overflow:hidden}.story-fallback-image{align-items:center;background:linear-gradient(135deg,#2c3e50,#34495e);display:none;font-size:4em;height:100%;justify-content:center;width:100%}.story-content{background:linear-gradient(0deg,#000 0,#000c 50%,#0000);bottom:0;color:#fff;left:0;padding:60px 20px 20px;position:absolute;right:0}.story-header{margin-bottom:20px}.story-title{color:#fff;font-family:Arial Narrow,Arial,sans-serif;font-size:1.4em;letter-spacing:1px;margin:0 0 8px;text-shadow:2px 2px 4px #000c}.story-subtitle,.story-title{font-weight:700;text-transform:uppercase}.story-subtitle{color:#ccc;font-size:.9em;letter-spacing:.5px;margin:0}.story-body{margin-bottom:30px}.story-text{color:#fff;font-size:1em;line-height:1.5;margin:0;text-shadow:1px 1px 2px #000c}.story-navigation{align-items:center;display:flex;gap:20px;justify-content:space-between}.nav-btn{background-color:#fff3;border:2px solid #ffffff80;border-radius:50%;color:#fff;font-size:18px;font-weight:700;height:40px;justify-content:center;transition:all .2s ease;width:40px}.nav-btn:hover:not(:disabled){background-color:#ffffff4d;border-color:#fff;transform:scale(1.1)}.nav-btn:disabled{cursor:not-allowed;opacity:.3}.slide-counter{color:#ccc;font-size:.9em;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.pause-indicator{font-size:2em;padding:20px;top:50%;transform:translate(-50%,-50%);z-index:1002}.drag-indicator,.pause-indicator{background-color:#000c;border:2px solid #fff;border-radius:10px;color:#fff;left:50%;position:absolute}.drag-indicator{min-width:200px;padding:15px;text-align:center;top:20px;transform:translateX(-50%);z-index:1003}.drag-arrow{animation:bounce 1s infinite;font-size:1.5em;margin-bottom:5px}.drag-text{font-size:.9em;font-weight:700;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.drag-progress-bar{background-color:#ffffff4d;border-radius:2px;height:4px;overflow:hidden;width:100%}.drag-progress-fill{background:linear-gradient(90deg,#8b0000,#fff);border-radius:2px;height:100%;transition:width .1s ease}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}60%{transform:translateY(-3px)}}@media (max-width:480px){.story-container{max-height:100vh;max-width:100%}.story-title{font-size:1.2em}.story-text{font-size:.9em}.story-content{padding:30px 15px 15px}.story-close-btn{font-size:20px;height:35px;right:15px;width:35px}.story-close-btn,.story-progress-bars{top:calc(40px + env(safe-area-inset-top))}.story-progress-bars{left:15px;right:70px}.nav-btn{font-size:16px;height:35px;width:35px}}.story-slide{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (hover:hover){.story-close-btn:hover{background-color:#fff3;transform:scale(1.1)}.nav-btn:hover:not(:disabled){background-color:#ffffff4d;border-color:#fff;transform:scale(1.1)}}@media (pointer:coarse){.nav-btn,.story-close-btn{min-height:44px;min-width:44px}}.timeline-page{background-color:beige;background-image:linear-gradient(90deg,#0000,#0000 29px,#d0d0d0 0,#d0d0d0 30px,#0000 0,#0000),linear-gradient(0deg,#0000,#0000 19px,#e8e8e8 0,#e8e8e8 20px,#0000 0,#0000);background-position:0 0,0 0;background-repeat:repeat-y,repeat-y;background-size:100% 20px,100% 20px;bottom:0;font-family:Courier New,Courier,monospace;left:0;overflow-y:auto;padding-bottom:env(safe-area-inset-bottom);padding-top:env(safe-area-inset-top);position:fixed;right:0;top:0;z-index:2000}.timeline-header{align-items:center;background-color:#8b0000;border-bottom:2px solid #8b0000;box-shadow:0 2px 8px #0003;color:beige;display:flex;justify-content:space-between;padding:25px 20px}.timeline-title{font-family:Arial Narrow,Arial,sans-serif;font-size:1.5em;font-weight:700;letter-spacing:2px;margin:0;text-transform:uppercase}.timeline-close-btn{background:none;border:none;border-radius:4px;color:beige;cursor:pointer;padding:8px;transition:background-color .2s ease}.timeline-close-btn:hover{background-color:#f5f5dc33}.timeline-days{background-color:beige;border-bottom:1px solid #8b0000;display:flex;flex-wrap:nowrap;gap:8px;justify-content:space-between;padding:0}.timeline-day{align-items:center;border-radius:8px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;min-height:70px;overflow:hidden;padding:0;position:relative;transition:all .3s ease}.timeline-day.available{background-color:initial;border:2px solid #8b0000}.timeline-day.available:hover{box-shadow:0 4px 12px #8b000033;transform:translateY(-2px)}.timeline-day.selected{border:2px solid #8b0000;box-shadow:0 4px 12px #8b00004d;transform:translateY(-5px)}.timeline-day.locked{cursor:not-allowed;opacity:.4}@media (max-width:480px){.timeline-day{min-width:45px;padding:0}}.day-label{background-color:#8b0000;color:#fff;flex-shrink:0;font-family:Arial Narrow,Arial,sans-serif;font-weight:700;padding:8px 4px}.day-label,.timeline-day .day-number{line-height:1;text-align:center;width:100%}.timeline-day .day-number{align-items:center;background-color:#fff;color:#8b0000;display:flex;flex:1 1;font-size:2em;font-weight:400;justify-content:center;padding:5px}.timeline-content{max-height:none;overflow-y:visible;padding:30px 20px}.timeline-day-header{border-bottom:1px solid #8b0000;margin-bottom:20px;padding:0 0 15px 30px}.day-title{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.3em;font-weight:700;letter-spacing:1px;margin:0 0 5px;text-transform:uppercase}.day-date{font-style:italic}.timeline-events{display:flex;flex-direction:column;gap:0}.timeline-event{background-color:initial;border:none;border-radius:0;box-shadow:none;display:flex;gap:20px;margin-bottom:0;min-height:60px;padding:15px 20px 5px 30px;position:relative}.event-time{color:#8b0000;font-size:.9em;font-weight:700;min-width:80px}.event-content{flex:1 1}.event-title{color:#000;font-family:Coming Soon,cursive;font-size:1.1em;font-weight:700;line-height:1.3;margin-bottom:5px}.event-location{color:#666;font-size:.9em;font-style:italic;margin-bottom:8px}@media (max-width:768px){.timeline-container{max-height:95vh;max-width:95vw}.timeline-days{flex-wrap:wrap;gap:8px}.timeline-day{min-width:50px;padding:0}.day-label{font-size:.7em}.day-number{font-size:1.3em}.timeline-event{flex-direction:column;gap:10px}.event-time{min-width:auto}}@media (max-width:480px){.timeline-page{padding-top:max(env(safe-area-inset-top),20px)}.timeline-header{margin-top:10px;padding:15px}.timeline-title{font-size:1.3em}.timeline-content,.timeline-days{padding:15px}.timeline-day{min-width:45px;padding:0}}.app-header{background:#8b0000;border-bottom:3px solid #8b0000;box-shadow:0 2px 8px #0003;padding:15px 20px;z-index:1000}.header-left{gap:15px}.header-center{align-items:center;display:flex;flex:1 1;justify-content:center}.header-right{gap:15px}.back-button-header{border-radius:4px;transition:all .3s ease}.back-button-header:hover{background:#ffffff1a;transform:translateX(-2px)}.book-icon-button,.log-icon-button{align-items:center;background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .3s ease}.book-icon-button:hover,.log-icon-button:hover{background:#ffffff1a;transform:translateY(-2px)}.header-dropdown{display:inline-block;position:relative}.dropdown-button{align-items:center;background:#0000;border:2px solid #fff;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;gap:8px;letter-spacing:1px;padding:8px 16px;text-transform:uppercase;transition:all .3s ease}.dropdown-button:hover{background:#ffffff1a;border-color:#fff;box-shadow:0 4px 12px #fff3;transform:translateY(-2px)}.dropdown-button svg{height:16px;transition:transform .3s ease;width:16px}.dropdown-button.open svg{transform:rotate(180deg)}.dropdown-content{background:beige;border:2px solid #8b0000;border-radius:4px;box-shadow:0 8px 20px #0000004d;left:0;min-width:200px;opacity:0;position:absolute;top:100%;transform:translateY(-10px);transition:all .3s ease;visibility:hidden;z-index:1001}.dropdown-content.open{opacity:1;transform:translateY(0);visibility:visible}.dropdown-item{align-items:center;border-bottom:1px solid #e0e0e0;color:#000;display:flex;font-family:Courier New,Courier,monospace;font-size:.9em;gap:10px;padding:12px 16px;text-decoration:none;transition:all .2s ease}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:#8b00001a;color:#8b0000}.dropdown-item svg{color:#8b0000;height:16px;width:16px}.dropdown-item.active{background:#8b000033;color:#8b0000;font-weight:700}.dropdown-item.active svg{color:#8b0000}@media (max-width:768px){.app-header{padding:12px 15px}.header-left,.header-right{gap:10px}.dropdown-content{min-width:180px;right:-10px}.dropdown-button{font-size:.8em;padding:6px 12px}}@media (max-width:480px){.app-header{padding:10px 12px}.dropdown-content{min-width:160px;right:-15px}.dropdown-button{font-size:.75em;padding:5px 10px}}.case-file-header{margin-bottom:40px;text-align:center}.case-file-title h3{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:2.5em;font-weight:700;letter-spacing:2px;margin:0;text-shadow:2px 2px 4px #0000004d;text-transform:uppercase}.case-file-subtitle{color:#666;font-family:Courier New,monospace;font-size:1.2em;font-style:italic;margin-top:10px}.case-file-meta{background:#8b00001a;border-radius:4px;color:#8b0000;font-family:Courier New,monospace;font-size:1em;margin-top:20px;padding:15px}.case-file-content{margin:0}.case-file-section{background:#ffffffb3;border-left:4px solid #8b0000;border-radius:4px;margin-bottom:30px;padding:20px}.case-file-section:last-of-type{margin-bottom:0}.case-file-section h4{border-bottom:2px solid #8b0000;font-size:1.4em;letter-spacing:1px;margin:0 0 15px;padding-bottom:8px}.case-file-field{margin-bottom:20px}.case-file-field label{margin-bottom:8px}.case-file-value,.case-file-value-select{background:#fffc;border:1px solid #ccc;border-radius:4px;color:#333;font-family:Courier New,monospace;font-size:1em;min-height:20px;padding:12px}.case-file-value-select{cursor:pointer;transition:all .3s ease}.case-file-value-select:hover{background:#fff;border-color:#8b0000;box-shadow:0 2px 8px #8b000033;transform:translateY(-1px)}.case-file-value-select:active{box-shadow:0 1px 4px #8b000033;transform:translateY(0)}.case-file-official-header{background:#0000;border:3px solid #0000;border-radius:8px;margin:70px 20px 20px;padding:30px;position:relative;text-align:center;z-index:2}.official-logo{align-items:center;background-color:#fff;border-radius:50%;display:flex;height:80px;justify-content:center;margin:0 auto 20px;overflow:hidden;padding:10px;width:80px}.official-logo img{height:100%;object-fit:contain;width:100%}.official-title h1{font-size:2.2em;letter-spacing:2px;margin:0 0 10px}.official-title h1,.official-title h2{color:#fff;font-family:Arial Narrow,Arial,sans-serif;font-weight:700;text-shadow:2px 2px 4px #00000080;text-transform:uppercase}.official-title h2{font-size:1.8em;letter-spacing:1px;margin:0 0 15px}.official-title p{color:#b6b4b4;font-family:Courier New,monospace;font-size:.8em;font-weight:700;margin:0;text-shadow:1px 1px 2px #00000080}.case-file-sections{background:#fff;border:3px solid #8b0000;border-bottom:none;display:flex;flex-direction:row;flex-wrap:nowrap;gap:0;margin:0;position:relative;z-index:2}.section-tab{align-items:center;background:beige;border:none;border-right:1px solid #8b0000;color:#333;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;justify-content:flex-start;letter-spacing:1px;line-height:1.2;min-height:60px;padding:15px 15px 20px;text-align:center;text-transform:uppercase;transition:all .3s ease;white-space:pre-line}.section-tab:hover{background:#e8e8d0}.section-tab.active{background:#8b0000;color:#fff}.section-tab.active img,.section-tab.active img[src*=".svg"]{filter:brightness(0) saturate(100%) invert(1)!important}.section-tab img{filter:brightness(0) saturate(100%);height:24px;margin-bottom:8px;width:24px}.case-file-content{background:#fff;border:3px solid #8b0000;border-top:none;margin:20px 10px 0;min-height:500px;padding:30px;position:relative;z-index:2}.case-file-section h3{border-bottom:2px solid #8b0000;font-size:1.6em;letter-spacing:1px;margin:0 0 20px;padding-bottom:10px}.case-file-section h3,.case-file-section h4{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-weight:700;text-transform:uppercase}.case-file-section h4{font-size:1.3em;letter-spacing:.5px;margin:20px 0 15px}.case-file-section{border-bottom:2px solid #e0e0e0;margin-bottom:35px;padding-bottom:25px}.case-file-section:last-of-type{border-bottom:none}.case-file-field{display:flex;flex-direction:column;margin-bottom:25px}.case-file-field label{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;letter-spacing:.5px;margin-bottom:0;text-transform:uppercase}.case-file-input,.case-file-select,.case-file-textarea{background:#ffffffe6;border:2px solid #ccc;border-radius:4px;box-sizing:border-box;color:#333;font-family:Courier New,monospace;font-size:1em;padding:12px;transition:all .3s ease;width:100%}.case-file-input:focus,.case-file-select:focus,.case-file-textarea:focus{border-color:#8b0000;box-shadow:0 0 0 3px #8b00001a;outline:none}.case-file-select-field{background:#fff;border:2px solid #ddd;border-radius:4px;color:#333;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:1em;min-height:20px;padding:12px 15px;transition:all .3s ease;width:100%}.case-file-select-field:hover{background:#f9f9f9;border-color:#8b0000}.case-file-select-field:active{background:#f0f0f0}.case-file-select-button{align-items:center;background-color:#8b0000;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right 20px center;background-repeat:no-repeat;background-size:16px;border:2px solid #8b0000;border-radius:8px;box-shadow:0 4px 12px #8b000033;color:#fff;cursor:pointer;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;justify-content:space-between;letter-spacing:1px;padding:15px 50px 15px 20px;text-align:left;text-transform:uppercase;transition:all .3s ease;width:100%}.case-file-select-button:hover{background-color:#a00000;border-color:#a00000;box-shadow:0 6px 16px #8b00004d;transform:translateY(-2px)}.case-file-select-button:active{background-color:#8b0000;box-shadow:0 4px 12px #8b000033;transform:translateY(0)}.case-file-select-button:focus{border-color:#8b0000;box-shadow:0 0 0 3px #8b00004d;outline:none}.field-input-container{align-items:flex-start;display:flex;gap:10px;position:relative;width:100%}.field-checkmark{align-items:center;border:2px solid #2e8b57;border-radius:50%;box-shadow:2px 2px 6px #2e8b5733;display:flex;flex-shrink:0;font-size:1.2em;height:24px;justify-content:center;margin-top:5px;transform:rotate(-5deg);width:24px}.field-checkmark,.section-checkmark{background:#f0f8f0;color:#2e8b57;font-family:Arial Narrow,Arial,sans-serif;font-weight:700}.section-checkmark{border:1px solid #2e8b57;border-radius:4px;box-shadow:2px 2px 4px #2e8b5733;display:inline-block;font-size:.9em;margin-left:15px;padding:4px 8px;transform:rotate(-2deg)}.field-input-container .case-file-select-field,.field-input-container select,.field-input-container textarea{flex:1 1;min-width:0;width:100%}.evidence-input-group{background:#f9f9f9;border-radius:6px;margin-bottom:20px}.evidence-list{margin-bottom:20px}.evidence-item{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:10px;padding:15px}.evidence-content{flex:1 1}.evidence-content strong{color:#000;font-family:Courier New,Courier,monospace;font-size:1em}.evidence-content p{color:#666;font-family:Courier New,Courier,monospace;font-size:.9em;margin:5px 0 0}.remove-evidence-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#dc3545;cursor:pointer;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-size:1.2em;font-weight:700;height:32px;justify-content:center;margin-left:15px;padding:8px;transition:all .3s ease;width:32px}.remove-evidence-btn:hover{background:#dc35451a;color:#c82333}.remove-evidence-btn:before{content:"×";font-size:1.5em;line-height:1}.add-more-evidence .add-evidence-btn{align-items:center;background:#8b0000;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-weight:700;gap:8px;letter-spacing:1px;padding:12px 24px;text-transform:uppercase;transition:all .3s ease}.add-more-evidence .add-evidence-btn:before{content:"+";font-size:1.2em;font-weight:700;line-height:1}.add-more-evidence .add-evidence-btn:hover{background:#600;box-shadow:0 4px 12px #8b00004d;transform:translateY(-2px)}.suspect-modal-item .select-suspect-btn{margin-left:15px}.suspect-modal-item .select-suspect-btn:hover{box-shadow:0 2px 8px #8b00004d}.case-file-actions{gap:20px;justify-content:center;margin:30px 20px;padding-bottom:100px}.add-evidence-note{font-family:Courier New,monospace;font-size:1em;margin:20px 0;text-align:center}.add-more-evidence{margin-top:20px;text-align:center}.save-draft-btn,.submit-case-btn{border:none;border-radius:6px;cursor:pointer;font-family:Arial Narrow,Arial,sans-serif;font-size:1em;font-weight:700;letter-spacing:1px;min-width:150px;padding:15px 30px;text-transform:uppercase;transition:all .3s ease}.save-draft-btn{background:#007aff;color:#fff}.save-draft-btn:hover{background:#0056cc;box-shadow:4px 4px 12px #007aff4d;transform:translateY(-2px)}.submit-case-btn:hover:not(:disabled){background:#600;box-shadow:4px 4px 12px #8b00004d;transform:translateY(-2px)}.submit-case-btn:disabled{background:#8b0000;cursor:not-allowed}.cover-footer{border-top:2px solid #8b0000;margin-top:40px;padding-top:30px}.cover-footer .synopsis-text{color:#666;line-height:1.6;margin:0;text-align:justify}.cover-footer .synopsis-text,.cover-footer p{font-family:Courier New,monospace;text-transform:none}.cover-footer p{color:#8b0000;font-size:.9em;margin:10px 0}@media (max-width:768px){.case-file-official-header{background:#0000;border:3px solid #0000;margin:70px 15px 15px!important;padding:20px}.case-file-sections{flex-direction:row!important;flex-wrap:nowrap;margin:0 15px}.section-tab{flex:1 1;font-size:.75em;padding:10px 8px;text-align:center}.case-file-content{margin:0 10px;padding:20px}.case-file-actions{align-items:center;flex-direction:column;margin:20px 15px}.save-draft-btn,.submit-case-btn{max-width:300px;width:100%}}@media (max-width:480px){.case-file-official-header{background:#0000;border:3px solid #0000;margin:70px 10px 10px!important;padding:15px}.case-file-sections{flex-direction:row!important;margin:0 10px}.section-tab{font-size:.7em;overflow:hidden;padding:8px 4px;text-overflow:ellipsis;white-space:nowrap}.case-file-content{padding:15px}.case-file-section{margin-bottom:25px}}*{box-sizing:border-box}body{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background-color:beige;color:#000;font-family:Courier New,Courier,monospace;line-height:1.4;margin:0;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);-webkit-user-select:none}.App,body{-webkit-overflow-scrolling:touch;overflow-x:hidden;overflow-y:auto}.App{flex-direction:column;overscroll-behavior:contain;width:100%}.App,.login-container{display:flex;min-height:100vh;min-height:100dvh}.login-container{align-items:center;background:linear-gradient(135deg,beige,#e8e8d0);box-sizing:border-box;justify-content:center;padding:20px}.login-card{background-color:#fdfdf5;border:3px solid #8b0000;border-radius:8px;box-shadow:10px 10px 25px #0006;max-width:350px;padding:30px;position:relative;width:100%}.login-card:before{background-color:#8b0000;border-radius:3px;color:#fff;content:"CLASSIFIED";font-family:Arial Narrow,Arial,sans-serif;font-size:.8em;font-weight:700;left:50%;letter-spacing:1px;padding:5px 15px;position:absolute;text-transform:uppercase;top:-15px;transform:translateX(-50%)}.login-header{margin-bottom:30px;text-align:center}.login-header h1{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.8em;letter-spacing:3px;margin-bottom:10px;text-shadow:2px 2px 4px #0000001a;text-transform:uppercase}.login-header p{color:#666;font-family:Courier New,Courier,monospace;font-size:.9em;margin:5px 0}.login-form{margin-bottom:25px}.form-group{margin-bottom:20px}.form-group label{color:#8b0000;display:block;font-family:Arial Narrow,Arial,sans-serif;font-size:.8em;font-weight:700;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.login-input{background-color:#fff;border:2px solid #8b0000;border-radius:3px;box-sizing:border-box;color:#000;font-family:Courier New,Courier,monospace;font-size:.95em;padding:12px 15px;width:100%}.login-input:focus{border-color:#000;box-shadow:0 0 8px #8b00004d;outline:none}.login-input::placeholder{color:#999;font-style:italic}.login-select{background-color:#fff;border:2px solid #8b0000;border-radius:3px;box-sizing:border-box;color:#000;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.95em;padding:12px 15px;width:100%}.login-select:focus{border-color:#000;box-shadow:0 0 8px #8b00004d;outline:none}.login-select option{font-family:Courier New,Courier,monospace;font-size:.9em;padding:8px}.login-button{background-color:#8b0000;border:2px solid #8b0000;border-radius:3px;color:#fff;cursor:pointer;font-family:Arial Narrow,Arial,sans-serif;font-size:1em;font-weight:700;letter-spacing:1px;padding:15px;text-transform:uppercase;transition:all .2s ease;width:100%}.login-button:hover{background-color:#a00000;border-color:#a00000;box-shadow:0 4px 8px #0003;transform:translateY(-1px)}.login-button:active{transform:translateY(0)}.login-footer{border-top:1px solid #ddd;padding-top:20px;text-align:center}.login-footer p{color:#666;font-family:Courier New,Courier,monospace;font-size:.8em;font-style:italic;margin:5px 0}.home-container{background-color:initial;padding-top:0;position:relative}.home-container,.home-cover{height:100vh;overflow:hidden}.home-cover{align-items:center;display:flex;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1}.cover-background,.cover-overlay{height:100%;left:0;position:absolute;top:0;width:100%}.cover-overlay{background:#0006}.smoke-overlay{left:0;pointer-events:none;top:0;z-index:1}.smoke-layer,.smoke-overlay{height:100%;position:absolute;width:100%}.smoke-layer{animation:smoke-drift 20s linear infinite;background:radial-gradient(ellipse at center,#ffffff26 0,#0000 70%);filter:blur(8px);opacity:.6}.smoke-1{animation-delay:0s;background:radial-gradient(ellipse 800px 400px at 20% 30%,#ffffff1f 0,#0000 70%);filter:blur(12px)}.smoke-2{animation-delay:-7s;background:radial-gradient(ellipse 600px 300px at 80% 70%,#ffffff1a 0,#0000 70%);filter:blur(10px)}.smoke-3{animation-delay:-14s;background:radial-gradient(ellipse 1000px 500px at 50% 50%,#ffffff14 0,#0000 70%);filter:blur(15px)}.smoke-4{animation-delay:-3s;background:radial-gradient(ellipse 400px 200px at 10% 80%,#ffffff0f 0,#0000 60%);filter:blur(6px)}.smoke-5{animation-delay:-10s;background:radial-gradient(ellipse 300px 150px at 90% 20%,#ffffff0d 0,#0000 50%);filter:blur(8px)}.smoke-6{animation-delay:-17s;background:radial-gradient(ellipse 700px 350px at 60% 40%,#ffffff17 0,#0000 65%);filter:blur(14px)}@keyframes smoke-drift{0%{opacity:0;transform:translateX(-100%) translateY(-50%) rotate(0deg)}10%{opacity:.6}90%{opacity:.6}to{opacity:0;transform:translateX(100%) translateY(50%) rotate(1turn)}}.cover-content{color:#fff;display:flex;flex-direction:column;height:100vh;justify-content:space-between;max-width:900px;padding:80px 40px 40px;position:relative;text-align:center;z-index:2}.cover-header{margin-bottom:20px}.cover-header h2{color:#ccc;font-family:Arial Narrow,Arial,sans-serif;font-size:1.2em;font-weight:400;letter-spacing:3px;margin:0 0 5px;text-transform:uppercase}.cover-header p{color:#999;font-family:Courier New,Courier,monospace;font-size:.9em;font-style:italic;margin:0}.main-title{flex-shrink:0;margin:30px 0}.main-title h1{color:beige;font-family:Arial Narrow,Arial,sans-serif;font-size:5em;font-weight:700;letter-spacing:10px;line-height:.9;margin:0;text-shadow:6px 6px 12px #000000e6;text-transform:uppercase}.case-subtitle{color:#8b0000;font-family:Courier New,Courier,monospace;font-size:1.8em;letter-spacing:4px;margin-top:10px;text-shadow:2px 2px 4px #000c;text-transform:uppercase}.current-progress{background:#0009;border:2px solid #8b0000;border-radius:8px;gap:40px;margin:60px 0;padding:30px}.current-progress,.day-indicator{align-items:center;display:flex;justify-content:center}.day-indicator{background:#8b0000;border-radius:50%;flex-direction:column;min-height:80px;min-width:80px;padding:20px}.day-number{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:2.5em;font-weight:700}.day-label{color:beige;font-family:Courier New,Courier,monospace;font-size:.8em;letter-spacing:1px;text-transform:uppercase}.progress-info{flex:1 1;text-align:left}.progress-info h3{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.8em;margin:0 0 10px;text-transform:uppercase}.progress-info .date{color:#ccc;font-family:Courier New,Courier,monospace;font-size:1.1em;margin:5px 0}.progress-info .summary{color:beige;font-family:Courier New,Courier,monospace;font-size:1em;line-height:1.5;margin:10px 0 0}.cover-actions{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin:40px 0}.cover-footer{margin-top:20px}.cover-footer p{color:#ccc;font-family:Courier New,Courier,monospace;font-size:.8em;letter-spacing:1px;margin:5px 0}.cover-footer .synopsis-text{color:#ada8a8!important;font-family:Arial Narrow,Arial,sans-serif!important;font-size:.8em!important;line-height:1.5!important;margin:0!important;text-align:center!important}.bottom-navigation{align-items:center;background:beige;padding:15px 20px}.nav-btn{align-items:center;background:none;border:none;border-radius:8px;color:#8b0000;cursor:pointer;display:flex;flex-direction:column;font-family:Courier New,Courier,monospace;font-size:.8em;gap:5px;letter-spacing:1px;padding:8px;text-transform:uppercase;transition:all .3s ease}.nav-btn:hover{background:#8b00001a;transform:translateY(-2px)}.nav-btn img{filter:invert(20%) sepia(100%) saturate(1000%) hue-rotate(0deg) brightness(40%) contrast(100%);height:24px;width:24px}.nav-btn span{font-weight:700}.nav-btn svg{color:#8b0000;display:block;flex-shrink:0;height:24px!important;margin:0;min-height:24px;min-width:24px;transition:all .2s ease;width:24px!important}.continue-btn,.recap-btn{background:#0000;border:2px solid #8b0000;color:beige;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:1em;letter-spacing:1px;padding:15px 30px;text-transform:uppercase;transition:all .3s ease}.continue-btn:hover,.recap-btn:hover{background:#8b0000;box-shadow:4px 4px 12px #8b000066;color:beige;transform:translateY(-2px)}.continue-btn{background:#8b0000;color:beige}.continue-btn:hover{background:#a00000;border-color:#a00000}.story-recap{background:beige;border-top:3px solid #8b0000;padding:40px 20px}.recap-header{margin-bottom:40px;text-align:center}.recap-header h2{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:2.5em;letter-spacing:3px;margin:0 0 10px;text-transform:uppercase}.recap-subtitle{color:#666;font-family:Courier New,Courier,monospace;font-size:1.2em;font-style:italic}.recap-timeline{margin:0 auto;max-width:900px;position:relative}.recap-day{display:flex;gap:30px;margin-bottom:40px;position:relative}.recap-day.locked{opacity:.6}.day-marker{flex-direction:column;min-width:60px}.day-marker,.day-num{align-items:center;display:flex}.day-num{background:beige;border:3px solid #8b0000;border-radius:50%;color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.8em;font-weight:700;height:50px;justify-content:center;width:50px;z-index:2}.day-line{background:#8b0000;height:100%;margin-top:10px;width:3px}.recap-day:last-child .day-line{display:none}.day-content{background:#fff;border-left:4px solid #8b0000;border-radius:8px;box-shadow:4px 4px 12px #0000001a;flex:1 1;padding:25px}.day-content h4{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.4em;letter-spacing:1px;margin:0 0 10px;text-transform:uppercase}.day-date{color:#666;font-size:.9em;margin:5px 0}.day-date,.day-summary{font-family:Courier New,Courier,monospace}.day-summary{color:#333;font-size:1em;line-height:1.5;margin:15px 0}.key-events{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.event-tag{background:#8b0000;border-radius:12px;color:beige;font-family:Courier New,Courier,monospace;font-size:.8em;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.recap-footer{background:#fff;border:2px solid #8b0000;border-radius:8px;margin-left:auto;margin-right:auto;margin-top:40px;max-width:600px;padding:30px;text-align:center}.recap-footer p{color:#333;font-family:Courier New,Courier,monospace;font-size:1em;margin:10px 0}.recap-footer strong{color:#8b0000;font-weight:700}.home-background{background:linear-gradient(#0009,#0009),url(https://via.placeholder.com/375x667/2c2c2c/ffffff?text=Detective+Office+Background) 50%/cover;filter:grayscale(100%) contrast(120%);height:100%;left:0;position:absolute;top:0;width:100%}.home-overlay{color:#fff;padding:20px;position:relative;text-align:center;z-index:2}.home-overlay h1{font-family:Arial Narrow,Arial,sans-serif;font-size:2.2em;letter-spacing:4px;margin-bottom:20px;text-shadow:3px 3px 6px #000c;text-transform:uppercase}.home-overlay p{font-family:Courier New,Courier,monospace;font-size:1.1em;margin:15px 0;text-shadow:2px 2px 4px #000c}.main-app{display:flex;flex-direction:column;min-height:100vh;padding-bottom:120px}.call-page-container,.case-file-container,.contact-detail-container,.contacts-container,.database-container,.evidence-database,.home-container,.interview-container,.messages-container,.page-content,.suspects-grid{min-height:calc(100vh - 120px)!important;padding-bottom:120px!important}.call-page-container.call-page-container,.contacts-container.contacts-container,.messages-container.messages-container{padding-bottom:140px!important}.page-content{flex:1 1;padding:20px}.page-content h2{border-bottom:2px solid #8b0000;color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.5em;letter-spacing:2px;margin-bottom:15px;padding-bottom:8px;text-transform:uppercase}.page-content p{color:#333;font-family:Courier New,Courier,monospace;font-size:.95em;line-height:1.6}.database-container{-webkit-overflow-scrolling:touch;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;overflow-y:visible;overscroll-behavior:contain;padding-top:160px;position:relative;z-index:150}.database-container.case-file-active .database-tabs{z-index:10}.database-container.case-file-active .case-file-container,.database-container.case-file-active .evidence-database,.database-container.case-file-active .suspects-carousel{position:relative;z-index:2}.database-container.case-file-active{background-attachment:fixed;background-position:center -50px;background-repeat:no-repeat;background-size:cover}body.case-file-active{background-color:#000}.database-container.case-file-active:before{background:#0006;bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:1}.suspects-carousel{background-color:#000;bottom:0;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:50}.suspects-carousel-container{height:100%;position:relative;width:100%}.suspect-card{background-image:linear-gradient(180deg,#0000 0,#0000 60%,#000c);border-radius:0;box-shadow:none;cursor:pointer;filter:grayscale(100%) contrast(1.2);height:100%;left:0;overflow:hidden;position:absolute;top:0;transition:transform .5s ease;width:100%}.suspect-overlay:before{background:linear-gradient(#0000,#0000 0,#0000 40%,#0009 60%,#000c 80%,#000000f2);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:-1}.suspect-overlay{background:none;bottom:0;color:#fff;left:0;padding:40px 20px 100px;position:absolute;right:0;text-align:center}.suspect-info{margin-bottom:15px}.suspect-arrest-info{margin-bottom:8px;text-align:center}.arrest-date,.interview-date{color:#fff;font-family:Courier New,Courier,monospace;font-size:.8em;letter-spacing:.5px;text-shadow:1px 1px 2px #000000e6,0 0 4px #000c;text-transform:uppercase}.interview-date{display:block;margin-top:5px}.suspect-status{background-color:initial;border:2px solid #fff;border-radius:0;color:#fff;display:inline-block;font-family:Courier New,Courier,monospace;font-size:.8em;font-weight:700;letter-spacing:1px;margin-bottom:8px;padding:6px 12px;position:relative;text-shadow:1px 1px 2px #000000e6,0 0 4px #000c;text-transform:uppercase}.suspect-name{color:#fff!important;display:block;font-size:1.4em;letter-spacing:1px;margin:0;text-shadow:2px 2px 4px #000000e6,0 0 8px #000c,0 0 12px #0009;width:100%}.suspect-status.arrested{border-color:#f44;color:#f44}.suspect-status.awaiting{border-color:#fa0;color:#fa0}.suspect-status.processing{border-color:#44f;color:#44f}.suspect-status.interviewed{border-color:#4f4;color:#4f4}.suspect-status.ruled_out{border-color:#888;color:#888}.suspect-card.active{transform:translateX(0)}.carousel-legend{background-color:#000000b3;border-radius:20px;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;left:50%;letter-spacing:1px;padding:8px 16px;text-transform:uppercase;top:150px;transform:translateX(-50%)}.carousel-legend,.carousel-nav{color:#fff;position:absolute;z-index:150}.carousel-nav{align-items:center;background-color:#8b0000;border:2px solid #fff;border-radius:50%;cursor:pointer;display:flex;font-size:24px;height:50px;justify-content:center;top:50%;transform:translateY(-50%);transition:all .3s ease;width:50px}.carousel-nav:hover{background-color:#a00000;transform:translateY(-50%) scale(1.1)}.carousel-nav:disabled{cursor:not-allowed;opacity:.3}.carousel-nav.prev{left:20px}.carousel-nav.next{right:20px}.suspect-view-btn{align-items:center;background-color:#8b0000;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-size:.8em;font-weight:700;gap:8px;justify-content:center;letter-spacing:1px;margin:0 auto;min-width:60px;padding:8px 16px;text-transform:uppercase;transition:background-color .2s ease;white-space:nowrap}.suspect-view-btn:after{content:"›";font-size:1.2em;font-weight:700;line-height:1}.suspect-view-btn:hover{background-color:#a00000}@media (max-width:768px){.carousel-legend{font-size:.8em;top:150px}.carousel-nav{font-size:20px;height:40px;width:40px}}@media (max-width:480px){.carousel-legend{font-size:.7em;padding:6px 12px;top:150px}.carousel-nav{font-size:18px;height:35px;width:35px}.carousel-nav.prev{left:10px}.carousel-nav.next{right:10px}}.bottom-navigation{background-color:#fdfdf5;border-top:3px solid #8b0000;bottom:0;box-shadow:0 -4px 12px #0003;display:flex;justify-content:space-around;left:0;padding:10px 0 calc(25px + env(safe-area-inset-bottom));position:fixed;right:0;transform:translateZ(0);z-index:1000}@supports (padding:max(0px)){.bottom-navigation{padding-bottom:max(10px,env(safe-area-inset-bottom))}}@media screen and (max-width:768px){.bottom-navigation{bottom:0;left:0;position:fixed;right:0;z-index:1000}.calls-container,.contacts-container,.database-container,.evidence-detail-view,.home-container,.messages-container{margin-bottom:0;padding-bottom:calc(140px + env(safe-area-inset-bottom))}}.bottom-navigation button{align-items:center;background:none;border:none;border-radius:5px;color:#8b0000;cursor:pointer;display:grid;grid-template-areas:"icon" "text";grid-template-rows:1fr auto;justify-items:center;min-height:50px;min-width:70px;padding:8px 12px;position:relative;transition:all .2s ease}.bottom-navigation button:hover{background-color:#8b00001a;transform:translateY(-1px)}.bottom-navigation button.active{background-color:#8b000026;border:1px solid #8b0000}.bottom-navigation button svg{color:#8b0000;display:block;flex-shrink:0;grid-area:icon;height:24px!important;margin:0;min-height:24px;min-width:24px;transition:all .2s ease;width:24px!important}.bottom-navigation button div,.bottom-navigation button span{font-size:12px;font-weight:700;grid-area:text;margin-top:4px;text-transform:uppercase;white-space:nowrap}.bottom-navigation button.active svg{color:#8b0000;transform:scale(1.1)}.bottom-navigation button span{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:.7em;font-weight:700;letter-spacing:.5px;line-height:1.2;text-align:center;text-transform:uppercase}.dossier-container{display:flex;flex-direction:column;gap:30px;justify-content:center;margin-bottom:50px;max-width:1400px;padding:20px;width:100%}.dossier-section{background-color:#fdfdf5;border:2px solid #8b0000;border-radius:3px;box-shadow:8px 8px 20px #0000004d;box-sizing:border-box;padding:25px;position:relative;width:100%}.staple-here{background-color:#8b00000d;border:2px dashed #8b0000;color:#8b0000;font-size:.75em;padding:8px 12px;position:absolute;right:15px;top:15px}.dossier-section h2,.staple-here{font-family:Arial Narrow,Arial,sans-serif;font-weight:700;text-transform:uppercase}.dossier-section h2{border-bottom:2px solid #8b0000;font-size:1.3em;letter-spacing:1px;margin-bottom:20px;margin-top:0;padding-bottom:8px}.info-field{align-items:flex-start;border-bottom:1px solid #ccc;display:flex;flex-direction:column;margin-bottom:12px;padding-bottom:8px}.info-field:last-of-type{border-bottom:none}.info-label{color:#333;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;margin-bottom:5px;margin-right:0;text-transform:uppercase;width:auto}.info-value{flex-grow:1;font-family:Courier New,Courier,monospace;font-size:.95em;font-weight:500}.checkbox-group{background-color:#8b000008;border:1px solid #ddd;border-radius:3px;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px;padding:15px}.checkbox-item{align-items:center;cursor:pointer;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-size:.85em;font-weight:700;text-transform:uppercase}.checkbox-item input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;border:2px solid #8b0000;border-radius:2px;cursor:pointer;height:18px;margin-right:8px;position:relative;width:18px}.checkbox-item input[type=checkbox]:checked{background-color:#8b0000}.checkbox-item input[type=checkbox]:checked:after{color:#fff;content:"✓";font-size:12px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.portrait-frame{background-color:#fff;border:2px solid #8b0000;box-shadow:inset 0 0 10px #0000001a;margin:25px 0;padding:8px;text-align:center}.portrait-frame img{border:1px solid #ccc;display:block;filter:grayscale(100%) contrast(120%);height:auto;margin:0 auto;max-width:100%}.secrets-section{background-color:#8b000005;border-radius:3px;border-top:2px solid #8b0000;margin-top:25px;padding:20px}.secrets-section h3{border-bottom:1px solid #8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.2em;letter-spacing:1px;padding-bottom:5px}.secrets-section h3,.secrets-section p{color:#8b0000;font-weight:700;margin-bottom:15px;text-transform:uppercase}.secrets-section p{background-color:#8b00001a;border-left:3px solid #8b0000;font-family:Courier New,Courier,monospace;font-size:.9em;padding:10px}.secrets-section ul{list-style:none;padding-left:0}.secrets-section ul li{font-family:Courier New,Courier,monospace;font-size:.9em;line-height:1.5;margin-bottom:12px;padding-left:20px;position:relative}.secrets-section ul li:before{color:#8b0000;content:"•";font-size:1.5em;left:0;line-height:1;position:absolute;top:-2px}.fingerprint-section{border-top:2px solid #8b0000;margin-top:35px;padding-top:20px}.fingerprint-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);justify-items:center}.fingerprint-item{background-color:#fff;border:2px solid #8b0000;border-radius:3px;box-shadow:3px 3px 8px #0003;box-sizing:border-box;display:flex;flex-direction:column;height:120px;justify-content:space-between;padding:8px;text-align:center;width:100px}.fingerprint-item img{border:1px solid #ccc;filter:grayscale(100%) contrast(150%);height:80px;max-width:100%;object-fit:contain}.fingerprint-label{font-family:Arial Narrow,Arial,sans-serif;font-size:.75em;margin-top:8px}.interview-section{background-color:#fdfdf5;border:3px solid #8b0000;border-radius:5px;box-shadow:10px 10px 25px #0006;margin-top:30px;overflow:hidden;width:100%}.interview-header{align-items:center;display:flex;flex-direction:column;gap:15px;margin-bottom:20px;padding:15px 0;position:relative;z-index:2}.back-button{align-self:flex-start;margin-bottom:0}.suspect-info{margin:0;text-align:center;width:100%}.suspect-info h2{font-size:1.5em;margin:0 0 5px}.suspect-info .suspect-name,.suspect-info h2{color:#fff;font-family:Arial Narrow,Arial,sans-serif;font-weight:700;letter-spacing:1px;text-shadow:2px 2px 4px #000c;text-transform:uppercase}.suspect-info .suspect-name{font-size:1.8em;margin:0 0 8px}.suspect-role{color:#fff;font-family:Courier New,Courier,monospace;font-size:.8em;margin:0;text-shadow:1px 1px 2px #000c;text-transform:uppercase}.timer-section{align-items:center;align-self:flex-end;display:flex;flex-direction:column;gap:8px}.status-light{animation:pulse 2s infinite;background-color:#0f0;border-radius:50%;box-shadow:0 0 10px #0f0;height:12px;width:12px}.status-text{font-family:Courier New,Courier,monospace;font-size:.9em;font-weight:700;text-transform:uppercase}.chat-container{background-color:#fff;padding:20px}.chat-input-section{border-top:2px solid #8b0000;padding-top:15px}.input-container{display:flex;flex-direction:column;gap:15px;margin-bottom:15px}.chat-input{background-color:#fff;border:2px solid #8b0000;border-radius:3px;box-sizing:border-box;color:#000;font-family:Courier New,Courier,monospace;font-size:.95em;padding:12px 15px;width:100%}.chat-input:focus{border-color:#000;box-shadow:0 0 8px #8b00004d;outline:none}.chat-input::placeholder{color:#999;font-style:italic}.input-actions{display:flex;gap:10px}.clear-button,.send-button{background-color:#fff;border:2px solid #8b0000;border-radius:3px;color:#8b0000;cursor:pointer;flex:1 1;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;padding:12px 20px;text-transform:uppercase;transition:all .2s ease}.clear-button:hover,.send-button:hover{background-color:#8b0000;color:#fff}.clear-button:active,.send-button:active{transform:translateY(1px)}.input-info{align-items:center;color:#666;display:flex;font-family:Courier New,Courier,monospace;font-size:.8em;justify-content:space-between}.char-count,.input-status{font-weight:700}.input-status{color:#8b0000;text-transform:uppercase}.interview-controls{background-color:#f0f0f0;border-top:2px solid #8b0000;display:flex;flex-direction:column;gap:20px;padding:20px;text-align:center}.control-group{display:flex;flex-direction:column;gap:15px}.control-button{border:2px solid;border-radius:3px;cursor:pointer;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;padding:12px 20px;text-transform:uppercase;transition:all .2s ease;width:100%}.control-button.primary{background-color:#006400;border-color:#006400;color:#fff}.control-button.primary:hover{background-color:green;border-color:green}.control-button.secondary{background-color:#ff8c00;border-color:#ff8c00;color:#fff}.control-button.secondary:hover{background-color:orange;border-color:orange}.control-button.warning{background-color:#8b0000;border-color:#8b0000;color:#fff}.control-button.warning:hover{background-color:#a00000;border-color:#a00000}.control-button:active{transform:translateY(1px)}.session-info{color:#333;display:flex;flex-direction:column;font-family:Courier New,Courier,monospace;font-size:.85em;gap:5px;text-align:center}.session-id,.session-time{font-weight:700}@media (min-width:768px){.dossier-container{flex-direction:row;flex-wrap:wrap}.dossier-section{min-width:400px;width:45%}.info-field{align-items:baseline;flex-direction:row}.info-label{margin-bottom:0;margin-right:15px;width:140px}.fingerprint-grid{grid-template-columns:repeat(3,1fr)}.input-container{flex-direction:row}.chat-input{flex-grow:1}.interview-controls{align-items:center;flex-direction:row;justify-content:space-between}.control-group{flex-direction:row}.control-button{min-width:120px;width:auto}}@media (min-width:1024px){.fingerprint-grid{grid-template-columns:repeat(6,1fr)}.fingerprint-item{height:130px;width:110px}.fingerprint-item img{height:85px}}.contacts-container{padding:20px 20px 100px}.contacts-list{display:flex;flex-direction:column;gap:15px}.contact-item{align-items:center;background-color:#fdfdf5;border:2px solid #8b0000;border-radius:5px;box-shadow:3px 3px 8px #0003;cursor:pointer;display:flex;margin-bottom:5px;padding:15px;transition:all .2s ease}.contact-item:hover{box-shadow:4px 4px 12px #0000004d;transform:translateY(-1px)}.contact-avatar{align-items:center;background-color:#8b0000;border:2px solid #000;border-radius:50%;box-shadow:2px 2px 6px #0000004d;display:flex;flex-shrink:0;height:50px;justify-content:center;margin-right:15px;overflow:hidden;width:50px}.contact-photo{border-radius:50%;height:100%;object-fit:cover;width:100%}.contact-initial{color:#fff;font-family:Arial Narrow,Arial,sans-serif;font-size:1.2em;font-weight:700;text-transform:uppercase}.contact-info{flex-grow:1;min-width:0}.contact-name{color:#000;font-family:Courier New,Courier,monospace;font-size:17px}.contact-department,.contact-name{font-weight:700;margin-bottom:3px;text-transform:uppercase}.contact-department{color:#aaa;font-size:.8em}.alphabet-header,.contact-department{font-family:Arial Narrow,Arial,sans-serif}.alphabet-header{background-color:#f0f0e0;color:#8b0000;font-size:1.2em;font-weight:700;padding:20px 20px 10px;text-transform:uppercase}@media (max-width:480px){.contact-item{padding:12px}.contact-avatar{height:45px;margin-right:12px;width:45px}.contact-initial{font-size:1.1em}.contact-name{font-size:15px}}.interview-button,.start-interview-btn{background:#8b0000;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.8em;font-weight:700;margin-left:auto;padding:8px 16px;transition:background-color .2s;white-space:nowrap}.interview-button:hover,.start-interview-btn:hover{background:#600}.interview-button:active,.start-interview-btn:active{background:#4b0000}.suspect-actions{margin-top:15px;text-align:center}.start-interview-btn{padding:12px 16px}.contact-detail-container{background-color:beige;min-height:100vh;padding:20px 20px 100px}.contact-detail-header{margin-bottom:30px}.back-button{align-items:center;background:none;border:2px solid #8b0000;border-radius:5px;color:#8b0000;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-weight:700;gap:8px;padding:10px 15px;text-transform:uppercase;transition:all .2s ease}.back-button:hover{background-color:#8b0000;color:#fff}.back-button svg{height:20px;width:20px}.contact-detail-content{margin:0 auto;max-width:500px;text-align:center}.contact-detail-photo{background-color:#fff;border:4px solid #8b0000;border-radius:50%;box-shadow:0 8px 20px #0000004d;height:200px;margin:0 auto 30px;overflow:hidden;width:200px}.contact-detail-photo img{filter:grayscale(100%) contrast(120%);height:100%;object-fit:cover;width:100%}.contact-detail-name{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:2em;font-weight:700;letter-spacing:2px;margin:0 0 20px;text-shadow:2px 2px 4px #0000001a;text-transform:uppercase}.contact-detail-relation{background-color:#8b00001a;border:2px solid #8b0000;border-radius:5px;margin-bottom:30px;padding:15px}.contact-detail-relation p{color:#8b0000;font-family:Courier New,Courier,monospace;font-size:1.1em;font-weight:700;line-height:1.4;margin:0;text-transform:uppercase}.contact-detail-description{background-color:#fdfdf5;border:2px solid #8b0000;border-radius:5px;box-shadow:3px 3px 8px #0003;margin-bottom:30px;padding:25px;text-align:left}.contact-detail-description h3{border-bottom:1px solid #8b0000;color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.3em;font-weight:700;letter-spacing:1px;margin:0 0 15px;padding-bottom:8px;text-transform:uppercase}.contact-detail-description p{color:#333;font-family:Courier New,Courier,monospace;font-size:.95em;line-height:1.6;margin:0}.contact-detail-actions{display:flex;gap:20px;justify-content:center;margin-top:30px}.detail-action-btn{align-items:center;border:2px solid #8b0000;border-radius:5px;cursor:pointer;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-size:1em;font-weight:700;gap:10px;justify-content:center;min-width:120px;padding:15px 25px;text-transform:uppercase;transition:all .2s ease}.detail-action-btn.call-btn{background-color:#006400;border-color:#006400;color:#fff}.detail-action-btn.call-btn:hover{background-color:green;border-color:green;box-shadow:0 4px 8px #0003;transform:translateY(-1px)}.detail-action-btn.message-btn{background-color:#ff8c00;border-color:#ff8c00;color:#fff}.detail-action-btn.message-btn:hover{background-color:orange;border-color:orange;box-shadow:0 4px 8px #0003;transform:translateY(-1px)}.detail-action-btn:active{transform:translateY(0)}.detail-action-btn svg{height:20px;width:20px}.contact-detail-department,.contact-detail-involvement{background-color:#8b00000d;border:1px solid #8b0000;border-radius:5px;margin-bottom:20px;padding:15px;text-align:left}.contact-detail-department .field-label,.contact-detail-involvement .field-label{color:#8b0000;display:block;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}.contact-detail-department .field-value,.contact-detail-involvement .field-value{color:#333;font-family:Courier New,Courier,monospace;font-size:1em;font-weight:700}.contact-initial-large{align-items:center;background-color:#f0f0f0;color:#8b0000;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-size:4em;font-weight:700;height:100%;justify-content:center;width:100%}.error-container,.loading-container{color:#666;font-family:Courier New,Courier,monospace;font-size:1.1em;padding:50px 20px;text-align:center}.error-container{color:#8b0000}@media (max-width:480px){.contact-detail-container{padding:15px 15px 100px}.contact-detail-photo{height:150px;margin-bottom:20px;width:150px}.contact-detail-name{font-size:1.6em;margin-bottom:15px}.contact-detail-actions{flex-direction:column;gap:15px}.detail-action-btn{padding:12px 20px;width:100%}.contact-detail-description{padding:20px}}.call-page-container{background-color:beige;min-height:100vh;padding:20px 20px 100px}.call-list{display:flex;flex-direction:column;gap:12px}.call-item-simple{align-items:center;background:none;border:none;border-radius:0;box-shadow:none;display:flex;gap:12px;justify-content:flex-start;padding:12px 0;transition:none}.call-item-simple:hover{box-shadow:none;transform:none}.call-item-simple.missed{border-left:none}.call-item-simple.missed .call-contact-name,.call-item-simple.missed .call-datetime{color:#ff3b30}.call-item-simple.answered{border-left:none}.call-item-simple:not(:last-child){border-bottom:1px solid #e0e0e0;padding-bottom:12px}.missed-call-icon{align-items:center;display:flex;flex-shrink:0;height:20px;justify-content:center;margin-right:4px;width:20px}.missed-call-icon svg{height:16px;width:16px}.call-info-simple{flex:1 1;min-width:0}.call-contact-name{color:#000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.1em;font-weight:700;line-height:1.2;margin-bottom:3px;text-transform:uppercase}.call-datetime{color:#666;font-family:Courier New,Courier,monospace;font-size:.85em;line-height:1.2}.missed-label{color:#ff3b30;font-size:.9em;font-weight:400;margin-left:8px}.play-button{align-items:center;background-color:#8b0000;border:none;border-radius:50%;box-shadow:2px 2px 6px #0003;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.play-button:hover{background-color:#600;box-shadow:3px 3px 8px #0000004d;transform:scale(1.05)}.play-button:active{transform:scale(.95)}.play-button.playing{animation:pulse 1.5s infinite;background-color:#ff6b6b}.play-button.playing:hover{background-color:#ff5252}.play-button svg{margin-left:2px}.messages-container{background-color:beige;display:flex;flex-direction:column;min-height:100vh;padding:20px 20px 100px}.messages-title-section{background:none;border:none;border-bottom:2px solid #8b0000;border-radius:0;box-shadow:none;margin-bottom:20px;padding:15px 0;text-align:left}.messages-title-section h2{color:#000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.6em;font-weight:700;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}@media (max-width:768px){.messages-title-section{margin-bottom:15px;padding:12px 0}.messages-title-section h2{font-size:1.4em}}@media (max-width:480px){.messages-title-section{margin-bottom:12px;padding:10px 0}.messages-title-section h2{font-size:1.3em;margin-bottom:3px}}.conversations-list{display:flex;flex-direction:column;gap:0}.conversation-item{align-items:center;background:none;border:none;border-bottom:1px solid #e0e0e0;cursor:pointer;display:flex;padding:15px 20px;transition:background-color .2s ease}.conversation-item:hover{background-color:#8b00000d}.conversation-item.has-unread{background-color:#8b000014;border-left:3px solid #8b0000}.conversation-item.has-unread:hover{background-color:#8b00001f}.conversation-item:last-child{border-bottom:none}.conversation-avatar{align-items:center;background-color:#8b0000;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-family:Arial Narrow,Arial,sans-serif;font-size:1.2em;font-weight:700;height:50px;justify-content:center;margin-right:15px;width:50px}.conversation-content{flex:1 1;min-width:0}.conversation-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:5px}.conversation-name{color:#000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.1em;font-weight:700;text-transform:uppercase}.conversation-time{color:#666;font-family:Courier New,Courier,monospace;font-size:.8em}.conversation-preview{align-items:center;display:flex;justify-content:space-between}.conversation-message{color:#666;font-family:Courier New,Courier,monospace;font-size:.9em;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unread-badge{align-items:center;background-color:#8b0000;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-family:Arial Narrow,Arial,sans-serif;font-size:.7em;font-weight:700;height:20px;justify-content:center;margin-left:10px;min-width:20px}.conversation-header{background:none;border-bottom:2px solid #8b0000;padding:20px}.conversation-contact-info{align-items:center;display:flex}.conversation-contact-info .conversation-avatar{margin-bottom:0;margin-right:15px}.conversation-profile-photo{border-radius:50%;height:100%;object-fit:cover;width:100%}.conversation-details h3{color:#000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.4em;font-weight:700;margin:0;text-transform:uppercase}.conversation-messages{display:flex;flex:1 1;flex-direction:column;gap:15px;overflow-y:auto;padding:20px 0}.message-bubble{border-radius:18px;max-width:70%;padding:12px 16px;position:relative}.message-bubble.them{align-self:flex-start;background-color:#f0f0f0;border:1px solid #e0e0e0}.message-bubble.them:after{border:8px solid #0000;border-bottom:0;border-top-color:#f0f0f0;bottom:0;content:"";height:0;left:20px;margin-bottom:-8px;position:absolute;width:0}.message-bubble.them:before{border:9px solid #0000;border-bottom:0;border-top-color:#e0e0e0;bottom:0;content:"";height:0;left:19px;margin-bottom:-9px;position:absolute;width:0;z-index:-1}.message-bubble.me{align-self:flex-end;background-color:#8b0000;color:#fff}.message-bubble.me:after{border:8px solid #0000;border-bottom:0;border-top-color:#8b0000;bottom:0;content:"";height:0;margin-bottom:-8px;position:absolute;right:20px;width:0}.message-text{font-size:.95em;line-height:1.2;margin-bottom:5px}.message-text,.message-time{font-family:Courier New,Courier,monospace}.message-time{color:#666;font-size:.75em;margin-top:3px;text-align:right}.message-bubble.them .message-time{text-align:left}.message-bubble.me .message-time{color:#fffc}@media (max-width:768px){.call-page-container{padding:15px}.call-item{align-items:flex-start;flex-direction:column;gap:12px}.call-status-info{align-items:flex-start;width:100%}.call-meta{align-items:flex-start;flex-direction:column;gap:8px}}@media (max-width:480px){.call-page-header{padding:15px}.call-page-header h2{font-size:1.5em}.call-item{padding:15px}.call-contact-name{font-size:1em}}.app-header{background-color:#8b0000;border-bottom:3px solid #600;box-shadow:0 4px 12px #0000004d;justify-content:space-between;left:0;min-height:60px;padding:calc(env(safe-area-inset-top) + 10px) env(safe-area-inset-right) 10px env(safe-area-inset-left);position:fixed;right:0;top:0;z-index:1001}.app-header,.header-left{align-items:center;display:flex}.header-left{flex:1 1;padding-left:15px}.header-center{flex:2 1;text-align:center}.header-right{align-items:center;display:flex;flex:1 1;justify-content:flex-end;padding-right:15px}.back-button-header{align-items:center;background:none;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;padding:8px;transition:all .2s ease;width:36px}.back-button-header:hover{background-color:#ffffff1a}.back-button-header svg{height:20px;width:20px}.log-icon-button{align-items:center;background-color:#ffffff1a;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.log-icon-button:hover{background-color:#fff3}.log-icon-button svg{height:20px;width:20px}.book-icon-button{align-items:center;background-color:#ffffff1a;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;margin-right:8px;transition:all .2s ease;width:36px}.book-icon-button:hover{background-color:#fff3}.book-icon-button svg{height:20px;width:20px}.call-page-container,.contact-detail-container,.contacts-container,.home-container,.messages-container,.page-content{padding-top:calc(55px + env(safe-area-inset-top, 0px))}.page-title-section{background:none;border:none;border-bottom:2px solid #8b0000;border-radius:0;box-shadow:none;margin-bottom:20px;padding:15px 0;text-align:left}.page-title-section h2{color:#000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.6em;font-weight:700;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}@media (max-width:768px){.call-page-container,.contact-detail-container,.contacts-container,.home-container,.messages-container,.page-content{padding-top:calc(45px + env(safe-area-inset-top, 20px))}.page-title-section{margin-bottom:15px;padding:12px 0}.page-title-section h2{font-size:1.4em}}@media (max-width:480px){.app-header{min-height:50px;padding-bottom:8px;padding-top:calc(env(safe-area-inset-top, 20px) + 8px)}.header-left{padding-left:10px}.header-right{padding-right:10px}.back-button-header,.log-icon-button{height:32px;width:32px}.back-button-header svg,.log-icon-button svg{height:18px;width:18px}.call-page-container,.contact-detail-container,.contacts-container,.home-container,.messages-container,.page-content{padding-top:calc(40px + env(safe-area-inset-top, 20px))}.page-title-section{margin-bottom:12px;padding:10px 0}.page-title-section h2{font-size:1.3em;margin-bottom:3px}}.database-container.database-container{background:beige;min-height:100vh;padding-top:calc(80px + env(safe-area-inset-top, 0px))!important;padding:20px 20px 100px}@media (max-width:768px){.database-container.database-container{padding-top:calc(45px + env(safe-area-inset-top, 20px))}}@media (max-width:480px){.database-container.database-container{padding-top:calc(40px + env(safe-area-inset-top, 20px))}}.database-tabs{background:#fff;border:2px solid #8b0000;border-radius:8px;box-shadow:4px 4px 12px #00000026;display:flex;left:20px;margin-bottom:25px;overflow:hidden;position:fixed;right:20px;top:calc(80px + env(safe-area-inset-top, 0px));z-index:200}.tab-button{background:none;border:none;border-right:1px solid #8b0000;color:#666;cursor:pointer;flex:1 1;font-family:Courier New,Courier,monospace;font-size:.9em;font-weight:700;padding:15px 10px;text-transform:uppercase;transition:all .3s ease}.tab-button:last-child{border-right:none}.tab-button:hover{background-color:#8b00001a;color:#8b0000}.tab-button.active{background-color:#8b0000;color:#fff}.section-header{border-bottom:2px solid #8b0000;margin-bottom:25px;padding-bottom:15px}.section-header h3{color:#000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.4em;font-weight:700;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.section-header p{color:#666;font-family:Courier New,Courier,monospace;font-size:.9em;margin:0}.evidence-list-compact{display:flex;flex-direction:column;gap:8px}.evidence-item-compact{background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:2px 2px 6px #0000001a;padding:12px;transition:all .2s ease}.evidence-item-compact:hover{border-color:#8b0000;box-shadow:2px 2px 8px #8b000033}.evidence-main-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.evidence-id-type{align-items:center;display:flex;gap:10px}.evidence-id{background:#8b00001a;border-radius:4px;color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.1em;font-weight:700;min-width:35px;padding:3px 8px;text-align:center}.evidence-type-badge{white-space:nowrap}.evidence-status-compact,.evidence-type-badge{border-radius:4px;color:#fff;font-family:Courier New,Courier,monospace;font-size:.7em;font-weight:700;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.evidence-status-compact{min-width:80px;text-align:center}.evidence-description-compact{color:#000;font-family:Courier New,Courier,monospace;font-size:.95em;font-weight:700;line-height:1.3;margin-bottom:6px}.evidence-details-compact{color:#666;display:flex;font-family:Courier New,Courier,monospace;font-size:.8em;gap:15px}.evidence-day-compact,.evidence-location-compact{align-items:center;display:flex;gap:4px}@media (max-width:768px){.evidence-header{align-items:flex-start;flex-direction:column;gap:15px}.evidence-filter{justify-content:space-between;width:100%}.evidence-main-row{align-items:flex-start;flex-direction:column;gap:8px}.evidence-id-type{justify-content:space-between;width:100%}.evidence-details-compact{flex-direction:column;gap:5px}}@media (max-width:480px){.evidence-item-compact{padding:10px}.evidence-status-compact,.evidence-type-badge{font-size:.65em;padding:3px 6px}.evidence-status-compact{min-width:70px}.evidence-filter{align-items:flex-start;flex-direction:column;gap:8px}.evidence-type-select{width:100%}}.suspect-modal-container{background:#fff;border:3px solid #8b0000;border-radius:8px;box-shadow:8px 8px 20px #0000004d;height:75vh;max-width:800px;overflow:hidden;position:relative;width:90vw}.suspect-detail-view,.suspect-list-view{background:#fff;height:100%;left:0;position:absolute;top:0;width:100%}.suspect-modal-item{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;padding:15px;transition:all .3s ease}.suspect-modal-item:hover{background:#f9f9f9;transform:translateX(5px)}.suspect-mugshot-container{flex-shrink:0;margin-right:15px}.suspect-modal-item .suspect-mugshot{border:3px solid #8b0000;border-radius:8px;box-shadow:8px 8px 20px #0000004d;height:220px;object-fit:cover;width:108px}.suspect-modal-item .suspect-mugshot-placeholder{align-items:center;background:#8b0000;border-radius:8px;color:#fff;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-size:1.2em;font-weight:700;height:220px;justify-content:center;width:108px}.suspect-modal-info{flex:1 1;min-width:0}.suspect-modal-name{color:#000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.1em;font-weight:700;margin-bottom:5px}.suspect-modal-connection{color:#666;font-family:Courier New,Courier,monospace;font-size:.9em;line-height:1.3;margin-bottom:8px}.suspect-modal-item .select-suspect-btn{background:#8b0000;border:none;border-radius:4px;color:#fff;cursor:pointer;display:block;font-family:Arial Narrow,Arial,sans-serif;font-size:.8em;font-weight:700;letter-spacing:.5px;margin-top:10px;padding:8px 16px;text-transform:uppercase;transition:all .3s ease;width:-webkit-fit-content;width:fit-content}.suspect-modal-item .select-suspect-btn:hover{background:#600;box-shadow:2px 2px 8px #8b00004d;transform:translateY(-1px)}@media (max-width:768px){.suspect-modal-container{height:75vh;width:95vw}.suspect-modal-item .suspect-mugshot,.suspect-modal-item .suspect-mugshot-placeholder{height:160px;width:80px}}.case-file-value-select.has-value{background:#fff;border-color:#8b0000;color:#000;font-weight:500}.case-file-select{background:#fff;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:1em;padding:12px 15px;width:100%}.case-file-select:focus{border-color:#8b0000;box-shadow:0 0 0 3px #8b00001a;outline:none}.case-file-textarea{background:#fff;border:1px solid #ddd;border-radius:4px;color:#333;font-family:Courier New,Courier,monospace;font-size:1em;min-height:80px;padding:12px 15px;resize:vertical;width:100%}.case-file-textarea:focus{border-color:#8b0000;box-shadow:0 0 0 3px #8b00001a;outline:none}.case-file-actions{border-top:2px solid #8b0000;display:flex;gap:15px;margin-top:30px;padding-top:20px}.save-case-btn,.submit-case-btn{border:none;border-radius:6px;cursor:pointer;font-family:Arial Narrow,Arial,sans-serif;font-size:1em;font-weight:700;letter-spacing:.5px;padding:12px 24px;text-transform:uppercase;transition:all .3s ease}.save-case-btn{background:#007aff;color:#fff}.save-case-btn:hover{background:#0056cc}.submit-case-btn{background:#8b0000;color:#fff}.submit-case-btn:hover{background:#600}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border:2px solid #8b0000;border-radius:8px;box-shadow:8px 8px 20px #0000004d;max-height:80vh;max-width:500px;overflow:hidden;width:100%}.modal-header{align-items:center;background:#8b0000;border-bottom:2px solid #fff;color:#fff;display:flex;justify-content:space-between;padding:20px}.modal-header h3{font-family:Arial Narrow,Arial,sans-serif;font-size:1.4em;letter-spacing:.5px;margin:0;text-transform:uppercase}.modal-close{align-items:center;background:#0000;border:2px solid #fff;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:32px;justify-content:center;transition:all .3s ease;width:32px}.modal-close:hover{background:#fff;color:#8b0000;transform:scale(1.1)}.modal-close:active{transform:scale(.95)}.modal-body{max-height:60vh;overflow-y:auto;padding:20px}.modal-item{align-items:center;border:1px solid #ddd;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:10px;padding:15px;transition:all .2s ease}.modal-item:hover{background:#8b00000d;border-color:#8b0000}.modal-item.selected{background:#8b00001a;border-color:#8b0000}.modal-item-main{flex:1 1}.modal-item-title{color:#000;font-family:Courier New,Courier,monospace;font-size:1em;font-weight:700;margin-bottom:5px}.modal-item-location,.modal-item-role{color:#666;font-family:Courier New,Courier,monospace;font-size:.8em;margin-bottom:3px}.modal-item-status{border-radius:4px;color:#fff;font-family:Courier New,Courier,monospace;font-size:.7em;font-weight:700;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase;white-space:nowrap}.evidence-modal-container{background:#fff;border:2px solid #8b0000;border-radius:8px;box-shadow:8px 8px 20px #0000004d;max-height:85vh;max-width:600px;overflow-y:auto;scrollbar-color:#8b0000 beige;scrollbar-width:thin;width:100%}.evidence-modal-container::-webkit-scrollbar{width:8px}.evidence-modal-container::-webkit-scrollbar-track{background:beige;border-radius:4px}.evidence-modal-container::-webkit-scrollbar-thumb{background:#8b0000;border-radius:4px}.evidence-modal-container::-webkit-scrollbar-thumb:hover{background:#a00000}.evidence-submission-form{display:flex;flex-direction:column;gap:20px}.form-field{display:flex;flex-direction:column;gap:8px}.form-field label{color:#333;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.form-field input,.form-field select,.form-field textarea{background-color:#fff;border:2px solid #ccc;border-radius:4px;font-family:Courier New,Courier,monospace;font-size:.95em;padding:12px;transition:border-color .2s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#8b0000;box-shadow:0 0 8px #8b000033;outline:none}.form-field textarea{min-height:80px;resize:vertical}.evidence-photo-upload{align-items:center;display:flex;flex-direction:column;gap:15px}.file-upload-hidden{height:1px!important;left:-9999px!important;opacity:0!important;overflow:hidden!important;pointer-events:none!important;position:absolute!important;width:1px!important}.evidence-photo-button{align-items:center;background:linear-gradient(135deg,#8b0000,#600);border:2px solid #8b0000;border-radius:8px;box-shadow:0 4px 12px #8b00004d;color:#fff!important;cursor:pointer;display:flex;flex-direction:column;font-family:Arial Narrow,Arial,sans-serif;font-weight:700;gap:12px;justify-content:center;letter-spacing:1px;padding:25px;text-align:center;text-transform:uppercase;transition:all .3s ease;width:100%}.evidence-photo-button:hover{background:linear-gradient(135deg,#600,#4a0000);box-shadow:0 6px 16px #8b000066;transform:translateY(-2px)}.evidence-photo-button:active{box-shadow:0 2px 8px #8b00004d;transform:translateY(0)}.evidence-photo-button svg{color:#fff;height:32px;width:32px}.evidence-photo-button span{color:#fff!important;font-size:1.1em;line-height:1.2}.evidence-photo-note{color:#666;font-family:Courier New,Courier,monospace;font-size:.9em;line-height:1.4;margin:0;max-width:400px;text-align:center}.evidence-photo-preview{align-items:center;display:flex;flex-direction:column;gap:15px;width:100%}.evidence-photo-image{border:2px solid #8b0000;border-radius:8px;box-shadow:0 4px 12px #8b00004d;max-height:300px;max-width:100%}.evidence-photo-actions{display:flex;justify-content:center}.evidence-photo-cancel{align-items:center;background:#ff6b6b;border:none;border-radius:6px;box-shadow:0 2px 6px #ff6b6b4d;color:#fff;cursor:pointer;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;gap:8px;letter-spacing:.5px;padding:12px 20px;text-transform:uppercase;transition:all .2s ease}.evidence-photo-cancel:hover{background:#ff5252;box-shadow:0 4px 8px #ff6b6b66;transform:translateY(-1px)}.evidence-photo-cancel:active{box-shadow:0 2px 4px #ff6b6b4d;transform:translateY(0)}.evidence-photo-cancel svg{color:#fff;height:16px;width:16px}.file-upload{background-color:#8b00000d;border:2px dashed #8b0000;border-radius:4px;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.95em;padding:12px;transition:all .2s ease;width:100%}.file-upload:hover{background-color:#8b00001a;border-color:#600}.file-upload:focus{border-color:#8b0000;box-shadow:0 0 8px #8b000033;outline:none}.file-upload-note{color:#666;font-family:Courier New,Courier,monospace;font-size:.8em;font-style:italic;margin-top:8px}.form-actions{border-top:1px solid #eee;display:flex;gap:15px;justify-content:flex-end;margin-top:20px;padding-top:20px}.evidence-review-results{display:flex;flex-direction:column;gap:20px}.review-header{align-items:center;border-bottom:2px solid #8b0000;display:flex;justify-content:space-between;padding-bottom:15px}.review-header h4{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.2em;letter-spacing:1px;margin:0;text-transform:uppercase}.relevance-score{color:#666}.score-value{color:#8b0000;font-size:1.1em;font-weight:700}.review-section{background-color:#fdfdf5;border:1px solid #ddd;border-radius:4px;padding:15px}.review-section h5{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.review-section p{color:#333;font-family:Courier New,Courier,monospace;font-size:.9em;line-height:1.5;margin:0}.add-evidence-section{background-color:#8b00000d;border:2px dashed #8b0000;border-radius:6px;margin-bottom:25px;padding:20px;text-align:center}.add-evidence-btn.primary{background-color:#006400;border-color:#006400;color:#fff;font-size:1.1em;margin-bottom:10px;padding:15px 25px}.add-evidence-btn.primary:hover{background-color:#004d00;border-color:#004d00;box-shadow:0 4px 12px #0064004d;transform:translateY(-2px)}.add-evidence-note{color:#666;font-family:Courier New,Courier,monospace;font-size:.85em;font-style:italic;margin:0}.evidence-items-grid{-webkit-overflow-scrolling:touch;margin-bottom:40px;margin-top:20px;overflow:hidden;overscroll-behavior:contain;padding-top:60px}.evidence-carousel-container,.evidence-items-grid{height:auto;min-height:auto;position:relative;touch-action:pan-y}.evidence-carousel-container{box-sizing:border-box;display:flex;flex-wrap:nowrap;transition:transform .3s ease;width:100%}.evidence-carousel-container .evidence-item-card{flex-basis:100%;flex-shrink:0;min-width:100%;width:100%}.evidence-carousel-legend{background:#000000b3;border-radius:20px;color:#fff;font-family:Arial Narrow,Arial,sans-serif;font-size:.8em;font-weight:700;left:50%;letter-spacing:1px;padding:8px 12px;position:absolute;text-transform:uppercase;top:20px;transform:translateX(-50%);z-index:10}.legend-text{color:#fff}.evidence-carousel-nav{align-items:center;background:#8b0000cc;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;font-weight:700;height:35px;justify-content:center;position:absolute;top:20px;transition:all .2s ease;width:35px;z-index:10}.evidence-carousel-nav:hover{background:#8b0000;transform:scale(1.1)}.evidence-carousel-nav:disabled{background:#8b00004d;cursor:not-allowed;transform:scale(.9)}.evidence-carousel-nav.prev{left:20px}.evidence-carousel-nav.next{right:20px}.evidence-item-card{background-color:#fdfdf5;background-position:bottom;border-radius:12px;box-shadow:8px 8px 20px #0000004d;overflow:hidden;padding:25px 20px 50px;position:relative;touch-action:pan-y;transition:all .3s ease}.evidence-item-card[style*=background-image]{background-color:initial;color:#fff}.evidence-item-card[style*=background-image]:before{background:#000c;border-radius:4px;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.evidence-item-card[style*=background-image]>*{position:relative;z-index:2}.evidence-item-card[style*=background-image] .evidence-submission-header h5{color:#fff}.evidence-item-card[style*=background-image] .evidence-submission-description{color:#f0f0f0}.evidence-item-card[style*=background-image] .detail-section{background-color:#ffffff1a;border-left:3px solid #8b0000}.evidence-item-card[style*=background-image] .detail-section strong{color:#fff}.evidence-item-card[style*=background-image] .detail-section p{color:#f0f0f0}.evidence-submission-header{align-items:flex-start;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;margin-bottom:0;padding-bottom:15px}.evidence-submission-header h5{color:#8b0000;flex:1 1;font-size:1.1em;letter-spacing:1px;margin:0 15px 0 0}.evidence-submission-header h5,.priority-badge{font-family:Arial Narrow,Arial,sans-serif;text-transform:uppercase}.priority-badge{border-radius:3px;font-size:.7em;font-weight:700;padding:4px 8px;white-space:nowrap}.priority-badge.high{background-color:#ff8c00;color:#fff}.priority-badge.urgent{background-color:#8b0000;color:#fff}.priority-badge.medium{background-color:#006400;color:#fff}.evidence-item-content{margin-bottom:20px}.evidence-submission-description{color:#333;font-family:Courier New,Courier,monospace;font-size:.9em;line-height:1.5;margin-bottom:20px}.evidence-details{display:flex;flex-direction:column;gap:15px}.evidence-item-card .detail-section{background-color:#8b00000d;border-left:3px solid #8b0000;border-radius:3px;padding:15px}.detail-section strong{color:#8b0000;display:block;font-family:Arial Narrow,Arial,sans-serif;font-size:.8em;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.detail-section p{font-size:.85em;line-height:1.4}.evidence-submission-actions{text-align:center}.submit-evidence-btn.primary{align-items:center;background-color:#8b0000;border:2px solid #8b0000;border-radius:8px;box-shadow:0 4px 12px #8b000033;color:#fff;cursor:pointer;display:flex;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;gap:10px;justify-content:center;letter-spacing:1px;padding:15px 20px;text-transform:uppercase;transition:all .3s ease;width:100%}.submit-evidence-btn.primary:hover{background-color:#a00000;border-color:#a00000;box-shadow:0 6px 16px #8b00004d;transform:translateY(-2px)}.submit-evidence-btn.primary:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M12 15.2a3.2 3.2 0 1 0 0-6.4 3.2 3.2 0 0 0 0 6.4Z' fill='%23fff'/%3E%3Cpath d='M9 2 7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-3.17L15 2H9Zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5Z' fill='%23fff'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:contain;content:"";display:inline-block;height:20px;width:20px}.evidence-item-context{background-color:#8b00000d;border:2px solid #8b0000;border-radius:6px;margin-bottom:25px;padding:20px}.evidence-item-context h4{letter-spacing:.5px;margin:0 0 15px;text-transform:uppercase}.context-details strong,.evidence-item-context h4{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1em}.context-details strong{display:block;margin-bottom:10px}.context-description{color:#333;line-height:1.5;margin:0}.context-description,.section-description{font-family:Courier New,Courier,monospace;font-size:.9em}.section-description{color:#666;font-style:italic;margin-bottom:20px;text-align:center}.evidence-archive-section{margin-top:40px}.evidence-search-filters{background-color:#f8f8f0;border:1px solid #ddd;border-radius:8px;margin-bottom:25px;padding:20px}.search-box{margin-bottom:20px}.search-input{background-color:#fff;border:2px solid #8b0000;border-radius:6px;color:#000;font-family:Courier New,Courier,monospace;font-size:.9em;padding:12px 16px;width:100%}.search-input:focus{border-color:#a00000;box-shadow:0 0 0 3px #8b00001a;outline:none}.search-input::placeholder{color:#666;font-style:italic}.filter-pills{gap:15px}.filter-group,.filter-pills{display:flex;flex-direction:column}.filter-group{gap:8px}.filter-group label{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.pill-container{display:flex;flex-wrap:wrap;gap:8px}.filter-pill{background-color:initial;border:2px solid #8b0000;border-radius:20px;color:#8b0000;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.8em;font-weight:700;letter-spacing:.5px;padding:8px 16px;text-transform:uppercase;transition:all .2s ease}.filter-pill:hover{background-color:#8b00001a;transform:translateY(-1px)}.filter-pill.active{background-color:#8b0000;color:#fff}@media (max-width:768px){.evidence-search-filters{padding:15px}.pill-container{gap:6px}.filter-pill{font-size:.75em;padding:6px 12px}}@media (max-width:480px){.evidence-search-filters{padding:12px}.search-input{font-size:.85em;padding:10px 14px}.filter-pill{font-size:.7em;padding:5px 10px}}.evidence-archive-list{display:flex;flex-direction:column;gap:20px}.evidence-archive-item{align-items:flex-start;background:#fff;border:2px solid #8b0000;border-radius:4px;box-shadow:4px 4px 12px #00000026;display:flex;gap:15px;padding:15px;transition:all .3s ease}.evidence-archive-item.highlighted{background:#f0e6d2;box-shadow:0 0 20px #8b000099}.evidence-archive-item:hover{box-shadow:6px 6px 16px #0003;transform:translateY(-1px)}.evidence-item-icon{min-width:40px;padding-top:2px;text-align:center}.evidence-item-icon svg{height:24px;width:24px}.evidence-item-main{flex:1 1;min-width:0}.evidence-item-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.evidence-meta{align-items:center;display:flex;gap:15px}.evidence-number{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:.75em;font-weight:700;letter-spacing:1px;text-transform:uppercase}.evidence-date{color:#666;font-family:Courier New,Courier,monospace;font-size:.75em;font-style:italic}.status-badge{border-radius:12px;font-family:Arial Narrow,Arial,sans-serif;font-size:.7em;font-weight:700;letter-spacing:.5px;min-width:60px;padding:3px 8px;text-align:center;text-transform:uppercase}.status-badge.analysed{background-color:#28a745;color:#fff}.status-badge.under-review{background-color:#ffc107;color:#000}.status-badge.pending-analysis{background-color:#dc3545;color:#fff}.archive-item-content{margin-bottom:15px}.evidence-title{color:#000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.1em;letter-spacing:.5px;line-height:1.3;margin:0;text-transform:uppercase}.evidence-type{color:#8b0000;font-weight:700}.submission-date{color:#666}.evidence-location{margin-bottom:8px}.evidence-location,.relevance-score{color:#333;font-family:Courier New,Courier,monospace;font-size:.9em}.archive-item-actions{text-align:right}.evidence-detail-container{background:beige;min-height:100vh;padding:calc(80px + env(safe-area-inset-top, 0px)) 20px 120px}.error-message{background:#fff;border:3px solid #8b0000;border-radius:4px;box-shadow:8px 8px 20px #0000004d;margin:calc(130px + env(safe-area-inset-top, 0px)) 20px 120px;padding:30px;text-align:center}.error-message h3{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;letter-spacing:1px;margin:0 0 15px;text-transform:uppercase}.error-message p{color:#333;font-family:Courier New,Courier,monospace;margin-bottom:20px}.evidence-detail-view{background:#fff;border:3px solid #8b0000;border-radius:4px;box-shadow:8px 8px 20px #0000004d;margin:calc(100px + env(safe-area-inset-top, 0px)) 20px 140px;padding:30px}.evidence-detail-header{border-bottom:3px solid #8b0000;margin-bottom:30px;padding-bottom:20px}.back-btn{background:none;border:2px solid #8b0000;border-radius:3px;color:#8b0000;cursor:pointer;font-family:Arial Narrow,Arial,sans-serif;font-weight:700;letter-spacing:.5px;margin-bottom:15px;padding:8px 16px;text-transform:uppercase;transition:all .2s ease}.back-btn:hover{background-color:#8b0000;color:#fff}.evidence-detail-title{align-items:center;display:flex;justify-content:space-between}.evidence-detail-title h3{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.5em;letter-spacing:1px;margin:0;text-transform:uppercase}.evidence-overview{background:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin-bottom:30px;padding:20px}.overview-section{font-family:Courier New,Courier,monospace;font-size:.95em;margin-bottom:10px}.overview-section strong{color:#8b0000;font-weight:700}.ai-analysis-section{margin-bottom:30px}.ai-analysis-section h4{border-bottom:2px solid #8b0000;color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.3em;letter-spacing:1px;margin:0 0 20px;padding-bottom:10px;text-transform:uppercase}.analysis-field{background:#fafafa;border-left:4px solid #8b0000;margin-bottom:25px;padding:15px}.analysis-field h5{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.1em;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.analysis-field p{line-height:1.6}.analysis-field p,.recommended-actions-list{color:#333;font-family:Courier New,Courier,monospace;font-size:.95em;margin:0}.recommended-actions-list{padding-left:20px}.recommended-actions-list li{margin-bottom:5px}.evidence-tags h5{color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.1em;letter-spacing:.5px;margin:0 0 15px;text-transform:uppercase}.tags-list{display:flex;flex-wrap:wrap;gap:8px}.evidence-tag{background-color:#8b0000;border-radius:12px;color:#fff;font-family:Arial Narrow,Arial,sans-serif;font-size:.8em;font-weight:700;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}@media (max-width:768px){.case-file-header{padding:20px}.case-file-title h3{font-size:1.4em}.case-file-meta{flex-direction:column;gap:10px;text-align:center}.case-file-content{padding:20px}.case-file-field{align-items:flex-start;flex-direction:column;gap:10px}.case-file-field label{min-width:auto}.case-file-actions{flex-direction:column}.evidence-modal-container,.modal-content{max-width:90vw}.form-actions,.review-header{flex-direction:column}.review-header{gap:10px;text-align:center}.evidence-items-grid{gap:20px;grid-template-columns:1fr}.evidence-item-card{padding:20px 20px 50px;touch-action:pan-y}.evidence-item-header h5{font-size:1.05em}.evidence-description{font-size:.9em}}@media (max-width:480px){.case-file-header{padding:15px}.case-file-title h3{font-size:1.2em}.case-file-content{padding:15px}.case-file-section{margin-bottom:20px}.modal-body,.modal-header{padding:15px}.evidence-modal-container{max-width:95vw}.add-evidence-section{padding:15px}.add-evidence-btn.primary{font-size:1em;padding:12px 20px}.evidence-items-grid{gap:15px;grid-template-columns:1fr}.evidence-item-card{padding:20px;touch-action:pan-y}.evidence-carousel-container{touch-action:pan-y}.evidence-carousel-legend{font-size:.7em;left:50%;padding:6px 10px;top:15px;transform:translateX(-50%)}.evidence-carousel-nav{font-size:16px;height:30px;top:15px;width:30px}.evidence-carousel-nav.prev{left:0}.evidence-carousel-nav.next{right:0}.evidence-item-header h5{font-size:1em;margin-right:10px}.evidence-description{font-size:.85em}.detail-section{padding:10px 12px}.detail-section strong{font-size:.75em}.detail-section p{font-size:.8em}.submit-evidence-btn.primary{font-size:.85em;padding:10px 15px}.section-description{font-size:.8em;padding:0 10px}}.suspects-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));padding:80px 15px 15px}.suspect-connection{margin:0 0 8px}.suspect-connection,.suspect-days{color:#333;font-family:Courier New,Courier,monospace;font-size:.8em;line-height:1.3}.suspect-days{margin:0}.suspect-details{background:#fff;border-bottom:2px solid #8b0000;flex:1 1;padding:12px 20px}.document-field{grid-gap:10px;align-items:flex-start;display:grid;gap:10px;grid-template-columns:100px 1fr;margin-bottom:6px}.field-label{border-right:1px solid #8b0000;color:#8b0000;font-weight:700;letter-spacing:.5px;padding-right:10px;text-transform:uppercase}.field-label,.field-value{font-family:Courier New,Courier,monospace;font-size:.8em}.field-value{color:#333;line-height:1.3}.suspect-status-section{background:#f8f8f0;border-bottom:2px solid #8b0000;padding:15px 20px}.suspect-status-badge{border:1px solid;border-radius:0;font-size:.8em;padding:6px 12px}.suspect-status-badge.active{background:#8b0000;border-color:#8b0000;color:#fff}.suspect-status-badge.ruled_out{background:#fff!important;border:3px solid #2e8b57!important;border-radius:6px!important;box-shadow:2px 2px 6px #00000026!important;color:#2e8b57!important;font-family:Courier New,Courier,monospace!important;font-size:.75em!important;font-weight:700!important;letter-spacing:1.5px!important;min-width:100px!important;padding:8px 14px!important;position:relative!important;text-align:center!important;text-transform:uppercase!important;transform:rotate(-3deg)!important}.suspect-fingerprints{align-items:center;background:#f8f8f0;border-bottom:2px solid #8b0000;display:flex;gap:10px;padding:12px 20px}.fingerprint-label{color:#8b0000;font-family:Courier New,Courier,monospace;font-size:.7em;font-weight:700;letter-spacing:.5px;min-width:80px;text-transform:uppercase}.fingerprint-image{border:1px solid #8b0000;filter:grayscale(100%) contrast(1.2);height:40px;object-fit:cover;opacity:.8;width:60px}.suspect-actions{background:#fff;border-top:1px solid #8b0000;padding:15px 20px}.start-interview-btn{border:2px solid #8b0000;border-radius:0;font-family:Courier New,Courier,monospace;font-size:.9em;padding:12px 24px;width:100%}.start-interview-btn:hover{background:#fff;color:#8b0000}@media (max-width:768px){.suspects-grid{gap:20px;grid-template-columns:1fr;padding:15px}.suspect-header{gap:15px;grid-template-columns:100px 1fr}.suspect-initial,.suspect-photo img{height:100px;width:80px}.field-label,.field-value{font-size:.75em}}@media (max-width:480px){.suspects-grid{padding:10px}.suspect-header{padding:15px 15px 10px}.suspect-actions,.suspect-details,.suspect-status{padding:12px 15px}.suspect-name{font-size:30px;line-height:1;text-align:center}}.view-interview-btn:hover{background:#600}@media (max-width:768px){.database-tabs{flex-direction:row}.tab-button{border-bottom:none;border-right:1px solid #8b0000}.tab-button:last-child{border-right:none}.suspects-grid{grid-template-columns:1fr}}@media (max-width:480px){.database-container.database-container{padding:15px}}.evidence-database{-webkit-overflow-scrolling:touch;height:auto;min-height:auto;overflow-y:visible;overscroll-behavior:contain;padding-top:20px}.evidence-day,.evidence-location{align-items:center;display:flex;gap:4px}.evidence-filter{align-items:center;display:flex;gap:10px}.evidence-filter label{color:#8b0000;font-family:Courier New,Courier,monospace;font-size:.9em;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.evidence-type-select{background:#fff;border:2px solid #8b0000;border-radius:4px;color:#000;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.8em;padding:6px 12px;transition:all .2s ease}.evidence-type-select:focus{box-shadow:0 0 0 3px #8b00001a;outline:none}.evidence-type-select:hover{border-color:#600}.suspect-detail-container{background:beige;min-height:100vh;padding:calc(80px + env(safe-area-inset-top, 0px)) 20px 100px}.suspect-detail-content{margin:0 auto;max-width:1200px}.back-button{background:#8b0000;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.9em;margin-bottom:30px;padding:10px 20px;transition:all .3s ease}.back-button:hover{background:#600;transform:translateY(-2px)}.suspect-detail-header{align-items:flex-start;display:flex;gap:30px;margin-bottom:40px}.suspect-photo-section{flex-shrink:0}.suspect-mugshot{box-shadow:8px 8px 20px #0000004d;object-fit:cover}.suspect-mugshot,.suspect-photo-fallback{border:3px solid #8b0000;border-radius:8px;height:400px;width:300px}.suspect-photo-fallback{align-items:center;background:#8b0000;display:flex;justify-content:center}.suspect-initial-large{color:#fff;font-family:Arial Narrow,Arial,sans-serif;font-size:4em;font-weight:700;text-transform:uppercase}.suspect-info-section{flex:1 1}.suspect-name{color:#000;font-family:Arial Narrow,Arial,sans-serif;font-size:2.5em;font-weight:700;letter-spacing:2px;margin:0 0 20px;text-align:center;text-transform:uppercase}.suspect-role-badge{background:#8b0000;margin-bottom:15px}.suspect-role-badge,.suspect-status-badge{border-radius:4px;color:#fff;display:inline-block;font-family:Courier New,Courier,monospace;font-size:.9em;font-weight:700;letter-spacing:1px;padding:8px 16px;text-transform:uppercase}.suspect-status-badge{background:#ff9500}.suspect-details-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:40px}.detail-section{background:#fff;border:2px solid #8b0000;border-radius:8px;box-shadow:4px 4px 12px #00000026;padding:25px}.detail-section h3{border-bottom:2px solid #8b0000;color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.3em;font-weight:700;letter-spacing:1px;margin:0 0 15px;padding-bottom:8px;text-transform:uppercase}.detail-section p{color:#333;font-family:Courier New,Courier,monospace;font-size:1em;line-height:1.5;margin:0}.suspect-notes{background:#fff;border:2px solid #8b0000;border-radius:8px;box-shadow:4px 4px 12px #00000026;margin-bottom:40px;padding:25px}.suspect-notes h3{border-bottom:2px solid #8b0000;color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.3em;font-weight:700;letter-spacing:1px;margin:0 0 15px;padding-bottom:8px;text-transform:uppercase}.suspect-notes p{color:#333;font-family:Courier New,Courier,monospace;font-size:1em;line-height:1.5;margin:0}.interview-section{background:#fff;border:2px solid #8b0000;border-radius:8px;box-shadow:4px 4px 12px #00000026;padding:25px}.interview-section h3{border-bottom:2px solid #8b0000;color:#8b0000;font-family:Arial Narrow,Arial,sans-serif;font-size:1.3em;font-weight:700;letter-spacing:1px;margin:0 0 15px;padding-bottom:8px;text-transform:uppercase}.interview-description{color:#b0b0b0;font-family:Courier New,Courier,monospace;font-size:1em;line-height:1.5;margin:0 0 25px}.start-interview-btn{background:#8b0000;border:none;border-radius:6px;box-shadow:4px 4px 12px #8b00004d;color:#fff;cursor:pointer;font-family:Arial Narrow,Arial,sans-serif;font-size:1.1em;font-weight:700;letter-spacing:1px;padding:15px 30px;text-transform:uppercase;transition:all .3s ease}.start-interview-btn:hover{background:#600;box-shadow:6px 6px 16px #8b000066;transform:translateY(-2px)}.interview-container{min-height:100vh;padding:calc(80px + env(safe-area-inset-top, 0px)) 20px 120px;position:relative}.interview-container:before{background:#0006;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.interview-content{margin:0 auto;max-width:1000px;position:relative;z-index:2}.interview-instructions{background:#141414e6;border:2px solid #8b0000;border-radius:8px;box-shadow:4px 4px 12px #00000080;margin-bottom:20px;position:relative;z-index:2}.instructions-content{padding:20px}.instructions-content h3{color:#ff6b6b;font-family:Arial Narrow,Arial,sans-serif;font-size:1.2em;font-weight:700;letter-spacing:1px;margin:0 0 10px;text-align:center;text-transform:uppercase}.instructions-content p{color:#e0e0e0;font-family:Courier New,Courier,monospace;font-size:.9em;line-height:1.4;margin:0;text-align:center}.timer-display{align-items:center;display:flex;flex-direction:column;gap:6px}.timer-label{color:#b0b0b0;font-family:Courier New,Courier,monospace;font-size:.7em;letter-spacing:1px;text-transform:uppercase}.timer{background:#141414e6;border:2px solid #8b0000;border-radius:6px;box-shadow:2px 2px 8px #0000004d;color:#ff6b6b;font-family:Arial Narrow,Arial,sans-serif;font-size:1.8em;font-weight:700;min-width:100px;padding:8px 16px;text-align:center}.timer-warning{animation:pulse 1s infinite;border-color:#ff3b30;color:#ff3b30}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.end-interview-btn{background:#ff3b30;border:none;border-radius:4px;color:#fff;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.7em;font-weight:700;padding:6px 12px;text-transform:uppercase;transition:all .3s ease}.end-interview-btn:hover{background:#d70015}.interview-chat{background:#141414e6;border:2px solid #8b0000;border-radius:8px;box-shadow:4px 4px 12px #00000080;margin-bottom:30px;overflow:hidden;position:relative;z-index:2}.chat-messages{max-height:500px;overflow-y:auto;padding:20px}.chat-entry{background:none;border:1px solid #8b00004d;border-radius:6px;color:#e0e0e0;margin-bottom:20px;padding:15px;transition:all .2s ease}.chat-entry:hover{background:#8b00001a;border-color:#8b000080}.chat-entry.question,.chat-entry.response{background:none;border:1px solid #8b000066}.chat-entry.behavior,.chat-entry.scene{background:#8b00001a;border:1px solid #8b000066;border-radius:6px;margin-bottom:15px;padding:15px}.entry-header{align-items:center;color:#b0b0b0;display:flex;font-family:Courier New,Courier,monospace;font-size:.7em;justify-content:space-between;margin-bottom:8px}.entry-type{font-weight:700;letter-spacing:1px;text-transform:uppercase}.entry-content{color:#e0e0e0;font-family:Courier New,Courier,monospace;font-size:1em;line-height:1.4}.chat-entry.question .entry-content{background:#8b0000;border-radius:18px 18px 18px 4px;box-shadow:2px 2px 8px #8b000033;color:#fff;margin-left:auto;max-width:80%;padding:12px 16px;position:relative}.chat-entry.response .entry-content{background:#2a2a2a;border:1px solid #444;border-radius:18px 18px 4px 18px;box-shadow:2px 2px 8px #0000004d;color:#e0e0e0;margin-right:auto;max-width:80%;padding:12px 16px;position:relative}.chat-entry.behavior .entry-content,.chat-entry.scene .entry-content{background:none;border-radius:0;box-shadow:none;color:#b0b0b0;font-size:.9em;font-style:italic;margin:0;max-width:100%;padding:8px 0;text-align:center}.chat-entry.behavior .entry-content{background:#ff8c001a;border-left:3px solid #ff8c00;border-radius:4px;color:#8b4513;font-weight:500;padding:8px 12px}.chat-entry.behavior .entry-type{color:#ff8c00;font-weight:700}.chat-entry.question .entry-content:after{border-left:8px solid #8b0000;right:-8px}.chat-entry.question .entry-content:after,.chat-entry.response .entry-content:after{border-bottom:8px solid #0000;border-top:8px solid #0000;content:"";height:0;position:absolute;top:50%;transform:translateY(-50%);width:0}.chat-entry.response .entry-content:after{border-right:8px solid #f0f0f0;left:-8px}.question-input{background:#141414e6;border-top:1px solid #444;display:flex;flex-direction:column;gap:15px;padding:20px}.question-field{background:#2a2a2a;border:2px solid #444;border-radius:6px;box-sizing:border-box;color:#e0e0e0;font-family:Courier New,Courier,monospace;font-size:1em;line-height:1.4;min-height:80px;padding:12px 15px;resize:vertical;transition:border-color .2s ease;width:100%}.question-field:focus{border-color:#8b0000;outline:none}.ask-question-btn{background:#8b0000;border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:Arial Narrow,Arial,sans-serif;font-size:.9em;font-weight:700;letter-spacing:1px;padding:12px 24px;text-transform:uppercase;transition:all .3s ease;white-space:nowrap;width:100%}.ask-question-btn:hover:not(:disabled){background:#600;transform:translateY(-2px)}.ask-question-btn:disabled{background:#ccc;cursor:not-allowed;transform:none}.interview-notes{background:#141414e6;border:2px solid #8b0000;border-radius:8px;box-shadow:4px 4px 12px #00000080;margin-bottom:20px;padding:25px}.interview-notes h3{border-bottom:2px solid #8b0000;color:#ff6b6b;font-family:Arial Narrow,Arial,sans-serif;font-size:1.3em;font-weight:700;letter-spacing:1px;margin:0 0 15px;padding-bottom:8px;text-transform:uppercase}.interview-notes p{color:#e0e0e0;font-family:Courier New,Courier,monospace;font-size:1em;line-height:1.5;margin:0}@media (max-width:768px){.interview-header{align-items:flex-start;flex-direction:column;gap:12px}.timer-section{align-self:center}.interview-container{padding-bottom:100px}}@media (max-width:480px){.interview-container{padding:calc(60px + env(safe-area-inset-top, 0px)) 15px 80px}.suspect-info h2{font-size:1.3em}.timer{font-size:1.5em;min-width:80px}.question-input{flex-direction:column}.ask-question-btn{align-self:stretch}.chat-entry.question .entry-content,.chat-entry.response .entry-content{max-width:90%}}@media (max-width:768px){.suspect-detail-header{flex-direction:column;gap:20px}.suspect-mugshot,.suspect-photo-fallback{aspect-ratio:3/4;height:auto;max-width:300px;width:100%}.suspect-details-grid{grid-template-columns:1fr}.interview-header{align-items:flex-start;flex-direction:column;gap:12px}.timer-section{align-self:center}.interview-container{padding-bottom:100px}}@media (max-width:480px){.interview-container,.suspect-detail-container{padding:calc(60px + env(safe-area-inset-top, 0px)) 15px 15px}.suspect-detail-container{padding-bottom:100px}.interview-container{padding-bottom:80px}.suspect-name{font-size:2em}.suspect-info h2{font-size:1.3em}.timer{font-size:1.5em;min-width:80px}.question-input{flex-direction:column}.ask-question-btn{align-self:stretch}.chat-entry.question .entry-content,.chat-entry.response .entry-content{max-width:90%}.main-title h1{font-size:4em;letter-spacing:2px;line-height:.9}.case-subtitle{font-size:1.4em;letter-spacing:2px}.cover-header{margin-bottom:15px;margin-top:20px}.cover-header h2{font-size:1em;letter-spacing:2px}.cover-header p{font-size:.8em}.main-title{margin:20px 0}.cover-actions{flex-direction:column;gap:15px;margin:30px 0}.continue-btn,.recap-btn{max-width:300px;width:100%}.cover-footer{margin-top:15px}.cover-footer p{font-size:.7em;margin:3px 0}.cover-content{padding-top:100px}.story-recap{padding:20px 15px}.recap-header h2{font-size:2em}.recap-day{flex-direction:column;gap:15px}.day-marker{align-self:center}.day-line{display:none}}.api-status{color:#ff9500;font-family:Courier New,Courier,monospace;font-size:.7em;font-weight:700;margin-top:5px;text-transform:uppercase}.chat-entry.loading{background:#f0f8ff;border-left:4px solid #4a90e2}.chat-entry.loading .entry-content{color:#4a90e2;font-style:italic}.thinking-dots{color:#4a90e2;font-weight:700;margin-left:5px}.chat-entry.typing .entry-content{font-family:Courier New,Courier,monospace;line-height:1.4}.typing-cursor{animation:blink 1s infinite;color:#8b0000;font-size:1.2em;font-weight:700;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.chat-entry.error{background:#fff5f5;border-left:4px solid #ff6b6b}.chat-entry.error .entry-content{color:#d63031;font-weight:700}.evidence-gallery{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:30px 0}.gallery-item{background-color:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.gallery-item:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.gallery-image{border-bottom:1px solid #eee;height:200px;object-fit:cover;width:100%}.image-caption{color:#333;font-family:Courier New,Courier,monospace;font-size:.9em;line-height:1.4;padding:15px;text-align:center}.no-images-message{color:#666;font-style:italic;grid-column:1/-1;padding:40px 20px;text-align:center}.no-images-message p{font-family:Courier New,Courier,monospace;margin:5px 0}.image-modal-overlay{align-items:center;background-color:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.image-modal-content{background-color:#fff;border-radius:8px;box-shadow:0 10px 30px #00000080;max-height:90vh;max-width:90vw;overflow:hidden;position:relative}.modal-close-btn{align-items:center;background-color:#000000b3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:30px;justify-content:center;position:absolute;right:15px;top:10px;width:30px;z-index:1001}.modal-close-btn:hover{background-color:#000000e6}.modal-image{height:auto;max-height:70vh;object-fit:contain;width:100%}.modal-caption{background-color:#f9f9f9;border-top:1px solid #eee;color:#333;font-family:Courier New,Courier,monospace;font-size:.9em;padding:20px;text-align:center}@media (max-width:768px){.evidence-gallery{gap:15px;grid-template-columns:1fr}.gallery-image{height:180px}.image-modal-content{max-height:95vh;max-width:95vw}.modal-image{max-height:60vh}.database-container.case-file-active{background-attachment:scroll}.database-container.case-file-active:before{background:#0006;position:absolute}.case-file-official-header{background:#0000;border:3px solid #0000;flex-direction:column;gap:15px;margin:70px 15px 15px!important;padding:20px;text-align:center}.official-title h1{font-size:1.8em;letter-spacing:2px}.official-title h2{font-size:1.2em;letter-spacing:.8px}.case-file-sections{flex-direction:column;margin:0}.section-tab{font-size:.9em;min-height:50px;padding:15px 20px}.case-file-content{margin:0;padding:20px}.case-file-section h3{font-size:1.1em;letter-spacing:1px}.case-file-field label{font-size:.8em}.case-file-input,.case-file-select,.case-file-textarea{font-size:.9em;padding:10px 12px}}@media (max-width:480px){.database-container.case-file-active{background-attachment:scroll;background-position:top;background-size:cover}.database-container.case-file-active:before{background:#0006;position:absolute}.case-file-official-header{background:#0000;border:3px solid #0000;margin:70px 10px 10px!important;padding:15px}.official-title h1{font-size:1.6em;letter-spacing:1.5px}.official-title h2{font-size:1.1em;letter-spacing:.5px}.case-file-sections{margin:0}.section-tab{font-size:.8em;padding:12px 15px}.case-file-content{margin:0;padding:15px}.case-file-section h3{font-size:1em;letter-spacing:.8px}.case-file-field{margin-bottom:15px}.case-file-input,.case-file-select,.case-file-textarea{font-size:.85em;padding:8px 10px}}
/*# sourceMappingURL=main.abbb755d.css.map*/