*{box-sizing:border-box}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#111827}body{margin:0;min-height:100vh}.app-shell{display:grid;grid-template-rows:auto 1fr auto;min-height:100vh;padding:2rem;gap:2rem}.header{text-align:center;color:#fff}.logos{display:flex;justify-content:center;gap:2rem;margin-bottom:1rem}.logo{height:80px;width:auto}.header h1{margin:.5rem 0;font-size:2.5rem}.subtitle{margin:0;font-size:1.2rem;opacity:.9}.card{width:min(100%,800px);background:#fff;border-radius:24px;padding:2rem;box-shadow:0 18px 55px #00000026;margin:0 auto}h2{margin-top:0;margin-bottom:.5rem;font-size:1.8rem;color:#1f2937}p{line-height:1.6;margin:0 0 1rem;color:#4b5563}.file-label{display:inline-flex;flex-direction:column;gap:.75rem;padding:1rem 1.1rem;border:2px dashed #cbd5e1;border-radius:16px;background:#f8fafc;cursor:pointer;margin-bottom:1.5rem;transition:border-color .2s}.file-label:hover{border-color:#3b82f6}.file-label input{display:block}.video-preview{display:grid;gap:1.5rem}.metadata-row{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.label{font-size:.85rem;color:#475569;margin:0 0 .25rem;font-weight:600}.file-name{font-size:.95rem;color:#334155;margin:0;font-weight:500}.status-chip{display:inline-flex;padding:.5rem .8rem;border-radius:999px;background:#e2e8f0;color:#0f172a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;margin:0;font-weight:500}.gpx-info{margin-top:.75rem;padding:1.5rem;border:1px solid #cbd5e1;border-radius:16px;background:#f8fafc}.coordinate-card{display:grid;gap:.5rem;padding-top:.5rem}.coordinate-card p{margin:0;font-size:.9rem}video{width:100%;max-height:66vh;border-radius:16px;background:#000;box-shadow:0 4px 6px #0000001a}.placeholder{color:#64748b;font-style:italic}.tag-section{margin-top:1rem;padding:1.5rem;border:1px solid #cbd5e1;border-radius:16px;background:#f8fafc}.tag-section h3{margin-top:0;margin-bottom:1rem;color:#1f2937}.input-row{display:flex;gap:.75rem;align-items:center}.input-row input{padding:.75rem;border:1px solid #cbd5e1;border-radius:8px;flex:1;font-size:1rem}.input-row input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.input-row button{padding:.75rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background-color .2s}.input-row button:hover{background:#2563eb}.tagged-points{margin-top:1rem;padding:1.5rem;border:1px solid #cbd5e1;border-radius:16px;background:#f8fafc}.tagged-points h3{margin-top:0;margin-bottom:1rem;color:#1f2937}.tagged-points ul{list-style:none;padding:0;margin:0 0 1.5rem}.point-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #e2e8f0;background:#fff;border-radius:8px;margin-bottom:.5rem;box-shadow:0 1px 3px #0000001a}.point-item:last-child{border-bottom:none}.point-item div{flex:1}.point-item strong{color:#1f2937}.point-item br{margin-bottom:.25rem}.point-item button{background:#ef4444;color:#fff;border:none;border-radius:6px;padding:.5rem 1rem;cursor:pointer;font-weight:500;transition:background-color .2s}.point-item button:hover{background:#dc2626}.tagged-points>button{width:100%;padding:.75rem;background:#10b981;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:1rem;transition:background-color .2s}.tagged-points>button:hover{background:#059669}.footer{text-align:center;color:#fff;padding:1rem 0}.footer p{margin:.25rem 0;font-size:.9rem}.footer strong{font-weight:600}
