.load { padding-bottom: 2rem; }
.load-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.25rem; align-items: start; }
.load .panel { min-width: 0; padding: 1rem; }
.load fieldset { min-width: 0; margin: 1.2rem 0; padding: .8rem; border: 1px solid var(--border, #d8dee8); border-radius: .7rem; }
.load legend { font-weight: 700; padding: 0 .25rem; }
.load-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.load-field { display: flex; flex-direction: column; gap: .35rem; min-width: 0; }
.load input:not([type=checkbox]):not([type=range]), .load select, .load textarea { width: 100%; min-width: 0; max-width: 100%; min-height: 44px; font-size: 1rem; }
.load input[type=color] { padding: .2rem; }
.load input[type=range] { width: 100%; min-height: 44px; }
.load textarea { min-height: 100px; }
.load-check { display: flex; flex-direction: row; align-items: center; gap: .5rem; min-height: 44px; cursor: pointer; }
.load-check input { width: 24px; height: 24px; flex-shrink: 0; }
.load-row { border-bottom: 1px solid var(--border, #d8dee8); padding: 1rem 0; }
.load-row:first-of-type { padding-top: 0; }
.load-actions { display: flex; flex-wrap: wrap; align-items: end; gap: .5rem; margin: .8rem 0; }
.load .btn { min-height: 44px; min-width: 44px; max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
.load .btn[aria-pressed=false] { opacity: .7; }
.load p, .load li, .load dd, .load dt, .load td, .load th { overflow-wrap: anywhere; }
.load details { margin: 1rem 0; }
.load summary { cursor: pointer; min-height: 44px; padding: .7rem 0; font-weight: 600; }
.load .hint { font-size: .95rem; }
.load-stats { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: .4rem 1rem; font-variant-numeric: tabular-nums; }
.load-stats dd { margin: 0; text-align: right; font-weight: 700; }
.load-alerts { list-style: none; padding: 0; display: grid; gap: .5rem; }
.load-alerts li { margin: 0; }
.load-table { max-width: 100%; overflow-x: auto; }
.load-stage { position: relative; background: var(--surface, #fff); border: 1px solid var(--border, #d8dee8); border-radius: .6rem; overflow: hidden; }
.load-canvas { display: block; width: 100%; height: 55vh; height: 55dvh; min-height: 260px; max-height: 640px; touch-action: none; outline-offset: -3px; }
.load-stage:fullscreen { padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left); }
.load-stage:fullscreen .load-canvas { height: 100vh; height: 100dvh; max-height: none; }
.load-flat { display: grid; grid-template-columns: minmax(0, 1fr); gap: .8rem; padding: .6rem; }
.load-flat figure { margin: 0; min-width: 0; }
.load-flat svg, .load-dialog svg { display: block; width: 100%; height: auto; max-height: 50vh; max-height: 50dvh; }
.load svg [role=button]:focus-visible { outline: 3px solid var(--primary, #2563eb); outline-offset: -3px; }
.load-view-controls.is-flat .load-3d-only { display: none; }
.load-legend { display: flex; flex-wrap: wrap; gap: .2rem 1rem; margin: .6rem 0; }
.load-swatch { display: inline-block; width: 18px; height: 18px; border-radius: 4px; border: 1px solid #1e293b; flex-shrink: 0; }
.load-selection { margin: 1rem 0; padding: .8rem; border: 1px solid var(--border, #d8dee8); border-radius: .7rem; }
.load-dialog { width: min(800px, calc(100% - 24px)); max-height: calc(100vh - 24px); max-height: calc(100dvh - 24px); overflow: auto; padding: 1rem; border: 1px solid var(--border, #d8dee8); border-radius: 1rem; }
.load-dialog::backdrop { background: #0f172a99; }
.load-print { display: none; }
.load-guide-table { max-width: 100%; overflow-x: auto; }
@media (min-width: 768px) { .load-flat { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .load-layout { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); } .load-fields { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 599px) {
    .load-table table, .load-table tbody, .load-table tr, .load-table td { display: block; width: 100%; }
    .load-table thead { display: none; }
    .load-table tr { border: 1px solid var(--border, #d8dee8); border-radius: .6rem; margin: .5rem 0; padding: .3rem .6rem; }
    .load-table td { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: .5rem; border: 0; padding: .25rem 0; overflow-wrap: normal; }
    .load-table td::before { content: attr(data-label); font-weight: 600; }
}
@media (max-width: 359px) { .load-fields, .load-stats { grid-template-columns: minmax(0, 1fr); } .load-stats dd { text-align: left; } }
@media print {
    body:has([data-load]) .site-header, body:has([data-load]) .site-footer, body:has([data-load]) .page-head, body:has([data-load]) .guide, body:has([data-load]) .ad-slot { display: none !important; }
    .load > :not(.load-print) { display: none !important; }
    .load-print { display: block; }
    .load-print section { break-after: page; }
    .load-print figure { margin: 0 0 1rem; break-inside: avoid; }
    .load-print svg { width: 100%; height: auto; max-height: 40vh; }
    .load-print p { font-size: 10pt; margin: .1rem 0; break-inside: avoid; }
}
