:root{--sidebar-w: 78px;--sidebar-bg: #c8c8c8;--content-bg: #f0f0f0;--panel-bg: #ffffff;--panel-border: #d0d0d0;--accent: #3a7ecf;--accent-soft: #5a9ee0;--text: #1a1a1a;--muted: #666;--danger: #c0392b;--shadow: 0 2px 8px rgba(0, 0, 0, .12);--bg-panel: #ffffff;--bg-panel-strong: #f5f5f5;--line: #d0d0d0;--line-strong: #b0b0b0}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Segoe UI,Arial,sans-serif;font-size:14px;color:var(--text);background:var(--content-bg)}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:100vh}.sidebar{display:flex;flex-direction:column;align-items:center;padding:4px 0;background:var(--sidebar-bg);border-right:1px solid #aaa}.nav-list{display:flex;flex-direction:column;gap:2px;width:100%;padding:0;margin:0}.nav-item{display:flex;align-items:center;justify-content:center;width:100%;padding:4px 0;background:transparent;border:none;cursor:pointer;transition:background .12s ease}.nav-item:hover{background:#00000014}.nav-item.is-active{background:#0000001f}.nav-item img{width:68px;height:auto;display:block}.nav-item--exit{margin-top:auto}.content-area{padding:12px;background-size:cover;background-repeat:no-repeat;min-height:100vh}.panel{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:4px;box-shadow:var(--shadow);padding:14px}.panel--wide{padding:14px}.info-header{display:flex;gap:4px;margin-bottom:10px}.info-header img{height:26px;width:auto}.page-pocetna{padding:8px}.organ-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.organ-tile{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:4px;overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transition:box-shadow .12s ease}.organ-tile:hover{box-shadow:0 4px 14px #0000002e}.organ-tile img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.organ-label{display:block;padding:6px 8px;font-size:12px;background:#e8e8e8;border-top:1px solid var(--panel-border);text-align:center}.page-dosije{padding:8px}.dosije-form{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:4px;padding:14px}.dosije-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:10px}.dosije-grid label,.dosije-napomena{display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:13px}.dosije-napomena{margin-bottom:10px}.dosije-grid input,.dosije-grid select,.dosije-form textarea{padding:6px 8px;border:1px solid #bbb;border-radius:3px;background:#fafafa;color:var(--text);outline:none}.dosije-grid input:focus,.dosije-grid select:focus,.dosije-form textarea:focus{border-color:var(--accent)}.dosije-actions{display:flex;align-items:center;gap:12px}.btn-primary{padding:7px 18px;background:var(--accent);color:#fff;border:none;border-radius:3px;cursor:pointer;font-weight:600}.btn-primary:hover{background:var(--accent-soft)}.save-notice{color:#2a9d5c;font-size:13px}.page-testiranje{padding:8px}.page-generic{padding:20px}.page-generic h2{margin-top:0;color:var(--text)}.page-stranice{padding:8px}.analyzer,.results-panel{padding:14px}.panel-header,.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.panel-header h3,.section-head h4{margin:0;font-size:14px;font-weight:700}.connection-pill{padding:5px 12px;border-radius:999px;border:1px solid #ccc;color:var(--muted);background:#f5f5f5;font-size:12px}.connection-pill.is-connected{color:#1a6b3a;background:#d6f5e3;border-color:#7ecba0}.action-button,.ghost-button{min-height:34px;padding:6px 14px;border-radius:3px;border:1px solid transparent;cursor:pointer;transition:opacity .12s ease;font-size:13px}.action-button:disabled,.ghost-button:disabled{opacity:.5;cursor:not-allowed}.action-button{color:#fff;background:var(--accent);border-color:var(--accent);font-weight:600}.action-button--wide{width:100%}.action-button--danger{background:#c0392b;border-color:#c0392b}.status-active{color:#27ae60;font-weight:600}.status-idle{color:#888}.command-status{margin-top:8px;padding:6px 10px;background:#e8f0fe;border-left:3px solid var(--accent);border-radius:3px;font-size:12px}.measurement-result{margin-top:10px;padding:8px 12px;background:#f8fff8;border:1px solid #b2dfdb;border-radius:4px;font-size:12px}.measurement-result p{margin:3px 0}.scan-progress-bar{height:8px;background:#dde;border-radius:4px;margin:10px 0 4px;overflow:hidden}.scan-progress-fill{height:100%;background:linear-gradient(90deg,#2a5298,#27ae60);border-radius:4px;transition:width .8s linear,background .4s}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.scan-report{margin-top:14px;padding:12px 14px;background:#f0f7e6;border:1px solid #81c784;border-radius:5px}.scan-report h5{margin:0 0 10px;font-size:13px;color:#2e7d32}.scan-report-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.scan-report-grid>div{background:#fff;border-radius:4px;padding:6px 8px;text-align:center}.scan-report-grid span{display:block;font-size:10px;color:#666}.scan-report-grid strong{font-size:15px;color:#1b5e20}.ghost-button{color:var(--text);background:#f0f0f0;border-color:#ccc}.control-grid,.toggle-grid,.sensor-grid,.analysis-form,.readout-grid,.session-grid,.command-grid,.patient-grid,.patient-summary-bar{display:grid;gap:10px;margin-top:12px}.control-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.control-grid--secondary{grid-template-columns:minmax(0,1fr)}.toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sensor-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.session-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.command-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.patient-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.patient-summary-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.session-card,.histogram-row,.sensor-card,.toggle-card,.candidate-row{padding:10px 12px;border:1px solid var(--panel-border);border-radius:4px;background:#f8f8f8}.session-card span,.histogram-row span{display:block;color:var(--muted);font-size:12px}.session-card strong,.histogram-row strong{display:block;margin-top:2px}.analysis-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.analysis-form label,.patient-grid label,.command-grid label{display:grid;gap:5px;color:var(--muted);font-size:12px}.toggle-card strong,.candidate-row strong{color:var(--text)}.toggle-card small,.candidate-row small{color:var(--muted)}.readout-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.readout-card,.packet-log{margin-top:12px;padding:12px;border-radius:4px;border:1px solid var(--panel-border);background:#f8f8f8}.hex-dump,.result-dump,.packet-row code{display:block;margin-top:8px;padding:10px;white-space:pre-wrap;word-break:break-word;background:#1a1a2e;border-radius:3px;border:1px solid #333;color:#9fe7ff;font-family:Consolas,Courier New,monospace;font-size:12px}.packet-list,.candidate-list,.histogram-list{display:grid;gap:8px;margin-top:10px}.preview-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.preview-header h3{margin:0;font-size:14px;font-weight:700}.preview-badge{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--panel-border);border-radius:4px;background:#f5f5f5}.preview-badge img{width:24px;height:24px;object-fit:cover;border-radius:50%}.section-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.section-tag{padding:5px 10px;border-radius:3px;border:1px solid var(--panel-border);background:#f0f0f0;color:var(--muted);font-size:12px}.patient-summary{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:10px;color:var(--muted);font-size:13px}.finding-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.finding-card{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px;padding:12px;border:1px solid var(--panel-border);border-radius:4px;background:#f8f8f8}.finding-media img{width:100%;height:100%;min-height:160px;object-fit:cover;border-radius:3px}.finding-system{margin:0 0 6px;color:var(--accent);text-transform:uppercase;font-size:11px;letter-spacing:.08em}.finding-body h4{margin:0 0 8px;font-size:13px;font-weight:700}.finding-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.finding-metrics div{padding:8px 10px;border-radius:3px;background:#f0f0f0;border:1px solid var(--panel-border)}.finding-metrics dt{color:var(--muted)}.av2-card,.av2-patient{background:var(--panel-bg, #13192e);border:1px solid var(--panel-border, rgba(255,255,255,.08));border-radius:12px;padding:20px}.av2-field span{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted,#8899bb)}.av2-field input,.av2-field select{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:7px;padding:8px 10px;color:var(--text,#e8eaf8);font-size:14px;outline:none;transition:border-color .15s}.av2-scan-side{background:var(--panel-bg,#13192e);border:1px solid var(--panel-border,rgba(255,255,255,.08));border-radius:12px;padding:14px;display:flex;flex-direction:column;align-items:center;gap:10px;min-height:340px}.av2-scan-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#8899bb);text-align:center}.av2-osc-col{background:var(--panel-bg,#13192e);border:1px solid var(--panel-border,rgba(255,255,255,.08));border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px}.av2-live-cell span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#8899bb)}.av2-live-cell strong{font-size:16px;font-weight:700;color:var(--text,#e8eaf8)}.av2-report-cell span{font-size:11px;color:var(--muted,#8899bb)}.severity-row span{font-size:11px;font-weight:600;color:var(--muted)}.finding-metrics dd{margin:3px 0 0;color:var(--text);font-weight:700}.severity-row{display:flex;align-items:center;gap:10px;margin:10px 0}.severity-row img{width:100px;height:auto}.finding-advice{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.measurement-preview{margin-top:12px;padding:12px}.status-dot{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:#2a9d5c}.patient-grid__wide{grid-column:span 2}.analysis-form input,.patient-grid input,.patient-grid select,.command-grid input,.command-grid select{width:100%;padding:6px 8px;color:var(--text);background:#fafafa;border:1px solid #bbb;border-radius:3px;outline:none}.analysis-form input:focus,.patient-grid input:focus,.patient-grid select:focus,.command-grid input:focus,.command-grid select:focus{border-color:var(--accent)}.patient-actions{display:flex;gap:10px;margin-top:12px}.toggle-card{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;cursor:pointer}.toggle-card span,.candidate-row span{display:grid;gap:3px}.patient-panel{margin-top:12px;padding:12px;border-radius:4px;border:1px solid var(--panel-border);background:#f8f8f8}.eyebrow{margin:0 0 4px;color:var(--accent);font-size:11px;text-transform:uppercase;letter-spacing:.15em}.brand-copy,.muted-copy{color:var(--muted)}.av2{display:flex;flex-direction:column;gap:16px;padding:16px;max-width:1400px;margin:0 auto}.av2-card{background:var(--panel-bg, #13192e);border:1px solid var(--panel-border, rgba(255,255,255,.08));border-radius:12px;padding:20px}.av2-patient-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:16px}@media (max-width: 900px){.av2-patient-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 580px){.av2-patient-grid{grid-template-columns:repeat(2,1fr)}}.av2-field{display:flex;flex-direction:column;gap:5px}.av2-field span{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted, #8899bb)}.av2-field input,.av2-field select{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:7px;padding:8px 10px;color:var(--text, #e8eaf8);font-size:14px;outline:none;transition:border-color .15s}.av2-field input:focus,.av2-field select:focus{border-color:#00d49a}.av2-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.av2-btn{padding:9px 20px;border:none;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:opacity .15s,transform .1s;white-space:nowrap}.av2-btn:disabled{opacity:.38;cursor:not-allowed;transform:none}.av2-btn:not(:disabled):active{transform:scale(.97)}.av2-btn--connect{background:#ffffff14;color:#c0c8e0;border:1px solid rgba(255,255,255,.15)}.av2-btn--connected{background:#00d49a26;color:#00d49a;border:1px solid rgba(0,212,154,.4)}.av2-btn--start{background:linear-gradient(135deg,#00d49a,#09f);color:#fff}.av2-btn--stop{background:#e53935;color:#fff}.av2-btn--ghost{background:transparent;color:#89b;border:1px solid rgba(255,255,255,.12)}.av2-warn{margin-top:10px;padding:8px 12px;background:#e5393526;border:1px solid rgba(229,57,53,.4);border-radius:7px;color:#ff7070;font-size:13px}.av2-status{margin-top:10px;padding:8px 12px;background:#00d49a1a;border-radius:7px;color:#00d49a;font-size:13px;font-weight:600}.av2-status--paused{background:#ff98001f;color:#ff9800}.av2-status--active{animation:av2-pulse 1.5s ease-in-out infinite}@keyframes av2-pulse{0%,to{opacity:1}50%{opacity:.65}}.av2-progress-track{position:relative;height:28px;background:#ffffff0d;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.av2-progress-fill{height:100%;border-radius:14px;transition:width .9s linear}.av2-progress-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.6);letter-spacing:.06em}.av2-scan-area{display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:14px;align-items:start}@media (max-width: 800px){.av2-scan-area{grid-template-columns:1fr}}.av2-scan-side{background:var(--panel-bg, #13192e);border:1px solid var(--panel-border, rgba(255,255,255,.08));border-radius:12px;padding:14px;display:flex;flex-direction:column;align-items:center;gap:10px;min-height:340px}.av2-scan-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted, #8899bb);text-align:center}.av2-scan-img-box{width:100%;flex:1;display:flex;align-items:center;justify-content:center;background:#060c1a;border-radius:8px;overflow:hidden;min-height:260px}.av2-scan-img{width:100%;height:100%;object-fit:contain;display:block;transition:opacity .4s ease}.av2-osc-col{background:var(--panel-bg, #13192e);border:1px solid var(--panel-border, rgba(255,255,255,.08));border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px}.av2-live-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.av2-live-cell{background:#ffffff0a;border-radius:8px;padding:8px 6px;text-align:center;display:flex;flex-direction:column;gap:3px}.av2-live-cell span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted, #8899bb)}.av2-live-cell strong{font-size:16px;font-weight:700;color:var(--text, #e8eaf8)}.clr-ok{color:#00d49a!important}.clr-warn{color:#ff9800!important}.clr-muted{color:#556!important}.av2-report-box{background:#00d49a0f;border:1px solid rgba(0,212,154,.2);border-radius:10px;padding:14px}.av2-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.av2-report-cell{display:flex;flex-direction:column;gap:2px}.av2-report-cell span{font-size:11px;color:var(--muted, #8899bb)}.av2-report-cell strong{font-size:18px;font-weight:700;color:#00d49a}@media (max-width: 1100px){.control-grid,.sensor-grid,.analysis-form,.command-grid,.patient-grid,.session-grid,.patient-summary-bar,.finding-metrics,.scan-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finding-grid{grid-template-columns:1fr}}@media (max-width: 820px){.app-shell{display:flex;flex-direction:column;min-height:100vh}.sidebar{width:100%;padding:4px 6px;border-right:none;border-bottom:1px solid #aaa;align-items:stretch}.nav-list{flex-direction:row;overflow-x:auto;gap:4px;padding:0 2px 2px}.nav-item{width:auto;min-width:56px;border-radius:8px;padding:4px 6px;flex:0 0 auto}.nav-item img{width:50px}.nav-item--exit{margin-top:0}.sidebar>div{display:none}.content-area{min-height:calc(100vh - 74px);padding:8px}.panel,.panel--wide{padding:10px}.info-header{flex-wrap:wrap;gap:6px}.info-header img{height:22px;max-width:100%}.page-pocetna,.page-dosije,.page-testiranje,.page-stranice,.page-generic{padding:6px}.organ-grid,.dosije-grid,.control-grid,.toggle-grid,.sensor-grid,.analysis-form,.session-grid,.command-grid,.patient-grid,.patient-summary-bar,.readout-grid,.finding-metrics,.scan-report-grid{grid-template-columns:1fr}.patient-grid__wide{grid-column:span 1}.dosije-actions,.patient-actions,.preview-header{flex-wrap:wrap}.finding-card{grid-template-columns:1fr}.finding-media img{min-height:140px}.measurement-preview{padding:10px}.av2{padding:10px;gap:12px}.av2-card,.av2-patient,.av2-osc-col,.av2-scan-side,.av2-report-box{padding:12px}.av2-live-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.av2-report-grid{grid-template-columns:1fr}.av2-actions{gap:8px}.av2-actions .av2-btn{flex:1 1 100%;width:100%}.results-table,.panel table{display:block;width:100%;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}}@media (max-width: 520px){.content-area{min-height:calc(100vh - 68px);padding:6px}.nav-item{min-width:52px;padding:3px 5px}.nav-item img{width:44px}.av2-live-strip,.scan-report-grid{grid-template-columns:1fr}.finding-media img{min-height:120px}}
