/* Klassa Lojistik — Yük Bağlama ve Tehlikeli Madde araçları (klassa-safety.css) v1.0
   klassa-tools.css'in üzerine yalnızca bu araçlara özgü ekler. */
.kt[data-tool="lashing"] .kt-f input[readonly],
.kt[data-tool="dg"] .kt-f input[readonly] { background: #F4F7FA; color: var(--kt-mut, #5A6A7A); }
.ks-adv > summary { cursor: pointer; font-weight: 700; color: var(--kt-navy, #0B3A6E); padding: .2rem 0 .6rem; list-style-position: inside; }
.ks-adv[open] > summary { margin-bottom: .2rem; }
.ks-bc { display: contents; }
.ks-bc[hidden] { display: none; }
.kt-table tr.ks-cur td { background: #F0FDFA; font-weight: 600; }
.kt-table tr.tot td { background: #F8FAFC; }
.kt-h4 { margin: 1.1rem 0 .1rem; font-size: .95rem; }
/* μ, α gibi simgeler büyük harfe çevrilince (Μ, Α) yanlış okunur */
.kt[data-tool="lashing"] .kt-hero-stats small, .kt[data-tool="dg"] .kt-hero-stats small { text-transform: none; letter-spacing: 0; }
.kt-note ul { margin: .35rem 0 .1rem; padding-inline-start: 1.1rem; }
.kt-note li { margin: .18rem 0; }
.kt-note .kt-small { display: inline-block; margin-top: .3rem; }

/* 3B bağlama planı (sim3d.js) */
.ks-3d { margin: 1.15rem 0 .5rem; }
.ks-3d-h { display: flex; align-items: center; justify-content: space-between; gap: .6rem; flex-wrap: wrap; }
.ks-3d-h .kt-h4 { margin: 0; }
.ks-replay { border: 1px solid var(--kt-line, #DCE3EA); background: #fff; color: var(--kt-navy, #0B3A6E); border-radius: 8px; padding: .32rem .75rem; font: inherit; font-size: .8rem; font-weight: 600; cursor: pointer; }
.ks-replay:hover, .ks-replay:focus-visible { border-color: var(--kt-teal, #0D9488); color: var(--kt-teal, #0D9488); }
.ks-replay[hidden] { display: none; }
.ks-3d .kt-bins { margin: .6rem 0 .5rem; }
.ks-3d .kt-stage { height: 420px; }
.ks-3d .kt-stage.is-fallback { height: auto; }
.ks-legend { list-style: none; margin: .65rem 0 .25rem; padding: 0; display: flex; flex-wrap: wrap; gap: .3rem .95rem; font-size: .78rem; color: var(--kt-mut, #5A6A7A); }
.ks-legend li { display: inline-flex; align-items: center; gap: .4rem; }
.ks-sw { flex: none; display: inline-block; width: 15px; height: 15px; border-radius: 3px; box-shadow: inset 0 0 0 1px rgba(0,0,0,.12); }
.ks-sw--web, .ks-sw--bad, .ks-sw--chain { height: 6px; border-radius: 2px; }
.ks-sw--web { background: #F08A00; }
.ks-sw--bad { background: #DC2626; }
.ks-sw--chain { background: repeating-linear-gradient(90deg, #7C8794 0 4px, transparent 4px 6px); box-shadow: none; }
.ks-sw--ratchet { width: 10px; background: #1F2937; box-shadow: inset 0 -5px 0 #A3AEBB; }
.ks-sw--edge { background: transparent; box-shadow: none; border-inline-start: 4px solid #FACC15; border-bottom: 4px solid #FACC15; border-radius: 1px; }
.ks-sw--eye { background: transparent; border: 2.5px solid #3F4A57; border-radius: 50%; box-shadow: none; width: 13px; height: 13px; }
.ks-sw--point { background: #F59E0B; height: 8px; }
.ks-sw--point0 { background: #9AA6B2; height: 8px; }
.ks-sw--mat { background: #23272E; height: 6px; }
.ks-sw--wall { background: rgba(13,148,136,.45); }
.ks-sw--bag { background: #E8DDC4; box-shadow: inset 0 0 0 1px #A8956A; }
.ks-sw--timber { background: #C08A55; box-shadow: inset 0 0 0 1px #7A5230; }
.ks-sw--chock { background: #C08A55; clip-path: polygon(0 100%, 100% 100%, 0 0); box-shadow: none; }
.ks-sw--cog { border-radius: 50%; background: conic-gradient(#fff 0 25%, #111 0 50%, #fff 0 75%, #111 0); box-shadow: 0 0 0 1.5px #111; }
.ks-sw--force { height: 4px; background: #DC2626; position: relative; box-shadow: none; }
.ks-sw--force::after { content: ''; position: absolute; inset-inline-end: -5px; top: -4px; border: 6px solid transparent; border-inline-start: 7px solid #DC2626; border-inline-end: 0; }
.ks-vinfo p { margin: .3rem 0; }
.ks-vinfo .ks-vnote { color: var(--kt-mut, #5A6A7A); font-style: italic; }
@media (max-width: 560px) { .ks-3d .kt-stage { height: 320px; } }

/* Yük emniyeti planı (v2): parça satırları, tek pencere sonuç */
.kt[data-tool="lashing"] .ks-row-x { display: flex; flex-wrap: wrap; gap: .5rem 1rem; align-items: end; }
.kt[data-tool="lashing"] .ks-row-x .kt-f { flex: 1 1 220px; }
.kt[data-tool="lashing"] .ks-row-x .kt-check { padding-bottom: .55rem; }
.ks-tyhint { margin: 0; color: var(--kt-mut, #5A6A7A); }
.kt[data-tool="lashing"] .kt-actions #ks-add { flex: 0 1 auto; }
#ks-result.is-stale > *:not(.ks-3d) { opacity: .55; transition: opacity .2s; }
.ks-steps { margin: .5rem 0 .4rem; padding-inline-start: 1.4rem; display: grid; gap: .45rem; }
.ks-steps li { line-height: 1.5; font-size: .9rem; }
.ks-steps li::marker { font-weight: 800; color: var(--kt-navy, #0B3A6E); }
.ks-bintabs { margin: 0 0 .7rem; }
.ks-tech > summary h3 { display: inline; font-size: 1rem; }
.kt[data-tool="lashing"] .kt-table td:first-child b { font-weight: 600; }

/* Tehlikeli madde satırları */
.kt[data-tool="dg"] .kt-row-dims { --kt-cols: 4; }
.ks-cat { grid-column: 1 / -1; display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; min-height: 1.4rem; }
.ks-cat .kt-badge:empty { display: none; }

/* IMDG ayrıştırma matrisi */
.ks-matrix > summary h3 { display: inline; font-size: 1rem; }
.ks-mx { font-size: .74rem; min-width: 640px; }
.ks-mx th, .ks-mx td { text-align: center !important; padding: .28rem .2rem !important; min-width: 0 !important; white-space: nowrap; }
.ks-mx tbody th { text-align: start !important; font-weight: 700; color: var(--kt-mut, #5A6A7A); }
.ks-mx td.v1 { background: #FEF9C3; }
.ks-mx td.v2 { background: #FED7AA; }
.ks-mx td.v3 { background: #FDBA74; }
.ks-mx td.v4 { background: #FCA5A5; }
.ks-mx td.vX { color: #94A3B8; }
.ks-mx td.vs { background: #E2E8F0; }
.ks-mx thead th.is-on, .ks-mx tr.is-on th { color: #fff; background: var(--kt-navy, #0B3A6E); }
.ks-mx td.is-hit { outline: 2px solid var(--kt-navy, #0B3A6E); outline-offset: -2px; font-weight: 800; }

@media (max-width: 560px) {
    .kt[data-tool="dg"] .kt-row-dims { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media print {
    .kt[data-tool] .kt-in, .kt[data-tool] .kt-quote, .kt[data-tool] .kt-steps { display: none !important; }
    .kt[data-tool] .kt-grid { display: block; }
    .ks-matrix { display: block; }
    .ks-3d .kt-stage, .ks-3d .kt-bins, .ks-replay { display: none !important; }
}
