
/* Modul 04 · DTF-Kalkulation · modulspezifisches Layout */
.dtf-layout{display:grid;grid-template-columns:420px 1fr;gap:16px}
.dtf-panel{background:var(--paper,#fff);border:1px solid var(--line,#d9dde2);border-radius:15px;padding:18px;margin-bottom:14px;box-shadow:0 2px 8px rgba(0,0,0,.02)}
.dtf-panel h2{font-size:18px;margin:0 0 13px}.dtf-panel h3{font-size:13px;margin:15px 0 8px}
.dtf-small{font-size:12px;color:#737982;line-height:1.45}.dtf-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dtf-panel label{display:block;font-size:11px;font-weight:700;color:#535960;margin:8px 0 4px}
.dtf-panel input[type=number],.dtf-panel input[type=file]{width:100%;padding:9px 10px;border:1px solid #ccd1d7;border-radius:9px;background:#fff;font:inherit}
.dtf-status{border-radius:11px;padding:10px 11px;margin:10px 0;font-size:12px;border-left:5px solid #356eaa;background:#eef5fb}.dtf-status.good{border-color:#218657;background:#edf8f2}.dtf-status.warn{border-color:#c47b08;background:#fff7e8}.dtf-status.bad{border-color:#b83842;background:#fff0f1}
.dtf-artCards{display:grid;grid-template-columns:1fr;gap:9px;margin-top:10px}.dtf-artCard{border:1px solid var(--line,#d9dde2);border-radius:12px;padding:11px;background:#fbfbfc}.dtf-artHead{display:flex;justify-content:space-between;align-items:center;gap:8px}.dtf-zone{font-weight:800;font-size:12px}.dtf-remove{border:0;background:#eceff2;border-radius:7px;padding:6px 8px;cursor:pointer}.dtf-fileName{font-size:11px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:7px}.dtf-dims{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.dtf-metricGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.dtf-metric{background:#f7f8fa;border:1px solid var(--line,#d9dde2);border-radius:11px;padding:11px}.dtf-metric b{display:block;font-size:20px;margin-top:2px}.dtf-metric span{font-size:10px;color:#737982;text-transform:uppercase;letter-spacing:.25px}
.dtf-previewGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dtf-garmentView{position:relative;min-height:410px;border:1px solid var(--line,#d9dde2);border-radius:13px;background:#fff;overflow:hidden;display:grid;place-items:center}.dtf-viewLabel{position:absolute;top:9px;left:10px;font-size:11px;font-weight:800;background:#f1f3f5;border-radius:999px;padding:5px 8px;z-index:9}.dtf-garmentSvg{width:84%;height:84%;opacity:.95}.dtf-logoLayer{position:absolute;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:5;pointer-events:none}.dtf-logoLayer img,.dtf-logoLayer canvas{width:100%;height:100%;object-fit:contain}
.dtf-tableWrap{overflow:auto}.dtf-table{width:100%;border-collapse:collapse;font-size:12px}.dtf-table th,.dtf-table td{padding:9px;border-bottom:1px solid var(--line,#d9dde2);text-align:left;vertical-align:top}.dtf-table th{background:#f6f7f8;font-size:10px;color:#555b62;text-transform:uppercase}.dtf-table td.num,.dtf-table th.num{text-align:right;white-space:nowrap}.dtf-totalRow td{font-weight:800;background:#faf7e9}
.dtf-param{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #eef0f2;font-size:12px}.dtf-param:last-child{border-bottom:0}.dtf-param code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.dtf-ribbon{display:inline-block;background:#f5e7a5;color:#544500;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:800}
.dtf-footer-note{color:#777;font-size:10px;text-align:center;padding:8px 0 4px}
@media(max-width:1050px){.dtf-layout{grid-template-columns:1fr}.dtf-previewGrid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.dtf-previewGrid,.dtf-metricGrid,.dtf-row{grid-template-columns:1fr 1fr}.dtf-garmentView{min-height:330px}}
@media(max-width:470px){.dtf-previewGrid,.dtf-metricGrid,.dtf-row{grid-template-columns:1fr}}
