.ktp-planner-tool .front-tools-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.ktp-topics-field { margin: 12px 0; padding: 12px; border: 1px solid #dce5eb; }
.ktp-topics-list { display: grid; gap: 10px; margin: 8px 0 12px; }
.ktp-topic-row { display: grid; grid-template-columns: minmax(100px, 1fr) minmax(160px, 2fr) 90px minmax(130px, 1.5fr) auto; gap: 8px; align-items: end; padding: 10px; background: #f6f8fa; border-radius: 4px; }
.ktp-topic-field { display: block; margin: 0; min-width: 0; }
.ktp-topic-field span { display: block; margin-bottom: 4px; }
.ktp-topic-field input { box-sizing: border-box; width: 100%; min-width: 0; padding: 7px; border: 1px solid #cbd5df; border-radius: 4px; background: #fff; color: inherit; font: inherit; }
.ktp-topic-remove { white-space: nowrap; }
.ktp-weekdays { margin: 12px 0; padding: 12px; border: 1px solid #dce5eb; }
.ktp-weekdays-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.ktp-weekday-option { display: grid; grid-template-columns: minmax(0, 1fr) 74px; gap: 8px; align-items: center; min-width: 0; }
.ktp-weekday-option label { margin: 0; }
.ktp-weekday-option select { width: 100%; min-width: 0; padding: 6px; }
.ktp-table-wrap { max-width: 100%; overflow-x: auto; }
.ktp-table-wrap table { width: 100%; border-collapse: collapse; }
.ktp-table-wrap th, .ktp-table-wrap td { padding: 6px; border: 1px solid #dce5eb; vertical-align: top; }
.ktp-move-controls { display: grid; grid-template-columns: auto minmax(150px, 1fr) auto minmax(180px, 1fr); gap: 8px; align-items: center; margin: 12px 0; }
.ktp-move-controls select { min-width: 0; max-width: 100%; padding: 7px; }
.ktp-move-controls button { grid-column: span 2; }
.ktp-planner-tool #ktp-error { color: #a94442; }
@media (max-width: 767px) { .ktp-planner-tool .front-tools-options { grid-template-columns: 1fr; } .ktp-weekdays-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ktp-topic-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ktp-topic-row .ktp-topic-title { grid-column: span 2; } .ktp-topic-remove { grid-column: span 2; } .ktp-move-controls { grid-template-columns: 1fr; } .ktp-move-controls button { grid-column: auto; } }
@media print { @page { size: A4 landscape; margin: 9mm; } body * { visibility: hidden !important; } #ktp-result, #ktp-result * { visibility: visible !important; } #ktp-result { position: absolute; inset: 0 auto auto 0; width: 100%; } .ktp-planner-tool .front-tools-actions, .ktp-move-controls { display: none !important; } }
