@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-ease:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:"Segoe UI", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-green-400:oklch(79.2% .209 151.711);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xl:36rem;--container-6xl:72rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-medium:500;--font-weight-semibold:600;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.top-0{top:0}.right-0{right:0}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.-mt-px{margin-top:-1px}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mr-2{margin-right:calc(var(--spacing) * 2)}.-ml-px{margin-left:-1px}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-6{margin-left:calc(var(--spacing) * 6)}.ml-12{margin-left:calc(var(--spacing) * 12)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-3{height:calc(var(--spacing) * 3)}.h-5{height:calc(var(--spacing) * 5)}.h-8{height:calc(var(--spacing) * 8)}.h-16{height:calc(var(--spacing) * 16)}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing) * 3)}.w-5{width:calc(var(--spacing) * 5)}.w-8{width:calc(var(--spacing) * 8)}.w-auto{width:auto}.w-full{width:100%}.max-w-6xl{max-width:var(--container-6xl)}.max-w-xl{max-width:var(--container-xl)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-ping{animation:var(--animate-ping)}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-items-center{justify-items:center}.gap-2{gap:calc(var(--spacing) * 2)}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-l-md{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.rounded-r-md{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-400{border-color:var(--color-gray-400)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-green-400{background-color:var(--color-green-400)}.bg-white{background-color:var(--color-white)}.from-gray-700\/50{--tw-gradient-from:#36415380}@supports (color:color-mix(in lab,red,red)){.from-gray-700\/50{--tw-gradient-from:color-mix(in oklab, var(--color-gray-700) 50%, transparent)}}.from-gray-700\/50{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-transparent{--tw-gradient-via:transparent;--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-4{padding-block:calc(var(--spacing) * 4)}.pt-8{padding-top:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-all{word-break:break-all}.text-black{color:var(--color-black)}.text-gray-200{color:var(--color-gray-200)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-gray-500\/20{--tw-shadow-color:#6a728233}@supports (color:color-mix(in lab,red,red)){.shadow-gray-500\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-gray-500) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-gray-300{--tw-ring-color:var(--color-gray-300)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.group-\[\.status-down\]\:bg-red-600:is(:where(.group).status-down *){background-color:var(--color-red-600)}.selection\:bg-red-500 ::selection{background-color:var(--color-red-500)}.selection\:bg-red-500::selection{background-color:var(--color-red-500)}.selection\:text-white ::selection{color:var(--color-white)}.selection\:text-white::selection{color:var(--color-white)}@media(hover:hover){.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:text-gray-400:hover{color:var(--color-gray-400)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}}.focus\:border-blue-300:focus{border-color:var(--color-blue-300)}.focus\:ring:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:outline:focus{outline-style:var(--tw-outline-style);outline-width:1px}.focus\:outline-2:focus{outline-style:var(--tw-outline-style);outline-width:2px}.focus\:outline-red-500:focus{outline-color:var(--color-red-500)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:bg-gray-100:active{background-color:var(--color-gray-100)}.active\:text-gray-500:active{color:var(--color-gray-500)}.active\:text-gray-700:active{color:var(--color-gray-700)}.active\:text-gray-800:active{color:var(--color-gray-800)}@media(min-width:40rem){.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:w-3\/4{width:75%}.sm\:flex-1{flex:1}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-start{justify-content:flex-start}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:pt-0{padding-top:0}}@media(min-width:64rem){.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}}@media(min-width:80rem){.xl\:w-1\/2{width:50%}}.rtl\:flex-row-reverse:where(:dir(rtl),[dir=rtl],[dir=rtl] *){flex-direction:row-reverse}@media(prefers-color-scheme:dark){.dark\:border-gray-600{border-color:var(--color-gray-600)}.dark\:bg-gray-700{background-color:var(--color-gray-700)}.dark\:bg-gray-800{background-color:var(--color-gray-800)}.dark\:text-gray-200{color:var(--color-gray-200)}.dark\:text-gray-300{color:var(--color-gray-300)}.dark\:text-gray-400{color:var(--color-gray-400)}.dark\:text-gray-600{color:var(--color-gray-600)}@media(hover:hover){.dark\:hover\:bg-gray-900:hover{background-color:var(--color-gray-900)}.dark\:hover\:text-gray-200:hover{color:var(--color-gray-200)}.dark\:hover\:text-gray-300:hover{color:var(--color-gray-300)}}.dark\:focus\:border-blue-700:focus{border-color:var(--color-blue-700)}.dark\:focus\:border-blue-800:focus{border-color:var(--color-blue-800)}.dark\:active\:bg-gray-700:active{background-color:var(--color-gray-700)}.dark\:active\:text-gray-300:active{color:var(--color-gray-300)}}}:root{color-scheme:dark;--bg:#0c1420;--panel:#131f2e;--line:#283546;--muted:#95a4b8;--accent:#6fe0bd;--text:#ecf1f8}.auth-card{overflow-wrap:anywhere;max-width:560px;margin:40px auto}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--bg);color:var(--text);margin:0;font-family:Segoe UI,sans-serif;font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a,button{transition:background .15s,color .15s,border-color .15s}button:disabled{opacity:.45;cursor:not-allowed}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin:0}h1{letter-spacing:-1px;overflow-wrap:anywhere;margin:8px 0 12px;font-size:clamp(28px,3vw,38px);font-weight:650;line-height:1.2}h2{margin-bottom:7px;font-size:19px;font-weight:600}h3{margin-bottom:12px;font-size:16px;font-weight:600}.muted{color:var(--muted)}.user-email{overflow-wrap:anywhere}.accent{color:var(--accent)}.warning{color:#f0bb76}.small{font-size:13px}.strong{font-weight:650}.eyebrow{letter-spacing:1.5px;font-size:11px;font-weight:600}.container{width:min(1280px,100% - 64px);margin:auto}.topbar{border-bottom:1px solid var(--line);background:#101a27;flex-wrap:wrap;align-items:center;gap:24px;min-height:84px;padding:16px 32px;display:flex}.brand-group{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;display:flex}.release-badge{color:#b2c7d9;font-variant-numeric:tabular-nums;background:#1b2b3b;border:1px solid #35485b;border-radius:4px;padding:2px 6px;font-size:12px;line-height:1.35}.brand{white-space:nowrap;align-items:center;gap:12px;font-size:21px;font-weight:650;display:flex}.brand small{letter-spacing:2px;color:var(--muted);font-size:9px;font-weight:500;display:block}.brand-mark{color:var(--accent);background:#1c3a39;border:1px solid #3a6760;border-radius:12px;place-items:center;width:44px;height:44px;font-size:33px;font-weight:400;display:grid}.topbar nav{flex:1;gap:6px;min-width:0;display:flex}.topbar nav a{color:var(--muted);white-space:nowrap;border-radius:8px;padding:10px 16px;font-size:14px}.topbar nav a:hover,.topbar nav a.active{color:var(--text);background:#243144}.account{align-items:center;gap:16px;font-size:13px;display:flex}.account>span{text-overflow:ellipsis;max-width:160px;overflow:hidden}.quiet{color:var(--muted);background:0 0;border:0;padding:8px 0;font-size:13px}.quiet:hover{color:var(--text)}main.container{min-height:calc(100vh - 170px);padding:40px 0 64px}.footer{border-top:1px solid var(--line);color:#77899d;justify-content:space-between;padding:22px 0;font-size:12px;display:flex}.page-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px;display:flex}.actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.button{color:var(--text);text-align:center;background:#1c293a;border:1px solid #354457;border-radius:9px;justify-content:center;align-items:center;gap:10px;padding:11px 17px;font-size:13px;font-weight:600;line-height:1.4;display:inline-flex}.button:hover{background:#2a3b50}.button.primary{background:var(--accent);border-color:var(--accent);color:#10251f}.button.primary:hover{background:#91ebd0}.button.small{padding:7px 10px;font-size:12px}.button.danger{color:#ffd6d6;background:#542b35;border-color:#964c55}.button.danger:hover{background:#703542}.user-actions{margin-top:16px}.user-deletion{border-top:1px solid var(--line);overflow-wrap:anywhere;margin-top:20px;padding-top:16px}.user-deletion summary{cursor:pointer;color:#f5a6a6}.user-deletion p{margin:14px 0}.deletion-warning{border-color:#964c55}.panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;min-width:0;margin-bottom:24px;padding:26px}[hidden]{display:none!important}.shot-entry{border-color:#345b52}.shot-entry-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:36px;display:grid}.shot-entry-grid>*{min-width:0}#single-velocity{letter-spacing:1px;font-variant-numeric:tabular-nums;padding:12px 16px;font-size:36px;font-weight:600}#single-velocity[aria-invalid=true]{border-color:#f0bb76}.single-shot-actions{flex-wrap:wrap;gap:10px;display:flex}.single-shot-actions .primary{flex:1;min-height:50px;font-size:15px}kbd{font:inherit;opacity:.7;white-space:nowrap;font-size:11px}.single-shot-status{overflow-wrap:anywhere;min-height:22px}.shot-keypad summary,.batch-entry summary{cursor:pointer;color:var(--accent);padding:10px 0}.keypad-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:6px;display:grid}.keypad-key{-webkit-user-select:none;user-select:none;min-height:54px;font-size:25px;font-weight:500}.recent-shots-panel{border-left:1px solid var(--line);padding-left:28px}.recent-shots{font-variant-numeric:tabular-nums;margin:0;padding:0;list-style:none}.recent-shots li{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:12px;padding:9px 0;display:flex}.recent-shots li:first-child strong{color:var(--accent)}.recent-shots strong{font-size:21px;font-weight:600}.recent-shots small{color:var(--muted);font-size:12px;font-weight:400}.batch-entry{border-top:1px solid var(--line);margin-top:24px;padding-top:12px}.batch-entry>p{margin:6px 0 16px}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.section-heading h2{margin:0}.overview{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-bottom:28px;padding:22px 0;display:grid}.overview>div{border-right:1px solid var(--line);align-items:baseline;gap:12px;padding:0 28px;display:flex}.overview>div:first-child{padding-left:0}.overview>div:last-child{border:0}.overview strong{font-size:28px;font-weight:500}.overview span{color:var(--muted);font-size:13px}label{flex-direction:column;gap:7px;min-width:0;font-size:13px;font-weight:500;display:flex}input,textarea,select{color:var(--text);background:#0d1725;border:1px solid #344357;border-radius:8px;outline:none;width:100%;min-width:0;padding:10px 12px}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 2px #6fe0bd14}input::placeholder,textarea::placeholder{color:#6d7d92}textarea{resize:vertical}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);flex:none;padding:0}.check{color:var(--muted);flex-direction:row;align-items:center;gap:8px;font-weight:400;display:flex}.hint{color:var(--muted);font-size:12px;font-weight:400}.stack{flex-direction:column;gap:20px;display:flex}.stack.compact{gap:12px;margin-top:16px}.filters{flex-wrap:wrap;align-items:end;gap:14px;padding:20px;display:flex}.filters .search{flex:2;min-width:200px}.filters label{flex:1;min-width:140px}.series-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.series-card{margin:0;padding:24px}.card-top{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.card-title{overflow-wrap:anywhere;margin-bottom:8px;font-size:21px;font-weight:600;line-height:1.3;display:block}.card-title:hover{color:var(--accent)}.equipment-line{color:#bdc9d9;overflow-wrap:anywhere;font-size:14px}.equipment-line .badge{margin-left:10px}.card-stats{grid-template-columns:repeat(3,1fr);gap:15px;margin:26px 0;display:grid}.card-stats span{color:var(--muted);letter-spacing:1px;font-size:11px;display:block}.card-stats strong{font-variant-numeric:tabular-nums;font-size:26px;font-weight:500}.card-stats>div:first-child strong{color:#9fc1ff}.card-bottom{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding-top:17px;display:flex}.card-bottom a{margin-left:auto;font-size:13px}.badge{color:#b2c7d9;white-space:nowrap;background:#1b2b3b;border:1px solid #35485b;border-radius:6px;padding:3px 8px;font-size:11px;display:inline-block}.text-link{color:var(--accent)}.text-link:hover{text-decoration:underline}.back-link{color:var(--muted);margin-bottom:24px;font-size:13px;display:inline-block}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.metric{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:22px}.metric-primary{background:linear-gradient(125deg,#1a2f4a,#172638);border-color:#41618a}.metric .eyebrow{color:#aab9c9;font-size:10px}.metric-value{font-variant-numeric:tabular-nums;white-space:nowrap;margin:12px 0 8px;font-size:clamp(24px,2.7vw,34px);font-weight:550}.metric-primary .metric-value{color:#9fc1ff}.metric-value span{color:var(--muted);font-size:13px;font-weight:400}.metric .small{font-size:11px}.metric-info .metric-value,.metric-number{color:#9fc1ff}.metric-description{color:#bdc9d9;margin:10px 0}.quality-excellent{--quality-color:#7ce4b1;--quality-bg:#14342c;--quality-border:#3c8062}.quality-good{--quality-color:#f3d477;--quality-bg:#362f1b;--quality-border:#8f793a}.quality-attention{--quality-color:#ffaba8;--quality-bg:#3c232b;--quality-border:#96505c}.quality-unavailable{--quality-color:#aab9c9;--quality-bg:#1b2938;--quality-border:#415166}.quality-number,.quality-surface .metric-value{color:var(--quality-color)}.quality-surface{background:var(--quality-bg);border-color:var(--quality-border)}.quality-badge{border:1px solid var(--quality-border);background:var(--quality-bg);color:var(--quality-color);border-radius:6px;padding:4px 9px;font-size:12px;font-weight:600;line-height:1.45;display:inline-block}.series-quality{border-left-width:4px}.series-quality .section-heading{margin-bottom:10px}.series-quality>p+p{margin-top:8px}.quality-help{margin-top:14px}.quality-help summary{color:var(--text)}.quality-legend{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0;display:grid}.quality-band{background:var(--quality-bg);border:1px solid var(--quality-border);color:var(--quality-color);border-radius:8px;gap:5px;padding:14px;display:grid}.quality-band small{color:#bdc9d9;font-size:12px}.quality-card{border-top:3px solid var(--quality-border)}.card-quality{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.stat-description{margin-top:4px;font-size:11px;line-height:1.5;display:block}.deviation-positive{color:#7ce4b1}.deviation-negative{color:#ffaba8}.deviation-guide{padding:0 24px 18px}@media(max-width:700px){.quality-legend{grid-template-columns:1fr}.deviation-guide{padding:0 20px 18px}}.chart{height:310px;margin-top:25px;position:relative}.chart-small{height:242px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.details{margin:20px 0 0}.details>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:18px;padding:10px 0;font-size:13px;display:flex}.details>div:last-child{border:0}.details dt{color:var(--muted)}.details dd{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.input-panel{grid-template-columns:1fr 1.1fr;gap:50px;scroll-margin-top:20px;display:grid}.input-panel h2{margin-top:10px;margin-bottom:14px;font-size:24px}.input-panel p{margin-bottom:18px}.input-panel textarea{font-family:ui-monospace,Consolas,monospace;line-height:1.7}.sample-code{border-left:2px solid var(--accent);color:var(--accent);margin:24px 0;padding-left:18px;font-family:ui-monospace,monospace;line-height:1.9}.table-panel{padding:24px 0}.table-panel>.section-heading{padding:0 24px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}th,td{text-align:right;border-bottom:1px solid var(--line);white-space:nowrap;padding:14px 20px}th{color:var(--muted);background:#142131;font-size:11px;font-weight:500}th:first-child,td:first-child{text-align:left}tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}tbody tr:hover{background:#192637}.note-cell{text-align:left;white-space:normal;overflow-wrap:anywhere;min-width:155px;max-width:280px}.excluded{color:#8190a4;background:#111b28}.excluded .strong{text-decoration:line-through}.excluded details{color:#bec9d7}summary{cursor:pointer;font-size:12px}td .compact{min-width:200px}td label{font-size:11px}.form-panel{max-width:900px;margin:auto;padding:32px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}hr{border:0;border-top:1px solid var(--line);margin:10px 0}.empty{text-align:center;padding:60px 24px}.empty .button{margin-top:24px}.empty-symbol{color:var(--accent);margin-bottom:24px;font-size:64px;line-height:1}.notice,.errors{color:#b2ecdc;background:#17342e;border:1px solid #38645a;border-radius:10px;margin-bottom:24px;padding:15px 20px;font-size:14px}.errors{color:#f5bdc8;background:#39232b;border-color:#79404d}.errors ul{margin:8px 0 0 20px;list-style:outside}.preserve{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:20px}.equipment-list details{border-bottom:1px solid var(--line);padding:17px 0}.equipment-list details:last-child{border:0}.equipment-list summary{justify-content:space-between;align-items:center;font-size:15px;display:flex}.equipment-list small{margin-top:3px;font-size:12px;display:block}.equipment-list{margin-bottom:20px}.equipment-grid{align-items:start}.comparison{min-width:650px}.comparison th:not(:first-child){white-space:normal;min-width:200px}.comparison td{white-space:normal;overflow-wrap:anywhere}.comparison small{color:var(--muted);margin-top:7px;display:block}.comparison tbody th{text-align:left;background:0 0;font-size:13px}.prose p{color:#bdc9d9;margin-top:16px}.prose ol{color:#bdc9d9;padding-left:20px;list-style:decimal}.prose li{margin-top:14px}.prose code{color:var(--accent)}.pagination{margin:24px 0}.auth-grid{grid-template-columns:1.1fr 1fr;align-items:center;gap:100px;max-width:1050px;margin:35px auto;display:grid}.auth-intro h1{margin:20px 0 24px;font-size:clamp(36px,4vw,53px);line-height:1.15}.lead{color:#a8b8ca;max-width:430px;font-size:17px}.auth-form{padding:34px}.auth-form>p{margin:12px 0 28px}.auth-form>p:last-child{margin:24px 0 0}.auth-form h2{margin-top:12px;font-size:25px}.auth-visual{justify-content:center;align-items:center;width:270px;height:180px;margin:35px 0 20px;display:flex;position:relative;overflow:hidden}.auth-visual span{border:1px solid #3a7165;border-radius:50%;width:210px;height:210px;position:absolute}.auth-visual span:nth-child(2){width:140px;height:140px}.auth-visual span:nth-child(3){width:70px;height:70px}.auth-visual i{background:var(--accent);border-radius:50%;width:10px;height:10px;box-shadow:0 0 50px #6fe0bd55}.auth-visual:after{content:"";background:#294b46;width:100%;height:1px;position:absolute;transform:rotate(-25deg)}@media(min-width:1500px){.topbar{padding-left:max(32px,50vw - 640px);padding-right:max(32px,50vw - 640px)}}@media(max-width:1250px){.topbar{flex-wrap:wrap;gap:24px}.topbar nav{flex-basis:100%;order:3}.account{margin-left:auto}}@media(max-width:1050px){.overview>div{padding:0 16px;display:block}.overview span{display:block}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{align-items:start}.auth-grid{gap:45px}.card-top{flex-wrap:wrap}.metric-value{font-size:32px}}@media(max-width:700px){.shot-entry-grid{grid-template-columns:1fr;gap:22px}.recent-shots-panel{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.recent-shots{flex-wrap:wrap;gap:8px 16px;display:flex}.recent-shots li{border:0;gap:6px;padding:4px 0}.recent-shots strong{font-size:17px}.single-shot-actions kbd{display:none}.container{width:calc(100% - 32px)}.topbar{grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:14px 16px;display:grid}.account{align-self:start}.topbar nav{grid-column:1/-1;gap:2px;overflow-x:auto}.topbar nav a{padding:9px 11px;font-size:12px}.account>span{display:none}.brand{font-size:19px}.brand-mark{width:36px;height:36px;font-size:28px}main.container{padding-top:26px}.page-heading{margin-bottom:24px;display:block}.page-heading>.button,.page-heading>.actions{margin-top:20px}.overview{grid-template-columns:repeat(2,1fr);row-gap:18px}.overview>div:nth-child(3){padding-left:0}.overview>div:nth-child(2){border:0}.overview strong{font-size:24px}.overview span{font-size:12px}.series-grid,.detail-grid,.form-grid,.input-panel,.auth-grid{grid-template-columns:1fr}.panel{padding:20px}.table-panel{padding:20px 0}.table-panel>.section-heading{padding:0 20px}.metrics-grid{gap:10px}.metric{padding:16px}.metric-value{font-size:25px}.metric .eyebrow{letter-spacing:.5px;font-size:9px}.metric-value span,.metric .small{font-size:10px}.section-heading{flex-wrap:wrap}.input-panel{gap:22px}.input-panel .sample-code{display:none}.filters .search{min-width:100%}.filters label{min-width:calc(50% - 14px)}.filters .button{flex:1}.equipment-line{font-size:13px}.chart{height:260px}.chart-small{height:220px}.card-stats strong{font-size:23px}.detail-grid{gap:0}.form-panel{padding:20px}.auth-grid{gap:26px;margin:8px 0}.auth-intro h1{font-size:35px}.auth-visual{display:none}.auth-intro>.small{margin-top:18px}.auth-form{padding:24px}.lead{font-size:15px}.footer{font-size:10px}.comparison{min-width:580px}}.photo-gallery{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;margin:20px 0;display:grid}.photo-card{border:1px solid var(--border,#283546);border-radius:12px;display:block;overflow:hidden}.photo-card:hover{border-color:#6fe0bd}.photo-card img{object-fit:contain;background:#0b1019;width:100%;height:190px}.photo-card>div{gap:8px;padding:16px;display:grid}.photo-upload summary{cursor:pointer;color:#6fe0bd;padding:15px 0;font-weight:600}.photo-upload form>.button{margin-top:18px}.photo-preview{border-radius:8px;max-width:100%;max-height:200px;margin-top:16px}.photo-parameters .form-grid{grid-template-columns:1fr 1fr 2fr}.photo-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.photo-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.photo-toolbar output{text-align:center;font-variant-numeric:tabular-nums;min-width:48px}.photo-instruction{color:#efb77a;min-height:1.5em;margin:18px 0}.photo-live-result{z-index:2;color:#8bf0d0;font-variant-numeric:tabular-nums;background:#102c2a;border:1px solid #326859;border-radius:8px;margin-top:18px;padding:12px 15px;font-weight:600;position:sticky;top:8px}.photo-viewport{overscroll-behavior:contain;background:#070c13;border:1px solid #283546;border-radius:8px;max-height:60vh;overflow:auto}.photo-stage{width:100%;margin:0 auto;position:relative}.photo-stage img{-webkit-user-select:none;user-select:none;width:100%;max-width:none;height:auto;display:block}.photo-stage svg{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.photo-stage svg text{pointer-events:none}.photo-stage [data-point-kind]{cursor:move}.photo-edit-actions{flex-wrap:wrap;margin:18px 0}.photo-workspace .hint{margin-top:14px;display:block}.photo-save{flex-wrap:wrap;align-items:center;gap:15px;margin:0 0 26px;display:flex}@media(max-width:700px){.photo-parameters .form-grid{grid-template-columns:1fr 1fr}.photo-caption{grid-column:1/-1}.photo-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-workspace{padding:12px}.photo-toolbar .actions{flex-wrap:wrap;gap:8px}.photo-toolbar .button,.photo-edit-actions .button{padding:11px}.photo-save .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}
