*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:#000;color:#fff;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}.app{display:flex;flex-direction:column;height:100vh;max-width:100vw}.header{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#000;border-bottom:1px solid #1a1a1a;z-index:50}.logo{font-size:1.25rem;font-weight:600;letter-spacing:.05em;color:#fff}.nav-link{color:#666;text-decoration:none;font-size:.875rem;transition:color .2s;cursor:pointer}.nav-link:hover{color:#fff}.tag{display:inline-block;padding:4px 10px;background:#151515;border:1px solid #333;border-radius:100px;font-size:.7rem;font-weight:500;color:#999;margin-right:.5rem;margin-bottom:.5rem}.search-box{position:relative}.search-box input{width:100%;background:#1a1a1a;border:1px solid #333;color:#fff;padding:.8rem 1rem;border-radius:6px;font-size:.95rem;outline:none;transition:border-color .2s ease}.search-box input:focus{border-color:#666}.search-box input::placeholder{color:#666}.loading,.detail-empty{display:flex;align-items:center;justify-content:center;height:100%;color:#666;font-size:.9rem;padding:2rem;font-style:italic}.mobile-only{display:block}.mobile-only .evidence-section{padding:1rem 1.5rem;border-bottom:1px solid #1a1a1a;margin-bottom:1rem}.mobile-only .evidence-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:#666;margin-bottom:.75rem}.mobile-only .evidence-actions{display:flex;gap:.75rem;margin-bottom:1rem}.mobile-only .btn-camera{flex:3;height:56px;display:flex;align-items:center;justify-content:center;gap:.5rem;background:#1a1a1a;border:1px solid #333;border-radius:6px;color:#fff;cursor:pointer;transition:background .2s}.mobile-only .btn-camera svg{width:20px;height:20px;stroke-width:1.5}.mobile-only .btn-camera span{font-size:.9rem;font-weight:500}.mobile-only .btn-camera:active{background:#222;border-color:#fff}.mobile-only .btn-gallery{flex:1;height:56px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0);border:1px solid #333;border-radius:6px;color:#666;cursor:pointer}.mobile-only .btn-gallery svg{width:20px;height:20px}.mobile-only .btn-gallery:active{color:#fff;border-color:#fff}.mobile-only .file-input{display:none !important}.mobile-only .thumbnails-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(70px, 1fr));gap:.5rem}.mobile-only .thumbnails-grid .thumbnail{aspect-ratio:1;background:#1a1a1a;border:1px solid #333;border-radius:4px;overflow:hidden;position:relative}.mobile-only .thumbnails-grid .thumbnail img{width:100%;height:100%;object-fit:cover}.mobile-only .thumbnails-grid .thumbnail .thumbnail-remove{position:absolute;top:2px;right:2px;width:20px;height:20px;background:rgba(0,0,0,.8);color:#fff;border:none;border-radius:50%;font-size:1rem;display:flex;align-items:center;justify-content:center}.mobile-only .thumbnails-grid .thumbnails-empty{grid-column:1/-1;padding:1rem;text-align:center;color:#666;font-size:.8rem;border:1px dashed #333;border-radius:4px}.mobile-only .cases-list{padding:1rem;padding-bottom:140px;overflow-y:auto;height:calc(100vh - 300px);flex:1}.mobile-only .result-card{background:#0a0a0a;border:1px solid #333;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.3)}.mobile-only .result-card::before{content:"";position:absolute;top:0;left:0;bottom:0;width:4px;background:#0f8}.mobile-only .result-card .result-header{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid #1a1a1a}.mobile-only .result-card .result-asset{font-family:"Inter",sans-serif;font-size:1.4rem;font-weight:700;color:#fff;letter-spacing:-0.02em}.mobile-only .result-card .result-time{font-size:.75rem;color:#666;text-transform:uppercase;letter-spacing:.1em}.mobile-only .result-card .result-field{margin-bottom:1.25rem}.mobile-only .result-card .result-label{display:block;font-size:.65rem;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.15em;margin-bottom:.4rem}.mobile-only .result-card .result-value{font-family:"Inter",sans-serif;font-size:1rem;line-height:1.5;color:#eee}.mobile-only .result-card .result-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #1a1a1a}.mobile-only .mobile-detail{padding:1rem;padding-bottom:2rem;overflow-y:auto;height:calc(100vh - 60px)}.mobile-only .mobile-detail .detail-content{max-width:100%}.mobile-only .mobile-detail .detail-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #1a1a1a}.mobile-only .mobile-detail .detail-header .detail-asset{font-size:1.6rem;font-weight:700;line-height:1.2;margin-bottom:.5rem}.mobile-only .mobile-detail .detail-header .detail-meta{font-size:.8rem;color:#666}.mobile-only .mobile-detail .detail-field{margin-bottom:1.5rem}.mobile-only .mobile-detail .detail-field .detail-label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:#666;margin-bottom:.5rem}.mobile-only .mobile-detail .detail-field .detail-value{font-size:1rem;line-height:1.6;color:#eee}.mobile-only .mobile-detail .detail-images{display:grid;grid-template-columns:repeat(2, 1fr);gap:.75rem}.mobile-only .mobile-detail .detail-images .detail-image{width:100%;height:120px;object-fit:cover;border-radius:6px;border:1px solid #333;cursor:zoom-in}.mobile-only .mobile-back{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:#fff;font-size:1rem;padding:.5rem 0;margin-bottom:1rem;cursor:pointer}.mobile-only .mobile-back svg{opacity:.7}.mobile-only .mobile-back:active{opacity:.7}.desktop-only{display:none}@media(min-width: 1024px){.mobile-only{display:none !important}.desktop-only{display:flex !important;flex:1;overflow:hidden}.desktop-layout{display:grid;grid-template-columns:350px 1fr;width:100%;height:100%}.sidebar{background:#050505;border-right:1px solid #1a1a1a;display:flex;flex-direction:column;height:100%}.sidebar .search-box{padding:1rem;border-bottom:1px solid #1a1a1a;background:rgba(5,5,5,.95);z-index:10}.sidebar .cases-list{flex:1;overflow-y:auto}.sidebar .cases-list::-webkit-scrollbar{width:6px}.sidebar .cases-list::-webkit-scrollbar-track{background:#000}.sidebar .cases-list::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.sidebar .case-row{padding:1.2rem 1.5rem;border-bottom:1px solid #1a1a1a;cursor:pointer;transition:background .15s ease}.sidebar .case-row:hover{background:#1a1a1a}.sidebar .case-row.selected{background:#121212;border-left:3px solid #fff;padding-left:calc(1.5rem - 3px)}.sidebar .case-row .case-row-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.4rem}.sidebar .case-row .case-row-asset{font-weight:600;font-size:.95rem;color:#ddd}.sidebar .case-row .case-row-date{font-size:.75rem;color:#666}.sidebar .case-row .case-row-problem{font-size:.85rem;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detail-panel{background:#000;padding:3rem 4rem;overflow-y:auto;height:100%}.detail-panel .detail-header{margin-bottom:3rem;padding-bottom:1.5rem;border-bottom:1px solid #1a1a1a}.detail-panel .detail-header .detail-asset{font-size:2.5rem;font-weight:700;line-height:1.1;margin-bottom:.5rem}.detail-panel .detail-header .detail-meta{font-size:.9rem;color:#666}.detail-panel .detail-content{max-width:800px}.detail-panel .detail-field{margin-bottom:2.5rem}.detail-panel .detail-field .detail-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:#666;margin-bottom:.75rem}.detail-panel .detail-field .detail-value{font-size:1.1rem;line-height:1.6;color:#eee}.detail-panel .detail-images{display:grid;grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));gap:1rem;margin-top:3rem}.detail-panel .detail-images .detail-image{width:100%;height:200px;object-fit:cover;border-radius:6px;border:1px solid #333;cursor:zoom-in;transition:opacity .2s}.detail-panel .detail-images .detail-image:hover{opacity:.8}}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:1000;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.modal.visible{display:flex;opacity:1}.modal .modal-close{position:absolute;top:2rem;right:2rem;background:none;border:none;color:#fff;font-size:2.5rem;cursor:pointer;z-index:1010}.modal .modal-content{max-width:90vw;max-height:90vh;display:flex;justify-content:center;align-items:center;overflow:hidden;touch-action:none}.modal .modal-content.zoomed{max-width:100vw;max-height:100vh;width:100vw;height:100vh;position:fixed;inset:0}.modal .modal-content img{max-width:100%;max-height:90vh;object-fit:contain;box-shadow:0 0 50px rgba(0,0,0,.5);transform-origin:center center;will-change:transform;transition:transform .15s ease-out;user-select:none;-webkit-user-drag:none}.modal .modal-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,0);border:none;color:#666;font-size:3rem;cursor:pointer;padding:1rem;transition:color .2s}.modal .modal-nav:hover{color:#fff}.modal .modal-nav.prev{left:2rem}.modal .modal-nav.next{right:2rem}.modal .modal-counter{position:absolute;bottom:2rem;color:#666;font-size:.9rem;letter-spacing:.1em}.ring-container{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;padding:2rem;background:linear-gradient(to top, #000000 60%, transparent);pointer-events:none;z-index:100}@media(min-width: 1024px){.ring-container{display:none}}.ring{width:80px;height:80px;border-radius:50%;background:rgba(0,0,0,0);border:2px solid #fff;color:#fff;cursor:pointer;pointer-events:auto;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(0.25, 0.46, 0.45, 0.94)}.ring:active{transform:scale(0.95)}.ring.recording{background:#ff3b30;border-color:#ff3b30;box-shadow:0 0 30px rgba(255,59,48,.4);animation:breathe 3s infinite ease-in-out}.ring.processing{border-color:hsla(0,0%,100%,.2);color:hsla(0,0%,100%,.2);transform:scale(0.9);cursor:wait}@keyframes breathe{0%{transform:scale(1);box-shadow:0 0 0 rgba(255,59,48,0)}50%{transform:scale(1.05);box-shadow:0 0 20px rgba(255,59,48,.4)}100%{transform:scale(1);box-shadow:0 0 0 rgba(255,59,48,0)}}