:root{--ui-color-focus: #bda36b;--ui-color-surface-night: #101b1c;--ui-color-surface-day: #f4f4ed;--ui-color-text-night: #ece9df;--ui-color-text-day: #172524;--ui-space-1: .25rem;--ui-space-2: .5rem;--ui-space-3: .75rem;--ui-space-4: 1rem;--ui-radius-small: .2rem;--ui-radius-medium: .45rem;--ui-font-display: "Iowan Old Style", "Hoefler Text", Baskerville, Georgia, serif;--ui-font-sans: "Avenir Next", "Helvetica Neue", Helvetica, Arial, sans-serif;--ui-font-condensed: "Avenir Next Condensed", "Arial Narrow", sans-serif;--ui-font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;--ui-focus-width: 2px;--ui-motion-fast: .16s}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--ui-font-sans)}body{margin:0}button,input,select,textarea{font:inherit}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}label{font-family:var(--ui-font-condensed)}button,input,select,textarea{border-radius:var(--ui-radius-small)}button:not(:disabled),select:not(:disabled),input[type=range]:not(:disabled){cursor:pointer}:disabled{cursor:not-allowed;opacity:.62}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:var(--ui-focus-width) solid var(--ui-color-focus);outline-offset:var(--ui-space-1)}@media(forced-colors:active){:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline-color:Highlight}}:root{color-scheme:dark;--night: #071012;--plate: var(--ui-color-surface-night);--plate-raised: #162325;--sailcloth: var(--ui-color-text-night);--chalk: #b8bbb2;--signal: #ba3b2d;--verdigris: #6ba99b;--brass: var(--ui-color-focus);--teak: #8b5a35;--rule: rgba(236, 233, 223, .16);--rule-strong: rgba(236, 233, 223, .36);--plate-glass: rgba(10, 20, 21, .88);--scene-shadow: rgba(0, 0, 0, .22);--display: var(--ui-font-display);--sans: var(--ui-font-sans);--condensed: var(--ui-font-condensed);--mono: var(--ui-font-mono);--panel-font-scale: 1;--panel-gutter: 26px;--panel-compact-width: 520px;--panel-wide-width: min(50vw, 760px);--panel-mobile-height: 62dvh}body[data-scene-theme=day]{color-scheme:light;--night: #b8c8c5;--plate: #f4f4ed;--plate-raised: #e5e8df;--sailcloth: #172524;--chalk: #4f5f5c;--signal: #963127;--verdigris: #286c60;--brass: #735c25;--teak: #74452b;--rule: rgba(23, 37, 36, .18);--rule-strong: rgba(23, 37, 36, .42);--plate-glass: rgba(244, 244, 237, .92);--scene-shadow: rgba(23, 37, 36, .18)}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:var(--night);color:var(--sailcloth);font-family:var(--sans)}button,input,select{font:inherit}[hidden]{display:none!important}.viewer-shell{position:relative;width:100%;height:100dvh;isolation:isolate;background:radial-gradient(circle at 54% 42%,rgba(65,101,100,.09),transparent 42%),linear-gradient(113deg,transparent 0 49.9%,rgba(236,233,223,.025) 50%,transparent 50.1%)}#hull-canvas{position:absolute;inset:0;width:100%;height:100%;cursor:grab;outline:none;touch-action:none;transition:width .26s cubic-bezier(.22,1,.36,1),height .26s cubic-bezier(.22,1,.36,1)}#hull-canvas.is-dragging{cursor:grabbing}#hull-canvas:focus-visible{outline:1px solid var(--brass);outline-offset:-5px}.masthead{position:absolute;top:34px;left:22px;z-index:2;pointer-events:none}.masthead-actions{display:flex;align-items:stretch;gap:18px;margin-top:14px;pointer-events:auto}.identity{display:inline-flex;align-items:center;gap:12px;color:var(--sailcloth);text-decoration:none;pointer-events:auto}.scene-theme-toggle{display:flex;align-items:baseline;gap:8px;margin:0;padding:6px 0;border:0;border-bottom:1px solid var(--rule-strong);background:transparent;color:var(--chalk);cursor:pointer;font-family:var(--mono);font-size:9px;letter-spacing:.08em;pointer-events:auto;text-transform:uppercase}.library-link{display:inline-flex;align-items:center;gap:9px;min-height:34px;padding:2px 0 5px;border-bottom:1px solid var(--rule-strong);color:var(--chalk);font-family:var(--mono);letter-spacing:.07em;text-decoration:none;text-transform:uppercase}.library-link__mark{display:grid;width:23px;height:23px;place-items:center;border:1px solid var(--verdigris);color:var(--verdigris);font-family:var(--display);font-size:12px;font-style:italic}.library-link strong,.library-link small{display:block}.library-link strong{color:var(--sailcloth);font-family:var(--condensed);font-size:10px;font-weight:600}.library-link small{margin-top:3px;color:var(--chalk);font-size:7px}.library-link:hover .library-link__mark{border-color:var(--brass);color:var(--brass)}.library-link:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.scene-theme-toggle strong{color:var(--sailcloth);font-family:var(--condensed);font-size:11px;font-weight:600;letter-spacing:.06em}.scene-theme-toggle:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.identity__mark{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--verdigris);color:var(--verdigris);font-family:var(--condensed);font-size:11px;font-weight:700;letter-spacing:.06em}.identity strong,.identity small,.library-link strong,.library-link small{display:block}.identity strong{font-family:var(--condensed);font-size:14px;font-weight:600;letter-spacing:.18em;line-height:1;text-transform:uppercase}.identity small{margin-top:6px;color:var(--chalk);font-family:var(--mono);font-size:8px;letter-spacing:.04em}.library-link{position:absolute;top:0;left:238px;display:inline-flex;min-height:38px;align-items:center;gap:10px;color:var(--sailcloth);pointer-events:auto;text-decoration:none}.library-link__mark{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--brass);color:var(--brass);font-family:var(--display);font-size:17px;font-style:italic;transition:background-color .16s ease,color .16s ease}.library-link strong{font-family:var(--condensed);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.library-link small{margin-top:5px;color:var(--chalk);font-family:var(--mono);font-size:7px;letter-spacing:.04em}.library-link:hover .library-link__mark{background:var(--brass);color:var(--night)}.library-link:focus-visible{outline:2px solid var(--brass);outline-offset:4px}.drawing-name{margin-top:clamp(42px,9vh,96px)}.eyebrow,.particulars__heading,.measurement-grid dt,.mast-spec span,.drawing-register dt,.provenance,.interaction-hint,.loading-state,.error-panel>span{font-family:var(--mono);text-transform:uppercase;letter-spacing:.11em}.eyebrow{color:var(--brass);font-size:9px}.drawing-name h1{margin:11px 0 0;font-family:var(--display);font-size:clamp(56px,7.3vw,114px);font-weight:400;letter-spacing:-.055em;line-height:.84}.drawing-name h1 i{margin-left:.05em;color:transparent;font-family:var(--condensed);font-size:.61em;font-style:normal;font-weight:300;letter-spacing:-.04em;-webkit-text-stroke:1px var(--sailcloth)}.drawing-name p{margin:18px 0 0 4px;color:var(--chalk);font-size:8px}.title-block{position:absolute;top:0;right:0;z-index:3;display:flex;width:min(var(--panel-compact-width),calc(100vw - 48px));height:100dvh;max-height:100dvh;flex-direction:column;padding:0;overflow:hidden;border:0;border-left:1px solid var(--rule-strong);background:linear-gradient(90deg,transparent 0 14px,rgba(255,255,255,.018) 14px 15px,transparent 15px),var(--plate-glass);box-shadow:0 20px 60px var(--scene-shadow);backdrop-filter:blur(14px);scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent;transition:width .26s cubic-bezier(.22,1,.36,1),height .26s cubic-bezier(.22,1,.36,1),max-height .26s cubic-bezier(.22,1,.36,1)}.title-block:before{position:absolute;top:0;bottom:0;left:14px;width:1px;background:var(--rule);content:""}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.panel-toolbar{position:relative;z-index:4;display:grid;grid-template-columns:minmax(108px,1fr) auto auto;align-items:center;gap:10px;min-height:54px;padding:8px 10px 8px 22px;border-bottom:1px solid var(--rule-strong);background:linear-gradient(105deg,color-mix(in srgb,var(--verdigris) 11%,transparent),transparent 46%),var(--plate)}.panel-toolbar:after{position:absolute;right:0;bottom:-1px;width:38%;height:1px;background:var(--verdigris);content:""}.panel-toolbar__title span,.panel-toolbar__title small{display:block}.panel-toolbar__title span{font-family:var(--condensed);font-size:16px;font-weight:650;letter-spacing:.14em;text-transform:uppercase}.panel-toolbar__title small{margin-top:3px;color:var(--verdigris);font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.panel-toolbar__group{display:inline-grid;grid-auto-flow:column;align-items:center;border:1px solid var(--rule);background:var(--plate-raised)}.panel-toolbar__group button{display:grid;min-width:28px;height:28px;padding:0 7px;place-items:center;border:0;border-right:1px solid var(--rule);background:transparent;color:var(--chalk);cursor:pointer;font-family:var(--mono);font-size:13px}.panel-toolbar__group button:last-child{border-right:0}.panel-toolbar__group button[aria-pressed=true]{background:color-mix(in srgb,var(--verdigris) 18%,var(--plate-raised));color:var(--sailcloth)}.panel-toolbar__group button:focus-visible{position:relative;z-index:1;outline:2px solid var(--brass);outline-offset:-2px}.panel-toolbar__group button:disabled{cursor:default;opacity:.34}.panel-icon{position:relative;display:block;width:13px;height:11px;border:1px solid currentColor}.panel-icon--closed{height:1px;border-width:1px 0 0}.panel-icon--compact:after,.panel-icon--full:after{position:absolute;top:1px;bottom:1px;background:currentColor;content:""}.panel-icon--compact:after{right:2px;width:3px}.panel-icon--full:after{right:1px;width:6px}.panel-toolbar__group--type{grid-template-columns:28px 38px 28px}.panel-toolbar__group--type output{color:var(--chalk);font-family:var(--mono);font-size:12px;text-align:center}.title-block__content{--panel-index-height: 55px;position:relative;display:flex;width:100%;min-height:0;flex:1;flex-direction:column;padding:0 var(--panel-gutter) 12px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth;scroll-padding-top:calc(var(--panel-index-height) + 8px);scrollbar-color:var(--rule-strong) transparent;scrollbar-width:thin;font-size:calc(13px * var(--panel-font-scale))}.title-block[data-panel-mode=closed]{width:176px;height:46px;max-height:46px;border:1px solid var(--rule-strong);border-top:0;border-right:0}.title-block[data-panel-mode=closed] .panel-toolbar{display:grid;min-height:45px;padding:0;place-items:stretch;border:0}.title-block[data-panel-mode=closed] .panel-toolbar:after,.title-block[data-panel-mode=closed] .panel-toolbar__title,.title-block[data-panel-mode=closed] .panel-toolbar__group--type,.title-block[data-panel-mode=closed] #panel-mode-closed,.title-block[data-panel-mode=closed] #panel-mode-full,.title-block[data-panel-mode=closed] .title-block__content{display:none}.title-block[data-panel-mode=closed] .panel-toolbar__group{width:100%;height:45px;border-color:var(--verdigris);border-width:0 0 0 2px;background:color-mix(in srgb,var(--verdigris) 8%,var(--plate))}.title-block[data-panel-mode=closed]:before{display:none}.title-block[data-panel-mode=closed] #panel-mode-compact{display:flex;width:100%;height:45px;justify-content:flex-start;gap:10px;padding:0 13px;color:var(--sailcloth)}.title-block[data-panel-mode=closed] #panel-mode-compact:after{font-family:var(--condensed);font-size:12px;font-weight:650;letter-spacing:.1em;text-transform:uppercase;content:"Open rig desk"}.title-block[data-panel-mode=closed] #panel-mode-compact:hover{background:color-mix(in srgb,var(--verdigris) 15%,var(--plate))}.title-block[data-panel-mode=full]{width:min(var(--panel-wide-width),calc(100vw - 60px));--panel-gutter: clamp(28px, 2.7vw, 44px)}@media(min-width:761px){.viewer-shell:has(.title-block[data-panel-mode=compact]) #hull-canvas{width:calc(100% - var(--panel-compact-width))}.viewer-shell:has(.title-block[data-panel-mode=full]) #hull-canvas{width:calc(100% - var(--panel-wide-width))}}.panel-index{position:sticky;top:0;z-index:3;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;order:0;margin:0 0 12px;padding:6px 0 0;border-bottom:1px solid var(--rule-strong);background:linear-gradient(90deg,color-mix(in srgb,var(--verdigris) 7%,transparent),transparent 58%),color-mix(in srgb,var(--plate) 94%,transparent);backdrop-filter:blur(18px)}.panel-index button{position:relative;display:grid;min-width:0;min-height:48px;align-content:center;justify-items:center;gap:5px;padding:7px 5px 8px;overflow:hidden;border:1px solid transparent;border-bottom:0;border-radius:var(--ui-radius-small) var(--ui-radius-small) 0 0;background:transparent;color:var(--chalk);cursor:pointer;transition:background-color var(--ui-motion-fast) ease,border-color var(--ui-motion-fast) ease,color var(--ui-motion-fast) ease}.panel-index button i{color:var(--verdigris);font-family:var(--mono);font-size:calc(11px * var(--panel-font-scale));font-style:normal;font-weight:500;letter-spacing:.18em;line-height:1}.panel-index button span{max-width:100%;overflow:hidden;font-family:var(--condensed);font-size:calc(16px * var(--panel-font-scale));font-weight:600;letter-spacing:.09em;line-height:1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.panel-index button:hover{border-color:var(--rule);background:color-mix(in srgb,var(--verdigris) 7%,transparent);color:var(--sailcloth)}.panel-index button[aria-current=page]{border-color:var(--rule-strong);background:color-mix(in srgb,var(--verdigris) 15%,var(--plate-raised));box-shadow:inset 0 2px 0 var(--verdigris);color:var(--sailcloth)}.panel-index button:focus-visible{z-index:1;outline:2px solid var(--brass);outline-offset:-2px}.panel-context{position:sticky;top:60px;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 18px;align-items:end;margin:0;padding:14px 12px 13px;border-bottom:1px solid var(--rule-strong);background:linear-gradient(105deg,color-mix(in srgb,var(--verdigris) 10%,transparent),transparent 56%),color-mix(in srgb,var(--plate) 96%,transparent);backdrop-filter:blur(18px)}.panel-context__identity{min-width:0}.panel-context__identity>span,.panel-context__identity>strong,.panel-context__identity>small{display:block}.panel-context__identity>span{color:var(--verdigris);font-family:var(--mono);font-size:calc(12px * var(--panel-font-scale));font-weight:700;letter-spacing:.09em;text-transform:uppercase}.panel-context__identity>strong{margin-top:5px;overflow-wrap:anywhere;font-family:var(--condensed);font-size:calc(18px * var(--panel-font-scale));font-weight:650;line-height:1.12}.panel-context__identity>small{margin-top:5px;color:var(--chalk);font-family:var(--mono);font-size:calc(13px * var(--panel-font-scale));line-height:1.35}.panel-context__metrics{display:grid;grid-template-columns:auto auto;gap:13px;margin:0}.panel-context__metrics>div{min-width:0;padding-left:10px;border-left:1px solid var(--rule)}.panel-context__metrics dt{color:var(--chalk);font-family:var(--mono);font-size:calc(10px * var(--panel-font-scale));letter-spacing:.08em;text-transform:uppercase}.panel-context__metrics dd{max-width:15ch;margin:4px 0 0;overflow-wrap:anywhere;color:var(--sailcloth);font-family:var(--condensed);font-size:calc(15px * var(--panel-font-scale));font-variant-numeric:tabular-nums;line-height:1.1}.title-block__content>:where(section,form,details){width:100%;min-width:0;scroll-margin-top:44px}.panel-workspace{width:100%;min-width:0;padding-bottom:10px}.panel-workspace[data-panel-active=false]{display:none}.panel-workspace>:where(section,form,details){width:100%;min-width:0}#panel-workspace-balance[data-panel-active=true]{display:flex;flex-direction:column}#panel-workspace-balance .balance-overview{order:1}#panel-workspace-balance .rig-metrics{order:2}#panel-workspace-balance .rig-authority{order:3}.title-block__content>.rig-selector{order:1}.title-block__content>.rig-workshop{order:2}.title-block__content>.rig-controls{order:3}.title-block__content>.yard-study{order:4}.title-block__content>.rig-authority{order:5}.title-block__content>.rig-metrics{order:6}.title-block__content>.layers{order:7}.title-block__content>.particulars{order:8}.title-block__content>.provenance{order:9}.title-block__content>.drawing-register{order:10}.title-block[data-panel-mode=full] #rig-selector{min-height:44px;padding:10px 12px;font-size:17px}.title-block[data-panel-mode=full] .rig-passport,.title-block[data-panel-mode=full] .workshop-control,.title-block[data-panel-mode=full] .yard-study__yard{padding:14px 16px}.title-block[data-panel-mode=full] .yard-elevation{height:240px}.title-block[data-panel-mode=full] .yard-study__columns{padding:0 16px}.title-block[data-panel-mode=full] .rig-passport h2{max-width:28ch;font-size:22px;line-height:1.08}.title-block[data-panel-mode=full] .rig-passport__description,.title-block[data-panel-mode=full] .workshop-reasoning,.title-block[data-panel-mode=full] .yard-study__intro,.title-block[data-panel-mode=full] .rig-authority__primary p,.title-block[data-panel-mode=full] .rig-design-basis li{font-size:13px;line-height:1.55}.title-block[data-panel-mode=full] .rig-passport__definitions>div{grid-template-columns:minmax(110px,.26fr) 1fr;gap:18px;padding-top:9px}.title-block[data-panel-mode=full] .rig-authority__list{grid-template-columns:1fr}.title-block[data-panel-mode=full] .rig-authority__list article{padding:11px 13px}.title-block[data-panel-mode=full] .sail-state-card{padding:12px 14px 12px 16px}.title-block[data-panel-mode=full] .sail-state-card strong{font-size:14px}.title-block[data-panel-mode=full] .sail-state-card__reasoning{font-size:14px;line-height:1.5}.plate-rivet{position:absolute;left:8px;z-index:1;width:9px;height:9px;border:1px solid var(--rule-strong);border-radius:50%;background:var(--plate-raised);box-shadow:inset 1px 1px 1px #ffffff26}.plate-rivet--top{display:none}.plate-rivet--bottom{bottom:8px}.particulars,.rig-controls,.yard-study,.layers,.vessel-model-register,.provenance{padding:14px 0 16px;border-bottom:1px solid var(--rule)}.particulars__heading{display:flex;justify-content:space-between;margin-bottom:13px;color:var(--chalk);font-size:7px}.measurement-grid{display:grid;grid-template-columns:1fr 1fr;margin:0}.measurement-grid>div{padding:9px 0 10px;border-top:1px solid var(--rule)}.measurement-grid>div:nth-child(odd){border-right:1px solid var(--rule)}.measurement-grid>div:nth-child(2n){padding-left:14px}.measurement-grid dt,.drawing-register dt{color:var(--chalk);font-size:7px}.measurement-grid dd{margin:7px 0 0;font-family:var(--condensed);font-size:20px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.mast-spec{display:flex;justify-content:space-between;gap:14px;align-items:end;padding-top:11px;border-top:1px solid var(--rule)}.mast-spec span{max-width:105px;color:var(--chalk);font-size:7px;line-height:1.5}.mast-spec strong{font-family:var(--condensed);font-size:13px;font-weight:500;text-align:right}.mast-spec i{color:var(--signal);font-style:normal}.rig-control{display:grid;grid-template-columns:102px 1fr;align-items:center;gap:12px;min-height:31px;border-top:1px solid var(--rule)}.rig-control>label{color:var(--chalk);font-family:var(--mono);font-size:calc(9px * var(--panel-font-scale));letter-spacing:.04em;text-transform:uppercase}.rig-control__inputs{display:grid;grid-template-columns:1fr auto;align-items:center;gap:9px}.rig-control input[type=range]{width:100%;height:1px;margin:0;accent-color:var(--signal);cursor:pointer}.rig-control input[type=number]{width:clamp(48px,3.4em,62px);padding:3px 4px;border:1px solid var(--rule-strong);border-radius:0;background:var(--plate-raised);color:var(--sailcloth);font-family:var(--mono);font-size:8px;font-variant-numeric:tabular-nums;text-align:right;appearance:textfield}.rig-control input:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.rig-control input[type=number]::-webkit-outer-spin-button,.rig-control input[type=number]::-webkit-inner-spin-button,.yard-control__inputs input[type=number]::-webkit-outer-spin-button,.yard-control__inputs input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.rig-controls button,.yard-study button{width:100%;margin-top:8px;padding:7px 9px;border:1px solid var(--rule-strong);background:transparent;color:var(--sailcloth);cursor:pointer;font-family:var(--mono);font-size:8px;letter-spacing:.05em;text-align:left;text-transform:uppercase}.rig-controls button:after,.yard-study button:after{float:right;color:var(--signal);content:"↻"}.rig-controls button:hover,.yard-study button:hover{color:var(--verdigris)}.rig-controls button:focus-visible,.yard-study button:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.has-generated-rigs .rig-control--overlap{display:none}.mast-study-status{margin:8px 0 0;padding:7px 8px;border-left:2px solid var(--verdigris);background:color-mix(in srgb,var(--verdigris) 8%,transparent);color:var(--chalk);font-family:var(--mono);font-size:7px;line-height:1.5}.mast-study-status[data-state=study]{border-left-color:var(--brass);background:color-mix(in srgb,var(--brass) 9%,transparent);color:var(--brass)}.mast-study-status[data-state=operation]{border-left-color:var(--verdigris);background:color-mix(in srgb,var(--verdigris) 13%,transparent);color:var(--verdigris)}.mast-study-status[data-state=error]{border-left-color:var(--signal);background:color-mix(in srgb,var(--signal) 9%,transparent);color:var(--signal)}.mast-study-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.mast-study-actions--solo{grid-template-columns:1fr}.spar-study-footer{display:grid;gap:8px}.spar-study-footer .mast-study-status{margin:2px 0 0}.mast-study-actions button{min-height:36px}.mast-study-actions button[type=submit]:after{content:"↥"}.mast-study-actions #spar-study-reset{color:var(--brass)}.mast-study-actions #spar-study-reset:after{content:"↺"}.mast-study-actions #spar-study-reset:disabled{color:var(--chalk);cursor:default;opacity:.46}.has-mast-study .mast-profile{border-top-color:var(--brass);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brass) 18%,transparent)}.yard-study__intro{margin:-3px 0 10px;color:var(--chalk);font-family:var(--display);font-size:11px;line-height:1.45}.yard-study__list{display:grid;gap:7px}.yard-study__yard{position:relative;padding:9px 10px 10px;overflow:hidden;border:1px solid var(--rule);background:linear-gradient(105deg,color-mix(in srgb,var(--verdigris) 7%,transparent),transparent 54%),var(--plate-raised)}.yard-study__yard:before{position:absolute;top:0;bottom:0;left:0;width:2px;background:var(--verdigris);content:""}.yard-study__yard header{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:7px}.yard-study__yard header span{color:var(--chalk);font-family:var(--mono);font-size:7px;font-variant-numeric:tabular-nums;letter-spacing:.04em;text-transform:uppercase}.yard-study__yard header span{color:var(--verdigris)}.yard-study__yard header strong{color:var(--sailcloth);font-family:var(--condensed);font-size:12px;font-weight:650}.yard-study__columns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 4px;padding:0 10px;color:var(--chalk);font-family:var(--mono);font-size:7px;letter-spacing:.05em;text-transform:uppercase}.yard-elevation{display:grid;grid-template-columns:34px 1fr;grid-template-rows:1fr auto;height:168px;margin:0 0 8px;border:1px solid var(--rule-strong);background:var(--plate-raised);overflow:hidden;padding-top:12px;padding-bottom:6px;box-sizing:border-box}.yard-elevation__axis{position:relative;grid-row:1;border-right:1px solid var(--rule)}.yard-elevation__tick{position:absolute;right:6px;bottom:calc(var(--station-pct) * 1% - .45em);color:var(--chalk);font-family:var(--mono);font-size:7px;font-variant-numeric:tabular-nums;letter-spacing:.04em}.yard-elevation__plot{position:relative;grid-row:1;grid-column:2}.yard-elevation__grid{position:absolute;right:0;bottom:calc(var(--station-pct) * 1%);left:0;border-top:1px dashed color-mix(in srgb,var(--rule-strong) 55%,transparent)}.yard-elevation__column{position:absolute;top:0;bottom:0}.yard-elevation__mast{position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-1px);background:linear-gradient(to top,color-mix(in srgb,var(--chalk) 30%,transparent),color-mix(in srgb,var(--chalk) 10%,transparent))}.yard-elevation__masthead{position:absolute;right:0;left:0;bottom:calc(var(--station-pct) * 1%);border-top:1px solid var(--rule-strong)}.yard-elevation__yard{position:absolute;bottom:calc(var(--station-pct) * 1%);left:50%;width:calc(var(--span-pct) * .86 * 1%);height:3px;transform:translate(-50%);background:linear-gradient(90deg,var(--brass),var(--sailcloth) 50%,var(--brass));box-shadow:0 0 9px color-mix(in srgb,var(--brass) 25%,transparent)}.yard-elevation__yard:after{position:absolute;top:-3px;right:0;width:1px;height:9px;background:var(--brass);content:""}.yard-elevation__yard:before{position:absolute;bottom:5px;left:0;color:var(--verdigris);content:attr(data-register);font-family:var(--mono);font-size:calc(12px * var(--panel-font-scale));font-variant-numeric:tabular-nums;letter-spacing:.04em}.yard-elevation__caption{grid-column:1 / -1;grid-row:2;padding:4px 9px 5px;border-top:1px solid var(--rule);color:var(--chalk);font-family:var(--mono);font-size:7px;letter-spacing:.05em;text-transform:uppercase}.yard-study__controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.yard-control__inputs{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px}.yard-control__inputs input[type=range]{width:100%;height:1px;margin:0;accent-color:var(--brass)}.yard-control__inputs input[type=number]{width:clamp(42px,3.4em,60px);padding:3px 4px;border:1px solid var(--rule-strong);border-radius:0;background:var(--plate);color:var(--sailcloth);font-family:var(--mono);font-size:8px;font-variant-numeric:tabular-nums;text-align:right;appearance:textfield}.yard-control__inputs input:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.has-yard-study .yard-study__yard{border-color:color-mix(in srgb,var(--brass) 58%,var(--rule))}.layer-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:14px}.layers label{display:grid;grid-template-columns:17px 1fr;align-items:center;min-height:32px;color:var(--sailcloth);cursor:pointer;font-family:var(--condensed);font-size:calc(14px * var(--panel-font-scale));letter-spacing:.04em}.layers input{position:absolute;width:1px;height:1px;opacity:0}.check-mark{position:relative;width:14px;height:14px;border:1px solid var(--chalk);border-radius:3px}.layers input:checked+.check-mark{border-color:var(--signal);background:var(--signal);box-shadow:0 0 0 3px #ba3b2d1f}.layers input:focus-visible+.check-mark{outline:2px solid var(--brass);outline-offset:3px}.vessel-model-register>label,.vessel-model-register legend,.vessel-confidence{color:var(--chalk);font-family:var(--mono);font-size:8px;letter-spacing:.04em;text-transform:uppercase}.vessel-model-register select{width:100%;margin:7px 0}#vessel-model-status{min-height:2.8em;margin:4px 0 10px;color:var(--chalk);font-family:var(--mono);font-size:8px;line-height:1.4}.vessel-model-register__counts{display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 12px;border-block:1px solid var(--rule)}.vessel-model-register__counts div{padding:8px 0}.vessel-model-register__counts dt{color:var(--chalk);font-size:7px}.vessel-model-register__counts dd{margin:4px 0 0;font-family:var(--condensed);font-size:16px;font-variant-numeric:tabular-nums}.vessel-model-register fieldset{min-width:0;margin:10px 0;padding:7px 0 0;border:0;border-top:1px solid var(--rule)}.vessel-model-register legend{padding-right:7px}.vessel-model-register .layer-grid label{display:grid;grid-template-columns:17px 1fr;align-items:center;min-height:30px;cursor:pointer;font-family:var(--condensed);font-size:calc(14px * var(--panel-font-scale));letter-spacing:.04em;text-transform:capitalize}.vessel-model-register .layer-grid input{position:absolute;width:1px;height:1px;opacity:0}.vessel-model-register .layer-grid input:checked+.check-mark{border-color:var(--signal);background:var(--signal)}.vessel-model-register .layer-grid input:focus-visible+.check-mark{outline:2px solid var(--brass);outline-offset:3px}.vessel-confidence{display:flex;justify-content:space-between;margin-top:12px}#vessel-confidence{width:100%;accent-color:var(--signal)}#vessel-filters-reset{width:100%;margin-top:8px}#reset-view{display:flex;width:100%;align-items:center;justify-content:space-between;margin-top:10px;padding:9px 0;border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:transparent;color:var(--sailcloth);cursor:pointer;font-family:var(--mono);font-size:8px;letter-spacing:.03em;text-align:left}#reset-view:after{color:var(--signal);content:"↗";font-size:13px}#reset-view kbd{margin-left:auto;margin-right:12px;color:var(--chalk);font-family:var(--mono);font-size:7px;font-weight:400}#reset-view:hover{color:var(--verdigris)}#reset-view:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.provenance ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.provenance li{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;color:var(--sailcloth);font-size:7px;letter-spacing:.04em}.provenance small{color:var(--chalk);font-size:6px;letter-spacing:0;text-transform:none}.key{display:block;width:7px;height:7px;border-radius:50%}.key--model{background:var(--verdigris)}.key--user{background:var(--signal)}.key--photo{background:var(--teak)}.key--published{border:1px solid var(--brass)}.drawing-register{padding:12px 0 10px}.drawing-register dl{display:grid;grid-template-columns:1fr 1fr;gap:9px 18px;margin:0}.drawing-register div{display:flex;min-width:0;justify-content:space-between;gap:8px}.drawing-register dd{overflow:hidden;margin:0;font-family:var(--mono);font-size:7px;text-overflow:ellipsis;white-space:nowrap}.interaction-hint{position:absolute;right:38px;bottom:24px;z-index:2;display:flex;gap:20px;color:var(--chalk);font-size:7px;pointer-events:none}.interaction-hint span:before{margin-right:7px;color:var(--verdigris);content:"+"}.loading-state{position:absolute;inset:0;z-index:5;display:grid;place-content:center;background:var(--night);color:var(--chalk);font-size:8px;text-align:center}.loading-state span{width:42px;height:42px;margin:0 auto 18px;border:1px solid var(--rule);border-top-color:var(--signal);border-radius:50%;animation:rotate 1.1s linear infinite}.error-panel{position:absolute;top:50%;left:50%;z-index:8;width:min(440px,calc(100vw - 40px));padding:28px;border:1px solid var(--signal);background:var(--plate);transform:translate(-50%,-50%)}.error-panel>span{color:var(--signal);font-size:8px}.error-panel h2{margin:16px 0;font-family:var(--display);font-size:30px;font-weight:400}.error-panel p{margin:8px 0 0;color:var(--chalk);font-family:var(--mono);font-size:10px;line-height:1.55}.is-ready .masthead,.is-ready .title-block,.is-ready .interaction-hint{animation:reveal .65s cubic-bezier(.2,.8,.2,1) both}.is-ready .title-block{animation-delay:70ms}.is-ready .interaction-hint{animation-delay:.14s}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.rig-selector{padding:14px 0 16px;border-bottom:1px solid var(--rule)}.rig-selector__label{display:block;margin-bottom:7px;color:var(--chalk);font-size:8px}#rig-selector{width:100%;padding:8px 9px;border:1px solid var(--rule-strong);background:var(--plate-raised);color:var(--sailcloth);font-family:var(--condensed);font-size:15px}#rig-selector:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.rig-passport{margin-top:10px;padding:10px 10px 9px;border:1px solid var(--rule-strong);border-left:3px solid var(--verdigris);background:var(--plate-raised)}.rig-passport__status{margin:0;color:var(--verdigris);font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.rig-passport[data-status=reference]{border-left-color:var(--brass)}.rig-passport[data-status=reference] .rig-passport__status{color:var(--brass)}.rig-passport h2{margin:6px 0 0;color:var(--sailcloth);font-family:var(--condensed);font-size:17px;font-weight:600;letter-spacing:.01em;line-height:1.12}.rig-passport__description{margin:7px 0 0;color:var(--chalk);font-family:var(--display);font-size:12px;line-height:1.45}.rig-passport__definitions{margin:9px 0 0;border-top:1px solid var(--rule)}.rig-passport__definitions>div{display:grid;grid-template-columns:70px 1fr;gap:8px;padding-top:6px}.rig-passport__definitions dt,.rig-passport__definitions dd{margin:0;font-family:var(--mono);font-size:9px;line-height:1.35}.rig-passport__definitions dt{color:var(--chalk);text-transform:uppercase}.rig-passport__definitions dd{color:var(--sailcloth)}.mast-profile{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;min-height:92px;margin-top:10px;padding:9px 9px 7px;overflow:hidden;border-top:1px solid var(--rule-strong);background:repeating-linear-gradient(0deg,transparent 0 17px,var(--rule) 17px 18px),color-mix(in srgb,var(--plate) 78%,transparent)}.mast-profile>div{display:grid;grid-template-columns:16px 1fr;align-items:end;gap:7px;min-height:58px;color:var(--chalk);font-family:var(--mono);font-size:8px;line-height:1.45}.mast-profile output{display:block;color:var(--sailcloth);font-family:var(--condensed);font-size:13px;font-variant-numeric:tabular-nums}.mast-profile__bar{position:relative;display:block;width:5px;height:54px;margin-left:5px;border-bottom:2px solid var(--brass)}.mast-profile__bar i{position:absolute;right:1px;bottom:0;width:2px;min-height:8px;background:var(--verdigris);box-shadow:4px 13px 0 -.5px var(--rule-strong)}.mast-profile>div:nth-child(2) .mast-profile__bar i{width:3px;background:var(--brass)}.mast-profile small{grid-column:1 / -1;color:var(--verdigris);font-family:var(--mono);font-size:7px;letter-spacing:.06em;text-transform:uppercase}.mast-profile[data-valid-hierarchy=false] small{color:var(--signal)}.rig-authority{margin-top:12px;padding-top:11px;border-top:1px solid var(--rule)}#rig-authority>summary{display:flex;align-items:center;justify-content:space-between;padding:9px 10px;border:1px solid var(--rule-strong);background:var(--plate-raised);color:var(--sailcloth);cursor:pointer;font-family:var(--condensed);font-size:12px;letter-spacing:.04em;list-style:none}#rig-authority>summary::-webkit-details-marker{display:none}#rig-authority>summary:after{margin-left:auto;color:var(--verdigris);content:"+"}#rig-authority[open]>summary:after{content:"−"}#rig-authority>summary small{margin-left:12px;color:var(--chalk);font-family:var(--mono);font-size:7px;letter-spacing:.06em;text-transform:uppercase}#rig-authority>summary:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.rig-authority__primary{margin-top:8px;padding:9px;border:1px solid var(--rule-strong);background:var(--plate)}.rig-underhill-references{display:grid;gap:1px;margin-top:8px;background:var(--rule)}.rig-underhill-references:empty{display:none}.rig-underhill-references article{padding:9px;background:color-mix(in srgb,var(--verdigris) 8%,var(--plate))}.rig-underhill-references a{color:var(--brass);font-family:var(--condensed);font-size:11px;letter-spacing:.04em;text-underline-offset:2px;text-transform:uppercase}.rig-underhill-references p{margin:4px 0 0;color:var(--chalk);font-family:var(--display);font-size:11px;line-height:1.45}.rig-authority__primary p{margin:0;color:var(--chalk);font-family:var(--display);font-size:11px;line-height:1.45}.rig-authority__primary strong,.rig-authority__primary a{color:var(--brass)}.rig-authority__primary a,.rig-authority__list a{text-decoration-color:var(--rule-strong);text-underline-offset:2px}.rig-authority__list{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:1px;background:var(--rule)}.rig-authority__list article{padding:7px;background:var(--plate-raised)}.rig-authority__list p{margin:0;color:var(--chalk);font-family:var(--mono);font-size:8px;line-height:1.4}.rig-sail-register{margin-top:10px}.rig-sail-register h3{margin:0 0 5px;color:var(--chalk);font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.rig-sail-register ul{margin:0;padding:0;list-style:none}.rig-sail-register li{display:grid;grid-template-columns:74px 1fr;gap:7px;padding:4px 0;border-top:1px solid var(--rule);color:var(--chalk);font-family:var(--mono);font-size:9px;line-height:1.35}.rig-sail-register strong{color:var(--sailcloth);font-family:var(--condensed);font-size:10px;text-transform:capitalize}.rig-sail-register li small{grid-column:2;color:var(--chalk);font-size:8px;line-height:1.45}.rig-sail-register li em{grid-column:2;color:var(--verdigris);font-family:var(--mono);font-size:7px;font-style:normal;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.rig-sail-register li .rig-sail-register__unset{color:var(--signal)}.rig-sail-register li:has(.rig-sail-register__unset){opacity:.68}.rig-sail-register .rig-sail-register__constitution{display:grid;grid-template-columns:1fr;margin-bottom:5px;padding:7px 8px;border-left:2px solid var(--verdigris);background:color-mix(in srgb,var(--verdigris) 8%,transparent)}.rig-sail-register__constitution strong,.rig-sail-register__constitution span,.rig-sail-register__constitution small{grid-column:1}.rig-design-basis{margin-top:8px;border-top:1px solid var(--rule)}.rig-design-basis summary{padding:8px 0;color:var(--brass);cursor:pointer;font-family:var(--mono);font-size:9px;letter-spacing:.05em;text-transform:uppercase}.rig-design-basis summary:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.rig-design-basis ol{margin:0;padding:0 0 0 20px}.rig-design-basis li{padding:5px 0;color:var(--chalk);font-family:var(--display);font-size:11px;line-height:1.45}.rig-workshop{padding:14px 0 16px;border-bottom:1px solid var(--rule)}.workshop-control{padding:10px 10px 9px;border:1px solid var(--rule-strong);background:linear-gradient(135deg,rgba(107,169,155,.08),transparent 58%),var(--plate-raised)}.workshop-loading{margin:0 0 8px;padding:6px 8px;border-left:2px solid var(--verdigris);background:#6ba99b14;color:var(--chalk);font-family:var(--mono);font-size:7px;letter-spacing:.05em;text-transform:uppercase}.rig-workshop[aria-busy=true] .workshop-control,.rig-workshop[aria-busy=true] .workshop-selects{opacity:.58}.workshop-control__label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px;color:var(--chalk);font-family:var(--mono);font-size:8px;letter-spacing:.04em;text-transform:uppercase}.workshop-control__value{color:var(--sailcloth);font-family:var(--condensed);font-size:15px;font-variant-numeric:tabular-nums;letter-spacing:0;text-transform:none}#workshop-range{width:100%;margin:0;accent-color:var(--verdigris);cursor:pointer}.workshop-scale{display:flex;justify-content:space-between;margin-top:3px;color:var(--chalk);font-family:var(--mono);font-size:8px}.workshop-provenance{margin:9px 0 0;color:var(--verdigris);font-family:var(--mono);font-size:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.workshop-reasoning{margin:4px 0 0;color:var(--chalk);font-family:var(--display);font-size:11px;line-height:1.4}.workshop-reset{margin-top:7px;padding:3px 0;border:0;border-bottom:1px solid var(--rule-strong);background:transparent;color:var(--brass);cursor:pointer;font-family:var(--mono);font-size:7px;letter-spacing:.05em;text-transform:uppercase}.workshop-reset:disabled{color:var(--chalk);cursor:default;opacity:.48}.workshop-selects{display:grid;grid-template-columns:minmax(94px,.28fr) minmax(0,1fr);align-items:center;gap:7px 10px;padding-top:10px}.workshop-selects__heading{grid-column:1 / -1;margin:2px 0 0;color:var(--brass);font-family:var(--mono);font-size:7px;letter-spacing:.12em;text-transform:uppercase}.workshop-selects label{color:var(--chalk);font-size:8px}#reef-depth-label{color:var(--verdigris);font-family:var(--mono);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.workshop-selects select{min-width:0;padding:5px 7px;border:1px solid var(--rule-strong);border-radius:0;background:var(--plate-raised);color:var(--sailcloth);font-family:var(--condensed);font-size:12px}#reef-selector{border-color:color-mix(in srgb,var(--verdigris) 66%,var(--rule-strong));background:linear-gradient(90deg,color-mix(in srgb,var(--verdigris) 14%,transparent),transparent 58%),var(--plate-raised);box-shadow:inset 3px 0 0 var(--verdigris);font-weight:650}.workshop-selects__note{grid-column:2;margin:-1px 0 4px;padding-left:8px;border-left:1px solid var(--rule);color:var(--chalk);font-size:7px;line-height:1.45;opacity:.75}.sail-state-options{display:grid;grid-column:1 / -1;gap:6px;margin-top:3px}.sail-state-card{position:relative;display:grid;grid-template-columns:1fr auto;gap:4px 9px;width:100%;padding:9px 10px 9px 12px;overflow:hidden;border:1px solid var(--rule);background:color-mix(in srgb,var(--plate-raised) 88%,transparent);color:var(--sailcloth);cursor:pointer;text-align:left}.sail-state-card:before{position:absolute;top:0;bottom:0;left:0;width:2px;background:var(--rule-strong);content:""}.sail-state-card[aria-pressed=true]{border-color:color-mix(in srgb,var(--verdigris) 72%,var(--rule));background:linear-gradient(105deg,color-mix(in srgb,var(--verdigris) 13%,transparent),transparent 56%),var(--plate-raised)}.sail-state-card[aria-pressed=true]:before{width:3px;background:var(--verdigris)}.sail-state-card[aria-pressed=true] .sail-state-card__category,.sail-state-card[aria-pressed=true] .sail-state-card__metrics{color:var(--verdigris)}.sail-state-card[data-category=light-air]:before{background:var(--brass)}.sail-state-card[data-category=reduced]:before{background:var(--signal)}.sail-state-card__category{color:var(--verdigris);font-family:var(--mono);font-size:7px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.sail-state-card strong{grid-column:1 / -1;font-family:var(--condensed);font-size:12px;font-weight:600;line-height:1.25}.sail-state-card__metrics{color:var(--chalk);font-family:var(--mono);font-size:7px;font-variant-numeric:tabular-nums;line-height:1.45}.sail-state-card small{grid-column:2;grid-row:1;color:var(--chalk);font-family:var(--mono);font-size:6px;letter-spacing:.05em;text-transform:uppercase}.sail-state-card__reasoning{grid-column:1 / -1;margin-top:3px;padding-top:6px;border-top:1px solid var(--rule);color:var(--chalk);font-family:var(--display);font-size:9px;line-height:1.42}.sail-state-card:hover{border-color:var(--verdigris)}.sail-state-card:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.comparison-summary{margin-top:10px;padding-top:8px;border-top:1px solid var(--rule);color:var(--chalk);font-family:var(--mono);font-size:7px;letter-spacing:.05em;text-transform:uppercase}.comparison-deltas{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:7px 0 0;background:var(--rule)}.comparison-deltas>div{min-width:0;padding:6px;background:var(--plate-raised)}.comparison-deltas dt{color:var(--chalk);font-size:6px}.comparison-deltas dd{margin:4px 0 0;color:var(--verdigris);font-family:var(--condensed);font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:0;text-transform:none}#workshop-range:focus-visible,.workshop-reset:focus-visible,.workshop-selects select:focus-visible,.marker-readouts button:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.rig-metrics{position:relative;padding:14px 0 16px;border-bottom:1px solid var(--rule)}.balance-overview{padding:18px 0 17px;border-bottom:1px solid var(--rule)}.balance-overview__notice{margin:0 0 12px}.balance-headline{display:flex;align-items:baseline;gap:12px;margin:2px 0 12px}.balance-headline>span{color:var(--chalk);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase}.balance-headline output{color:var(--sailcloth);font-family:var(--condensed);font-size:calc(30px * var(--panel-font-scale));font-variant-numeric:tabular-nums;font-weight:650;line-height:1}.balance-headline small{margin-left:auto;max-width:44%;color:var(--chalk);font-family:var(--mono);line-height:1.4;text-align:right}.balance-overview[data-frozen=true] :is(.balance-headline,.balance-rail,.marker-readouts,.balance-values,.balance-methods),.rig-metrics[data-frozen=true] :is(.measurement-grid,.rig-metrics__provenance){filter:grayscale(45%) contrast(.92)}.balance-rail{position:relative;height:92px;margin:0 0 4px;padding:0 13px;overflow:hidden;border:1px solid var(--rule-strong);background:repeating-linear-gradient(90deg,transparent 0 9.8%,var(--rule) 9.8% 10%),linear-gradient(180deg,color-mix(in srgb,var(--verdigris) 7%,transparent),transparent 64%),var(--plate-raised)}.balance-rail__track{position:absolute;right:18px;bottom:31px;left:18px;height:1px;background:var(--rule-strong)}.balance-rail__track:before,.balance-rail__track:after{position:absolute;top:-4px;width:1px;height:9px;background:var(--rule-strong);content:""}.balance-rail__track:before{left:0}.balance-rail__track:after{right:0}.balance-rail__end{position:absolute;bottom:11px;color:var(--chalk);font-family:var(--mono);font-size:calc(10px * var(--panel-font-scale));letter-spacing:.08em;text-transform:uppercase}.balance-rail__end--stern{left:18px}.balance-rail__end--bow{right:18px}.balance-rail__marker{position:absolute;bottom:31px;left:calc(18px + (100% - 36px) * var(--balance-position) / 100);width:1px;height:35px;background:currentColor;color:var(--signal);transform:translate(-.5px)}.balance-rail__marker--ce{--balance-position: var(--ce-position, 50)}.balance-rail__marker--clr{--balance-position: var(--clr-position, 50)}.balance-rail__lead{position:absolute;bottom:68px;left:calc(18px + (100% - 36px)*min(var(--ce-position, 50),var(--clr-position, 50))*.01);width:calc((100% - 36px)*(max(var(--ce-position, 50),var(--clr-position, 50)) - min(var(--ce-position, 50),var(--clr-position, 50)))*.01);height:1px;background:repeating-linear-gradient(90deg,var(--brass) 0 4px,transparent 4px 7px)}.balance-rail__lead:before,.balance-rail__lead:after{position:absolute;content:""}.balance-rail__lead:before{top:0;left:0;width:1px;height:4px;background:var(--brass)}.balance-rail__lead:after{top:-3.5px;right:-1px;border-top:3.5px solid transparent;border-bottom:3.5px solid transparent;border-left:6px solid var(--brass)}.balance-rail__marker:after{position:absolute;bottom:-4px;left:-3px;width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 15%,transparent);content:""}.balance-rail__marker i{position:absolute;top:-18px;left:0;padding:2px 4px;background:var(--plate-raised);color:currentColor;font-family:var(--mono);font-size:calc(11px * var(--panel-font-scale));font-style:normal;font-weight:800;letter-spacing:.04em;transform:translate(-50%)}.balance-rail__marker--clr{height:23px;color:var(--verdigris)}.balance-values{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:0;background:var(--rule)}.balance-values>div{min-width:0;padding:11px 12px;background:var(--plate-raised)}.balance-values dt{color:var(--chalk);font-family:var(--mono);font-size:calc(11px * var(--panel-font-scale));letter-spacing:.08em;text-transform:uppercase}.balance-values dd{margin:6px 0 0;overflow-wrap:anywhere;color:var(--sailcloth);font-family:var(--condensed);font-size:calc(19px * var(--panel-font-scale));font-variant-numeric:tabular-nums;line-height:1.08}.balance-values small{display:block;margin-top:6px;color:var(--chalk);font-family:var(--mono);font-size:calc(11px * var(--panel-font-scale));line-height:1.45}.balance-values--secondary{grid-template-columns:1fr;margin-top:1px}.balance-values--secondary dd{font-size:calc(15px * var(--panel-font-scale))}.balance-methods{margin-top:10px}.balance-methods>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 11px;border:1px solid var(--rule-strong);background:var(--plate-raised);color:var(--sailcloth);cursor:pointer;font-family:var(--condensed);font-size:calc(14px * var(--panel-font-scale));list-style:none}.balance-methods>summary::-webkit-details-marker{display:none}.balance-methods>summary:after{margin-left:auto;color:var(--verdigris);content:"+"}.balance-methods[open]>summary:after{content:"−"}.balance-methods>summary small{color:var(--chalk);font-family:var(--mono);font-size:calc(10px * var(--panel-font-scale));letter-spacing:.04em;text-align:right;text-transform:uppercase}.balance-methods>summary:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.balance-methods__body{padding:11px 12px 12px;border:1px solid var(--rule-strong);border-top:0;background:var(--plate)}.balance-methods__body p{margin:0 0 9px;color:var(--chalk);font-family:var(--mono);line-height:1.5}.balance-methods__body p:last-child{margin-bottom:0}.balance-methods__body strong{color:var(--sailcloth)}.balance-methods__body abbr{color:var(--signal);text-decoration:none}.rig-metrics>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 11px;border:1px solid var(--rule-strong);background:var(--plate-raised);color:var(--sailcloth);cursor:pointer;font-family:var(--condensed);font-size:calc(14px * var(--panel-font-scale));list-style:none}.rig-metrics>summary::-webkit-details-marker{display:none}.rig-metrics>summary:after{margin-left:auto;color:var(--verdigris);content:"+"}.rig-metrics[open]>summary:after{content:"−"}.rig-metrics>summary small{color:var(--chalk);font-family:var(--mono);font-size:calc(10px * var(--panel-font-scale));letter-spacing:.04em;text-align:right;text-transform:uppercase}.rig-metrics>summary:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.rig-metrics .measurement-grid>div{min-width:0;padding:7px 7px 8px 0}.rig-metrics .measurement-grid>div:nth-child(2n){padding-right:0;padding-left:10px}.rig-metrics .measurement-grid>div:nth-child(9),.rig-metrics .measurement-grid>div:nth-child(10){border-top-color:var(--rule-strong)}.rig-metrics dd{overflow-wrap:anywhere;font-size:13px}.rig-metrics__provenance{margin:10px 0 0;border-top:1px solid var(--rule);padding-top:9px;color:var(--chalk);font-family:var(--mono);font-size:8px;letter-spacing:.05em;text-transform:uppercase}.rig-metrics__provenance:before{margin-right:6px;color:var(--signal);content:"◆"}.marker-readouts{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:12px 0 0;padding:0;list-style:none}.marker-readouts button{width:100%;padding:5px 8px;border:1px solid var(--rule-strong);border-left-width:2px;background:var(--plate-raised);color:var(--sailcloth);cursor:help;font-family:var(--mono);font-size:8px;text-align:left}.marker-readouts button[data-marker=ce]{border-left-color:var(--signal)}.marker-readouts button[data-marker=clr]{border-left-color:var(--verdigris)}.marker-readouts span{display:block;margin-top:4px;color:var(--chalk);font-size:6px;line-height:1.4}.marker-tooltip{position:fixed;z-index:9;max-width:min(280px,calc(100vw - 28px));padding:7px 9px;border:1px solid var(--brass);background:var(--plate);box-shadow:0 8px 28px #00000061;color:var(--sailcloth);font-family:var(--mono);font-size:8px;line-height:1.5;pointer-events:none}.title-block__content :is(.particulars__heading,.measurement-grid dt,.mast-spec span,.rig-control>label,.yard-study__columns,.yard-study__yard header span,.yard-elevation__tick,.yard-elevation__caption,.balance-headline>span,.balance-headline small,.balance-methods__body p,.provenance li,.provenance small,.drawing-register dt,.rig-selector__label,.mast-profile>div,.mast-profile small,#rig-authority>summary small,.rig-sail-register li em,.workshop-loading,.workshop-control__label,.workshop-scale,.workshop-provenance,.workshop-selects label,.sail-state-card__category,.comparison-summary,.comparison-deltas dt,.rig-metrics__provenance,.vessel-model-register>label,.vessel-model-register legend,.vessel-confidence,.vessel-model-register__counts dt,.panel-context__metrics dt){font-size:calc(12px * var(--panel-font-scale))}.title-block__content :is(.rig-control input[type=number],.rig-controls button,.yard-study button,.yard-control__inputs input[type=number],.mast-study-status,.workshop-reset,.rig-authority__list p,.rig-underhill-references p,.rig-sail-register li,.rig-sail-register li strong,.rig-sail-register li small,.marker-readouts button,.marker-readouts span,#vessel-model-status,#vessel-filters-reset,.drawing-register dd,.sail-state-card__metrics){font-size:calc(13px * var(--panel-font-scale))}.title-block__content :is(.balance-rail__end,.rig-metrics>summary small){font-size:calc(12px * var(--panel-font-scale))}.title-block__content .sail-state-card small{font-size:calc(12px * var(--panel-font-scale))}.title-block__content .sail-state-card__reasoning{font-size:calc(14px * var(--panel-font-scale))}.title-block__content #reset-view{font-size:calc(13px * var(--panel-font-scale))}.title-block__content #reset-view kbd{font-size:calc(12px * var(--panel-font-scale))}.title-block__content :is(.rig-passport__description,.workshop-reasoning,.workshop-selects__note,.yard-study__intro,.rig-authority__primary p,.rig-design-basis li){font-size:calc(14px * var(--panel-font-scale))}.title-block__content :is(.rig-passport__status,.rig-passport__definitions dt){font-size:calc(12px * var(--panel-font-scale))}.title-block__content :is(.rig-passport__definitions dd,.rig-design-basis summary){font-size:calc(13px * var(--panel-font-scale))}.title-block__content :is(.mast-profile output,.yard-study__yard header strong,.workshop-selects select,.sail-state-card strong,.comparison-deltas dd,.marker-readouts button){font-size:calc(14px * var(--panel-font-scale))}.title-block__content :is(#rig-selector,.workshop-control__value){font-size:calc(16px * var(--panel-font-scale))}.title-block__content .rig-passport h2{font-size:calc(22px * var(--panel-font-scale))}.title-block__content .measurement-grid dd{font-size:calc(20px * var(--panel-font-scale))}.title-block__content .rig-metrics .measurement-grid dd{font-size:calc(14px * var(--panel-font-scale))}.title-block__content :is(.layers label,.vessel-model-register .layer-grid label){font-size:calc(14px * var(--panel-font-scale))}.title-block__content .workshop-selects__heading{font-size:calc(14px * var(--panel-font-scale))}.title-block__content .rig-sail-register h3{font-size:calc(15px * var(--panel-font-scale))}.title-block__content .balance-rail__marker i,.title-block__content .balance-values dt{font-size:calc(12px * var(--panel-font-scale))}.title-block__content .balance-values small,.marker-tooltip{font-size:calc(13px * var(--panel-font-scale))}.title-block[data-panel-mode=full] .panel-context{grid-template-columns:minmax(0,1fr) minmax(210px,.72fr);padding:16px 18px 15px}.title-block[data-panel-mode=full] .rig-passport h2{font-size:calc(24px * var(--panel-font-scale))}.title-block[data-panel-mode=full] :is(.rig-passport__description,.workshop-reasoning,.yard-study__intro,.rig-authority__primary p,.rig-design-basis li){font-size:calc(14px * var(--panel-font-scale))}@media(max-width:760px){.masthead{top:18px;left:20px}.identity small,.drawing-name p,.library-link small{display:none}.masthead-actions{gap:12px}.drawing-name{margin-top:27px}.drawing-name h1{font-size:48px}.title-block{inset:auto 12px 12px;width:auto;height:58dvh;max-height:58dvh;padding:0;border:1px solid var(--rule-strong);background:var(--plate-glass)}.title-block[data-panel-mode=closed]{right:12px;bottom:12px;left:auto;width:176px;height:46px;max-height:46px}.title-block[data-panel-mode=full]{width:auto;height:90dvh;max-height:90dvh}.viewer-shell:has(.title-block[data-panel-mode=full]) #hull-canvas{height:10dvh}.viewer-shell:has(.title-block[data-panel-mode=compact]) #hull-canvas{height:calc(42dvh - 24px)}.title-block[data-panel-mode=full] .title-block__content{display:flex}.panel-toolbar{grid-template-columns:auto auto;justify-content:space-between;padding-left:12px}.panel-toolbar__group button{min-width:34px;height:34px}.panel-toolbar__group--type{grid-template-columns:34px 44px 34px}.panel-toolbar__title{display:none}.title-block__content{--panel-index-height: 104px;padding:0 12px 10px}.panel-index{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-bottom:10px;padding:5px 0 0}.panel-index button{min-height:46px;gap:4px;padding:6px 4px 7px}.panel-index button span{font-size:calc(15px * var(--panel-font-scale));letter-spacing:.06em}.panel-context,.title-block[data-panel-mode=full] .panel-context{position:static;grid-template-columns:1fr;gap:6px;padding:10px 12px;backdrop-filter:none}.panel-context__metrics{grid-template-columns:repeat(2,auto);gap:5px 18px;justify-content:start}.panel-context__metrics>div{display:flex;align-items:baseline;gap:7px;padding-left:0;border-left:0}.panel-context__metrics dd{margin:0;font-size:calc(14px * var(--panel-font-scale))}.balance-values{grid-template-columns:1fr}.particulars{padding:9px 0 7px}.rig-controls,.yard-study,.rig-selector,.rig-workshop,.rig-metrics{padding:8px 0 9px}.rig-authority__list{grid-template-columns:1fr}.rig-passport__description{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.rig-passport__definitions,.comparison-deltas{grid-template-columns:1fr}.particulars__heading,.provenance,.drawing-register,.mast-spec,.measurement-grid>div:nth-child(n+3){display:none}.measurement-grid dd{margin-top:4px;font-size:17px}.rig-metrics .measurement-grid>div:nth-child(n+3){display:block}.rig-metrics .measurement-grid dd{font-size:13px}.layers{padding:7px 0 9px;border:0}.layer-grid{grid-template-columns:repeat(2,1fr);column-gap:10px}.layers label{min-height:36px}#reset-view{margin-top:4px}.interaction-hint{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.desk{display:flex;min-height:0;flex:1 1 auto;flex-direction:column}.desk__bar{display:flex;align-items:center;gap:10px;padding:10px 2px 8px;border-bottom:1px solid var(--rule)}.desk__status{display:flex;flex:1 1 auto;align-items:center;gap:8px;margin:0;font-family:var(--mono);font-size:8px;letter-spacing:.05em;text-transform:uppercase;color:var(--chalk)}.desk__dot{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--signal);box-shadow:0 0 0 3px color-mix(in srgb,var(--signal) 18%,transparent)}.desk__status[data-state=ready] .desk__dot{background:var(--verdigris);box-shadow:0 0 0 3px color-mix(in srgb,var(--verdigris) 18%,transparent)}.desk__status[data-state=connecting] .desk__dot,.desk__status[data-state=busy] .desk__dot{background:var(--brass);box-shadow:0 0 0 3px color-mix(in srgb,var(--brass) 20%,transparent);animation:desk-pulse 1.6s ease-in-out infinite}@keyframes desk-pulse{50%{opacity:.35}}.desk__provider{margin:0;font-family:var(--mono);font-size:8px;letter-spacing:.04em;color:var(--chalk)}.desk__icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid var(--rule-strong);border-radius:3px;background:transparent;color:var(--chalk);cursor:pointer;font-size:12px;line-height:1}.desk__icon:hover{border-color:var(--brass);color:var(--sailcloth)}.desk__settings{display:grid;grid-template-columns:auto 1fr;gap:6px 8px;align-items:center;padding:10px 2px;border-bottom:1px solid var(--rule);font-size:9px}.desk__settings label{font-family:var(--mono);font-size:8px;letter-spacing:.05em;text-transform:uppercase;color:var(--chalk)}.desk__settings input{min-width:0;padding:6px 8px;border:1px solid var(--rule-strong);border-radius:3px;background:color-mix(in srgb,var(--plate-raised) 70%,transparent);color:var(--sailcloth);font-family:var(--mono);font-size:10px}.desk__settings input:focus-visible{outline:2px solid var(--brass);outline-offset:-1px}.desk__settings button{grid-column:2;justify-self:start;padding:6px 14px;border:1px solid var(--brass);border-radius:3px;background:color-mix(in srgb,var(--brass) 16%,transparent);color:var(--sailcloth);cursor:pointer;font-family:var(--mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase}.desk__settings small{grid-column:1 / -1;color:var(--chalk);font-size:8.5px;line-height:1.5}.desk__settings code{font-family:var(--mono)}.desk__body{display:grid;min-height:0;flex:1 1 auto;grid-template-columns:minmax(0,1fr) 128px;gap:14px;padding-top:10px}.desk__thread{display:flex;min-height:0;flex-direction:column}.desk__empty{padding:18px 2px;color:var(--chalk);font-size:10.5px;line-height:1.65}.desk__empty strong{color:var(--sailcloth)}.desk__suggestions{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none}.desk__suggestions button{padding:6px 10px;border:1px solid var(--rule-strong);border-radius:999px;background:transparent;color:var(--sailcloth);cursor:pointer;font-family:var(--sans);font-size:9.5px;text-align:left;transition:border-color .12s ease,background-color .12s ease}.desk__suggestions button:hover{border-color:var(--verdigris);background:color-mix(in srgb,var(--verdigris) 10%,transparent)}.desk__messages{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;gap:12px;margin:0;padding:0 2px 4px;overflow-y:auto;list-style:none;scroll-behavior:smooth}.desk__entry p{margin:0;font-size:10.5px;line-height:1.65}.desk__entry--user{align-self:flex-end;max-width:88%;padding:8px 12px;border:1px solid var(--rule-strong);border-radius:10px 10px 2px;background:color-mix(in srgb,var(--plate-raised) 82%,transparent);color:var(--sailcloth)}.desk__entry--rigger{align-self:flex-start;max-width:96%;padding-left:10px;border-left:2px solid var(--verdigris);color:var(--sailcloth)}.desk__entry--rigger .desk-md-heading{margin:0 0 2px;font-family:var(--condensed);font-size:11px;letter-spacing:.03em}.desk__entry--system{align-self:stretch;color:var(--chalk);font-size:9px;font-style:italic;text-align:center}.desk__entry p+p,.desk__entry ul,.desk__entry ol,.desk__entry pre{margin:6px 0 0}.desk__entry ul,.desk__entry ol{padding-left:16px;font-size:10.5px;line-height:1.6}.desk__entry blockquote{margin:6px 0 0;padding-left:8px;border-left:2px solid var(--rule-strong);color:var(--chalk);font-style:italic}.desk__entry .desk-rule{border:0;border-top:1px solid var(--rule)}.desk-code{overflow-x:auto;padding:8px 10px;border:1px solid var(--rule);border-radius:4px;background:color-mix(in srgb,var(--night) 55%,var(--plate-raised))}.desk code{font-family:var(--mono);font-size:9.5px}.desk-code-inline{padding:1px 4px;border:1px solid var(--rule);border-radius:3px;background:color-mix(in srgb,var(--night) 35%,var(--plate-raised))}.desk-code-inline--copy{cursor:copy}.desk-code-inline--copy:hover{border-color:var(--brass)}.desk-code-inline--copy[data-copy-flash=copied]{border-color:var(--verdigris);color:var(--verdigris)}.desk-link{border-bottom:1px solid color-mix(in srgb,var(--verdigris) 65%,transparent);color:inherit;font-style:normal;text-decoration:none;transition:border-color .12s ease,color .12s ease}.desk-link:hover{border-bottom-color:var(--verdigris);color:var(--verdigris)}.desk-chip{display:inline-block;margin:1px 0;padding:2px 7px;border:1px solid var(--verdigris);border-radius:999px;background:color-mix(in srgb,var(--verdigris) 12%,transparent);color:var(--sailcloth);cursor:pointer;font-family:var(--mono);font-size:9px;line-height:1.5;transition:background-color .12s ease}.desk-chip:hover{background:color-mix(in srgb,var(--verdigris) 24%,transparent)}.desk__typing{display:flex;align-items:center;gap:7px;margin:4px 0 0;color:var(--chalk);font-family:var(--mono);font-size:8.5px;letter-spacing:.04em}.desk__side{display:flex;min-height:0;flex-direction:column;gap:14px;overflow-y:auto;border-left:1px solid var(--rule);padding-left:12px}.desk__side .particulars__heading{margin-bottom:6px}.desk__configs ul,.desk__sessions ul{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.desk__configs li,.desk__sessions li{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.desk__configs button,.desk__sessions button{min-width:0;padding:0;border:0;background:none;color:var(--sailcloth);cursor:pointer;font-family:var(--mono);font-size:8.5px;letter-spacing:.02em;overflow:hidden;text-align:left;text-overflow:ellipsis;text-decoration:underline dotted color-mix(in srgb,var(--verdigris) 60%,transparent);text-underline-offset:3px;white-space:nowrap}.desk__configs button:hover,.desk__sessions button:hover{color:var(--verdigris)}.desk__configs small,.desk__sessions small{flex:0 0 auto;color:var(--chalk);font-family:var(--mono);font-size:7.5px}.desk__side-empty{margin:0;color:var(--chalk);font-size:8.5px;line-height:1.55}.desk__side-empty code{font-size:8px}.desk__peek{margin-top:10px;border:1px solid var(--rule-strong);border-radius:6px;background:color-mix(in srgb,var(--plate-raised) 65%,transparent)}.desk__peek header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid var(--rule)}.desk__peek header strong{overflow:hidden;font-family:var(--mono);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.desk__peek pre{max-height:240px;margin:0;overflow:auto;padding:10px;font-family:var(--mono);font-size:9px;line-height:1.6;white-space:pre-wrap}.desk__peek button{padding:7px 12px;border:1px solid var(--brass);border-radius:3px;background:color-mix(in srgb,var(--brass) 16%,transparent);color:var(--sailcloth);cursor:pointer;font-family:var(--mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase}.desk__peek button:last-child:not(.desk__icon){margin:10px}.desk__composer{display:flex;align-items:flex-end;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--rule-strong)}.desk__composer textarea{flex:1 1 auto;min-height:36px;max-height:160px;padding:9px 11px;border:1px solid var(--rule-strong);border-radius:6px;background:color-mix(in srgb,var(--plate-raised) 70%,transparent);color:var(--sailcloth);font-family:var(--sans);font-size:11px;line-height:1.5;resize:none}.desk__composer textarea:focus-visible{outline:2px solid var(--brass);outline-offset:-1px}.desk__composer textarea::placeholder{color:var(--chalk)}.desk__composer button{flex:0 0 auto;padding:9px 16px;border:1px solid var(--verdigris);border-radius:6px;background:color-mix(in srgb,var(--verdigris) 18%,transparent);color:var(--sailcloth);cursor:pointer;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;transition:background-color .12s ease}.desk__composer button:hover{background:color-mix(in srgb,var(--verdigris) 30%,transparent)}@media(max-width:720px){.desk__body{grid-template-columns:minmax(0,1fr)}.desk__side{overflow:visible;border-left:0;padding-left:0}}
