@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Inter+Tight:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap');
:root{color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;color:#F4F7FF;background:#0C1636;font-synthesis:none;--ink:#F4F7FF;--muted:#93A4CF;--line:#2B3C65;--orange:#5EC9E7;--green:#5EC9E7}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #5EC9E7;outline-offset:3px}button{touch-action:manipulation}button:disabled{opacity:.4;cursor:default}.topbar{height:76px;display:flex;align-items:center;gap:35px;padding:0 30px;background:#0F1B41;border-bottom:1px solid var(--line);position:relative;z-index:10}.wordmark{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-family:'Inter Tight',Inter,sans-serif;font-size:21px;font-weight:800;letter-spacing:-.7px;white-space:nowrap}.brand-icon{display:grid;place-items:center;font-size:29px;border:1px solid var(--ink);border-radius:9px;height:34px;width:34px;margin-right:5px;line-height:1}.slash{font-weight:400;opacity:.3}.brand-light{font-weight:450}.header-actions{display:flex;gap:12px;margin-left:auto}.quiet-button{background:transparent;border:0;padding:12px 8px;font-size:12px;min-height:44px;white-space:nowrap}.quiet-button span{margin-left:9px}.quiet-button:hover{color:var(--orange)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 290px;height:calc(100dvh - 76px);height:calc(100vh - 76px);height:calc(100dvh - 76px)}.viewport{position:relative;overflow:hidden;min-width:0;background:#0C1636}#canvas-host{position:absolute;inset:0}#canvas-host canvas{width:100%;height:100%;display:block;touch-action:none}.view-heading{position:absolute;left:30px;top:28px;pointer-events:none}.eyebrow{font-size:9px;letter-spacing:1.65px;font-weight:700;color:#5EC9E7}.view-heading h1{font-family:'Inter Tight',Inter,sans-serif;letter-spacing:-1.8px;font-size:39px;line-height:1.11;margin:12px 0 12px;font-weight:600}.view-heading p{font-size:11px;color:#93A4CF}.view-heading p span{padding:0 6px}.view-status{position:absolute;top:30px;right:26px;display:flex;align-items:center;gap:8px;font-size:10px;color:#93A4CF;pointer-events:none}.live-dot{width:5px;height:5px;border-radius:50%;background:#5EC9E7}.status-divider{opacity:.4;margin:0 2px}.view-controls{position:absolute;bottom:51px;left:50%;transform:translateX(-50%);display:flex;gap:4px;align-items:center;padding:6px;background:rgba(15,27,65,.96);border:1px solid #34466F;border-radius:12px;box-shadow:0 4px 20px #050B2040;white-space:nowrap}.view-controls button{border:0;background:transparent;border-radius:7px;padding:0 13px;font-size:11px;min-height:40px}.view-controls button span{font-size:20px;vertical-align:-2px}.view-controls button.active,.view-controls button[aria-pressed=true]{background:var(--green);color:#0F1B41}.segmented{display:flex;gap:3px}.control-separator{height:22px;border-left:1px solid var(--line);margin:0 4px}.gesture-hint{display:flex;gap:7px;align-items:center;justify-content:center;position:absolute;bottom:24px;left:0;right:0;pointer-events:none;font-size:10px;color:#93A4CF}.gesture-dot{width:4px;height:4px;border:1px solid #93A4CF;border-radius:50%}.orientation{position:absolute;bottom:28px;right:25px;display:grid;place-items:center;gap:7px;color:#93A4CF;pointer-events:none}.orientation span:first-child{font-size:23px;display:block}.orientation span:last-child{font-size:8px;letter-spacing:1px}.inspector{background:#0F1B41;border-left:1px solid var(--line);padding:25px 23px 20px;overflow-y:auto;scrollbar-width:thin}.inspector-top{display:flex;align-items:center;justify-content:space-between}.small-tag{font-size:9px;color:#93A4CF;border:1px solid #2B3C65;padding:3px 5px;border-radius:4px}.selection{padding-top:29px}.selection-kicker{font-size:9px;letter-spacing:1.2px;color:#5EC9E7;font-weight:600}.selection h2{font-family:'Inter Tight',Inter,sans-serif;font-size:23px;font-weight:600;letter-spacing:-.8px;margin:7px 0 11px}.selection p{font-size:12px;line-height:1.6;color:#AABADA;margin:0;min-height:56px}.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px;padding:23px 0;border-bottom:1px solid var(--line);min-height:145px}.spec-value{font-family:'Inter Tight',Inter,sans-serif;font-size:18px;letter-spacing:-.5px;font-weight:550}.spec-label{font-size:10px;color:#93A4CF;margin-top:4px}.equipment-section{padding-top:24px}.section-label{font-size:8px;letter-spacing:1.3px;color:#93A4CF;font-weight:700;margin-bottom:12px}.equipment-list{display:grid;gap:4px}.equipment{display:flex;align-items:center;text-align:left;width:100%;gap:9px;border:0;min-height:42px;padding:6px;background:transparent;border-radius:7px;font-size:11px;transition:background .18s}.equipment.active{background:#1B2C5E}.equipment:hover,.equipment-extras button:hover{background:#1B2C5E}.equipment-code{display:grid;place-items:center;flex-shrink:0;font-family:'Inter Tight',Inter,sans-serif;font-size:9px;font-weight:700;background:#1B2C5E;border:1px solid #344775;width:29px;height:27px;border-radius:5px}.camera-code{background:#173D59;color:#5EC9E7;border-color:#336782}.spare-code{background:#20315B;color:#B5C6F4;border-color:#40517C}.court-code{font-size:22px}.equipment-end{margin-left:auto;color:#93A4CF;font-size:11px;padding-right:4px}.paired{display:grid;grid-template-columns:1fr 1fr;gap:5px}.equipment-extras{display:flex;gap:6px;margin-top:7px}.equipment-extras button{min-height:36px;padding:0 10px;border:1px solid #344775;border-radius:6px;font-size:10px;background:transparent;flex:1;white-space:nowrap}.equipment-extras button.active{background:var(--green);color:white;border-color:var(--green)}.layers{padding-top:24px;margin-top:22px;border-top:1px solid var(--line)}.switch-row{position:relative;display:flex;min-height:34px;align-items:center;justify-content:space-between;font-size:11px;cursor:pointer}.switch-row input{position:absolute;right:0;opacity:0;width:40px;height:28px;cursor:pointer}.toggle{width:27px;height:16px;border-radius:10px;background:#344775;pointer-events:none;transition:background .2s}.toggle:before{content:'';width:12px;height:12px;position:relative;display:block;top:2px;left:2px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0001;transition:transform .2s}.switch-row input:checked+.toggle{background:#5EC9E7}.switch-row input:checked+.toggle:before{transform:translateX(11px)}.switch-row input:focus-visible+.toggle{outline:3px solid var(--orange);outline-offset:3px}.source-note{font-size:10px;line-height:1.65;color:#93A4CF;margin-top:23px}.source-note button{background:transparent;border:0;padding:5px 0;color:#5EC9E7;display:block;font-size:10px;min-height:30px}.download-link{font-size:10px;display:flex;justify-content:space-between;color:#AABADA;text-decoration:none;border-top:1px solid var(--line);padding-top:13px;margin-top:15px}.download-link span{font-size:16px}.control-label{display:flex;justify-content:space-between;font-size:11px;padding-top:16px}.control-label output{font-weight:600}input[type=range]{width:100%;margin:13px 0 0;accent-color:var(--green);min-height:24px}.field-note{font-size:10px;color:#93A4CF;margin:1px 0 4px}#labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.marker{position:absolute;left:0;top:0;transform:translate(-50%,-100%);pointer-events:auto;border:1px solid #3B5080;background:#15244FED;box-shadow:0 3px 9px #00000033;color:#DCE6FF;border-radius:5px;padding:5px 8px;font-size:10px;min-width:31px;min-height:26px;white-space:nowrap;backdrop-filter:blur(5px);line-height:1.2}.marker:after{content:'';position:absolute;left:50%;top:100%;height:10px;border-left:1px solid #6D83B7}.marker.active{background:#5EC9E7;color:white;border-color:#5EC9E7;z-index:2}.marker.camera{border-color:#418FA7;color:#8AE1F5;background:#173D59F2}.marker.camera.active{background:#5EC9E7;color:white;border-color:#5EC9E7}.marker small{font-size:9px;opacity:.7;display:inline;margin-left:4px}.marker.dimension{border:0;background:#0F1B41DD;box-shadow:none;color:#EEF3FF;pointer-events:none;padding:3px 6px}.marker.dimension:after{display:none}#loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;color:#C9D5EE;background:#0C1636;gap:15px;transition:opacity .3s}#loading.hidden{opacity:0;pointer-events:none}.loading-symbol{font-size:40px}.error-message{max-width:360px;padding:20px;line-height:1.6}dialog{border:1px solid #344775;border-radius:16px;background:#0F1B41;color:var(--ink);box-shadow:0 24px 90px #020611AA;padding:18px;max-width:min(850px,94vw);max-height:92dvh}dialog::backdrop{background:#050B20C7;backdrop-filter:blur(8px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:0 0 14px}.dialog-head h2{font-family:'Inter Tight',Inter,sans-serif;font-size:17px;font-weight:600;margin:0}.close-dialog{background:#1B2C5E;border:0;width:40px;height:40px;border-radius:50%;font-size:18px}#reference-dialog img{display:block;width:auto;max-width:100%;max-height:calc(86dvh - 80px);border-radius:6px}#notes-dialog{max-width:580px}.notes-content{padding:0 12px 8px}.notes-content h3{font-size:13px;margin-top:20px}.notes-content p{font-size:12px;line-height:1.75;color:#C9D5EE}.immersive .topbar,.immersive .inspector,.immersive .view-heading{display:none}.immersive .workspace{height:100dvh;grid-template-columns:1fr}.immersive .view-status{top:25px}.immersive .viewport:after{content:'Tap Expand or press Esc to leave';position:absolute;top:24px;left:24px;font-size:11px;color:#93A4CF;pointer-events:none}.immersive #fullscreen{display:block;position:fixed;top:13px;right:20px;z-index:40;background:#0F1B41;border-radius:6px}.immersive .view-status{right:135px}
@media(max-height:850px) and (min-width:961px){.inspector{padding:21px}.selection{padding-top:20px}.selection h2{font-size:21px}.selection p{font-size:11px;min-height:48px}.spec-grid{padding:18px 0;min-height:126px;gap:14px 10px}.equipment-section{padding-top:18px}.equipment{min-height:36px}.layers{padding-top:15px;margin-top:17px}.switch-row{min-height:30px}.source-note{margin-top:15px}.download-link{margin-top:9px}.equipment-extras button{min-height:32px}.selection h2{margin-bottom:8px}}
@media(pointer:coarse){.marker{min-height:36px;min-width:38px;font-size:11px;padding:9px}.marker:before{content:'';position:absolute;inset:-5px}.view-controls button{min-height:44px}.equipment{min-height:44px}.switch-row{min-height:40px}.equipment-extras button{min-height:44px}.quiet-button{min-height:44px}.download-link{min-height:44px}}
@media(max-width:960px){.topbar{padding:0 20px;height:65px;gap:20px}.workspace{height:calc(100dvh - 65px);grid-template-columns:minmax(0,1fr) 235px}.inspector{padding:21px 17px}.view-heading{left:23px;top:26px}.view-heading h1{font-size:30px;letter-spacing:-1.1px}.view-heading .eyebrow{font-size:8px;letter-spacing:1px}.view-heading p{font-size:10px}.view-status{top:27px;right:18px;font-size:9px}.view-controls{bottom:49px;padding:5px;gap:1px}.view-controls button{padding:0 9px;font-size:10px}.control-separator{margin:0 3px}.orientation{display:none}.gesture-hint{font-size:9px}.equipment{font-size:10px;gap:6px}.equipment-code{width:25px}.equipment-extras{gap:4px}.equipment-extras button{padding:0 6px;font-size:9px}.selection h2{font-size:20px}.selection p{font-size:11px}.spec-grid{gap:15px 8px}.spec-value{font-size:16px}.spec-label{font-size:9px}.selection{padding-top:23px}}
@media(max-width:900px),(orientation:portrait){body{overflow:auto}.topbar{height:62px;padding:0 16px;gap:0}.wordmark{font-size:18px}.brand-icon{height:29px;width:29px;font-size:25px}.header-actions{gap:4px}.quiet-button{font-size:10px;padding:10px 8px}.workspace{display:flex;flex-direction:column;height:auto;min-height:calc(100dvh - 62px)}.viewport{height:calc(100dvh - 153px);min-height:470px;max-height:900px;flex-shrink:0}.inspector{padding:18px 20px;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:0 24px;overflow:visible}.inspector-top{grid-column:1/-1;margin-bottom:3px}.selection{padding-top:14px;grid-column:1}.selection p{min-height:0}.selection h2{font-size:21px}.spec-grid{grid-column:2;grid-row:2;border:0;min-height:0;padding:14px 0 3px;gap:13px}.equipment-section{grid-column:1/-1;max-width:100%}.equipment-list{grid-template-columns:1fr 1fr;gap:6px}.equipment-extras{grid-column:1/-1}.paired{gap:3px}.equipment-code{width:26px}.equipment{font-size:11px}.equipment-end{font-size:10px}.layers{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.layers .section-label{grid-column:1/-1}.source-note{grid-column:1/-1;margin:17px 0 0}.download-link{grid-column:1/-1;margin-top:10px}.view-heading{left:20px;top:23px}.view-heading h1{font-size:28px}.view-heading p{margin-top:0}.view-status{top:27px}.view-heading .eyebrow{font-size:7px;letter-spacing:1px}.view-controls{bottom:43px;max-width:calc(100% - 24px);border-radius:10px;gap:0}.view-controls button{font-size:10px;padding:0 9px}.view-controls #rotate{font-size:0;padding:0 11px}.view-controls #rotate span{font-size:23px}.control-separator{margin:0 1px}.gesture-hint{bottom:19px;font-size:9px}#spare-control{grid-column:1/-1}.immersive .viewport{height:100dvh;max-height:none}.immersive .workspace{min-height:100dvh}.marker small{display:none}}
@media(max-width:380px){.header-actions{gap:0}.quiet-button{padding:10px 6px}.quiet-button span{margin-left:3px}.view-controls button{padding:0 8px}.view-status{top:25px;right:14px;font-size:8px}.view-heading{left:16px}.view-heading .eyebrow{max-width:160px}.inspector{padding:18px 16px;gap:0 15px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}



/* Aegis website brand system: original wordmark, navy surfaces and cyan accents. */
.wordmark{gap:18px;letter-spacing:0}.aegis-logo{display:block;width:141px;height:26px;object-fit:contain}.eyebrow,.selection-kicker,.section-label,.small-tag,.view-status{font-family:'JetBrains Mono',monospace;font-weight:400}.view-heading h1{font-weight:600;color:#F4F7FF}.equipment-extras button.active,.marker.active,.marker.camera.active{color:#0F1B41}.view-controls button:hover:not(.active):not([aria-pressed=true]){background:#1B2C5E}.toggle:before{background:#C9D5EA}.switch-row input:checked+.toggle:before{background:#0F1B41}.notes-content a{color:#5EC9E7}.expanded-exit{position:absolute;right:20px;top:14px;z-index:10;background:#15244F;border:1px solid #344775;border-radius:7px}.inspector{scrollbar-color:#344775 #0F1B41}.view-controls{box-shadow:0 12px 36px #03091B55}.marker.camera{box-shadow:0 0 18px #5EC9E719}.marker.active{box-shadow:0 0 18px #5EC9E72B}
@media(max-width:960px){.wordmark{gap:13px}.aegis-logo{width:125px;height:auto}}
@media(max-width:600px){.wordmark{gap:9px}.aegis-logo{width:111px}.header-actions .quiet-button{font-size:10px}}


/* Compact product mark: intentionally visible in every camera preset. */
.view-heading .court-wordmark{display:flex;align-items:baseline;gap:9px;margin:0;font-family:'Inter Tight',Inter,sans-serif;font-size:36px;line-height:1;letter-spacing:-1.3px;white-space:nowrap;color:#F4F7FF}
.court-wordmark-name{font-weight:800}
.court-wordmark-number{position:relative;padding-right:11px;font-weight:400;letter-spacing:-1.5px;color:#C9D5EE}
.court-wordmark-degree{position:absolute;top:3px;right:0;width:7px;height:7px;border:1.5px solid #5EC9E7;border-radius:50%}
@media(max-width:960px){.view-heading .court-wordmark{font-size:30px;gap:8px;letter-spacing:-1.1px}.court-wordmark-number{letter-spacing:-1.2px}.court-wordmark-degree{top:2px;width:6px;height:6px}}
@media(max-width:600px){.view-heading .court-wordmark{font-size:27px;gap:7px}.court-wordmark-number{padding-right:9px}.court-wordmark-degree{top:2px;width:5px;height:5px;border-width:1.25px}}

/* Offline actions are available in Safari and in an installed Home Screen app. */
.offline-tools{grid-column:1/-1;border-top:1px solid var(--line);padding-top:15px;margin-top:15px}.offline-button{width:100%;min-height:44px;border:1px solid #5EC9E7;border-radius:7px;background:#173D59;color:#C9F2FF;font-size:11px;font-weight:600;padding:10px}.offline-button:hover{background:#22516E}.offline-status{font-size:10px;line-height:1.6;color:#93A4CF;margin:9px 0}.offline-status[data-state=ready]{color:#8AE1F5}.offline-status[data-state=error]{color:#F4C8B6}#offline-help{font-size:10px;line-height:1.7;color:#C9D5EE}#offline-help summary{cursor:pointer;min-height:32px;padding:6px 0;color:#C9D5EE}#offline-help p{margin:7px 0 12px}#offline-help a{color:#5EC9E7;display:inline-block;padding:4px 0}.offline-tools + .download-link{margin-top:12px}.offline-tools strong{font-weight:600;color:#EEF3FF}
/* Spread equipment labels around their anchors without covering the controls. */
.marker[data-marker]{transform:translate(-50%,-50%);z-index:1}
.marker[data-marker]:after{display:none}
.label-leaders{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.label-leaders line{stroke:#6f9cad;stroke-width:1;stroke-opacity:.62}
.label-leaders circle{fill:#8bd4e7;fill-opacity:.8}
.label-leaders .active line{stroke:#8ae1f5;stroke-width:1.5;stroke-opacity:1}
.label-leaders .active circle{fill:#b9f0fc;fill-opacity:1}
