.kp-layout{display:flex;gap:28px;max-width:1080px;margin:24px auto 40px;padding:0 4px;align-items:flex-start}.kp-form{width:360px;flex-shrink:0;text-align:left}.kp-mode-tabs{display:flex;border:1px solid #ccc;border-radius:8px;overflow:hidden;margin-bottom:16px}.kp-mode-tab{flex:1;padding:12px 6px;font-size:14px;font-weight:600;background:#fff;color:#555;border:none;cursor:pointer;transition:background .15s ease,color .15s ease}.kp-mode-tab+.kp-mode-tab{border-left:1px solid #ccc}.kp-mode-tab.active{background:var(--accent);color:#fff}.kp-form .fs-title{font-size:15px;font-weight:700;color:#333;margin:20px 0 8px;padding-bottom:5px;border-bottom:2px solid var(--accent, #2a9d8f)}.kp-form select{width:100%;padding:9px 10px;font-size:14px;border:1px solid #ccc;border-radius:6px;background:#fff;color:#333}.kp-form .radio-line,.kp-form .check-line{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-top:6px}.kp-form .radio-line label,.kp-form .check-line label{display:flex;align-items:center;gap:5px;margin:0;font-size:13.5px;color:#333;cursor:pointer}.kp-form .field-hint{font-size:11.5px;color:#888;margin:6px 0 0;line-height:1.6}.kp-layout.mode-hyakumasu .drill-only{display:none}.kp-layout:not(.mode-hyakumasu) .hyaku-only{display:none}.kp-seed-line{display:flex;gap:8px;align-items:center;margin-top:6px}.kp-seed-line input{width:90px;padding:7px 10px;font-size:14px;border:1px solid #ccc;border-radius:6px;color:#333;background:#fff}.kp-newseed-btn{padding:8px 14px;font-size:13px;font-weight:600;border:1px solid var(--accent);border-radius:6px;background:#fff;color:var(--accent);cursor:pointer}.kp-newseed-btn:hover{background:var(--accent);color:#fff}.kp-info{font-size:12.5px;font-weight:600;color:var(--accent, #2a9d8f);margin:16px 0 0}.kp-preview{flex:1;min-width:0;position:sticky;top:16px;align-self:flex-start;text-align:center}.kp-print-btn{width:100%;background:var(--accent);color:#fff;border:none;border-radius:8px;padding:14px;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s ease}.kp-print-btn:hover{opacity:.85}.kp-print-note{font-size:12px;color:#888;margin:8px 0 12px;line-height:1.5}.kp-preview-caption{font-size:12px;color:#888;margin-top:8px}.kp-sheet-box{overflow:hidden;border-radius:4px}.kp-sheet-box+.kp-sheet-box{margin-top:16px}.kp-sheet{width:210mm;height:297mm;background:#fff;box-sizing:border-box;position:relative;padding:14mm 14mm 12mm;display:flex;flex-direction:column;transform-origin:top left;overflow:hidden;box-shadow:0 2px 14px #0000002e;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,YuGothic,Meiryo,sans-serif;text-align:left}.kp-sheet *{font-size:inherit;color:inherit;font-family:inherit;box-sizing:border-box;margin:0;padding:0}.kp-head{display:flex;align-items:flex-end;gap:7mm;padding-bottom:3mm;border-bottom:.5mm solid #1a1a1a}.kp-head-title{flex-shrink:0;position:relative}.kp-test-title{font-size:15pt;font-weight:700;color:#1a1a1a;letter-spacing:.08em}.kp-test-sub{font-size:9.5pt;color:#333;margin-top:1mm}.kp-answer-badge{position:absolute;top:-2mm;right:-22mm;border:.5mm solid #c0392b;color:#c0392b;font-size:11pt;font-weight:700;padding:1mm 3mm;letter-spacing:.3em;transform:rotate(-4deg)}.kp-head-name{flex:1;display:flex;align-items:flex-end;gap:2.5mm;min-width:0}.kp-head-label{font-size:9.5pt;color:#333;white-space:nowrap;padding-bottom:.5mm}.kp-head-line{flex:1;height:9mm;border-bottom:.3mm solid #1a1a1a}.kp-head-time{flex-shrink:0;display:flex;align-items:flex-end;gap:1.5mm}.kp-time-line{width:12mm;height:9mm;border-bottom:.3mm solid #1a1a1a}.kp-instruction{font-size:10pt;color:#1a1a1a;margin:4mm 0 3mm}.kp-grid{flex:1;display:grid;grid-auto-flow:column;column-gap:7mm;margin-top:4mm;min-height:0}.kp-sheet[data-count="20"] .kp-grid{grid-template-rows:repeat(10,1fr);grid-template-columns:repeat(2,1fr)}.kp-sheet[data-count="30"] .kp-grid{grid-template-rows:repeat(10,1fr);grid-template-columns:repeat(3,1fr)}.kp-sheet[data-count="50"] .kp-grid{grid-template-rows:repeat(10,1fr);grid-template-columns:repeat(5,1fr)}.kp-item{display:flex;align-items:flex-start;gap:2mm;padding-top:2mm}.kp-no{font-size:9pt;color:#666;flex-shrink:0;padding-top:1.2mm}.kp-q{font-size:15pt;color:#1a1a1a;letter-spacing:.04em;white-space:nowrap}.kp-sheet[data-count="50"] .kp-q{font-size:12.5pt}.kp-a{font-size:15pt;font-weight:600;color:#c0392b;white-space:nowrap}.kp-sheet[data-count="50"] .kp-a{font-size:12.5pt}.kp-sheet.is-answer-sheet .kp-q,.kp-sheet.is-answer-sheet .kp-a{font-size:11pt}.kp-sheet.is-answer-sheet[data-count="50"] .kp-grid{grid-template-rows:repeat(17,1fr);grid-template-columns:repeat(3,1fr)}.kp-sheet.is-answer-sheet[data-count="50"] .kp-q,.kp-sheet.is-answer-sheet[data-count="50"] .kp-a{font-size:10.5pt}.kp-hyaku-table{border-collapse:separate;border-spacing:0;border-left:.4mm solid #1a1a1a;border-top:.4mm solid #1a1a1a;margin:4mm auto 0}.kp-hyaku-table td{width:16.2mm;height:16.2mm;border-right:.4mm solid #1a1a1a;border-bottom:.4mm solid #1a1a1a;text-align:center;vertical-align:middle;font-size:14pt;color:#1a1a1a}.kp-hyaku-op{background:#e8e8e8;font-size:17pt!important;font-weight:700}.kp-hyaku-head{background:#f2f2f2;font-weight:700;font-size:15pt!important}.kp-hyaku-cell{color:#c0392b!important;font-weight:600}.kp-footer-note{text-align:center;font-size:7pt;color:#999;margin-top:2mm}@media (max-width: 940px){.kp-layout{flex-direction:column}.kp-form{width:100%}.kp-preview{position:static;width:100%}}@media print{@page{size:A4;margin:0}html,body{margin:0!important;padding:0!important;background:#fff!important;height:auto!important}body>*:not(.container){display:none!important}.container{margin:0!important;padding:0!important;max-width:none!important;width:auto!important}.container>*:not(.kp-layout){display:none!important}.kp-layout{display:block!important;margin:0!important;padding:0!important;max-width:none!important}.kp-layout>*:not(.kp-preview){display:none!important}.kp-preview{position:static!important;margin:0!important;padding:0!important;width:auto!important}.kp-preview>*:not(.kp-sheet-wrap){display:none!important}.kp-sheet-box{height:auto!important;margin:0!important;overflow:visible!important;border-radius:0!important;break-after:page;page-break-after:always}.kp-sheet-box:last-child{break-after:auto;page-break-after:auto}.kp-sheet{transform:none!important;box-shadow:none!important;margin:0!important;width:210mm!important;height:296mm!important;overflow:hidden!important}}
