/* * Koozali SME Server Table Styling * * This CSS makes both node and node-unclaimed tables look good with colors matching the Koozali SME Server interface. * Compatible with all modern browsers and IE9+. */ /* Basic table styling for both node and node-unclaimed tables */ table.node, table.node-unclaimed { border-collapse: collapse; width: 100%; margin: 20px 0; -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); border: 1px solid #d5e5c0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; background-color: white; max-width: 700px; } /* Table header styling */ table.node thead, table.node-unclaimed thead { background-color: #e6f2d5; border-bottom: 1px solid #d5e5c0; } /* Table header cells */ table.node thead td, table.node-unclaimed thead td { padding: 12px 15px; font-weight: bold; color: #006600; } /* Table data cells */ table.node td, table.node-unclaimed td { padding: 10px 15px; border-bottom: 1px solid #e6f2d5; line-height: 1.4; word-wrap: break-word; -ms-word-break: break-word; word-break: break-word; -webkit-hyphens: auto; -ms-hyphens: auto; hyphens: auto; } /* First column styling (labels) - Updated color as requested */ table.node td.first, table.node-unclaimed td.first { width: 25%; font-weight: bold; color: #333; background-color: #e8f3e1; } /* Second column styling (values) */ table.node td.second, table.node-unclaimed td.second { width: 75%; } /* Zebra striping for better readability */ table.node tbody tr:nth-child(even), table.node-unclaimed tbody tr:nth-child(even) { background-color: #fafdf7; } /* Hover effect for rows */ table.node tbody tr:hover, table.node-unclaimed tbody tr:hover { background-color: #edf5e2; } /* Nested tables styling */ table.node table, table.node-unclaimed table { width: 100%; border: none; -webkit-box-shadow: none; box-shadow: none; margin: 0; } table.node table td, table.node-unclaimed table td { padding: 4px 6px; border: none; background-color: transparent !important; } /* ID styling */ .id { font-family: monospace; background-color: #f5f9ef; padding: 2px 4px; border: 1px solid #d5e5c0; border-radius: 3px; font-size: 0.9em; } /* Help styling for dfn elements */ dfn { cursor: help; border-bottom: 1px dotted #006600; font-style: normal; } /* Add some spacing between tables */ table.node + table.node, table.node-unclaimed + table.node-unclaimed, table.node + table.node-unclaimed, table.node-unclaimed + table.node { margin-top: 30px; } /* Navigation container styling */ .koozali-table-nav { position: -webkit-sticky; position: sticky; top: 0; background-color: #e6f2d5; padding: 10px; margin-bottom: 20px; z-index: 100; border-bottom: 1px solid #d5e5c0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-shadow: 0 2px 4px rgba(0,0,0,0.1); box-shadow: 0 2px 4px rgba(0,0,0,0.1); } /* Dropdown styling */ .koozali-table-select { padding: 8px; font-size: 16px; border: 1px solid #d5e5c0; border-radius: 4px; background-color: #f5f9ef; cursor: pointer; margin-right: 10px; color: #333; width: 70%; max-width: 500px; } /* Button styling */ .koozali-show-all-button { padding: 8px 12px; background-color: #006600; color: white; border: none; border-radius: 4px; cursor: pointer; font-weight: bold; -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.1); box-shadow: 0 1px 3px rgba(0,0,0,0.1); } .koozali-show-all-button:hover { background-color: #008800; } /* Table visibility wrapper */ .table-visibility-wrapper { margin-bottom: 30px; -webkit-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; } /* Hidden tables */ .table-visibility-wrapper.hidden { display: none; height: 0; overflow: hidden; } /* Visible tables */ .table-visibility-wrapper.visible { display: block; height: auto; overflow: visible; -webkit-box-shadow: 0 0 10px rgba(0, 102, 0, 0.2); box-shadow: 0 0 10px rgba(0, 102, 0, 0.2); } /* Fix for older browsers */ @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { /* IE10+ specific styles */ table.node td, table.node-unclaimed td { word-break: break-all; } table.node td.first, table.node-unclaimed td.first { word-break: normal; } .koozali-table-nav { position: relative; } } /* Make sure tables don't overflow on small screens */ @media (max-width: 768px) { table.node, table.node-unclaimed { font-size: 14px; } table.node td, table.node-unclaimed td { padding: 8px 10px; } table.node td.first, table.node-unclaimed td.first { width: 35%; } table.node td.second, table.node-unclaimed td.second { width: 65%; } .koozali-table-select { width: 60%; } } /* Very small screens */ @media (max-width: 480px) { table.node, table.node-unclaimed { font-size: 13px; } table.node td, table.node-unclaimed td { padding: 6px 8px; } table.node td.first, table.node-unclaimed td.first { width: 40%; } table.node td.second, table.node-unclaimed td.second { width: 60%; } .koozali-table-nav { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; } .koozali-table-select { width: 100%; margin-bottom: 10px; margin-right: 0; } } /* Print styles */ @media print { .koozali-table-nav { display: none; } table.node, table.node-unclaimed { -webkit-box-shadow: none; box-shadow: none; border: 1px solid #999; page-break-inside: avoid; } table.node + table.node, table.node-unclaimed + table.node-unclaimed, table.node + table.node-unclaimed, table.node-unclaimed + table.node { margin-top: 20px; } table.node thead, table.node-unclaimed thead { background-color: #f5f9ef !important; -webkit-print-color-adjust: exact; color-adjust: exact; } table.node td.first, table.node-unclaimed td.first { background-color: #e8f3e1 !important; -webkit-print-color-adjust: exact; color-adjust: exact; } }