        body { font-family: 'Inter', 'Noto Sans JP', sans-serif; }
        [v-cloak] { display: none; }
        .table-container::-webkit-scrollbar, .custom-scrollbar::-webkit-scrollbar { height: 8px; width: 8px; }
        .table-container::-webkit-scrollbar-track, .custom-scrollbar::-webkit-scrollbar-track { background: #f1f5f9; }
        .table-container::-webkit-scrollbar-thumb, .custom-scrollbar::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
        .table-container::-webkit-scrollbar-thumb:hover, .custom-scrollbar::-webkit-scrollbar-thumb:hover { background: #94a3b8; }
        .line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
        .table-container th { box-shadow: inset 0 -2px 0 0 rgba(0,0,0,0.1); }

        /* ===== 印刷専用（画面表示には影響しない） ===== */
        .print-only { display: none; }
        @media print {
            @page { size: A4 landscape; margin: 8mm; }
            html, body { height: auto !important; overflow: visible !important; background: #fff !important; }
            #app { height: auto !important; overflow: visible !important; display: block !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
            #app > *:not(#print-sheet) { display: none !important; }
            #print-sheet { display: block !important; color: #000; }
            #print-sheet .ps-head { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 6px; border-bottom: 2px solid #000; padding-bottom: 4px; }
            #print-sheet .ps-title { font-size: 15px; font-weight: 800; }
            #print-sheet .ps-meta { font-size: 10px; text-align: right; line-height: 1.4; }
            #print-sheet table { width: 100%; border-collapse: collapse; font-size: 9px; table-layout: fixed; }
            #print-sheet th, #print-sheet td { border: 1px solid #444; padding: 3px 4px; vertical-align: top; word-break: break-all; overflow-wrap: anywhere; }
            #print-sheet th { background: #e5e7eb !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; font-weight: 700; }
            #print-sheet thead { display: table-header-group; }
            #print-sheet tr { page-break-inside: avoid; }
        }
