:root{color:#213b33;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--green:#173f35;--muted:#607268;--line:#d7dfd4;--paper:#fffef9;--wash:#e8eee1;background:#f5f3eb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit;color:inherit}button,a,label{-webkit-tap-highlight-color:transparent}button,a,input{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-underline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,[role=tabpanel]:focus-visible{outline-offset:3px;outline:3px solid #ab741e}[hidden]{display:none!important}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.masthead,main{width:100%;max-width:480px;margin:auto}.masthead{padding:8px 16px;padding-top:max(8px, env(safe-area-inset-top));border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.wordmark{color:var(--green);letter-spacing:-1px;font:500 26px/1.2 Georgia,Times New Roman,serif;text-decoration:none}.header-button{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:0 8px;font-size:14px}main{padding:14px 16px max(16px, env(safe-area-inset-bottom))}.view-tabs{background:var(--wash);border-radius:10px;gap:4px;margin-bottom:16px;padding:3px;display:flex}.view-tabs button{min-width:0;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex:1;padding:6px 12px;font-size:14px}.view-tabs button[aria-selected=true]{background:var(--paper);color:#213b33}.numeric-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.numeric-fields label{min-width:0}.field-label{color:var(--muted);margin-bottom:5px;font-size:11px;font-weight:400;line-height:1.4;display:block}.numeric-fields input{background:var(--wash);width:100%;min-width:0;height:50px;color:var(--green);font-variant-numeric:tabular-nums;appearance:textfield;border:1px solid #0000;border-radius:9px;padding:8px 10px;font-size:22px}.numeric-fields input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.numeric-fields input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.numeric-fields #distance{background:var(--paper);border-color:var(--line);font-size:24px}.numeric-fields input[aria-invalid=true]{border-color:#9b432d}fieldset{border:0;min-width:0;margin:14px 0 0;padding:0}legend{padding:0}fieldset .field-label{margin-bottom:6px;font-size:12px}.lie-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.lie-option{cursor:pointer;position:relative}.lie-option input{opacity:0;width:1px;height:1px;position:absolute}.lie-option span{border:1px solid var(--line);background:var(--paper);border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:4px;font-size:13px;display:flex}.lie-option input:checked+span{background:var(--green);color:var(--paper);border-color:var(--green)}.lie-option input:focus-visible+span{outline-offset:3px;outline:3px solid #ab741e}.error{color:#9b432d;background:#fff1e9;border-radius:8px;margin:12px 0 0;padding:10px 12px;font-size:12px;line-height:1.5}h2{margin:0;font-size:14px;font-weight:550;line-height:1.4}.section-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.result-panel{margin-top:24px}.result-panel .section-heading{margin-bottom:5px}.sg-tag{color:var(--green);background:var(--wash);white-space:nowrap;border-radius:5px;padding:3px 7px;font-size:11px}.finish-row{border-bottom:1px solid var(--line);grid-template-columns:20px minmax(0,1fr) minmax(0,auto);align-items:center;gap:8px;min-height:48px;padding:9px 0;display:grid}.lie-icon{width:20px;height:20px;color:var(--muted);display:block}.lie-icon.green{color:var(--green)}.finish-label{font-size:14px}.finish-distance{text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:16px;font-weight:500}.unavailable .finish-distance{color:var(--muted);font-weight:400}.special-result,.starting-positions{background:var(--wash);border-radius:8px;margin:12px 0 0;padding:10px 12px;font-size:12px;line-height:1.6}.starting-positions h2{color:var(--muted);margin-bottom:4px;font-size:12px;font-weight:500}.starting-position{width:100%;min-height:44px;color:var(--green);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:7px 0;font-size:13px;display:flex}.starting-position strong{font-variant-numeric:tabular-nums;font-weight:500}.starting-empty{margin:4px 0}.reference-panel{padding-top:8px}.reference-panel .section-heading{margin:0 0 14px}.reference-units{color:var(--muted);text-align:right;font-size:11px}.reference-table{border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.reference-table th,.reference-table td{text-align:right;border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:10px 3px;font-weight:400}.reference-table thead{background:var(--wash);color:var(--muted)}.reference-table th:first-child{text-align:left;width:26%}.reference-missing{color:var(--muted)}footer{justify-content:space-between;align-items:center;gap:8px;min-height:44px;margin-top:4px;display:flex}.connection{color:var(--muted);font-size:11px}footer button,#method button,.text-button{min-height:44px;color:var(--muted);background:0 0;border:0;padding:6px 0;font-size:12px}footer button{flex-shrink:0}.text-button{color:var(--green);text-underline-offset:3px;text-decoration:underline}#method{border-top:1px solid var(--line);margin-top:8px}#method .section-heading{min-height:48px}#method button{padding:6px 8px}.method-content{color:var(--muted);overflow-wrap:anywhere;font-size:12px;line-height:1.7}.method-content p{margin:0 0 14px}.method-content strong,.method-content a{color:var(--green)}.formula{background:var(--wash);border-radius:6px;padding:10px 12px;font-family:ui-monospace,monospace}.app-update{z-index:10;max-width:480px;padding:4px 12px 4px 16px;padding-top:max(4px, env(safe-area-inset-top));background:var(--green);color:var(--paper);justify-content:space-between;align-items:center;gap:8px;margin:auto;font-size:12px;display:flex;position:sticky;top:0}.app-update button{color:inherit;background:0 0;border:0;min-height:44px;padding:6px 8px;text-decoration:underline}@media (width<=360px){main,.masthead{padding-left:12px;padding-right:12px}.numeric-fields{gap:6px}.numeric-fields input{padding-left:8px;padding-right:8px;font-size:21px}.numeric-fields #distance{font-size:22px}.reference-table{font-size:12px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
