.page.builder{max-width:1640px}.builder__title{justify-content:space-between;align-items:flex-end}.builder__actions{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.builder__narrow{display:none}.builder-layout{align-items:start;gap:var(--spacing-xl);grid-template-columns:290px minmax(0,1fr) 380px;display:grid}.builder-layout__palette,.builder-layout__main,.builder-layout__side{gap:var(--spacing-xl);flex-direction:column;min-width:0;display:flex}.builder-layout__palette{top:var(--spacing-lg);position:sticky}@media (max-width:1360px){.builder-layout{grid-template-columns:270px minmax(0,1fr)}.builder-layout__side{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:start;display:grid}}@media (max-width:900px){.builder__narrow{border-left:2px solid var(--accent-orange);padding-left:var(--spacing-md);display:block}.builder-layout{grid-template-columns:minmax(0,1fr)}.builder-layout__palette{position:static}.builder-layout__side{display:flex}}.builder-start{align-items:start;gap:var(--spacing-xl);grid-template-columns:minmax(0,2fr) minmax(0,1fr);display:grid}@media (max-width:900px){.builder-start{grid-template-columns:minmax(0,1fr)}}.banner--quiet{border-left-color:var(--accent-muted);background:var(--surface-default);color:var(--text-primary-muted)}.btn--small{height:22px;padding:0 var(--spacing-sm);font-size:var(--font-size-tiny)}.select--small{min-height:24px;font-size:var(--font-size-tiny);padding:0 4px}.textarea--tall{min-height:140px}.textarea--code{min-height:96px;font-size:var(--font-size-tiny);letter-spacing:0;text-transform:none;overflow-wrap:anywhere}.icon-btn{background:var(--input-bg);width:22px;height:22px;color:var(--text-primary);font:inherit;font-size:var(--font-size-normal);cursor:pointer;border:0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover:not(:disabled),.icon-btn:focus-visible{background:var(--action-button-bg-hover);color:var(--accent-orange);outline:none}.icon-btn:disabled{cursor:default;opacity:.35}.slider{appearance:none;cursor:pointer;background:0 0;flex:1;width:100%;min-width:0;height:18px;margin:0}.slider::-webkit-slider-runnable-track{background:var(--input-bg);height:4px}.slider::-moz-range-track{background:var(--input-bg);height:4px}.slider::-webkit-slider-thumb{appearance:none;background:var(--text-primary);border:0;border-radius:0;width:8px;height:14px;margin-top:-5px}.slider::-moz-range-thumb{background:var(--text-primary);border:0;border-radius:0;width:8px;height:14px}.slider:hover::-webkit-slider-thumb{background:var(--accent-orange)}.slider:focus-visible::-webkit-slider-thumb{background:var(--accent-orange)}.slider:hover::-moz-range-thumb{background:var(--accent-orange)}.slider:focus-visible::-moz-range-thumb{background:var(--accent-orange)}.slider:focus-visible{outline:none}.slider--fixed{cursor:default;align-items:center;display:flex}.choices{flex-wrap:wrap;gap:3px;display:flex}.choice{--cut:4px;background:var(--input-bg);min-height:24px;padding:2px var(--spacing-sm);clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));font:inherit;font-size:var(--font-size-tiny);letter-spacing:.15em;text-align:left;text-transform:uppercase;cursor:pointer;border:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;display:inline-flex}.choice:not([class*=accent-]){color:var(--text-primary-muted)}.choice:hover:not(:disabled),.choice:focus-visible{background:var(--surface-hover);outline:none}.choice--on,.choice--on:hover:not(:disabled){background:var(--toggle-active-bg);box-shadow:inset 0 -2px}.choice:disabled{cursor:default;opacity:.4}.choice--wide{flex:140px}.hull-group{gap:var(--spacing-sm);flex-direction:column;display:flex}.hull-group__title{font-size:var(--font-size-tiny);letter-spacing:.3em;color:var(--text-secondary);margin:0;font-weight:400}.hull-list{gap:var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin:0;padding:0;list-style:none;display:grid}.hull-card{--cut:7px;align-items:center;gap:var(--spacing-md);background:var(--strip-card-bg);width:100%;padding:var(--spacing-md) var(--spacing-lg);clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;border:0;display:flex}.hull-card:hover,.hull-card:focus-visible{background:var(--surface-hover);outline:none}.hull-card:hover .hull-card__name,.hull-card:focus-visible .hull-card__name,.hull-card--current .hull-card__text{flex-direction:column;gap:4px;min-width:0;display:flex}.hull-card__name{color:var(--accent-orange)}.hull-card__text{flex-direction:column;gap:4px;min-width:0;display:flex}.hull-card__name{font-size:var(--font-size-normal);letter-spacing:.2em}.hull-card__meta{font-size:var(--font-size-tiny);letter-spacing:.15em;color:var(--text-secondary)}.palette__content{gap:var(--spacing-md)}.palette__filters{gap:var(--spacing-sm);flex-direction:column;display:flex}.palette__selects{gap:var(--spacing-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.palette__selects .select{min-width:0;font-size:var(--font-size-tiny)}.palette__list{min-height:200px;max-height:calc(100vh - 330px);margin:0 calc(-1 * var(--spacing-sm));padding:0 var(--spacing-sm);scrollbar-color:var(--accent-muted) transparent;scrollbar-width:thin;flex-direction:column;gap:2px;list-style:none;display:flex;overflow-y:auto}@media (max-width:900px){.palette__list{max-height:320px}}.palette-item{align-items:center;gap:var(--spacing-md);width:100%;padding:5px var(--spacing-sm);color:var(--text-primary);font:inherit;text-align:left;cursor:grab;touch-action:none;background:0 0;border:0;display:flex}.palette-item:hover,.palette-item:focus-visible{background:var(--surface-hover);outline:none}.palette-item:focus-visible .palette-item__name,.palette-item--held .palette-item__name{color:var(--accent-orange)}.palette-item--held{background:var(--accent-orange-dim)}.palette-item__icon{background:var(--slot-grid-bg,#5360601f);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.palette-item__shape{opacity:.7;flex-shrink:0;margin-left:auto;display:flex}.palette-tip{z-index:60;pointer-events:none;display:flex;position:fixed}.palette-item__text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.palette-item__name{font-size:var(--font-size-small);letter-spacing:.12em;overflow-wrap:anywhere}.palette-item__meta{font-size:var(--font-size-tiny);letter-spacing:.12em;color:var(--text-secondary)}.palette-item__needs{font-size:var(--font-size-tiny);letter-spacing:.12em;color:var(--accent-orange)}.palette-item--nowhere .palette-item__icon,.palette-item--nowhere .palette-item__text,.palette-item--nowhere .palette-item__shape{opacity:.4}.palette-tip__nowhere{margin:0 0 var(--spacing-sm);color:var(--state-negative);font-size:var(--font-size-tiny);letter-spacing:.12em}.shape-glyph{fill:var(--tier-standard-base);display:block}.builder-grid{touch-action:none}.builder--holding .builder-grid,.builder--holding .builder-grid *{cursor:grabbing}.builder-grid .fg-module__tile{cursor:grab}.builder__keys{text-align:center}.issue-link{color:inherit;font:inherit;letter-spacing:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.issues--inline{margin-top:var(--spacing-sm)}.drag-ghost{z-index:100;border-left:2px solid var(--accent-orange);background:var(--plate-bg);font-size:var(--font-size-tiny);letter-spacing:.2em;color:var(--text-primary);pointer-events:none;padding:2px 6px;position:fixed}.inspector__title{align-items:center;gap:var(--spacing-md);display:flex}.inspector__about{gap:var(--spacing-xs);flex-direction:column;display:flex}.inspector__name{font-size:var(--font-size-normal);letter-spacing:.25em}.inspector__section{gap:var(--spacing-sm);border-top:1px solid var(--rule);padding-top:var(--spacing-md);flex-direction:column;display:flex}.inspector__heading{font-size:var(--font-size-tiny);letter-spacing:.3em;color:var(--text-secondary);justify-content:space-between;display:flex}.inspector__heading-aside{letter-spacing:.12em;color:var(--text-primary-muted)}.modifiers{gap:var(--spacing-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.modifier{background:var(--surface-default);padding:6px var(--spacing-sm);flex-direction:column;gap:4px;display:flex}.modifier--inverted{background:#ff444412}.modifier__head{justify-content:space-between;gap:var(--spacing-md);font-size:var(--font-size-tiny);letter-spacing:.12em;color:var(--text-primary-muted);display:flex}.modifier__name{align-items:baseline;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.modifier__slot{color:var(--text-secondary);letter-spacing:.2em;font-size:9px}.modifier__value{white-space:nowrap;font-weight:400}.modifier__controls{align-items:center;gap:var(--spacing-sm);display:flex}.modifier__flags{gap:var(--spacing-lg);flex-wrap:wrap;display:flex}.port-editor{margin:var(--spacing-sm) 0;align-self:center;position:relative}.port-editor__cell{box-sizing:border-box;border:2px solid var(--panel-bg);background:#6b7a7a73;position:absolute}.port-notch{z-index:1;background:var(--accent-muted);cursor:pointer;border:0;padding:0;position:absolute}.port-notch:hover:not(:disabled),.port-notch:focus-visible{background:var(--text-primary);outline:none}.port-notch--open,.port-notch--open:hover:not(:disabled){background:var(--accent-orange)}.port-notch:disabled{cursor:default;opacity:.3}.port-notch--open:disabled{opacity:1}.ports{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.ports__row{justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.ports__row .select{min-width:0;max-width:220px}.ports__label{font-size:var(--font-size-tiny);letter-spacing:.15em;color:var(--text-primary-muted);white-space:nowrap}.affinity__unspent{color:#ffb43c}.affinity__ship{align-items:flex-end;gap:var(--spacing-lg);flex-wrap:wrap;display:flex}.affinity__level .select{width:120px}.affinity__types{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-items:start;gap:3px;margin:0;padding:0;list-style:none;display:grid}.affinity-type{background:var(--surface-default)}.affinity-type__head{width:100%;padding:6px var(--spacing-sm);color:var(--text-primary-muted);font:inherit;font-size:var(--font-size-tiny);letter-spacing:.2em;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;display:flex}.affinity-type__head:hover,.affinity-type__head:focus-visible,.affinity-type__head[aria-expanded=true]{background:var(--surface-hover);color:var(--text-primary);outline:none}.affinity-type--spent .affinity-type__points{color:var(--accent-orange)}.affinity-type__body{gap:var(--spacing-sm);padding:var(--spacing-sm);flex-direction:column;display:flex}.affinity-bonus{justify-content:space-between;align-items:center;gap:var(--spacing-md);font-size:var(--font-size-tiny);letter-spacing:.12em;display:flex}.affinity-bonus__text{flex-direction:column;gap:2px;min-width:0;display:flex}.stepper{align-items:center;gap:4px;display:flex}.stepper__value{min-width:2ch;color:var(--state-quantity);text-align:center}.affinity-tier{border-top:1px solid var(--rule);padding-top:var(--spacing-sm);flex-direction:column;gap:4px;display:flex}.affinity-tier--locked .choices{opacity:.6}.stats-panel--stale .stats,.stats-panel--stale .specs{opacity:.55}.set-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.details__actions,.import-fit{gap:var(--spacing-sm);flex-direction:column;display:flex}.stats-panel__heading{color:#b2bdbd8c;font-size:var(--font-size-small);letter-spacing:.45em;border-bottom:1px solid #53606040;padding-bottom:3px}
