.basis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;margin:14px 0 22px}
.basis-block{width:100%;position:relative}
.basis-card{position:relative;min-width:0;padding:14px 12px;border:1px solid #c8d9e6;border-radius:8px;break-inside:avoid;background:white;color:#243746;font-size:15px;line-height:1.5}
.basis-card.basis-wide{grid-column:1/-1}
.basis-card p{margin:0 0 9px}
.basis-card svg{display:block;width:100%;height:auto;touch-action:none}
.basis-card svg [data-color]{cursor:pointer}
.basis-card svg.basis-cm-grid{width:calc(var(--gi-pdf-px-per-mm,3.779527559px) * 80);max-width:none;margin-inline:auto}
.basis-card svg [data-guide="grid"]{stroke:#9bbfd3!important;stroke-width:.7!important}
.basis-answer{border:0;border-bottom:1px solid #536c7d;background:transparent;border-radius:0;width:74px;text-align:center;font:inherit;color:inherit}
.basis-answer.basis-long{width:100%;margin-top:8px}
#sheet input.basis-answer{box-sizing:border-box;height:calc(var(--gi-pdf-px-per-mm,3.779527559px) * 12);min-height:calc(var(--gi-pdf-px-per-mm,3.779527559px) * 12);padding-top:6px;padding-bottom:6px;font-size:20px;line-height:1.3;vertical-align:middle}
.basis-tools{display:flex;gap:6px;justify-content:flex-end;margin-top:4px;font-size:11px}
.basis-tools button{border:1px solid #c8d9e6;border-radius:5px;background:#f3f8fc;padding:3px 7px;cursor:pointer}
.basis-explain{padding:12px 16px;background:#eff7fb;border-left:4px solid #4a90d9;margin-bottom:12px;font-size:14px;line-height:1.55;break-inside:avoid}
.basis-choices label{display:block;margin:8px 0}.basis-choices input{margin-right:7px}
.basis-number-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:8px 0}
.basis-number-grid span{border:1px solid #9bb1c3;text-align:center;padding:9px;cursor:pointer}
.basis-check{display:inline-block;width:16px;height:16px;border:1px solid #617c90;margin:0 8px 0 0;vertical-align:middle;cursor:pointer;text-align:center;line-height:14px}
.basis-options label{display:block;margin:10px 0}
.basis-option-row{display:grid;grid-template-columns:minmax(0,1fr) 58px;gap:10px;align-items:center;border-bottom:1px solid #e3edf5;padding:5px 0}
.basis-option-row:last-child{border-bottom:0}
.basis-options .basis-count-label{font-size:11px;color:#64748b;margin:4px 0}
.basis-count-label input{display:block;width:58px!important;margin-top:3px}
.exporting .basis-tools{display:none!important}
@media print{.basis-tools{display:none!important}.basis-card,.basis-explain{break-inside:avoid}.title-row{break-after:avoid}}
