.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.practice-page .toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.practice-filters{display:flex;gap:.5rem;flex-wrap:wrap}.practice-filter-btn{border:1px solid #ccc;background:#fff;border-radius:4px;padding:.35rem .75rem;cursor:pointer;font-size:.85rem}.practice-filter-btn.active{background:#1a5fb4;border-color:#1a5fb4;color:#fff}.practice-schedule-list{display:flex;flex-direction:column;gap:1rem}.practice-schedule-card{background:#fff;border:1px solid #ddd;border-radius:6px;padding:1rem 1.25rem}.practice-schedule-card.overdue{border-color:#c01c28;background:#fff8f8}.practice-schedule-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.practice-schedule-title{margin:0;font-size:1.05rem}.practice-schedule-meta{margin:.25rem 0 0;color:#555;font-size:.9rem}.practice-schedule-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;background:#e8f0fa;color:#1a5fb4;font-size:.8rem;white-space:nowrap}.practice-schedule-items{list-style:none;margin:0;padding:0}.practice-schedule-item{display:flex;align-items:flex-start;gap:.5rem;padding:.4rem 0;border-top:1px solid #eee}.practice-schedule-item.done{opacity:.55}.practice-schedule-item.done .practice-schedule-focus{text-decoration:line-through}.practice-schedule-focus{font-weight:600}.practice-schedule-method{color:#555}.practice-schedule-actions{display:flex;gap:.5rem;margin-top:.75rem}.practice-plan-page .plan-back{margin-bottom:1rem}.practice-plan-summary{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;color:#555;font-size:.9rem}.practice-plan-warning{color:#9a6700;margin:0 0 1rem}.practice-blocks{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.practice-block{display:grid;grid-template-columns:auto 1fr auto auto;gap:.75rem;align-items:center;padding:.75rem;border:1px solid #ddd;border-radius:6px;background:#fafafa}.practice-block-type{font-size:.75rem;text-transform:uppercase;color:#666;min-width:5rem}.practice-block-fields{display:flex;flex-direction:column;gap:.25rem}.practice-block-label-input{width:100%;padding:.35rem .5rem;border:1px solid #ccc;border-radius:4px}.practice-block-method{font-size:.85rem;color:#555}.practice-block-duration{width:4.5rem;padding:.35rem .5rem;border:1px solid #ccc;border-radius:4px}.practice-block-actions{display:flex;flex-direction:column;gap:.25rem}.practice-plan-toolbar{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-bottom:1rem}.practice-past-runs{margin-top:2rem}.practice-past-runs summary{cursor:pointer;font-weight:600;margin-bottom:.5rem}.practice-run-entry{border-top:1px solid #eee;padding:.75rem 0}.practice-run-entry-date{font-weight:600;margin-bottom:.35rem}.practice-run-note{margin:.25rem 0;font-size:.9rem;color:#444}.practice-run-page{max-width:720px;margin:0 auto}.practice-run-progress{color:#555;margin-bottom:.5rem}.practice-run-current{text-align:center;padding:2rem 1rem;background:#fff;border:1px solid #ddd;border-radius:8px;margin-bottom:1rem}.practice-run-label{font-size:1.4rem;font-weight:700;margin:0 0 .5rem}.practice-run-method{color:#555;margin:0 0 1.5rem}.practice-run-timer{font-size:4rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.05em;margin-bottom:1rem}.practice-run-timer.running{color:#1a5fb4}.practice-run-timer.complete{color:#2ec27e}.practice-run-controls{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.practice-run-upcoming{color:#666;font-size:.9rem;text-align:center}.practice-run-notes-panel{background:#fff;border:1px solid #ddd;border-radius:8px;padding:1.25rem;margin-bottom:1rem}.practice-run-notes-panel textarea{width:100%;min-height:5rem;padding:.5rem;border:1px solid #ccc;border-radius:4px;font-family:inherit;margin-bottom:.75rem}.practice-run-summary{background:#fff;border:1px solid #ddd;border-radius:8px;padding:1.25rem}.practice-run-summary h3{margin-top:0}.practice-run-summary-item{border-top:1px solid #eee;padding:.75rem 0}.practice-run-summary-label{font-weight:600}.practice-run-summary-notes{color:#444;margin:.25rem 0 0}.report-page{background:#fff;border:1px solid #999;padding:0;overflow-x:auto}.report-section{border-bottom:1px solid #bbb;padding:.75rem 1rem}.report-section:last-child{border-bottom:none}.report-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.report-meta-table,.report-lap-table,.corner-grid{width:100%;border-collapse:collapse;font-size:.85rem}.report-meta-table td,.report-meta-table th,.report-lap-table td,.report-lap-table th,.corner-grid td,.corner-grid th{border:1px solid #aaa;padding:.35rem .5rem;vertical-align:top}.report-meta-table .label{font-weight:600;white-space:nowrap;width:120px}.lap-summary-row{display:flex;gap:2rem;flex-wrap:wrap}.lap-summary-item{font-size:.9rem}.lap-summary-item strong{display:block;font-size:.75rem;text-transform:uppercase;color:#555}.lap-summary-item span{font-family:Consolas,Courier New,monospace;font-size:1.1rem;font-weight:700}.lap-variance-good{color:#1a7a1a}.lap-variance-warn{color:#b8860b}.lap-variance-bad{color:#a33}.target-lap-form{margin:0}.target-lap-fields{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.target-lap-field{display:flex;flex-direction:column;gap:.25rem}.target-lap-label{font-size:.75rem;font-weight:600;text-transform:uppercase;color:#555}.target-lap-field input{font-family:Consolas,Courier New,monospace;font-size:.95rem;padding:.35rem .5rem;border:1px solid #aaa;min-width:120px}.target-lap-source-field input{min-width:200px}.target-lap-hint{margin:.5rem 0 0;font-size:.8rem;color:#666}.target-lap-error{margin:.5rem 0 0;font-size:.85rem;color:#a00}.target-lap-saved{margin:.5rem 0 0;font-size:.85rem;color:#2a6b2a}.lap-rank-fastest td:first-child{background:#d4edda}.lap-rank-second td:first-child{background:#ffe8cc}.lap-rank-third td:first-child{background:#fff3cd}.debrief-block{border:1px solid #aaa;padding:.75rem;min-height:80px;white-space:pre-wrap;font-size:.9rem;background:#fafafa}.debrief-title{font-weight:700;margin:0 0 .5rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.03em}.post-debrief-form{display:flex;flex-direction:column;gap:.5rem}.post-debrief-textarea{width:100%;box-sizing:border-box;border:1px solid #aaa;padding:.75rem;min-height:120px;font-size:.9rem;font-family:inherit;line-height:1.4;resize:vertical;background:#fff}.post-debrief-actions{display:flex;gap:.5rem}.track-map-section{text-align:center;overflow:visible}.track-map-container{display:inline-block;max-width:600px;width:100%;border:1px solid #aaa;padding:.5rem;background:#fafafa;overflow:visible}.track-map-svg{width:100%;height:auto;display:block;overflow:visible}.track-map-corner-number,.track-map-corner-name{pointer-events:none;-webkit-user-select:none;user-select:none}.corner-grid-wrapper{overflow-x:auto;max-width:100%}.corner-grid{min-width:max-content;border-collapse:separate;border-spacing:0;--sticky-lap-width: 110px;--sticky-phase-width: 76px}.corner-grid .sticky-col-lap{position:sticky;left:0;z-index:2;min-width:var(--sticky-lap-width);max-width:var(--sticky-lap-width);width:var(--sticky-lap-width);background:#fff}.corner-grid .sticky-col-phase{position:sticky;left:var(--sticky-lap-width);z-index:2;min-width:var(--sticky-phase-width);max-width:var(--sticky-phase-width);width:var(--sticky-phase-width);background:#fff;box-shadow:2px 0 5px -2px #00000026}.corner-grid thead .sticky-header{z-index:3}.corner-grid .landmark-row .sticky-col-lap,.corner-grid .landmark-row .sticky-col-phase{background:#f5f5f5}.corner-grid .header-row .sticky-col-lap,.corner-grid .header-row .sticky-col-phase{background:#e8e8e8}.corner-grid .lap-label-fastest.sticky-col-lap{background:#d4edda}.corner-grid .lap-label-second.sticky-col-lap{background:#ffe8cc}.corner-grid .lap-label-third.sticky-col-lap{background:#fff3cd}.corner-grid .landmark-row th{font-size:.75rem;font-weight:600;color:#444;background:#f5f5f5;text-align:center;min-width:120px}.corner-grid .header-row th{background:#e8e8e8;text-align:center;min-width:120px}.corner-grid .phase-label{font-weight:700;white-space:nowrap}.corner-grid .lap-label{font-weight:700;white-space:nowrap;font-family:Consolas,Courier New,monospace}.corner-grid .lap-label-fastest{background:#d4edda}.corner-grid .lap-label-second{background:#ffe8cc}.corner-grid .lap-label-third{background:#fff3cd}.corner-grid .note-cell{max-width:180px;white-space:normal;word-wrap:break-word;font-size:.8rem}.corner-grid .note-cell--has-history,.corner-grid .note-cell--has-image,.corner-grid .note-cell--has-indicators{position:relative;padding-bottom:1.25rem}.corner-grid .note-cell--image-only{min-height:2.75rem;vertical-align:top}.note-cell-screenshot-label{display:block;color:#666;font-size:.75rem;font-style:italic;padding-right:1.25rem}.corner-note-image-indicator{position:absolute;left:.25rem;bottom:.2rem;z-index:3}.corner-note-image-icon{display:flex;align-items:center;justify-content:center;padding:.15rem;border:none;border-radius:3px;background:transparent;color:#1a5fb4;cursor:pointer;line-height:0}.corner-note-image-icon:hover,.corner-note-image-icon:focus-visible{color:#0d3d6e;background:#1a5fb414;outline:none}.corner-note-image-popover{position:fixed;z-index:1100;padding:.5rem;border:1px solid #ccc;border-radius:6px;background:#fff;box-shadow:0 6px 24px #00000038;box-sizing:border-box}.corner-note-image-popover-img{display:block;width:100%;height:auto;max-height:280px;object-fit:contain;border-radius:3px;background:#f0f0f0}.corner-note-image-popover-hint{display:block;margin-top:.35rem;font-size:.7rem;color:#666;text-align:center;white-space:nowrap}.corner-note-image-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;align-items:center;justify-content:center;background:#000000a6;padding:1.5rem}.corner-note-image-modal-panel{width:min(1200px,96vw);max-height:calc(100vh - 3rem);overflow:auto;background:#fff;border:1px solid #888;box-shadow:0 8px 32px #00000059}.corner-note-image-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .75rem;border-bottom:1px solid #bbb;background:#f5f5f5}.corner-note-image-modal-title{margin:0;font-size:.95rem;font-weight:600}.corner-note-image-modal-close{border:1px solid #aaa;background:#fff;width:28px;height:28px;font-size:1.25rem;line-height:1;cursor:pointer;padding:0}.corner-note-image-modal-close:hover{background:#eee}.corner-note-image-modal-img{display:block;width:100%;max-height:calc(100vh - 5.5rem);object-fit:contain;background:#111}.corner-history-indicator{position:absolute;right:.25rem;bottom:.2rem;z-index:3}.corner-history-icon{display:flex;align-items:center;justify-content:center;padding:.15rem;border:none;border-radius:3px;background:transparent;color:#888;cursor:pointer;line-height:0}.corner-history-icon:hover,.corner-history-icon:focus-visible{color:#444;background:#0000000f;outline:none}.corner-history-popover{position:absolute;right:0;bottom:calc(100% + 4px);min-width:220px;max-width:280px;max-height:200px;overflow-y:auto;padding:.45rem .55rem;border:1px solid #ccc;border-radius:4px;background:#fff;box-shadow:0 2px 8px #00000026;font-size:.7rem;color:#555;text-align:left;white-space:normal}.corner-history-popover-header{margin-bottom:.35rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#777}.corner-history-popover-item{margin-bottom:.35rem}.corner-history-popover-item:last-child{margin-bottom:0}.corner-grid .telemetry-cell{min-width:120px;padding:.25rem}.telemetry-cell-preview{position:relative;display:block;cursor:default}.telemetry-cell-preview--hover{cursor:zoom-in}.telemetry-cell-preview .telemetry-scrub-chart{display:block;pointer-events:none}.telemetry-cell-warning{position:absolute;top:2px;right:2px;z-index:3;display:flex;align-items:center;gap:1px;line-height:1;pointer-events:auto;padding:1px 3px 1px 2px;border-radius:3px;background:#ffffffeb;box-shadow:0 0 0 1px #00000014;cursor:help}.telemetry-cell-warning-count{font-size:.62rem;font-weight:700;color:#8a6100;min-width:.55rem;text-align:center}.telemetry-cell-warning-popup{position:absolute;top:calc(100% + 3px);right:0;z-index:6;min-width:9.5rem;max-width:12rem;padding:.35rem .45rem;border:1px solid #d4a72c;border-radius:4px;background:#fffdf5;box-shadow:0 2px 8px #0000001f;text-align:left;cursor:default}.telemetry-cell-warning-popup-title{margin:0 0 .2rem;font-size:.62rem;font-weight:600;color:#5c4a00;white-space:nowrap}.telemetry-cell-warning-popup-list{margin:0;padding:0 0 0 .95rem;font-size:.62rem;line-height:1.35;color:#333}.telemetry-cell-overlay{z-index:1;position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#ffffff8c;opacity:0;transition:opacity .15s ease;pointer-events:none;color:#333}.telemetry-cell-preview--hover .telemetry-cell-overlay{opacity:1}.telemetry-zoom-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.telemetry-zoom-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000073;padding:1rem}.telemetry-zoom-panel{width:min(720px,100%);max-height:calc(100vh - 2rem);overflow:auto;background:#fff;border:1px solid #888;box-shadow:0 8px 32px #00000040;outline:none}.telemetry-zoom-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem .75rem;border-bottom:1px solid #bbb;background:#f5f5f5}.telemetry-zoom-title{margin:0;font-size:.95rem;font-weight:600}.telemetry-zoom-close{border:1px solid #aaa;background:#fff;width:28px;height:28px;font-size:1.25rem;line-height:1;cursor:pointer;padding:0}.telemetry-zoom-close:hover{background:#eee}.telemetry-zoom-body{display:flex;gap:.75rem;padding:.75rem;align-items:flex-start}.telemetry-zoom-chart-wrap{position:relative;flex:1;min-width:0}.telemetry-chart-warning{position:absolute;top:.35rem;right:.35rem;z-index:2;line-height:0;pointer-events:none}.telemetry-insight{padding:.55rem .75rem;border-bottom:1px solid #ddd;font-size:.82rem;line-height:1.45}.telemetry-insight--warning{background:#fff8e6;border-bottom-color:#e5c76b}.telemetry-insight-text{margin:0 0 .5rem}.telemetry-insight-action{margin:0}.telemetry-insight-error{margin:.35rem 0 0;color:#a51d2d;font-size:.78rem}.telemetry-readout{display:flex;gap:1.25rem;padding:.4rem .75rem;border-bottom:1px solid #ddd;background:#fafafa;font-family:Consolas,Courier New,monospace;font-size:.8rem;line-height:1.4}.telemetry-readout-item{white-space:nowrap}.telemetry-readout-label{display:inline-block;width:1rem;font-weight:700}.telemetry-readout-label--throttle{color:#2ec27e}.telemetry-readout-label--brake{color:#e01b24}.telemetry-readout-label--speed{color:#1a5fb4}.telemetry-readout-label--steering{color:#9141ac}.telemetry-zoom-minimap{flex:0 0 160px;width:160px}.track-map-mini{border:1px solid #aaa;background:#fafafa;padding:.25rem;width:100%;aspect-ratio:1}.track-map-svg--mini{width:100%;height:100%;display:block}.telemetry-scrub-chart{display:block;max-width:100%}.telemetry-scrub-chart--preview{height:124px}.practice-focus-table{width:100%;border-collapse:collapse;font-size:.85rem}.practice-focus-table th,.practice-focus-table td{border:1px solid #aaa;padding:.35rem .5rem;text-align:left;vertical-align:middle}.practice-focus-done-col{width:48px;text-align:center}.practice-focus-date-col{width:150px}.practice-focus-actions-col{width:90px;text-align:center}.practice-focus-input,.practice-focus-date{width:100%;box-sizing:border-box;border:1px solid #ccc;padding:.25rem .35rem;font-size:.85rem;font-family:inherit}.practice-focus-empty{color:#666;font-style:italic;text-align:center}.practice-focus-toolbar{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.practice-focus-remove{font-size:.75rem;padding:.2rem .4rem}.practice-focus-done td{color:#777}.practice-focus-done .practice-focus-input,.practice-focus-done .practice-focus-date{text-decoration:line-through;color:#777}.prior-lap-col{font-family:Consolas,Courier New,monospace;font-size:.8rem;color:#555}.lap-incidents{font-weight:700;color:#a33;text-align:center}@media(max-width:768px){.report-grid-2{grid-template-columns:1fr}.telemetry-zoom-body{flex-direction:column}.telemetry-zoom-minimap{flex:none;width:100%;max-width:200px;align-self:center}}.btn-reprocess:not(:disabled){cursor:help}.btn-reprocess:disabled{cursor:not-allowed}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#f4f4f4;color:#222}a{color:#1a5fb4;text-decoration:none}a:hover{text-decoration:underline}.app-shell{min-height:100vh}.app-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background:#1e1e2e;color:#fff}.app-header nav{display:flex;gap:1rem}.app-header nav a{color:#cdd6f4}.app-logo{font-weight:700;font-size:1.1rem;color:#fff!important;text-decoration:none!important}.app-main{max-width:1400px;margin:0 auto;padding:1.5rem}.page-title{margin:0 0 1rem}.btn{display:inline-block;padding:.5rem 1rem;border:1px solid #888;border-radius:4px;background:#fff;cursor:pointer;font-size:.9rem}.btn:hover{background:#eee}.btn-primary{background:#1a5fb4;border-color:#1a5fb4;color:#fff}.btn-primary:hover{background:#15539c}.btn-danger{background:#fff;border-color:#c01c28;color:#c01c28}.btn-danger:hover{background:#fde8ea}.btn:disabled{opacity:.6;cursor:not-allowed}.card{background:#fff;border:1px solid #ccc;border-radius:4px;padding:1rem;margin-bottom:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-weight:600;margin-bottom:.35rem}.form-group input,.form-group textarea{width:100%;padding:.5rem;border:1px solid #aaa;border-radius:4px;font-family:inherit}.form-group textarea{min-height:160px;resize:vertical}.error-banner{background:#ffe5e5;border:1px solid #c01c28;color:#8a1018;padding:.75rem;border-radius:4px;margin-bottom:1rem}.info-banner{background:#e8f4fd;border:1px solid #1a5fb4;color:#0d3d6e;padding:.75rem;border-radius:4px;margin-bottom:1rem}.session-table{width:100%;border-collapse:collapse;background:#fff}.session-table th,.session-table td{border:1px solid #ccc;padding:.5rem .75rem;text-align:left}.session-table tbody tr{cursor:pointer}.session-table tbody tr:hover{background:#f0f7ff}.session-combo-list{display:flex;flex-direction:column;gap:1rem}.session-combo{padding:0;overflow:hidden}.session-combo-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem}.session-combo-expanded .session-combo-header{border-bottom:1px solid #e0e0e0}.session-combo-title-block{flex:1;min-width:0}.session-combo-title{margin:0;font-size:1.05rem;font-weight:600;line-height:1.35}.session-combo-separator{color:#666;font-weight:400}.session-combo-pending{margin:.65rem 0 0;padding-left:1.25rem;font-size:.9rem;color:#333}.session-combo-pending li{margin-bottom:.35rem}.session-combo-pending li:last-child{margin-bottom:0}.session-combo-pending-focus{font-weight:500}.session-combo-pending-method{color:#555}.session-combo-pending-due{color:#666;font-size:.85rem}.session-combo-pending-overdue .session-combo-pending-due{color:#a33;font-weight:600}.session-combo-toggle{flex-shrink:0;white-space:nowrap}.session-combo-body{padding:0 1rem 1rem}.session-combo-body .session-table{margin-top:.75rem}.session-filters{margin-bottom:1rem}.session-filters-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.session-filter-field{flex:1 1 160px;min-width:140px}.session-filter-field label{display:block;font-weight:600;font-size:.85rem;margin-bottom:.35rem}.session-filter-field input{width:100%;padding:.5rem;border:1px solid #aaa;border-radius:4px;font-family:inherit}.session-filter-actions{flex:0 0 auto}.session-filters-loading{margin:.75rem 0 0;font-size:.85rem;color:#555}.session-table-actions-col{width:1%;white-space:nowrap}.session-delete-btn,.btn-sm{font-size:.8rem;padding:.25rem .6rem}.recording-indicator{display:inline-flex;align-items:center;gap:.5rem;color:#c01c28;font-weight:600}.recording-dot{width:10px;height:10px;border-radius:50%;background:#c01c28;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.toolbar{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem;align-items:center}.voice-clip-toolbar{align-items:center;margin-bottom:.5rem}.clip-timer{font-variant-numeric:tabular-nums;font-size:.95rem;color:#333}.clip-timer-remaining{color:#666;font-size:.85rem}.clip-hint{margin:0 0 1rem;font-size:.85rem;color:#666}.clip-status-list{list-style:none;padding:0;margin:0 0 1rem;font-size:.9rem}.clip-status-item{padding:.25rem 0;color:#444}.clip-status-transcribing,.clip-status-pending{color:#666}.clip-status-error{color:#a33}.clip-pending-hint{margin:0 0 1rem;font-size:.85rem;color:#856404}.manual-corner-row{display:grid;grid-template-columns:60px 1fr 120px 120px auto;gap:.5rem;margin-bottom:.5rem;align-items:center}@media(max-width:768px){.manual-corner-row{grid-template-columns:1fr}}.error-inline{margin:.35rem 0 0;font-size:.85rem;color:#a33}.corner-screenshot-section--disabled{opacity:.65}.corner-screenshot-actions{margin-bottom:.75rem}.corner-screenshot-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.corner-screenshot-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;border:1px solid #ccc;border-radius:4px;background:#fafafa}.corner-screenshot-thumb{width:72px;height:48px;object-fit:cover;border:1px solid #bbb;border-radius:3px;background:#eee}.corner-screenshot-label{flex:1;font-size:.9rem;font-weight:600}.corner-screenshot-remove{font-size:.8rem;padding:.25rem .5rem}.corner-image-tag-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000073;padding:1rem}.corner-image-tag-panel{width:min(420px,100%);max-height:calc(100vh - 2rem);overflow:auto;background:#fff;border:1px solid #888;border-radius:4px;box-shadow:0 8px 32px #00000040;padding:1rem}.corner-image-tag-title{margin:0 0 .35rem;font-size:1.05rem}.corner-image-tag-hint{margin:0 0 .75rem;font-size:.85rem;color:#666}.corner-image-tag-preview-wrap{margin-bottom:.75rem;text-align:center}.corner-image-tag-preview{max-width:100%;max-height:180px;object-fit:contain;border:1px solid #ccc;border-radius:4px;background:#f5f5f5}.corner-image-phase-fieldset{border:none;margin:0 0 1rem;padding:0}.corner-image-phase-fieldset legend{font-weight:600;margin-bottom:.35rem}.corner-image-phase-options{display:flex;gap:1rem;flex-wrap:wrap}.corner-image-phase-option{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem}.corner-image-tag-actions{display:flex;justify-content:flex-end;gap:.5rem}.auth-page{display:flex;justify-content:center;padding:3rem 1rem}.auth-card{width:100%;max-width:400px;background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 8px #00000014}.auth-card h1{margin:0 0 .5rem;font-size:1.5rem}.auth-subtitle{margin:0 0 1.5rem;color:#555}.auth-google-btn{width:100%}.auth-divider{text-align:center;margin:1rem 0;color:#888}.auth-form label{display:block;margin-bottom:.75rem;font-size:.9rem}.auth-form input{display:block;width:100%;margin-top:.25rem;padding:.5rem;border:1px solid #ccc;border-radius:4px}.auth-form button{width:100%;margin-top:.5rem}.auth-toggle{margin-top:1rem;font-size:.9rem;text-align:center}.auth-note{margin-top:1rem;font-size:.85rem;color:#666}.auth-error{color:#c01c28;margin-top:1rem}.auth-loading{padding:2rem;text-align:center}.link-btn{background:none;border:none;color:#1a5fb4;cursor:pointer;padding:0;font:inherit;text-decoration:underline}.header-signout{background:none;border:none;color:#cdd6f4;cursor:pointer;font:inherit;padding:0}.header-signout:hover{text-decoration:underline}.admin-table{width:100%;border-collapse:collapse;background:#fff}.admin-table th,.admin-table td{border:1px solid #ddd;padding:.5rem .75rem;text-align:left}.admin-table th{background:#f0f0f0}.admin-actions{display:flex;gap:.5rem}
