[FEATURE] New list module styling 79/34179/6
authorBenjamin Kott <benjamin.kott@wfp2.com>
Fri, 14 Nov 2014 18:12:08 +0000 (19:12 +0100)
committerBenjamin Mack <benni@typo3.org>
Sat, 15 Nov 2014 21:18:57 +0000 (22:18 +0100)
Provide new styling to list module and base styling for
clipboard based on bootstrap.

Also works for the file list.

Resolves: #62963
Releases: master
Change-Id: Ie12df83b6c488bcf6499ebdf881569ba62ebf818
Reviewed-on: http://review.typo3.org/34179
Reviewed-by: Frank Nägler <typo3@naegler.net>
Tested-by: Frank Nägler <typo3@naegler.net>
Reviewed-by: Benjamin Mack <benni@typo3.org>
Tested-by: Benjamin Mack <benni@typo3.org>
14 files changed:
typo3/sysext/backend/Classes/Clipboard/Clipboard.php
typo3/sysext/backend/Classes/RecordList/AbstractRecordList.php
typo3/sysext/backend/Classes/Utility/IconUtility.php
typo3/sysext/filelist/Classes/FileList.php
typo3/sysext/recordlist/Classes/RecordList/DatabaseRecordList.php
typo3/sysext/t3skin/Classes/Slot/IconStyleModifier.php
typo3/sysext/t3skin/Resources/Private/Styles/TYPO3/_element_pagination.less [new file with mode: 0644]
typo3/sysext/t3skin/Resources/Private/Styles/TYPO3/_element_panel.less [new file with mode: 0644]
typo3/sysext/t3skin/Resources/Private/Styles/TYPO3/_element_table.less
typo3/sysext/t3skin/Resources/Private/Styles/TYPO3/_main_content.less
typo3/sysext/t3skin/Resources/Private/Styles/TYPO3/_main_form.less
typo3/sysext/t3skin/Resources/Private/Styles/bootstrap/variables.less
typo3/sysext/t3skin/Resources/Private/Styles/t3skin.less
typo3/sysext/t3skin/Resources/Public/Css/visual/t3skin.css

index fce3617..973dd0a 100644 (file)
@@ -243,11 +243,6 @@ class Clipboard {
        public function printClipboard() {
                $out = array();
                $elCount = count($this->elFromTable($this->fileMode ? '_FILE' : ''));
-               // Upper header
-               $out[] = '
-                       <tr class="t3-row-header">
-                               <td colspan="3">' . BackendUtility::wrapInHelp('xMOD_csh_corebe', 'list_clipboard', $this->clLabel('clipboard', 'buttons')) . '</td>
-                       </tr>';
                // Button/menu header:
                $thumb_url = GeneralUtility::linkThisScript(array('CB' => array('setThumb' => $this->clipData['_setThumb'] ? 0 : 1)));
                $rmall_url = GeneralUtility::linkThisScript(array('CB' => array('removeAll' => $this->current)));
@@ -286,14 +281,14 @@ class Clipboard {
                }
                $selector_menu = '<select name="_clipMenu" onchange="eval(this.options[this.selectedIndex].value);this.selectedIndex=0;">' . implode('', $opt) . '</select>';
                $out[] = '
-                       <tr class="typo3-clipboard-head">
-                               <td nowrap="nowrap">' . '<a href="' . htmlspecialchars($thumb_url) . '#clip_head">' . '<img' . IconUtility::skinImg($this->backPath, ('gfx/thumb_' . ($this->clipData['_setThumb'] ? 's' : 'n') . '.gif'), 'width="21" height="16"') . ' vspace="2" border="0" title="' . $this->clLabel('thumbmode_clip') . '" alt="" />' . '</a>' . '</td>
-                               <td width="95%" nowrap="nowrap">' . $copymode_selector . ' ' . $selector_menu . '</td>
-                               <td>' . '<a href="' . htmlspecialchars($rmall_url) . '#clip_head">' . IconUtility::getSpriteIcon('actions-document-close', array('title' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:buttons.clear', TRUE))) . '</a></td>
+                       <tr>
+                               <td nowrap="nowrap" class="col-icon">' . '<a href="' . htmlspecialchars($thumb_url) . '#clip_head">' . '<img' . IconUtility::skinImg($this->backPath, ('gfx/thumb_' . ($this->clipData['_setThumb'] ? 's' : 'n') . '.gif'), 'width="21" height="16"') . ' vspace="2" border="0" title="' . $this->clLabel('thumbmode_clip') . '" alt="" />' . '</a>' . '</td>
+                               <td nowrap="nowrap" width="95%">' . $copymode_selector . ' ' . $selector_menu . '</td>
+                               <td nowrap="nowrap" class="col-control">' . '<a class="btn btn-danger" href="' . htmlspecialchars($rmall_url) . '#clip_head">' . IconUtility::getSpriteIcon('actions-document-close', array('title' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:buttons.clear', TRUE))) . '</a></td>
                        </tr>';
                // Print header and content for the NORMAL tab:
                $out[] = '
-                       <tr class="bgColor5">
+                       <tr>
                                <td colspan="3"><a href="' . htmlspecialchars(GeneralUtility::linkThisScript(array('CB' => array('setP' => 'normal')))) . '#clip_head" title="' . $this->clLabel('normal-description') . '">'
                                        . IconUtility::getSpriteIcon(('actions-view-table-' . ($this->current == 'normal' ? 'collapse' : 'expand')))
                                        . $this->padTitleWrap($this->clLabel('normal'), 'normal')
@@ -305,7 +300,7 @@ class Clipboard {
                // Print header and content for the NUMERIC tabs:
                for ($a = 1; $a <= $this->numberTabs; $a++) {
                        $out[] = '
-                               <tr class="bgColor5">
+                               <tr>
                                        <td colspan="3"><a href="' . htmlspecialchars(GeneralUtility::linkThisScript(array('CB' => array('setP' => ('tab_' . $a))))) . '#clip_head" title="' . $this->clLabel('cliptabs-description') . '">'
                                                . IconUtility::getSpriteIcon(('actions-view-table-' . ($this->current == 'tab_' . $a ? 'collapse' : 'expand')))
                                                . $this->padTitleWrap(sprintf($this->clLabel('cliptabs-name'), $a), ('tab_' . $a))
@@ -321,9 +316,17 @@ class Clipboard {
                        <!--
                                TYPO3 Clipboard:
                        -->
-                       <table cellpadding="0" cellspacing="1" border="0" width="290" id="typo3-clipboard">
-                               ' . implode('', $out) . '
-                       </table>';
+                       <div class="row">
+                               <div class="col-sm-6">
+                                       <div class="panel panel-default">
+                                               <div class="panel-heading">' . BackendUtility::wrapInHelp('xMOD_csh_corebe', 'list_clipboard', $this->clLabel('clipboard', 'buttons')) . '</div>
+                                               <table class="table">
+                                                       ' . implode('', $out) . '
+                                               </table>
+                                       </div>
+                               </div>
+                       </div>
+               ';
                // Wrap in form tag:
                $output = '<form action="">' . $output . '</form>';
                // Return the accumulated content:
@@ -361,9 +364,13 @@ class Clipboard {
                                                        }
                                                        $lines[] = '
                                                                <tr>
-                                                                       <td class="' . $bgColClass . '">' . $icon . '</td>
-                                                                       <td class="' . $bgColClass . '" nowrap="nowrap" width="95%">&nbsp;' . $this->linkItemText(htmlspecialchars(GeneralUtility::fixed_lgd_cs($fileObject->getName(), $GLOBALS['BE_USER']->uc['titleLen'])), $fileObject->getName()) . ($pad == 'normal' ? ' <strong>(' . ($this->clipData['normal']['mode'] == 'copy' ? $this->clLabel('copy', 'cm') : $this->clLabel('cut', 'cm')) . ')</strong>' : '') . '&nbsp;' . $thumb . '</td>
-                                                                       <td class="' . $bgColClass . '" align="center" nowrap="nowrap">' . '<a href="#" onclick="' . htmlspecialchars(('top.launchView(\'' . $table . '\', \'' . $v . '\'); return false;')) . '">' . IconUtility::getSpriteIcon('actions-document-info', array('title' => $this->clLabel('info', 'cm'))) . '</a>' . '<a href="' . htmlspecialchars($this->removeUrl('_FILE', GeneralUtility::shortmd5($v))) . '#clip_head">' . IconUtility::getSpriteIcon('actions-selection-delete', array('title' => $this->clLabel('removeItem'))) . '</a>' . '</td>
+                                                                       <td nowrap="nowrap" class="col-icon">' . $icon . '</td>
+                                                                       <td nowrap="nowrap" width="95%">' . $this->linkItemText(htmlspecialchars(GeneralUtility::fixed_lgd_cs($fileObject->getName(), $GLOBALS['BE_USER']->uc['titleLen'])), $fileObject->getName()) . ($pad == 'normal' ? ' <strong>(' . ($this->clipData['normal']['mode'] == 'copy' ? $this->clLabel('copy', 'cm') : $this->clLabel('cut', 'cm')) . ')</strong>' : '') . '&nbsp;' . $thumb . '</td>
+                                                                       <td nowrap="nowrap" class="col-control">
+                                                                               <div class="btn-group">
+                                                                                       <a class="btn" href="#" onclick="' . htmlspecialchars(('top.launchView(\'' . $table . '\', \'' . $v . '\'); return false;')) . '">' . IconUtility::getSpriteIcon('actions-document-info', array('title' => $this->clLabel('info', 'cm'))) . '</a>' . '<a class="btn" href="' . htmlspecialchars($this->removeUrl('_FILE', GeneralUtility::shortmd5($v))) . '#clip_head">' . IconUtility::getSpriteIcon('actions-selection-delete', array('title' => $this->clLabel('removeItem'))) . '</a>
+                                                                               </div>
+                                                                       </td>
                                                                </tr>';
                                                } else {
                                                        // If the file did not exist (or is illegal) then it is removed from the clipboard immediately:
@@ -376,9 +383,13 @@ class Clipboard {
                                                if (is_array($rec)) {
                                                        $lines[] = '
                                                                <tr>
-                                                                       <td class="' . $bgColClass . '">' . $this->linkItemText(IconUtility::getSpriteIconForRecord($table, $rec, array('style' => 'margin: 0 20px;', 'title' => htmlspecialchars(BackendUtility::getRecordIconAltText($rec, $table)))), $rec, $table) . '</td>
-                                                                       <td class="' . $bgColClass . '" nowrap="nowrap" width="95%">&nbsp;' . $this->linkItemText(htmlspecialchars(GeneralUtility::fixed_lgd_cs(BackendUtility::getRecordTitle($table, $rec), $GLOBALS['BE_USER']->uc['titleLen'])), $rec, $table) . ($pad == 'normal' ? ' <strong>(' . ($this->clipData['normal']['mode'] == 'copy' ? $this->clLabel('copy', 'cm') : $this->clLabel('cut', 'cm')) . ')</strong>' : '') . '&nbsp;</td>
-                                                                       <td class="' . $bgColClass . '" align="center" nowrap="nowrap">' . '<a href="#" onclick="' . htmlspecialchars(('top.launchView(\'' . $table . '\', \'' . (int)$uid . '\'); return false;')) . '">' . IconUtility::getSpriteIcon('actions-document-info', array('title' => $this->clLabel('info', 'cm'))) . '</a>' . '<a href="' . htmlspecialchars($this->removeUrl($table, $uid)) . '#clip_head">' . IconUtility::getSpriteIcon('actions-selection-delete', array('title' => $this->clLabel('removeItem'))) . '</a>' . '</td>
+                                                                       <td nowrap="nowrap" class="col-icon">' . $this->linkItemText(IconUtility::getSpriteIconForRecord($table, $rec, array('style' => 'margin: 0 20px;', 'title' => htmlspecialchars(BackendUtility::getRecordIconAltText($rec, $table)))), $rec, $table) . '</td>
+                                                                       <td nowrap="nowrap" width="95%">' . $this->linkItemText(htmlspecialchars(GeneralUtility::fixed_lgd_cs(BackendUtility::getRecordTitle($table, $rec), $GLOBALS['BE_USER']->uc['titleLen'])), $rec, $table) . ($pad == 'normal' ? ' <strong>(' . ($this->clipData['normal']['mode'] == 'copy' ? $this->clLabel('copy', 'cm') : $this->clLabel('cut', 'cm')) . ')</strong>' : '') . '&nbsp;</td>
+                                                                       <td nowrap="nowrap" class="col-control">
+                                                                               <div class="btn-group">
+                                                                                       <a class="btn" href="#" onclick="' . htmlspecialchars(('top.launchView(\'' . $table . '\', \'' . (int)$uid . '\'); return false;')) . '">' . IconUtility::getSpriteIcon('actions-document-info', array('title' => $this->clLabel('info', 'cm'))) . '</a>' . '<a class="btn" href="' . htmlspecialchars($this->removeUrl($table, $uid)) . '#clip_head">' . IconUtility::getSpriteIcon('actions-selection-delete', array('title' => $this->clLabel('removeItem'))) . '</a>
+                                                                               </div>
+                                                                       </td>
                                                                </tr>';
                                                        $localizationData = $this->getLocalizations($table, $rec, $bgColClass, $pad);
                                                        if ($localizationData) {
@@ -395,8 +406,8 @@ class Clipboard {
                if (!count($lines)) {
                        $lines[] = '
                                                                <tr>
-                                                                       <td class="bgColor4"><img src="clear.gif" width="56" height="1" alt="" /></td>
-                                                                       <td colspan="2" class="bgColor4" nowrap="nowrap" width="95%">&nbsp;<em>(' . $this->clLabel('clipNoEl') . ')</em>&nbsp;</td>
+                                                                       <td class="col-icon"></td>
+                                                                       <td colspan="2 nowrap="nowrap" width="95%"><em>(' . $this->clLabel('clipNoEl') . ')</em>&nbsp;</td>
                                                                </tr>';
                }
                $this->endClipboard();
@@ -450,9 +461,9 @@ class Clipboard {
                                foreach ($rows as $rec) {
                                        $lines[] = '
                                        <tr>
-                                               <td class="' . $bgColClass . '">' . IconUtility::getSpriteIconForRecord($table, $rec, array('style' => 'margin-left: 38px;')) . '</td>
-                                               <td class="' . $bgColClass . '" nowrap="nowrap" width="95%">&nbsp;' . htmlspecialchars(GeneralUtility::fixed_lgd_cs(BackendUtility::getRecordTitle($table, $rec), $GLOBALS['BE_USER']->uc['titleLen'])) . $modeData . '&nbsp;</td>
-                                               <td class="' . $bgColClass . '" align="center" nowrap="nowrap">&nbsp;</td>
+                                               <td nowrap="nowrap" class="col-icon">' . IconUtility::getSpriteIconForRecord($table, $rec, array('style' => 'margin-left: 38px;')) . '</td>
+                                               <td nowrap="nowrap" width="95%">' . htmlspecialchars(GeneralUtility::fixed_lgd_cs(BackendUtility::getRecordTitle($table, $rec), $GLOBALS['BE_USER']->uc['titleLen'])) . $modeData . '</td>
+                                               <td nowrap="nowrap" class="col-control"></td>
                                        </tr>';
                                }
                        }
index 19372d5..eb63a19 100644 (file)
@@ -197,23 +197,25 @@ abstract class AbstractRecordList {
         * @param int $h Is an integer >=0 and denotes how tall a element is. Set to '0' makes a halv line, -1 = full line, set to 1 makes a 'join' and above makes 'line'
         * @param string $icon Is the <img>+<a> of the record. If not supplied the first 'join'-icon will be a 'line' instead
         * @param array $data Is the dataarray, record with the fields. Notice: These fields are (currently) NOT htmlspecialchar'ed before being wrapped in <td>-tags
-        * @param string $tdParams Is insert in the <td>-tags. Must carry a ' ' as first character
+        * @param string $rowParams Is insert in the <tr>-tags. Must carry a ' ' as first character
         * @param int OBSOLETE - NOT USED ANYMORE. $lMargin is the leftMargin (int)
         * @param string $altLine Is the HTML <img>-tag for an alternative 'gfx/ol/line.gif'-icon (used in the top)
+        * @param string $colType Defines the tag being used for the columns. Default is td.
         * @return string HTML content for the table row
         */
-       public function addElement($h, $icon, $data, $trParams = '', $lMargin = '', $altLine = '') {
+       public function addElement($h, $icon, $data, $rowParams = '', $lMargin = '', $altLine = '', $colType = 'td') {
+               $colType = ($colType === 'th') ? 'th' : 'td';
                $noWrap = $this->no_noWrap ? '' : ' nowrap="nowrap"';
                // Start up:
                $out = '
                <!-- Element, begin: -->
-               <tr ' . $trParams . '>';
+               <tr ' . $rowParams . '>';
                // Show icon and lines
                if ($this->showIcon) {
                        $out .= '
-                       <td nowrap="nowrap" class="col-icon">';
+                       <' . $colType . ' nowrap="nowrap" class="col-icon">';
                        if (!$h) {
-                               $out .= '<img src="clear.gif" width="1" height="8" alt="" />';
+                               $out .= '&nbsp;';
                        } else {
                                for ($a = 0; $a < $h; $a++) {
                                        if (!$a) {
@@ -225,7 +227,7 @@ abstract class AbstractRecordList {
                                        }
                                }
                        }
-                       $out .= '</td>
+                       $out .= '</' . $colType . '>
                        ';
                }
                // Init rendering.
@@ -242,7 +244,7 @@ abstract class AbstractRecordList {
                                                $cssClass = implode(' ', array($this->addElement_tdCssClass[$lastKey], $this->oddColumnsCssClass));
                                        }
                                        $out .= '
-                                               <td' . $noWrap . ' class="' . $cssClass . '"' . $colsp . $this->addElement_tdParams[$lastKey] . '>' . $data[$lastKey] . '</td>';
+                                               <' . $colType . $noWrap . ' class="' . $cssClass . '"' . $colsp . $this->addElement_tdParams[$lastKey] . '>' . $data[$lastKey] . '</' . $colType .'>';
                                }
                                $lastKey = $vKey;
                                $c = 1;
@@ -265,7 +267,7 @@ abstract class AbstractRecordList {
                                $cssClass = implode(' ', array($this->addElement_tdCssClass[$lastKey], $this->oddColumnsCssClass));
                        }
                        $out .= '
-                               <td' . $noWrap . ' class="' . $cssClass . '"' . $colsp . $this->addElement_tdParams[$lastKey] . '>' . $data[$lastKey] . '</td>';
+                               <' . $colType . $noWrap . ' class="' . $cssClass . '"' . $colsp . $this->addElement_tdParams[$lastKey] . '>' . $data[$lastKey] . '</' . $colType . '>';
                }
                // End row
                $out .= '
index 1b0f5d9..cab997c 100644 (file)
@@ -1033,7 +1033,7 @@ class IconUtility {
        static protected function buildSpriteHtmlIconTag(array $tagAttributes, $innerHtml = NULL, $tagName = NULL) {
                list($tagAttributes, $innerHtml, $tagName) = static::emitBuildSpriteHtmlIconTagSignal($tagAttributes, $innerHtml, $tagName);
 
-               $innerHtml = $innerHtml === NULL ? '&nbsp;' : $innerHtml;
+               $innerHtml = $innerHtml === NULL ? ' ' : $innerHtml;
                $tagName = $tagName === NULL ? 'span' : $tagName;
                $attributes = '';
                foreach ($tagAttributes as $attribute => $value) {
index 07c8b66..c806b1d 100644 (file)
@@ -46,6 +46,13 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
        public $widthGif = '<img src="clear.gif" width="1" height="1" hspace="165" alt="" />';
 
        /**
+        * Space icon used for alignment when no button is available
+        *
+        * @var string
+        */
+       public $spaceIcon;
+
+       /**
         * Max length of strings
         *
         * @var int
@@ -250,7 +257,7 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                if ($warning) {
                        $onClickEvent = 'if (confirm(' . GeneralUtility::quoteJSvalue($warning) . ')){' . $onClickEvent . '}';
                }
-               return '<a href="#" onclick="' . htmlspecialchars($onClickEvent) . 'return false;">' . $string . '</a>';
+               return '<a href="#" class="btn" onclick="' . htmlspecialchars($onClickEvent) . 'return false;">' . $string . '</a>';
        }
 
        /**
@@ -260,12 +267,14 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
         * @return string HTML-table
         */
        public function getTable($rowlist) {
+               // prepare space icon
+               $this->spaceIcon = '<span class="btn disabled">' . IconUtility::getSpriteIcon('empty-empty') . '</span>';
+
                // TODO use folder methods directly when they support filters
                $storage = $this->folderObject->getStorage();
                $storage->resetFileAndFolderNameFiltersToDefault();
 
                // Only render the contents of a browsable storage
-
                if ($this->folderObject->getStorage()->isBrowsable()) {
                        $folders = $storage->getFolderIdentifiersInFolder($this->folderObject->getIdentifier());
                        $files = $this->folderObject->getFiles();
@@ -314,17 +323,26 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                        $out = '';
                        $titleCol = 'file';
                        // Cleaning rowlist for duplicates and place the $titleCol as the first column always!
+                       $rowlist = '_LOCALIZATION_,' . $rowlist;
                        $rowlist = GeneralUtility::rmFromList($titleCol, $rowlist);
                        $rowlist = GeneralUtility::uniqueList($rowlist);
                        $rowlist = $rowlist ? $titleCol . ',' . $rowlist : $titleCol;
-                       if ($this->bigControlPanel || $this->clipBoard) {
-                               $rowlist = str_replace('file,', 'file,_CLIPBOARD_,', $rowlist);
+                       if ($this->clipBoard) {
+                               $rowlist = str_replace('_LOCALIZATION_,', '_LOCALIZATION_,_CLIPBOARD_,', $rowlist);
+                               $this->addElement_tdCssClass['_CLIPBOARD_'] = 'col-clipboard';
+                       }
+                       if ($this->bigControlPanel) {
+                               $rowlist = str_replace('_LOCALIZATION_,', '_LOCALIZATION_,_CONTROL_,', $rowlist);
+                               $this->addElement_tdCssClass['_CONTROL_'] = 'col-control';
                        }
                        $this->fieldArray = explode(',', $rowlist);
                        $folderObjects = array();
                        foreach ($folders as $folder) {
                                $folderObjects[] = $storage->getFolder($folder, TRUE);
                        }
+                       // Add classes to table cells
+                       $this->addElement_tdCssClass[$titleCol] = 'col-title';
+                       $this->addElement_tdCssClass['_LOCALIZATION_'] = 'col-localizationa';
 
                        $folderObjects = \TYPO3\CMS\Core\Resource\Utility\ListUtility::resolveSpecialFolderNames($folderObjects);
                        uksort($folderObjects, 'strnatcasecmp');
@@ -341,13 +359,13 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                                        $table = '_FILE';
                                        $elFromTable = $this->clipObj->elFromTable($table);
                                        if (count($elFromTable) && $this->folderObject->checkActionPermission('write')) {
-                                               $cells[] = '<a href="' . htmlspecialchars($this->clipObj->pasteUrl('_FILE', $this->folderObject->getCombinedIdentifier())) . '" onclick="return ' . htmlspecialchars($this->clipObj->confirmMsg('_FILE', $this->path, 'into', $elFromTable)) . '" title="' . $GLOBALS['LANG']->getLL('clip_paste', 1) . '">' . IconUtility::getSpriteIcon('actions-document-paste-after') . '</a>';
+                                               $cells[] = '<a class="btn" href="' . htmlspecialchars($this->clipObj->pasteUrl('_FILE', $this->folderObject->getCombinedIdentifier())) . '" onclick="return ' . htmlspecialchars($this->clipObj->confirmMsg('_FILE', $this->path, 'into', $elFromTable)) . '" title="' . $GLOBALS['LANG']->getLL('clip_paste', 1) . '">' . IconUtility::getSpriteIcon('actions-document-paste-after') . '</a>';
                                        }
                                        if ($this->clipObj->current != 'normal' && $iOut) {
                                                $cells[] = $this->linkClipboardHeaderIcon(IconUtility::getSpriteIcon('actions-edit-copy', array('title' => $GLOBALS['LANG']->getLL('clip_selectMarked', TRUE))), $table, 'setCB');
                                                $cells[] = $this->linkClipboardHeaderIcon(IconUtility::getSpriteIcon('actions-edit-delete', array('title' => $GLOBALS['LANG']->getLL('clip_deleteMarked'))), $table, 'delete', $GLOBALS['LANG']->getLL('clip_deleteMarkedWarning'));
                                                $onClick = 'checkOffCB(\'' . implode(',', $this->CBnames) . '\', this); return false;';
-                                               $cells[] = '<a class="cbcCheckAll" rel="" href="#" onclick="' . htmlspecialchars($onClick) . '" title="' . $GLOBALS['LANG']->getLL('clip_markRecords', TRUE) . '">' . IconUtility::getSpriteIcon('actions-document-select') . '</a>';
+                                               $cells[] = '<a class="btn" rel="" href="#" onclick="' . htmlspecialchars($onClick) . '" title="' . $GLOBALS['LANG']->getLL('clip_markRecords', TRUE) . '">' . IconUtility::getSpriteIcon('actions-document-select') . '</a>';
                                        }
                                        $theData[$v] = implode('', $cells);
                                } else {
@@ -357,7 +375,7 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                                }
                        }
 
-                       $out .= '<thead>' . $this->addelement(1, '&nbsp;', $theData) . '</thead>';
+                       $out .= '<thead>' . $this->addelement(1, '', $theData, '', '', '', 'th') . '</thead>';
                        $out .= '<tbody>' . $iOut . '</tbody>';
                        // half line is drawn
                        // finish
@@ -365,9 +383,11 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                <!--
                        File list table:
                -->
-                       <table class="t3-table" id="typo3-filelist">
-                               ' . $out . '
-                       </table>';
+                       <div class="table-fit">
+                               <table class="table table-hover" id="typo3-filelist">
+                                       ' . $out . '
+                               </table>
+                       </div>';
 
                } else {
                        /** @var $flashMessage \TYPO3\CMS\Core\Messaging\FlashMessage */
@@ -466,7 +486,7 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                                                                $theData[$field] = $numFiles . ' ' . $GLOBALS['LANG']->getLL(($numFiles === 1 ? 'file' : 'files'), TRUE);
                                                                break;
                                                        case 'rw':
-                                                               $theData[$field] = '<span class="typo3-red"><strong>' . $GLOBALS['LANG']->getLL('read', TRUE) . '</strong></span>' . (!$isWritable ? '' : '<span class="typo3-red"><strong>' . $GLOBALS['LANG']->getLL('write', TRUE) . '</strong></span>');
+                                                               $theData[$field] = '<strong class="text-danger">' . $GLOBALS['LANG']->getLL('read', TRUE) . '</strong>' . (!$isWritable ? '' : '<strong class="text-danger">' . $GLOBALS['LANG']->getLL('write', TRUE) . '</strong>');
                                                                break;
                                                        case 'fileext':
                                                                $theData[$field] = $GLOBALS['LANG']->getLL('folder', TRUE);
@@ -478,13 +498,11 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                                                        case 'file':
                                                                $theData[$field] = $this->linkWrapDir($displayName, $folderObject);
                                                                break;
+                                                       case '_CONTROL_':
+                                                               $theData[$field] = $this->makeEdit($folderObject);
+                                                               break;
                                                        case '_CLIPBOARD_':
-                                                               $temp = '';
-                                                               if ($this->bigControlPanel) {
-                                                                       $temp .= $this->makeEdit($folderObject);
-                                                               }
-                                                               $temp .= $this->makeClip($folderObject);
-                                                               $theData[$field] = $temp;
+                                                               $theData[$field] = $this->makeClip($folderObject);
                                                                break;
                                                        case '_REF_':
                                                                $theData[$field] = $this->makeRef($folderObject);
@@ -590,7 +608,7 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                                                        $theData[$field] = GeneralUtility::formatSize($fileObject->getSize(), $GLOBALS['LANG']->getLL('byteSizeUnits', TRUE));
                                                        break;
                                                case 'rw':
-                                                       $theData[$field] = '' . (!$fileObject->checkActionPermission('read') ? ' ' : '<span class="typo3-red"><strong>' . $GLOBALS['LANG']->getLL('read', TRUE) . '</strong></span>') . (!$fileObject->checkActionPermission('write') ? '' : '<span class="typo3-red"><strong>' . $GLOBALS['LANG']->getLL('write', TRUE) . '</strong></span>');
+                                                       $theData[$field] = '' . (!$fileObject->checkActionPermission('read') ? ' ' : '<strong class="text-danger">' . $GLOBALS['LANG']->getLL('read', TRUE) . '</strong>') . (!$fileObject->checkActionPermission('write') ? '' : '<strong class="text-danger">' . $GLOBALS['LANG']->getLL('write', TRUE) . '</strong>');
                                                        break;
                                                case 'fileext':
                                                        $theData[$field] = strtoupper($ext);
@@ -598,36 +616,13 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                                                case 'tstamp':
                                                        $theData[$field] = BackendUtility::date($fileObject->getModificationTime());
                                                        break;
-                                               case '_CLIPBOARD_':
-                                                       $temp = '';
-                                                       if ($this->bigControlPanel) {
-                                                               $temp .= $this->makeEdit($fileObject);
-                                                       }
-                                                       $temp .= $this->makeClip($fileObject);
-                                                       if (!empty($systemLanguages)) {
-                                                               $temp .= '<a class="filelist-translationToggler" data-fileid="' . $fileObject->getUid() . '">' .
-                                                                       IconUtility::getSpriteIcon('mimetypes-x-content-page-language-overlay') . '</a>';
-                                                       }
-                                                       $theData[$field] = $temp;
+                                               case '_CONTROL_':
+                                                       $theData[$field] = $this->makeEdit($fileObject);
                                                        break;
-                                               case '_REF_':
-                                                       $theData[$field] = $this->makeRef($fileObject);
+                                               case '_CLIPBOARD_':
+                                                       $theData[$field] = $this->makeClip($fileObject);
                                                        break;
-                                               case 'file':
-                                                       $theData[$field] = $this->linkWrapFile(htmlspecialchars($fileName), $fileObject);
-
-                                                       if ($fileObject->isMissing()) {
-                                                               $flashMessage = \TYPO3\CMS\Core\Resource\Utility\BackendUtility::getFlashMessageForMissingFile($fileObject);
-                                                               $theData[$field] .= $flashMessage->render();
-                                                       // Thumbnails?
-                                                       } elseif ($this->thumbs && $this->isImage($ext)) {
-                                                               $processedFile = $fileObject->process(\TYPO3\CMS\Core\Resource\ProcessedFile::CONTEXT_IMAGEPREVIEW, array());
-                                                               if ($processedFile) {
-                                                                       $thumbUrl = $processedFile->getPublicUrl(TRUE);
-                                                                       $theData[$field] .= '<br /><img src="' . $thumbUrl . '" title="' . htmlspecialchars($fileName) . '" alt="" />';
-                                                               }
-                                                       }
-
+                                               case '_LOCALIZATION_':
                                                        if (!empty($systemLanguages) && $fileObject->isIndexed() && $fileObject->checkActionPermission('write')) {
                                                                $metaDataRecord = $fileObject->_getMetaData();
                                                                $translations = $this->getTranslationsForMetaData($metaDataRecord);
@@ -646,8 +641,7 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                                                                                        'sys_file_metadata' => array($translations[$languageId]['uid'] => 'edit')
                                                                                );
                                                                                $editOnClick = BackendUtility::editOnClick(GeneralUtility::implodeArrayForUrl('edit', $data), $GLOBALS['BACK_PATH'], $this->listUrl());
-                                                                               $languageCode .= sprintf('<a href="#" onclick="%s">%s</a>', htmlspecialchars($editOnClick), $flagButtonIcon);
-
+                                                                               $languageCode .= '<a href="#" class="btn" onclick="' . $editOnClick . '">' . $flagButtonIcon . '</a>';
                                                                        } else {
                                                                                $href = $GLOBALS['SOBE']->doc->issueCommand(
                                                                                        '&cmd[sys_file_metadata][' . $metaDataRecord['uid'] . '][localize]=' . $languageId,
@@ -655,15 +649,34 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                                                                                        '&returnUrl=' . rawurlencode($this->listURL()) . BackendUtility::getUrlToken('editRecord')
                                                                                );
                                                                                $flagButtonIcon = IconUtility::getSpriteIcon($flagIcon);
-                                                                               $languageCode .= sprintf('<a href="%s">%s</a> ', htmlspecialchars($href), $flagButtonIcon);
+                                                                               $languageCode .= '<a href="' . htmlspecialchars($href) . '" class="btn">' . $flagButtonIcon . '</a> ';
                                                                        }
                                                                }
 
                                                                // Hide flag button bar when not translated yet
-                                                               $theData[$field] .= '<div class="localisationData" data-fileid="' . $fileObject->getUid() . '"' .
+                                                               $theData[$field] = ' <div class="localisationData btn-group" data-fileid="' . $fileObject->getUid() . '"' .
                                                                                (empty($translations) ? ' style="display: none;"' : '') . '>' . $languageCode . '</div>';
+                                                               $theData[$field] .= '<a class="btn filelist-translationToggler" data-fileid="' . $fileObject->getUid() . '">' .
+                                                                       IconUtility::getSpriteIcon('mimetypes-x-content-page-language-overlay') . '</a>';
                                                        }
+                                                       break;
+                                               case '_REF_':
+                                                       $theData[$field] = $this->makeRef($fileObject);
+                                                       break;
+                                               case 'file':
+                                                       $theData[$field] = $this->linkWrapFile(htmlspecialchars($fileName), $fileObject);
 
+                                                       if ($fileObject->isMissing()) {
+                                                               $flashMessage = \TYPO3\CMS\Core\Resource\Utility\BackendUtility::getFlashMessageForMissingFile($fileObject);
+                                                               $theData[$field] .= $flashMessage->render();
+                                                       // Thumbnails?
+                                                       } elseif ($this->thumbs && $this->isImage($ext)) {
+                                                               $processedFile = $fileObject->process(\TYPO3\CMS\Core\Resource\ProcessedFile::CONTEXT_IMAGEPREVIEW, array());
+                                                               if ($processedFile) {
+                                                                       $thumbUrl = $processedFile->getPublicUrl(TRUE);
+                                                                       $theData[$field] .= '<br /><img src="' . $thumbUrl . '" title="' . htmlspecialchars($fileName) . '" alt="" />';
+                                                               }
+                                                       }
                                                        break;
                                                default:
                                                        $theData[$field] = '';
@@ -744,31 +757,27 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                // For normal clipboard, add copy/cut buttons:
                if ($this->clipObj->current == 'normal') {
                        $isSel = $this->clipObj->isSelected('_FILE', $md5);
-                       $cells[] = '<a href="' . htmlspecialchars($this->clipObj->selUrlFile($fullIdentifier, 1, ($isSel == 'copy'))) . '">' . IconUtility::getSpriteIcon(('actions-edit-copy' . ($isSel == 'copy' ? '-release' : '')), array('title' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.copy', TRUE))) . '</a>';
+                       $cells[] = '<a class="btn" href="' . htmlspecialchars($this->clipObj->selUrlFile($fullIdentifier, 1, ($isSel == 'copy'))) . '">' . IconUtility::getSpriteIcon(('actions-edit-copy' . ($isSel == 'copy' ? '-release' : '')), array('title' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.copy', TRUE))) . '</a>';
                        // we can only cut if file can be moved
                        if ($fileOrFolderObject->checkActionPermission('move')) {
-                               $cells[] = '<a href="' . htmlspecialchars($this->clipObj->selUrlFile($fullIdentifier, 0, ($isSel == 'cut'))) . '">' . IconUtility::getSpriteIcon(('actions-edit-cut' . ($isSel == 'cut' ? '-release' : '')), array('title' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.cut', TRUE))) . '</a>';
+                               $cells[] = '<a class="btn" href="' . htmlspecialchars($this->clipObj->selUrlFile($fullIdentifier, 0, ($isSel == 'cut'))) . '">' . IconUtility::getSpriteIcon(('actions-edit-cut' . ($isSel == 'cut' ? '-release' : '')), array('title' => $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.cut', TRUE))) . '</a>';
                        } else {
-                               $cells[] = IconUtility::getSpriteIcon('empty-empty');
+                               $cells[] = $this->spaceIcon;
                        }
                } else {
                        // For numeric pads, add select checkboxes:
                        $n = '_FILE|' . $md5;
                        $this->CBnames[] = $n;
                        $checked = $this->clipObj->isSelected('_FILE', $md5) ? ' checked="checked"' : '';
-                       $cells[] = '<input type="hidden" name="CBH[' . $n . ']" value="0" />' . '<input type="checkbox" name="CBC[' . $n . ']" value="' . htmlspecialchars($fullIdentifier) . '" class="smallCheckboxes"' . $checked . ' />';
+                       $cells[] = '<div class="btn-checkbox-holder"><input type="hidden" name="CBH[' . $n . ']" value="0" /><input type="checkbox" name="CBC[' . $n . ']" value="' . htmlspecialchars($fullIdentifier) . '" class="smallCheckboxes btn-checkbox"' . $checked . ' /><span class="btn"><span class="t3-icon fa"></span></span></div>';
                }
                // Display PASTE button, if directory:
                $elFromTable = $this->clipObj->elFromTable('_FILE');
                if (is_a($fileOrFolderObject, 'TYPO3\\CMS\\Core\\Resource\\Folder') && count($elFromTable) && $fileOrFolderObject->checkActionPermission('write')) {
-                       $cells[] = '<a href="' . htmlspecialchars($this->clipObj->pasteUrl('_FILE', $fullIdentifier)) . '" onclick="return ' . htmlspecialchars($this->clipObj->confirmMsg('_FILE', $fullIdentifier, 'into', $elFromTable)) . '" title="' . $GLOBALS['LANG']->getLL('clip_pasteInto', TRUE) . '">' . IconUtility::getSpriteIcon('actions-document-paste-into') . '</a>';
+                       $cells[] = '<a class="btn" href="' . htmlspecialchars($this->clipObj->pasteUrl('_FILE', $fullIdentifier)) . '" onclick="return ' . htmlspecialchars($this->clipObj->confirmMsg('_FILE', $fullIdentifier, 'into', $elFromTable)) . '" title="' . $GLOBALS['LANG']->getLL('clip_pasteInto', TRUE) . '">' . IconUtility::getSpriteIcon('actions-document-paste-into') . '</a>';
                }
                // Compile items into a DIV-element:
-               return '                                                        <!-- CLIPBOARD PANEL: -->
-                                                                                       <div class="typo3-clipCtrl">
-                                                                                               ' . implode('
-                                                                                               ', $cells) . '
-                                                                                       </div>';
+               return ' <div class="btn-group">' . implode('', $cells) . '</div>';
        }
 
        /**
@@ -789,29 +798,29 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                                );
                                $editOnClick = BackendUtility::editOnClick(GeneralUtility::implodeArrayForUrl('edit', $data), $GLOBALS['BACK_PATH'], $this->listUrl());
                                $title = htmlspecialchars($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.editMetadata'));
-                               $cells['editmetadata'] = '<a href="#" onclick="' . $editOnClick . '" title="' . $title . '">'
+                               $cells['editmetadata'] = '<a href="#" class="btn" onclick="' . $editOnClick . '" title="' . $title . '">'
                                        . IconUtility::getSpriteIcon('actions-document-open') . '</a>';
                        } else {
-                               $cells['editmetadata'] = IconUtility::getSpriteIcon('empty-empty');
+                               $cells['editmetadata'] = $this->spaceIcon;
                        }
                } catch (\Exception $e) {
-                       $cells['editmetadata'] = IconUtility::getSpriteIcon('empty-empty');
+                       $cells['editmetadata'] = $this->spaceIcon;
                }
                // Edit file content (if editable)
                if (is_a($fileOrFolderObject, 'TYPO3\\CMS\\Core\\Resource\\File') && $fileOrFolderObject->checkActionPermission('write') && GeneralUtility::inList($GLOBALS['TYPO3_CONF_VARS']['SYS']['textfile_ext'], $fileOrFolderObject->getExtension())) {
                        $url = BackendUtility::getModuleUrl('file_edit', array('target' => $fullIdentifier));
                        $editOnClick = 'top.content.list_frame.location.href=top.TS.PATH_typo3+' . GeneralUtility::quoteJSvalue($url) . '+\'&returnUrl=\'+top.rawurlencode(top.content.list_frame.document.location.pathname+top.content.list_frame.document.location.search);return false;';
-                       $cells['edit'] = '<a href="#" onclick="' . htmlspecialchars($editOnClick) . '" title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.editcontent') . '">' . IconUtility::getSpriteIcon('actions-page-open') . '</a>';
+                       $cells['edit'] = '<a href="#" class="btn" onclick="' . htmlspecialchars($editOnClick) . '" title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.editcontent') . '">' . IconUtility::getSpriteIcon('actions-page-open') . '</a>';
                } else {
-                       $cells['edit'] = IconUtility::getSpriteIcon('empty-empty');
+                       $cells['edit'] = $this->spaceIcon;
                }
                // rename the file
                if ($fileOrFolderObject->checkActionPermission('rename')) {
                        $url = BackendUtility::getModuleUrl('file_rename', array('target' => $fullIdentifier));
                        $renameOnClick = 'top.content.list_frame.location.href = top.TS.PATH_typo3+' . GeneralUtility::quoteJSvalue($url) . '+\'&returnUrl=\'+top.rawurlencode(top.content.list_frame.document.location.pathname+top.content.list_frame.document.location.search);return false;';
-                       $cells['rename'] = '<a href="#" onclick="' . htmlspecialchars($renameOnClick) . '"  title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.rename') . '">' . IconUtility::getSpriteIcon('actions-edit-rename') . '</a>';
+                       $cells['rename'] = '<a href="#" class="btn" onclick="' . htmlspecialchars($renameOnClick) . '"  title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.rename') . '">' . IconUtility::getSpriteIcon('actions-edit-rename') . '</a>';
                } else {
-                       $cells['rename'] = IconUtility::getSpriteIcon('empty-empty');
+                       $cells['rename'] = $this->spaceIcon;
                }
                if ($fileOrFolderObject->checkActionPermission('read')) {
                        if (is_a($fileOrFolderObject, 'TYPO3\\CMS\\Core\\Resource\\Folder')) {
@@ -819,9 +828,9 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                        } elseif (is_a($fileOrFolderObject, 'TYPO3\\CMS\\Core\\Resource\\File')) {
                                $infoOnClick = 'top.launchView( \'_FILE\', \'' . $fullIdentifier . '\');return false;';
                        }
-                       $cells['info'] = '<a href="#" onclick="' . $infoOnClick . '" title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.info') . '">' . IconUtility::getSpriteIcon('status-dialog-information') . '</a>';
+                       $cells['info'] = '<a href="#" class="btn" onclick="' . $infoOnClick . '" title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.info') . '">' . IconUtility::getSpriteIcon('status-dialog-information') . '</a>';
                } else {
-                       $cells['info'] = IconUtility::getSpriteIcon('empty-empty');
+                       $cells['info'] = $this->spaceIcon;
                }
 
                // delete the file
@@ -841,9 +850,9 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
 
                        $removeOnClick = 'if (' . $confirmationCheck . ') { top.content.list_frame.location.href=top.TS.PATH_typo3+\'tce_file.php?file[delete][0][data]=' . rawurlencode($fileOrFolderObject->getCombinedIdentifier()) . '&vC=' . $GLOBALS['BE_USER']->veriCode() . BackendUtility::getUrlToken('tceAction') . '&redirect=\'+top.rawurlencode(top.content.list_frame.document.location.pathname+top.content.list_frame.document.location.search);};';
 
-                       $cells['delete'] = '<a href="#" onclick="' . htmlspecialchars($removeOnClick) . '"  title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.delete') . '">' . IconUtility::getSpriteIcon('actions-edit-delete') . '</a>';
+                       $cells['delete'] = '<a href="#" class="btn" onclick="' . htmlspecialchars($removeOnClick) . '"  title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.delete') . '">' . IconUtility::getSpriteIcon('actions-edit-delete') . '</a>';
                } else {
-                       $cells['delete'] = IconUtility::getSpriteIcon('empty-empty');
+                       $cells['delete'] = $this->spaceIcon;
                }
 
                // Hook for manipulating edit icons.
@@ -860,11 +869,7 @@ class FileList extends \TYPO3\CMS\Backend\RecordList\AbstractRecordList {
                        }
                }
                // Compile items into a DIV-element:
-               return '                                                        <!-- EDIT CONTROLS: -->
-                                                                                       <div class="typo3-editCtrl">
-                                                                                               ' . implode('
-                                                                                               ', $cells) . '
-                                                                                       </div>';
+               return '<div class="btn-group">' . implode('', $cells) . '</div>';
        }
 
        /**
index a7f7a7b..4de017b 100644 (file)
@@ -319,7 +319,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                        && !$GLOBALS['TCA'][$table]['ctrl']['transOrigPointerTable'];
                $tableCollapsed = (bool)$this->tablesCollapsed[$table];
                // prepare space icon
-               $this->spaceIcon = IconUtility::getSpriteIcon('empty-empty', array('style' => 'background-position: 0 10px;'));
+               $this->spaceIcon = '<span class="btn disabled">' . IconUtility::getSpriteIcon('empty-empty') . '</span>';
                // Cleaning rowlist for duplicates and place the $titleCol as the first column always!
                $this->fieldArray = array();
                // title Column
@@ -328,7 +328,6 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                // Control-Panel
                if (!GeneralUtility::inList($rowList, '_CONTROL_')) {
                        $this->fieldArray[] = '_CONTROL_';
-                       $this->fieldArray[] = '_AFTERCONTROL_';
                }
                // Clipboard
                if ($this->showClipboard) {
@@ -337,7 +336,6 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                // Ref
                if (!$this->dontShowClipControlPanels) {
                        $this->fieldArray[] = '_REF_';
-                       $this->fieldArray[] = '_AFTERREF_';
                }
                // Path
                if ($this->searchLevels) {
@@ -460,6 +458,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                // Init:
                $dbCount = 0;
                $out = '';
+               $tableHeader = '';
                $result = NULL;
                $listOnlyInSingleTableMode = $this->listOnlyInSingleTableMode && !$this->table;
                // If the count query returned any number of records, we perform the real query,
@@ -481,21 +480,6 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                }
                // If any records was selected, render the list:
                if ($dbCount) {
-                       // Half line is drawn between tables:
-                       if (!$listOnlyInSingleTableMode) {
-                               $theData = array();
-                               if (!$this->table && !$rowList) {
-                                       $theData[$titleCol] = '<img src="clear.gif" width="'
-                                               . ($GLOBALS['SOBE']->MOD_SETTINGS['bigControlPanel'] ? '230' : '350') . '" height="1" alt="" />';
-                                       if (in_array('_CONTROL_', $this->fieldArray)) {
-                                               $theData['_CONTROL_'] = '';
-                                       }
-                                       if (in_array('_CLIPBOARD_', $this->fieldArray)) {
-                                               $theData['_CLIPBOARD_'] = '';
-                                       }
-                               }
-                               $out .= $this->addelement(0, '', $theData, 'class="c-table-row-spacer"', $this->leftMargin);
-                       }
                        $tableTitle = $GLOBALS['LANG']->sL($GLOBALS['TCA'][$table]['ctrl']['title'], TRUE);
                        if ($tableTitle === '') {
                                $tableTitle = $table;
@@ -509,10 +493,10 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                $icon = $this->table
                                        ? IconUtility::getSpriteIcon('actions-view-table-collapse', array('title' => $GLOBALS['LANG']->getLL('contractView', TRUE)))
                                        : IconUtility::getSpriteIcon('actions-view-table-expand', array('title' => $GLOBALS['LANG']->getLL('expandView', TRUE)));
-                               $theData[$titleCol] = $this->linkWrapTable($table, '<span class="c-table">' . $tableTitle . '</span> (' . $this->totalItems . ') ' . $icon);
+                               $theData[$titleCol] = $this->linkWrapTable($table, $tableTitle . ' (' . $this->totalItems . ') ' . $icon);
                        }
                        if ($listOnlyInSingleTableMode) {
-                               $out .= '<h2>' . BackendUtility::wrapInHelp($table, '', $theData[$titleCol]) . '</h2>';
+                               $tableHeader .= BackendUtility::wrapInHelp($table, '', $theData[$titleCol]);
                        } else {
                                // Render collapse button if in multi table mode
                                $collapseIcon = '';
@@ -524,9 +508,9 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                        $icon = $tableCollapsed
                                                ? IconUtility::getSpriteIcon('actions-view-list-expand', array('class' => 'collapseIcon'))
                                                : IconUtility::getSpriteIcon('actions-view-list-collapse', array('class' => 'collapseIcon'));
-                                       $collapseIcon = '<a href="' . $href . '" title="' . $title . '">' . $icon . '</a>';
+                                       $collapseIcon = '<a href="' . $href . '" title="' . $title . '" class="pull-right">' . $icon . '</a>';
                                }
-                               $out .= '<h2>' . $theData[$titleCol] . $collapseIcon . '</h2>';
+                               $tableHeader .= $theData[$titleCol] . $collapseIcon;
                        }
                        // Render table rows only if in multi table view and not collapsed or if in
                        // single table view
@@ -622,7 +606,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                                $countOnFirstPage = $this->totalItems > $this->itemsLimitSingleTable ? $this->itemsLimitSingleTable : $this->totalItems;
                                                $hasMore = $this->totalItems > $this->itemsLimitSingleTable;
                                                $colspan = $this->showIcon ? count($this->fieldArray) + 1 : count($this->fieldArray);
-                                               $iOut .= '<tr><td colspan="' . $colspan . '" style="padding:5px;">
+                                               $iOut .= '<tr><td colspan="' . $colspan . '">
                                                                <a href="' . htmlspecialchars(($this->listURL() . '&table=' . rawurlencode($table))) . '">'
                                                        . '<img' . IconUtility::skinImg($this->backPath, 'gfx/pildown.gif', 'width="14" height="14"') . ' alt="" />'
                                                        . ' <i>[1 - ' . $countOnFirstPage . ($hasMore ? '+' : '') . ']</i></a>
@@ -642,9 +626,17 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                        <!--
                                DB listing of elements: "' . htmlspecialchars($table) . '"
                        -->
-                               <table class="t3-table typo3-dblist' . ($listOnlyInSingleTableMode ? ' typo3-dblist-overview' : '') . '">
-                                       ' . $out . '
-                               </table>';
+                               <div class="panel panel-default">
+                                       <div class="panel-heading">
+                                       ' . $tableHeader . '
+                                       </div>
+                                       <div class="table-fit">
+                                               <table class="table table-hover' . ($listOnlyInSingleTableMode ? ' typo3-dblist-overview' : '') . '">
+                                                       ' . $out . '
+                                               </table>
+                                       </div>
+                               </div>
+                       ';
                        // Output csv if...
                        // This ends the page with exit.
                        if ($this->csvOutput) {
@@ -699,7 +691,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                $rowSpecial .= ' lastcol';
                        }
 
-                       $row_bgColor = ' class="db_list_normal' . $rowSpecial . '"';
+                       $row_bgColor = ' class="' . $rowSpecial . '"';
 
                        // Overriding with versions background color if any:
                        $row_bgColor = $row['_CSSCLASS'] ? ' class="' . $row['_CSSCLASS'] . '"' : $row_bgColor;
@@ -766,8 +758,6 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                        $theData[$fCol] = $this->createReferenceHtml($table, $row['uid']);
                                } elseif ($fCol == '_CONTROL_') {
                                        $theData[$fCol] = $this->makeControl($table, $row);
-                               } elseif ($fCol == '_AFTERCONTROL_' || $fCol == '_AFTERREF_') {
-                                       $theData[$fCol] = '&nbsp;';
                                } elseif ($fCol == '_CLIPBOARD_') {
                                        $theData[$fCol] = $this->makeClip($table, $row);
                                } elseif ($fCol == '_LOCALIZATION_') {
@@ -796,7 +786,6 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                        $this->addElement_tdCssClass[$titleCol] = 'col-title' . $localizationMarkerClass;
                        if (!$this->dontShowClipControlPanels) {
                                $this->addElement_tdCssClass['_CONTROL_'] = 'col-control';
-                               $this->addElement_tdCssClass['_AFTERCONTROL_'] = 'col-control-space';
                                $this->addElement_tdCssClass['_CLIPBOARD_'] = 'col-clipboard';
                        }
                        $this->addElement_tdCssClass['_PATH_'] = 'col-path';
@@ -871,7 +860,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                        if (count($elFromTable)) {
                                                $href = htmlspecialchars($this->clipObj->pasteUrl($table, $this->id));
                                                $onClick = htmlspecialchars('return ' . $this->clipObj->confirmMsg('pages', $this->pageRow, 'into', $elFromTable));
-                                               $cells['pasteAfter'] = '<a href="' . $href . '" onclick="' . $onClick
+                                               $cells['pasteAfter'] = '<a class="btn" href="' . $href . '" onclick="' . $onClick
                                                        . '" title="' . $GLOBALS['LANG']->getLL('clip_paste', TRUE) . '">'
                                                        . IconUtility::getSpriteIcon('actions-document-paste-after') . '</a>';
                                        }
@@ -885,7 +874,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                                $editIdList = '\'+editList(\'' . $table . '\',\'' . $editIdList . '\')+\'';
                                                $params = '&edit[' . $table . '][' . $editIdList . ']=edit&disHelp=1';
                                                $onClick = htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1));
-                                               $cells['edit'] = '<a href="#" onclick="' . $onClick . '" title="'
+                                               $cells['edit'] = '<a class="btn" href="#" onclick="' . $onClick . '" title="'
                                                        . $GLOBALS['LANG']->getLL('clip_editMarked', TRUE) . '">'
                                                        . IconUtility::getSpriteIcon('actions-document-open') . '</a>';
                                                // The "Delete marked" link:
@@ -897,7 +886,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                                );
                                                // The "Select all" link:
                                                $onClick = htmlspecialchars(('checkOffCB(\'' . implode(',', $this->CBnames) . '\', this); return false;'));
-                                               $cells['markAll'] = '<a class="cbcCheckAll" rel="" href="#" onclick="' . $onClick . '" title="'
+                                               $cells['markAll'] = '<a class="btn" rel="" href="#" onclick="' . $onClick . '" title="'
                                                        . $GLOBALS['LANG']->getLL('clip_markRecords', TRUE) . '">'
                                                        . IconUtility::getSpriteIcon('actions-document-select') . '</a>';
                                        } else {
@@ -919,7 +908,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                                        $cells = $hookObject->renderListHeaderActions($table, $currentIdList, $cells, $this);
                                                }
                                        }
-                                       $theData[$fCol] = implode('', $cells);
+                                       $theData[$fCol] = '<div class="btn-group">' . implode('', $cells) . '</div>';
                                        break;
                                case '_CONTROL_':
                                        // Control panel:
@@ -938,19 +927,19 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                                                        : 'sysext/cms/layout/db_new_content_el.php';
                                                                $newContentWizScriptPath = $this->backPath . $wizardPath;
                                                                $onClick = htmlspecialchars('return jumpExt(\'' . $newContentWizScriptPath . '?id=' . $this->id . '\');');
-                                                               $icon = '<a href="#" onclick="' . $onClick . '" title="'
+                                                               $icon = '<a class="btn btn-success" href="#" onclick="' . $onClick . '" title="'
                                                                        . $GLOBALS['LANG']->getLL('new', TRUE) . '">' . $spriteIcon . '</a>';
                                                        } elseif ($table == 'pages' && $this->newWizards) {
                                                                $href = htmlspecialchars($this->backPath . 'db_new.php?id=' . $this->id
                                                                        . '&pagesOnly=1&returnUrl=' . rawurlencode(GeneralUtility::getIndpEnv('REQUEST_URI')));
-                                                               $icon = '<a href="' . $href . '" title="' . $GLOBALS['LANG']->getLL('new', TRUE) . '">'
+                                                               $icon = '<a class="btn success" href="' . $href . '" title="' . $GLOBALS['LANG']->getLL('new', TRUE) . '">'
                                                                        . $spriteIcon . '</a>';
                                                        } else {
                                                                $params = '&edit[' . $table . '][' . $this->id . ']=new';
                                                                if ($table == 'pages_language_overlay') {
                                                                        $params .= '&overrideVals[pages_language_overlay][doktype]=' . (int)$this->pageRow['doktype'];
                                                                }
-                                                               $icon = '<a href="#" onclick="' . htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1))
+                                                               $icon = '<a class="btn btn-success" href="#" onclick="' . htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1))
                                                                        . '" title="' . $GLOBALS['LANG']->getLL('new', TRUE) . '">' . $spriteIcon . '</a>';
                                                        }
                                                }
@@ -961,20 +950,15 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                                                $editIdList = '\'+editList(\'' . $table . '\',\'' . $editIdList . '\')+\'';
                                                        }
                                                        $params = '&edit[' . $table . '][' . $editIdList . ']=edit&columnsOnly=' . implode(',', $this->fieldArray) . '&disHelp=1';
-                                                       $icon .= '<a href="#" onclick="' . htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1))
+                                                       $icon .= '<a class="btn" href="#" onclick="' . htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1))
                                                                . '" title="' . $GLOBALS['LANG']->getLL('editShownColumns', TRUE) . '">'
                                                                . IconUtility::getSpriteIcon('actions-document-open') . '</a>';
+                                                       $icon = '<div class="btn-group">' . $icon . '</div>';
                                                }
                                                // Add an empty entry, so column count fits again after moving this into $icon
                                                $theData[$fCol] = '&nbsp;';
                                        }
                                        break;
-                               case '_AFTERCONTROL_':
-
-                               case '_AFTERREF_':
-                                       // space column
-                                       $theData[$fCol] = '&nbsp;';
-                                       break;
                                default:
                                        // Regular fields header:
                                        $theData[$fCol] = '';
@@ -994,7 +978,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                        if ($this->table && is_array($currentIdList)) {
                                                // If the numeric clipboard pads are selected, show duplicate sorting link:
                                                if ($this->clipNumPane()) {
-                                                       $theData[$fCol] .= '<a href="' . htmlspecialchars($this->listURL('', -1) . '&duplicateField=' . $fCol)
+                                                       $theData[$fCol] .= '<a class="btn" href="' . htmlspecialchars($this->listURL('', -1) . '&duplicateField=' . $fCol)
                                                                . '" title="' . $GLOBALS['LANG']->getLL('clip_duplicates', TRUE) . '">'
                                                                . IconUtility::getSpriteIcon('actions-document-duplicates-select') . '</a>';
                                                }
@@ -1007,10 +991,13 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                                        }
                                                        $params = '&edit[' . $table . '][' . $editIdList . ']=edit&columnsOnly=' . $fCol . '&disHelp=1';
                                                        $iTitle = sprintf($GLOBALS['LANG']->getLL('editThisColumn'), $sortLabel);
-                                                       $theData[$fCol] .= '<a href="#" onclick="' . htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1))
+                                                       $theData[$fCol] .= '<a class="btn" href="#" onclick="' . htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1))
                                                                . '" title="' . htmlspecialchars($iTitle) . '">'
                                                                . IconUtility::getSpriteIcon('actions-document-open') . '</a>';
                                                }
+                                               if(strlen($theData[$fCol]) > 0){
+                                                       $theData[$fCol] = '<div class="btn-group">' . $theData[$fCol] . '</div> ';
+                                               }
                                        }
                                        $theData[$fCol] .= $this->addSortLink($sortLabel, $fCol, $table);
                        }
@@ -1030,8 +1017,10 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                $theData = $hookObject->renderListHeader($table, $currentIdList, $theData, $this);
                        }
                }
+
+
                // Create and return header table row:
-               return '<thead>' . $this->addelement(1, $icon, $theData) . '</thead>';
+               return '<thead>' . $this->addelement(1, $icon, $theData, '', '', '', 'th') . '</thead>';
        }
 
        /**
@@ -1064,30 +1053,30 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                if ($currentPage > 1) {
                        $labelFirst = $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_common.xlf:first');
                        $labelPrevious = $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_common.xlf:previous');
-                       $first = '<a href="' . $listURL . '&pointer=' . $this->getPointerForPage(1) . '">'
-                               . IconUtility::getSpriteIcon('actions-view-paging-first', array('title' => $labelFirst)) . '</a>';
-                       $previous = '<a href="' . $listURL . '&pointer=' . $this->getPointerForPage($currentPage - 1) . '">'
-                               . IconUtility::getSpriteIcon('actions-view-paging-previous', array('title' => $labelPrevious)) . '</a>';
+                       $first = '<li><a href="' . $listURL . '&pointer=' . $this->getPointerForPage(1) . '">'
+                               . IconUtility::getSpriteIcon('actions-view-paging-first', array('title' => $labelFirst)) . '</a></li>';
+                       $previous = '<li><a href="' . $listURL . '&pointer=' . $this->getPointerForPage($currentPage - 1) . '">'
+                               . IconUtility::getSpriteIcon('actions-view-paging-previous', array('title' => $labelPrevious)) . '</a></li>';
                } else {
-                       $first = IconUtility::getSpriteIcon('actions-view-paging-first-disabled');
-                       $previous = IconUtility::getSpriteIcon('actions-view-paging-previous-disabled');
+                       $first = '<li class="disabled"><span>' . IconUtility::getSpriteIcon('actions-view-paging-first') . '</span></li>';
+                       $previous = '<li class="disabled"><span>' . IconUtility::getSpriteIcon('actions-view-paging-previous') . '</span></li>';
                }
                if ($currentPage < $totalPages) {
                        $labelNext = $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_common.xlf:next');
                        $labelLast = $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_common.xlf:last');
-                       $next = '<a href="' . $listURL . '&pointer=' . $this->getPointerForPage($currentPage + 1) . '">'
-                               . IconUtility::getSpriteIcon('actions-view-paging-next', array('title' => $labelNext)) . '</a>';
-                       $last = '<a href="' . $listURL . '&pointer=' . $this->getPointerForPage($totalPages) . '">'
-                               . IconUtility::getSpriteIcon('actions-view-paging-last', array('title' => $labelLast)) . '</a>';
+                       $next = '<li><a href="' . $listURL . '&pointer=' . $this->getPointerForPage($currentPage + 1) . '">'
+                               . IconUtility::getSpriteIcon('actions-view-paging-next', array('title' => $labelNext)) . '</a></li>';
+                       $last = '<li><a href="' . $listURL . '&pointer=' . $this->getPointerForPage($totalPages) . '">'
+                               . IconUtility::getSpriteIcon('actions-view-paging-last', array('title' => $labelLast)) . '</a></li>';
                } else {
-                       $next = IconUtility::getSpriteIcon('actions-view-paging-next-disabled');
-                       $last = IconUtility::getSpriteIcon('actions-view-paging-last-disabled');
+                       $next = '<li class="disabled"><span>' . IconUtility::getSpriteIcon('actions-view-paging-next') . '</span></li>';
+                       $last = '<li class="disabled"><span>' . IconUtility::getSpriteIcon('actions-view-paging-last') . '</span></li>';
                }
-               $reload = '<a href="#" onclick="document.dblistForm.action=\'' . $listURL
+               $reload = '<li><a href="#" onclick="document.dblistForm.action=\'' . $listURL
                        . '&pointer=\'+calculatePointer(document.getElementById(\'jumpPage-' . $renderPart
                        . '\').value); document.dblistForm.submit(); return true;" title="'
                        . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_common.xlf:reload', TRUE) . '">'
-                       . IconUtility::getSpriteIcon('actions-system-refresh') . '</a>';
+                       . IconUtility::getSpriteIcon('actions-system-refresh') . '</a></li>';
                if ($renderPart === 'top') {
                        // Add js to traverse a page select input to a pointer value
                        $content = '
@@ -1106,7 +1095,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
 </script>
 ';
                }
-               $pageNumberInput = '<span>
+               $pageNumberInput = '<span class="paginator-input">
                        <input type="text" value="' . $currentPage . '" size="3" id="jumpPage-' . $renderPart . '" name="jumpPage-'
                        . $renderPart . '" onkeyup="if (event.keyCode == Event.KEY_RETURN) { document.dblistForm.action=\'' . $listURL
                        . '&pointer=\'+calculatePointer(this.value); document.dblistForm.submit(); } return true;" />
@@ -1116,19 +1105,29 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                        $pageNumberInput,
                        $totalPages
                );
-               $pageIndicator = '<span class="pageIndicator">' . $pageIndicatorText . '</span>';
+               $pageIndicator = '<li><span>' . $pageIndicatorText . '</span></li>';
                if ($this->totalItems > $this->firstElementNumber + $this->iLimit) {
                        $lastElementNumber = $this->firstElementNumber + $this->iLimit;
                } else {
                        $lastElementNumber = $this->totalItems;
                }
-               $rangeIndicator = '<span class="pageIndicator">' . sprintf($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_mod_web_list.xlf:rangeIndicator'), ($this->firstElementNumber + 1), $lastElementNumber) . '</span>';
+               $rangeIndicator = '<li><span>' . sprintf($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_mod_web_list.xlf:rangeIndicator'), ($this->firstElementNumber + 1), $lastElementNumber) . '</span></li>';
 
                $titleColumn = $this->fieldArray[0];
                $data = array(
-                       $titleColumn => '<div id="typo3-dblist-pagination">' . $first . $previous . '<span class="bar">&nbsp;</span>'
-                               . $rangeIndicator . '<span class="bar">&nbsp;</span>' . $pageIndicator . '<span class="bar">&nbsp;</span>'
-                               . $next . $last . '<span class="bar">&nbsp;</span>' . $reload . '</div>'
+                       $titleColumn => '
+                               <nav>
+                                       <ul class="pagination">
+                                               ' . $first . '
+                                               ' . $previous . '
+                                               ' . $rangeIndicator . '
+                                               ' . $pageIndicator . '
+                                               ' . $next . '
+                                               ' . $last . '
+                                               ' .     $reload . '
+                                       </ul>
+                               </nav>
+                       '
                );
                return $this->addElement(1, '', $data);
        }
@@ -1165,7 +1164,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                $permsEdit = $table == 'pages' && $localCalcPerms & 2 || $table != 'pages' && $this->calcPerms & 16;
                // "Show" link (only pages and tt_content elements)
                if ($table == 'pages' || $table == 'tt_content') {
-                       $cells['view'] = '<a href="#" onclick="'
+                       $cells['view'] = '<a class="btn" href="#" onclick="'
                                . htmlspecialchars(
                                        BackendUtility::viewOnClick(
                                                ($table === 'tt_content' ? $this->id : $row['uid']),
@@ -1175,8 +1174,6 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                        )
                                ) . '" title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:labels.showPage', TRUE) . '">'
                                . IconUtility::getSpriteIcon('actions-document-view') . '</a>';
-               } elseif (!$this->table) {
-                       $cells['view'] = $this->spaceIcon;
                }
                // "Edit" link: ( Only if permissions to edit the page-record of the content of the parent page ($this->id)
                if ($permsEdit) {
@@ -1184,10 +1181,8 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                        $spriteIcon = $GLOBALS['TCA'][$table]['ctrl']['readOnly']
                                ? IconUtility::getSpriteIcon('actions-document-open-read-only')
                                : IconUtility::getSpriteIcon('actions-document-open');
-                       $cells['edit'] = '<a href="#" onclick="' . htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1))
+                       $cells['edit'] = '<a class="btn" href="#" onclick="' . htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1))
                                . '" title="' . $GLOBALS['LANG']->getLL('edit', TRUE) . '">' . $spriteIcon . '</a>';
-               } elseif (!$this->table) {
-                       $cells['edit'] = $this->spaceIcon;
                }
                // "Move" wizard link for pages/tt_content elements:
                if ($table == 'tt_content' && $permsEdit || $table == 'pages') {
@@ -1196,22 +1191,20 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                        $spriteIcon = $table === 'tt_content'
                                ? IconUtility::getSpriteIcon('actions-document-move')
                                : IconUtility::getSpriteIcon('actions-page-move');
-                       $cells['move'] = '<a href="#" onclick="' . $onClick . '" title="' . $linkTitleLL . '">' . $spriteIcon . '</a>';
-               } elseif (!$this->table) {
-                       $cells['move'] = $this->spaceIcon;
+                       $cells['move'] = '<a class="btn" href="#" onclick="' . $onClick . '" title="' . $linkTitleLL . '">' . $spriteIcon . '</a>';
                }
                // If the extended control panel is enabled OR if we are seeing a single table:
                if ($GLOBALS['SOBE']->MOD_SETTINGS['bigControlPanel'] || $this->table) {
                        // "Info": (All records)
                        $onClick = htmlspecialchars(('top.launchView(\'' . $table . '\', \'' . $row['uid'] . '\'); return false;'));
-                       $cells['viewBig'] = '<a href="#" onclick="' . $onClick . '" title="' . $GLOBALS['LANG']->getLL('showInfo', TRUE) . '">'
+                       $cells['viewBig'] = '<a class="btn" href="#" onclick="' . $onClick . '" title="' . $GLOBALS['LANG']->getLL('showInfo', TRUE) . '">'
                                . IconUtility::getSpriteIcon('actions-document-info') . '</a>';
                        // If the table is NOT a read-only table, then show these links:
                        if (!$GLOBALS['TCA'][$table]['ctrl']['readOnly']) {
                                // "Revert" link (history/undo)
                                $moduleUrl = BackendUtility::getModuleUrl('record_history', array('element' => $table . ':' . $row['uid']));
                                $onClick = htmlspecialchars('return jumpExt(' . GeneralUtility::quoteJSvalue($this->backPath . $moduleUrl) . ',\'#latest\');');
-                               $cells['history'] = '<a href="#" onclick="' . $onClick . '" title="'
+                               $cells['history'] = '<a class="btn" href="#" onclick="' . $onClick . '" title="'
                                        . $GLOBALS['LANG']->getLL('history', TRUE) . '">'
                                        . IconUtility::getSpriteIcon('actions-document-history-open') . '</a>';
                                // Versioning:
@@ -1226,21 +1219,17 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                                $href = htmlspecialchars($this->backPath . BackendUtility::getModuleUrl('web_txversionM1', array(
                                                        'table' => $table, 'uid' => $row['uid']
                                                )));
-                                               $cells['version'] = '<a href="' . $href . '" title="'
+                                               $cells['version'] = '<a class="btn" href="' . $href . '" title="'
                                                        . $GLOBALS['LANG']->getLL('displayVersions', TRUE) . '">'
                                                        . IconUtility::getSpriteIcon(('status-version-' . $versionIcon)) . '</a>';
-                                       } elseif (!$this->table) {
-                                               $cells['version'] = $this->spaceIcon;
                                        }
                                }
                                // "Edit Perms" link:
                                if ($table === 'pages' && $GLOBALS['BE_USER']->check('modules', 'web_perm') && ExtensionManagementUtility::isLoaded('perm')) {
                                        $href = htmlspecialchars((BackendUtility::getModuleUrl('web_perm') . '&id=' . $row['uid'] . '&return_id=' . $row['uid'] . '&edit=1'));
-                                       $cells['perms'] = '<a href="' . $href . '" title="'
+                                       $cells['perms'] = '<a class="btn" href="' . $href . '" title="'
                                                . $GLOBALS['LANG']->getLL('permissions', TRUE) . '">'
                                                . IconUtility::getSpriteIcon('status-status-locked') . '</a>';
-                               } elseif (!$this->table && $GLOBALS['BE_USER']->check('modules', 'web_perm')) {
-                                       $cells['perms'] = $this->spaceIcon;
                                }
                                // "New record after" link (ONLY if the records in the table are sorted by a "sortby"-row
                                // or if default values can depend on previous record):
@@ -1248,20 +1237,18 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                        if ($table !== 'pages' && $this->calcPerms & 16 || $table === 'pages' && $this->calcPerms & 8) {
                                                if ($this->showNewRecLink($table)) {
                                                        $params = '&edit[' . $table . '][' . -($row['_MOVE_PLH'] ? $row['_MOVE_PLH_uid'] : $row['uid']) . ']=new';
-                                                       $cells['new'] = '<a href="#" onclick="' . htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1))
+                                                       $cells['new'] = '<a class="btn" href="#" onclick="' . htmlspecialchars(BackendUtility::editOnClick($params, $this->backPath, -1))
                                                                . '" title="' . $GLOBALS['LANG']->getLL('new' . ($table == 'pages ' ? 'Page' : 'Record'), TRUE) . '">'
                                                                . ($table == 'pages' ? IconUtility::getSpriteIcon('actions-page-new') : IconUtility::getSpriteIcon('actions-document-new')) . '</a>';
                                                }
                                        }
-                               } elseif (!$this->table) {
-                                       $cells['new'] = $this->spaceIcon;
                                }
                                // "Up/Down" links
                                if ($permsEdit && $GLOBALS['TCA'][$table]['ctrl']['sortby'] && !$this->sortField && !$this->searchLevels) {
                                        if (isset($this->currentTable['prev'][$row['uid']])) {
                                                // Up
                                                $params = '&cmd[' . $table . '][' . $row['uid'] . '][move]=' . $this->currentTable['prev'][$row['uid']];
-                                               $cells['moveUp'] = '<a href="#" onclick="'
+                                               $cells['moveUp'] = '<a class="btn" href="#" onclick="'
                                                        . htmlspecialchars('return jumpToUrl(\'' . $GLOBALS['SOBE']->doc->issueCommand($params, -1) . '\');')
                                                        . '" title="' . $GLOBALS['LANG']->getLL('moveUp', TRUE) . '">'
                                                        . IconUtility::getSpriteIcon('actions-move-up') . '</a>';
@@ -1271,16 +1258,13 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                        if ($this->currentTable['next'][$row['uid']]) {
                                                // Down
                                                $params = '&cmd[' . $table . '][' . $row['uid'] . '][move]=' . $this->currentTable['next'][$row['uid']];
-                                               $cells['moveDown'] = '<a href="#" onclick="'
+                                               $cells['moveDown'] = '<a class="btn" href="#" onclick="'
                                                        . htmlspecialchars('return jumpToUrl(\'' . $GLOBALS['SOBE']->doc->issueCommand($params, -1) . '\');')
                                                        . '" title="' . $GLOBALS['LANG']->getLL('moveDown', TRUE) . '">'
                                                        . IconUtility::getSpriteIcon('actions-move-down') . '</a>';
                                        } else {
                                                $cells['moveDown'] = $this->spaceIcon;
                                        }
-                               } elseif (!$this->table) {
-                                       $cells['moveUp'] = $this->spaceIcon;
-                                       $cells['moveDown'] = $this->spaceIcon;
                                }
                                // "Hide/Unhide" links:
                                $hiddenField = $GLOBALS['TCA'][$table]['ctrl']['enablecolumns']['disabled'];
@@ -1291,19 +1275,17 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                ) {
                                        if ($row[$hiddenField]) {
                                                $params = '&data[' . $table . '][' . $rowUid . '][' . $hiddenField . ']=0';
-                                               $cells['hide'] = '<a href="#" onclick="'
+                                               $cells['hide'] = '<a class="btn" href="#" onclick="'
                                                        . htmlspecialchars('return jumpToUrl(\'' . $GLOBALS['SOBE']->doc->issueCommand($params, -1) . '\');')
                                                        . '" title="' . $GLOBALS['LANG']->getLL(('unHide' . ($table == 'pages' ? 'Page' : '')), TRUE) . '">'
                                                        . IconUtility::getSpriteIcon('actions-edit-unhide') . '</a>';
                                        } else {
                                                $params = '&data[' . $table . '][' . $rowUid . '][' . $hiddenField . ']=1';
-                                               $cells['hide'] = '<a href="#" onclick="'
+                                               $cells['hide'] = '<a class="btn" href="#" onclick="'
                                                        . htmlspecialchars('return jumpToUrl(\'' . $GLOBALS['SOBE']->doc->issueCommand($params, -1) . '\');')
                                                        . '" title="' . $GLOBALS['LANG']->getLL(('hide' . ($table == 'pages' ? 'Page' : '')), TRUE) . '">'
                                                        . IconUtility::getSpriteIcon('actions-edit-hide') . '</a>';
                                        }
-                               } elseif (!$this->table) {
-                                       $cells['hide'] = $this->spaceIcon;
                                }
                                // "Delete" link:
                                if ($table == 'pages' && $localCalcPerms & 4 || $table != 'pages' && $this->calcPerms & 16) {
@@ -1334,16 +1316,14 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
 
                                        $icon = IconUtility::getSpriteIcon('actions-edit-' . $actionName);
                                        $linkTitle = $GLOBALS['LANG']->getLL($actionName, TRUE);
-                                       $cells['delete'] = '<a href="#" onclick="' . $onClick . '" title="' . $linkTitle . '">' . $icon . '</a>';
-                               } elseif (!$this->table) {
-                                       $cells['delete'] = $this->spaceIcon;
+                                       $cells['delete'] = '<a class="btn" href="#" onclick="' . $onClick . '" title="' . $linkTitle . '">' . $icon . '</a>';
                                }
                                // "Levels" links: Moving pages into new levels...
                                if ($permsEdit && $table == 'pages' && !$this->searchLevels) {
                                        // Up (Paste as the page right after the current parent page)
                                        if ($this->calcPerms & 8) {
                                                $params = '&cmd[' . $table . '][' . $row['uid'] . '][move]=' . -$this->id;
-                                               $cells['moveLeft'] = '<a href="#" onclick="'
+                                               $cells['moveLeft'] = '<a class="btn" href="#" onclick="'
                                                        . htmlspecialchars('return jumpToUrl(\'' . $GLOBALS['SOBE']->doc->issueCommand($params, -1) . '\');')
                                                        . '" title="' . $GLOBALS['LANG']->getLL('prevLevel', TRUE) . '">'
                                                        . IconUtility::getSpriteIcon('actions-move-left') . '</a>';
@@ -1353,7 +1333,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                                $localCalcPerms = $GLOBALS['BE_USER']->calcPerms(BackendUtility::getRecord('pages', $this->currentTable['prevUid'][$row['uid']]));
                                                if ($localCalcPerms & 8) {
                                                        $params = '&cmd[' . $table . '][' . $row['uid'] . '][move]=' . $this->currentTable['prevUid'][$row['uid']];
-                                                       $cells['moveRight'] = '<a href="#" onclick="'
+                                                       $cells['moveRight'] = '<a class="btn" href="#" onclick="'
                                                                . htmlspecialchars('return jumpToUrl(\'' . $GLOBALS['SOBE']->doc->issueCommand($params, -1) . '\');')
                                                                . '" title="' . $GLOBALS['LANG']->getLL('nextLevel', TRUE) . '">'
                                                                . IconUtility::getSpriteIcon('actions-move-right') . '</a>';
@@ -1363,9 +1343,6 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                        } else {
                                                $cells['moveRight'] = $this->spaceIcon;
                                        }
-                               } elseif (!$this->table) {
-                                       $cells['moveLeft'] = $this->spaceIcon;
-                                       $cells['moveRight'] = $this->spaceIcon;
                                }
                        }
                }
@@ -1399,7 +1376,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                // Compile items into a DIV-element:
                return '
                                                                                        <!-- CONTROL PANEL: ' . $table . ':' . $row['uid'] . ' -->
-                                                                                       <div class="typo3-DBctrl">' . implode('', $cells) . '</div>';
+                                                                                       <div class="btn-group" role="group">' . implode('', $cells) . '</div>';
        }
 
        /**
@@ -1429,11 +1406,11 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                                $cells['copy'] = $this->spaceIcon;
                                $cells['cut'] = $this->spaceIcon;
                        } else {
-                               $cells['copy'] = '<a href="#" onclick="'
+                               $cells['copy'] = '<a class="btn" href="#" onclick="'
                                        . htmlspecialchars('return jumpSelf(\'' . $this->clipObj->selUrlDB($table, $row['uid'], 1, ($isSel == 'copy'), array('returnUrl' => '')) . '\');')
                                        . '" title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.copy', TRUE) . '">'
                                        . (!$isSel == 'copy' ? IconUtility::getSpriteIcon('actions-edit-copy') : IconUtility::getSpriteIcon('actions-edit-copy-release')) . '</a>';
-                               $cells['cut'] = '<a href="#" onclick="'
+                               $cells['cut'] = '<a class="btn" href="#" onclick="'
                                        . htmlspecialchars('return jumpSelf(\'' . $this->clipObj->selUrlDB($table, $row['uid'], 0, ($isSel == 'cut'), array('returnUrl' => '')) . '\');')
                                        . '" title="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.xlf:cm.cut', TRUE) . '">'
                                        . (!$isSel == 'cut' ? IconUtility::getSpriteIcon('actions-edit-cut') : IconUtility::getSpriteIcon('actions-edit-cut-release')) . '</a>';
@@ -1456,8 +1433,8 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                        // Adding the checkbox to the panel:
                        $cells['select'] = $isL10nOverlay
                                ? $this->spaceIcon
-                               : '<input type="hidden" name="CBH[' . $n . ']" value="0" /><input type="checkbox"'
-                                       . ' name="CBC[' . $n . ']" value="1" class="smallCheckboxes"' . $checked . ' />';
+                               : '<div class="btn-checkbox-holder"><input type="hidden" name="CBH[' . $n . ']" value="0" /><input type="checkbox"'
+                                       . ' name="CBC[' . $n . ']" value="1" class="smallCheckboxes btn-checkbox"' . $checked . ' /><span class="btn"><span class="t3-icon fa"></span></span></div>';
                }
                // Now, looking for selected elements from the current table:
                $elFromTable = $this->clipObj->elFromTable($table);
@@ -1465,7 +1442,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                        // IF elements are found and they can be individually ordered, then add a "paste after" icon:
                        $cells['pasteAfter'] = $isL10nOverlay
                                ? $this->spaceIcon
-                               : '<a href="' . htmlspecialchars($this->clipObj->pasteUrl($table, -$row['uid'])) . '" onclick="'
+                               : '<a class="btn" href="' . htmlspecialchars($this->clipObj->pasteUrl($table, -$row['uid'])) . '" onclick="'
                                        . htmlspecialchars(('return ' . $this->clipObj->confirmMsg($table, $row, 'after', $elFromTable)))
                                        . '" title="' . $GLOBALS['LANG']->getLL('clip_pasteAfter', TRUE) . '">'
                                        . IconUtility::getSpriteIcon('actions-document-paste-after') . '</a>';
@@ -1473,7 +1450,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                // Now, looking for elements in general:
                $elFromTable = $this->clipObj->elFromTable('');
                if ($table == 'pages' && count($elFromTable)) {
-                       $cells['pasteInto'] = '<a href="' . htmlspecialchars($this->clipObj->pasteUrl('', $row['uid']))
+                       $cells['pasteInto'] = '<a class="btn" href="' . htmlspecialchars($this->clipObj->pasteUrl('', $row['uid']))
                                . '" onclick="' . htmlspecialchars('return ' . $this->clipObj->confirmMsg($table, $row, 'into', $elFromTable))
                                . '" title="' . $GLOBALS['LANG']->getLL('clip_pasteInto', TRUE) . '">'
                                . IconUtility::getSpriteIcon('actions-document-paste-into') . '</a>';
@@ -1496,7 +1473,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                }
                // Compile items into a DIV-element:
                return '                                                        <!-- CLIPBOARD PANEL: ' . $table . ':' . $row['uid'] . ' -->
-                                                                                       <div class="typo3-clipCtrl">' . implode('', $cells) . '</div>';
+                                                                                       <div class="btn-group" role="group">' . implode('', $cells) . '</div>';
        }
 
        /**
@@ -1644,7 +1621,7 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                if ($warning) {
                        $onClickEvent = 'if (confirm(' . GeneralUtility::quoteJSvalue($warning) . ')){' . $onClickEvent . '}';
                }
-               return '<a href="#" onclick="' . htmlspecialchars(($onClickEvent . 'return false;')) . '">' . $string . '</a>';
+               return '<a class="btn" href="#" onclick="' . htmlspecialchars(($onClickEvent . 'return false;')) . '">' . $string . '</a>';
        }
 
        /**
@@ -1775,8 +1752,6 @@ class DatabaseRecordList extends AbstractDatabaseRecordList {
                        '_PATH_',
                        '_REF_',
                        '_CONTROL_',
-                       '_AFTERCONTROL_',
-                       '_AFTERREF_',
                        '_CLIPBOARD_',
                        '_LOCALIZATION_',
                        '_LOCALIZATION_b'
index bf6ac37..bb379f4 100644 (file)
@@ -35,15 +35,18 @@ class IconStyleModifier {
                't3-icon t3-icon-actions t3-icon-actions-document t3-icon-document-view' => 'fa-desktop',
                't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-add' => 'fa-plus-circle',
                't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-copy' => 'fa-copy',
+               't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-copy-release' => 'fa-copy danger',
                't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-cut' => 'fa-cut',
+               't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-cut-release' => 'fa-cut danger',
                't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-delete' => 'fa-trash',
                't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-download' => 'fa-download',
-               't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-hide' => 'fa-circle',
+               't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-hide' => 'fa-toggle-on',
                't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-paste' => 'fa-paste',
+               't3-icon t3-icon-actions t3-icon-actions-document t3-icon-document-paste-after' => 'fa-caret-square-o-down',
                't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-pick-date' => 'fa-calendar',
                't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-rename' => 'fa-quote-right',
                't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-undo' => 'fa-undo',
-               't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-unhide' => 'fa-circle-thin',
+               't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-unhide' => 'fa-toggle-off warning',
                't3-icon t3-icon-actions t3-icon-actions-edit t3-icon-edit-upload' => 'fa-upload',
                't3-icon t3-icon-actions t3-icon-actions-input t3-icon-input-clear' => 'fa-times-circle',
                // TODO: t3-btn-* is still used in FormEngine.js refactor to use data attributes in HTML
@@ -77,14 +80,14 @@ class IconStyleModifier {
                't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-go-back' => 'fa-angle-double-left',
                't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-go-forward' => 'fa-angle-double-right',
                't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-go-up' => 'fa-level-up',
-               't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-list-collapse collapseIcon' => 'fa-angle-double-up',
-               't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-list-expand collapseIcon' => 'fa-angle-double-down',
+               't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-list-collapse collapseIcon' => 'fa-chevron-up',
+               't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-list-expand collapseIcon' => 'fa-chevron-down',
                't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-paging-first' => 'fa-step-backward',
                't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-paging-last' => 'fa-step-forward',
                't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-paging-next' => 'fa-arrow-right',
                't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-paging-previous' => 'fa-arrow-left',
-               't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-table-expand' => 'fa-angle-double-right',
-               't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-table-collapse' => 'fa-angle-double-left',
+               't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-table-expand' => 'fa-chevron-right',
+               't3-icon t3-icon-actions t3-icon-actions-view t3-icon-view-table-collapse' => 'fa-chevron-left',
                't3-icon t3-icon-actions t3-icon-actions-window t3-icon-window-open' => 'fa-arrows-alt',
                't3-icon t3-icon-actions t3-icon-system-extension-import' => 'fa-cloud-download',
                't3-icon t3-icon-apps t3-icon-apps-toolbar t3-icon-toolbar-menu-actions' => 'fa-cog',
@@ -108,6 +111,7 @@ class IconStyleModifier {
                't3-icon t3-icon-status t3-icon-status-warning t3-icon-warning-lock' => 'fa-lock',
                't3-icon t3-icon-actions t3-icon-actions-move t3-icon-move-move sortableHandle' => 'fa-reorder sortableHandle',
                't3-icon t3-icon-actions t3-icon-actions-move t3-icon-move-move' => 'fa-reorder',
+               't3-icon t3-icon-actions t3-icon-actions-document t3-icon-document-paste-into' => 'fa-clipboard',
        );
 
        /**
diff --git a/typo3/sysext/t3skin/Resources/Private/Styles/TYPO3/_element_pagination.less b/typo3/sysext/t3skin/Resources/Private/Styles/TYPO3/_element_pagination.less
new file mode 100644 (file)
index 0000000..9bbb91e
--- /dev/null
@@ -0,0 +1,23 @@
+/**
+ * This file is part of the TYPO3 CMS project.
+ *
+ * It is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License, either version 2
+ * of the License, or any later version.
+ *
+ * For the full copyright and license information, please read the
+ * LICENSE.txt file that was distributed with this source code.
+ *
+ * The TYPO3 project - inspiring people to share!
+ */
+
+.pagination {
+    .t3-icon {
+        margin: 0;
+        text-align: center;
+    }
+    .paginator-input {
+        display: inline-block;
+        margin: -2px 0;
+    }
+}
\ No newline at end of file
diff --git a/typo3/sysext/t3skin/Resources/Private/Styles/TYPO3/_element_panel.less b/typo3/sysext/t3skin/Resources/Private/Styles/TYPO3/_element_panel.less
new file mode 100644 (file)
index 0000000..8f4a249
--- /dev/null
@@ -0,0 +1,23 @@
+/**
+ * This file is part of the TYPO3 CMS project.
+ *
+ * It is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License, either version 2
+ * of the License, or any later version.
+ *
+ * For the full copyright and license information, please read the
+ * LICENSE.txt file that was distributed with this source code.
+ *
+ * The TYPO3 project - inspiring people to share!
+ */
+
+.panel {
+    margin: 3em 0;
+    .panel-heading {
+        font-weight: bold;
+    }
+    .table-fit {
+        border: 0;
+        margin: 0;
+    }
+}
\ No newline at end of file
index 0638d8a..8415154 100644 (file)
        padding-left: 22px;
 }
 
-table {
-       background: transparent;
-}
-
 /**
  * Common style for tables
  *
@@ -51,54 +47,16 @@ table {
  * </table>
  */
 
-.table {
-
-       > thead,
-       > tbody {
-               tr {
-                       th:first-child,
-                       th:last-child,
-                       td:first-child,
-                       td:last-child {
-                               padding-left: 12px;
-                       }
-               }
-       }
-
-       > thead {
-               > tr {
-                       > th,
-                       > td {
-                               border-bottom: 1px solid #666;
-                       }
-               }
-       }
 
-       > tbody {
-               > tr {
-                       > td {
-                               background-color: @table-bg;
-                       }
-               }
-               > tr:hover {
-                       > td {
-                               transition: background-color 100ms linear;
-
-                               a {
-                                       text-decoration: underline;
-                               }
-                       }
-               }
-       }
-}
-
-// TYPO3 standard <table class="t3-table">
-table.t3-table {
-       .table;
-       .table-striped;
-       .table-hover;
+/**
+ * Copy table stylings from bootstrap
+ **/
+.t3-table {
+    .table();
+    .table-striped();
+    .table-hover();
 
-       // .active
+    // .active
        > thead > tr,
        > tbody > tr,
        > tfoot > tr {
@@ -109,10 +67,9 @@ table.t3-table {
                        background-color: @table-bg-active;
                }
        }
-
-       > tbody > tr {
-               > td.active:hover,
-               > th.active:hover,
+    > tbody > tr {
+    > td.active:hover,
+    > th.active:hover,
                &.active:hover > td,
                &:hover > .active,
                &.active:hover > th {
@@ -120,7 +77,7 @@ table.t3-table {
                }
        }
 
-       // .success
+    // .success
        > thead > tr,
        > tbody > tr,
        > tfoot > tr {
@@ -131,7 +88,6 @@ table.t3-table {
                        background-color: @state-success-bg;
                }
        }
-
        > tbody > tr {
                > td.success:hover,
                > th.success:hover,
@@ -153,7 +109,6 @@ table.t3-table {
                        background-color: @state-info-bg;
                }
        }
-
        > tbody > tr {
                > td.info:hover,
                > th.info:hover,
@@ -175,7 +130,6 @@ table.t3-table {
                        background-color: @state-warning-bg;
                }
        }
-
        > tbody > tr {
                > td.warning:hover,
                > th.warning:hover,
@@ -197,7 +151,209 @@ table.t3-table {
                        background-color: @state-danger-bg;
                }
        }
+       > tbody > tr {
+               > td.danger:hover,
+               > th.danger:hover,
+               &.danger:hover > td,
+               &:hover > .danger,
+               &.danger:hover > th {
+                       background-color: darken(@state-danger-bg, 5%);
+               }
+       }
+}
+
+/**
+ * Default table styling
+ **/
+.table,
+.t3-table {
+    margin-bottom: 1.5em;
+    * {
+        box-sizing: border-box;
+    }
+    > thead > tr > th,
+    > tbody > tr > th,
+    > tfoot > tr > th,
+    > thead > tr > td,
+    > tbody > tr > td,
+    > tfoot > tr > td {
+        vertical-align: middle;
+    }
+    > thead > tr {
+        background-color: darken(@table-bg,4%);
+        th,
+        td {
+            border-bottom: 1px solid @table-border-color;
+            i {
+                font-weight: normal;
+            }
+        }
+    }
+    .btn {
+        .btn-sm();
+        color: #333;
+        background-color: darken(@table-bg-accent,10%);
+        border-color: darken(@table-bg-accent,20%);
+        margin-top: -2px;
+        margin-bottom: -2px;
+        &:hover {
+            border-color: darken(@table-bg-accent,30%);
+            background-color: darken(@table-bg-accent,20%);
+        }
+        .t3-icon {
+            margin: 0;
+        }
+        &.btn-danger {
+            .btn-danger();
+        }
+        &.btn-success {
+            .btn-success();
+        }
+        &.btn-warning {
+            .btn-warning();
+        }
+        &.btn-info {
+            .btn-info();
+        }
+        &.btn-default {
+            .btn-default();
+        }
+        &.btn-primary {
+            .btn-primary();
+        }
+    }
+    .btn-group {
+        font-size: 0;
+        .btn {
+            font-size: 12px;
+            float: none;
+        }
+    }
+    .btn-checkbox-holder {
+        position: relative;
+        display: inline-block;
+        .btn-checkbox {
+            position: absolute;
+            top: 0;
+            height: 100%;
+            width: 100%;
+            opacity: 0;
+            z-index: 10;
+        }
+        input[type=checkbox] + .btn {
+            .t3-icon:before {
+                content: "\f096";
+            }
+        }
+        input[type=checkbox]:checked + .btn {
+            .btn-primary();
+            .t3-icon:before {
+                content: "\f00c";
+            }
+        }
+    }
+       .btn-group {
+               .btn + .btn-checkbox-holder {
+            margin-left: -1px;
+                       border-top-left-radius: 0;
+                       border-bottom-left-radius: 0;
+               }
+       }
+    .pagination {
+        margin: 0;
+    }
+    .col-icon {
+        .t3-icon {
+            margin: 0;
+        }
+        text-align: center;
+    }
+    .col-title {
+        width: 95%;
+    }
+    .col-control,
+    .col-clipboard {
+        white-space: nowrap;
+        text-align: right;
+    }
+}
 
+
+// TYPO3 standard <table class="t3-table">
+.t3-table {
+
+
+       // .success
+       > thead > tr,
+       > tbody > tr,
+       > tfoot > tr {
+               > td.success,
+               > th.success,
+               &.success > td,
+               &.success > th {
+                       background-color: @state-success-bg;
+               }
+       }
+       > tbody > tr {
+               > td.success:hover,
+               > th.success:hover,
+               &.success:hover > td,
+               &:hover > .success,
+               &.success:hover > th {
+                       background-color: darken(@state-success-bg, 5%);
+               }
+       }
+       // .info
+       > thead > tr,
+       > tbody > tr,
+       > tfoot > tr {
+               > td.info,
+               > th.info,
+               &.info > td,
+               &.info > th {
+                       background-color: @state-info-bg;
+               }
+       }
+       > tbody > tr {
+               > td.info:hover,
+               > th.info:hover,
+               &.info:hover > td,
+               &:hover > .info,
+               &.info:hover > th {
+                       background-color: darken(@state-info-bg, 5%);
+               }
+       }
+       // .warning
+       > thead > tr,
+       > tbody > tr,
+       > tfoot > tr {
+               > td.warning,
+               > th.warning,
+               &.warning > td,
+               &.warning > th {
+                       background-color: @state-warning-bg;
+               }
+       }
+       > tbody > tr {
+               > td.warning:hover,
+               > th.warning:hover,
+               &.warning:hover > td,
+               &:hover > .warning,
+               &.warning:hover > th {
+                       background-color: darken(@state-warning-bg, 5%);
+               }
+       }
+       // .danger
+       > thead > tr,
+       > tbody > tr,
+       > tfoot > tr {
+               > td.danger,
+               > th.danger,
+               &.danger > td,
+               &.danger > th {
+                       background-color: @state-danger-bg;
+               }
+       }
        > tbody > tr {
                > td.danger:hover,
                > th.danger:hover,
@@ -207,5 +363,56 @@ table.t3-table {
                        background-color: darken(@state-danger-bg, 5%);
                }
        }
+}
+
 
+/**
+ * Fits the table in the viewport and makes overflow possible
+ **/
+.table-fit {
+    width: 100%;
+    margin-bottom: 1.5em;
+    overflow-x: auto;
+    overflow-y: hidden;
+    -webkit-overflow-scrolling: touch;
+    -ms-overflow-style: -ms-autohiding-scrollbar;
+    border: 1px solid #ddd;
+    > .table,
+    > .t3-table {
+        margin-top: 0;
+        margin-bottom: 0;
+        > thead > tr > th,
+        > tbody > tr > th,
+        > tfoot > tr > th,
+        > thead > tr > td,
+        > tbody > tr > td,
+        > tfoot > tr > td {
+            white-space: nowrap;
+        }
+    }
+    > .table-bordered {
+        border: 0;
+    }
+    > .table-bordered > thead > tr > th:first-child,
+    > .table-bordered > tbody > tr > th:first-child,
+    > .table-bordered > tfoot > tr > th:first-child,
+    > .table-bordered > thead > tr > td:first-child,
+    > .table-bordered > tbody > tr > td:first-child,
+    > .table-bordered > tfoot > tr > td:first-child {
+        border-left: 0;
+    }
+    > .table-bordered > thead > tr > th:last-child,
+    > .table-bordered > tbody > tr > th:last-child,
+    > .table-bordered > tfoot > tr > th:last-child,
+    > .table-bordered > thead > tr > td:last-child,
+    > .table-bordered > tbody > tr > td:last-child,
+    > .table-bordered > tfoot > tr > td:last-child {
+        border-right: 0;
+    }
+    > .table-bordered > tbody > tr:last-child > th,
+    > .table-bordered > tfoot > tr:last-child > th,
+    > .table-bordered > tbody > tr:last-child > td,
+    > .table-bordered > tfoot > tr:last-child > td {
+        border-bottom: 0;
+    }
 }
\ No newline at end of file
index 8eb7d8f..6d59d8d 100644 (file)
@@ -105,11 +105,6 @@ img.absmiddle {
 /* - - - - - - - - - - - - - - - - - - - - -
 TYPO3 styles for basic elements
 - - - - - - - - - - - - - - - - - - - - - */
-
-tr:hover a {
-       text-decoration: underline;
-}
-
 tr:hover .t3-page-ce a,
 tr:hover .x-tree a {
        text-decoration: none;
index 8489acd..d3f4b6d 100644 (file)
@@ -69,15 +69,6 @@ input[type="checkbox"] {
 Buttons
 - - - - - - - - - - - - - - - - - - - - - */
 
-.btn {
-       text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
-       padding: ceil(@padding-base-vertical / 2) ceil(@padding-base-horizontal * 2);
-}
-
-.btn:hover {
-       transition: background-color 0.1s ease;
-}
-
 /* Deprecated HTML5 definitions */
 .t3-button,
 button,
index dd3fb5a..7d7dc3d 100644 (file)
 @table-condensed-cell-padding:  6px; /* Not supported yet in CMS */
 
 //** Default background color used for all tables.
-@table-bg:                      #f9f9f9;
+@table-bg:                      #fafafa;
 //** Background color used for `.table-striped`.
-@table-bg-accent:               darken(@table-bg, 2%);
+@table-bg-accent:               darken(@table-bg, 1%);
 //** Background color used for `.table-hover`.
-@table-bg-hover:                darken(@table-bg, 10%);
+@table-bg-hover:                darken(@table-bg, 5%);
 @table-bg-active:               @table-bg-hover;
 
 //** Border color for table and cell borders.
-@table-border-color:            #fff;
+@table-border-color:            #ccc;
 
 
 //== Buttons
 
 @btn-default-color:              #fff;
 @btn-default-bg:                 rgb(130, 130, 130);
-@btn-default-border:             transparent;
+@btn-default-border:             darken(@btn-default-bg, 5%);
 
 @btn-primary-color:              #fff;
 @btn-primary-bg:                 @brand-primary;
 //
 //## Define colors for form feedback states and, by default, alerts.
 
-@state-success-text:             rgb(50, 50, 50);
+@state-success-text:             @brand-success;
 @state-success-bg:               lighten(@brand-success, 45%);
 @state-success-border:           @brand-success;
 
-@state-info-text:                rgb(50, 50, 50);
+@state-info-text:                @brand-info;
 @state-info-bg:                  lighten(@brand-info, 35%);
 @state-info-border:              @brand-info;
 
-@state-warning-text:             rgb(50, 50, 50);
+@state-warning-text:             @brand-warning;
 @state-warning-bg:               lighten(@brand-warning, 35%);
 @state-warning-border:           @brand-warning;
 
-@state-danger-text:              rgb(50, 50, 50);
+@state-danger-text:              @brand-danger;
 @state-danger-bg:                lighten(@brand-danger, 35%);
 @state-danger-border:            @brand-danger;
 
 // TYPO3
-@state-notice-text:              rgb(50, 50, 50);
+@state-notice-text:              rgb(140, 140, 140);
 @state-notice-bg:                lighten(rgb(140, 140, 140), 40%);
 @state-notice-border:            rgb(140, 140, 140);
 
 @alert-link-font-weight:      bold;
 
 @alert-success-bg:            @state-success-bg;
-@alert-success-text:          @state-success-text;
+@alert-success-text:          rgb(50,50,50);
 @alert-success-border:        @state-success-border;
 
 @alert-info-bg:               @state-info-bg;
-@alert-info-text:             @state-info-text;
+@alert-info-text:             rgb(50,50,50);
 @alert-info-border:           @state-info-border;
 
 @alert-warning-bg:            @state-warning-bg;
-@alert-warning-text:          @state-warning-text;
+@alert-warning-text:          rgb(50,50,50);
 @alert-warning-border:        @state-warning-border;
 
 @alert-danger-bg:             @state-danger-bg;
-@alert-danger-text:           @state-danger-text;
+@alert-danger-text:           rgb(50,50,50);
 @alert-danger-border:         @state-danger-border;
 
 
 //** Horizontal offset for forms and lists.
 @component-offset-horizontal: 180px;
 //** Text muted color
-@text-muted:                  lighten(@text-color, 45%);
+@text-muted:                  lighten(@text-color,45%);
 //** Abbreviations and acronyms border color
 @abbr-border-color:           @gray-light;
 //** Headings small color
index 29b014c..8280bc4 100644 (file)
@@ -41,7 +41,7 @@
 @import "@{composer-package-directory-prefix}/twbs/bootstrap/less/navs.less";
 @import "@{composer-package-directory-prefix}/twbs/bootstrap/less/navbar.less";
 // @import "@{composer-package-directory-prefix}/twbs/bootstrap/less/breadcrumbs.less";
-// @import "@{composer-package-directory-prefix}/twbs/bootstrap/less/pagination.less";
+@import "@{composer-package-directory-prefix}/twbs/bootstrap/less/pagination.less";
 // @import "@{composer-package-directory-prefix}/twbs/bootstrap/less/pager.less";
 @import "@{composer-package-directory-prefix}/twbs/bootstrap/less/labels.less";
 @import "@{composer-package-directory-prefix}/twbs/bootstrap/less/badges.less";
 @import "TYPO3/_element_spinner.less";
 @import "TYPO3/_element_tab.less";
 @import "TYPO3/_element_table.less";
+@import "TYPO3/_element_panel.less";
 @import "TYPO3/_element_tceforms.less";
 @import "TYPO3/_element_tree.less";
+@import "TYPO3/_element_pagination.less";
 @import "TYPO3/_fonts.less";
 @import "TYPO3/_login_screen.less";
 @import "TYPO3/_main_body.less";
index 959c350..e051f94 100644 (file)
@@ -284,28 +284,28 @@ a.text-primary:hover {
   color: #005db3;
 }
 .text-success {
-  color: #323232;
+  color: #1eb941;
 }
 a.text-success:hover {
-  color: #181818;
+  color: #178d32;
 }
 .text-info {
-  color: #323232;
+  color: #41b4dc;
 }
 a.text-info:hover {
-  color: #181818;
+  color: #249cc6;
 }
 .text-warning {
-  color: #323232;
+  color: #f07814;
 }
 a.text-warning:hover {
-  color: #181818;
+  color: #c4600d;
 }
 .text-danger {
-  color: #323232;
+  color: #c83c3c;
 }
 a.text-danger:hover {
-  color: #181818;
+  color: #a32e2e;
 }
 .bg-primary {
   color: #fff;
@@ -1178,7 +1178,7 @@ pre code {
   }
 }
 table {
-  background-color: #f9f9f9;
+  background-color: #fafafa;
 }
 caption {
   padding-top: 6px;
@@ -1203,11 +1203,11 @@ th {
   padding: 6px;
   line-height: 1.5;
   vertical-align: top;
-  border-top: 1px solid #ffffff;
+  border-top: 1px solid #cccccc;
 }
 .table > thead > tr > th {
   vertical-align: bottom;
-  border-bottom: 2px solid #ffffff;
+  border-bottom: 2px solid #cccccc;
 }
 .table > caption + thead > tr:first-child > th,
 .table > colgroup + thead > tr:first-child > th,
@@ -1218,7 +1218,7 @@ th {
   border-top: 0;
 }
 .table > tbody + tbody {
-  border-top: 2px solid #ffffff;
+  border-top: 2px solid #cccccc;
 }
 .table .table {
   background-color: #ffffff;
@@ -1232,7 +1232,7 @@ th {
   padding: 6px;
 }
 .table-bordered {
-  border: 1px solid #ffffff;
+  border: 1px solid #cccccc;
 }
 .table-bordered > thead > tr > th,
 .table-bordered > tbody > tr > th,
@@ -1240,17 +1240,17 @@ th {
 .table-bordered > thead > tr > td,
 .table-bordered > tbody > tr > td,
 .table-bordered > tfoot > tr > td {
-  border: 1px solid #ffffff;
+  border: 1px solid #cccccc;
 }
 .table-bordered > thead > tr > th,
 .table-bordered > thead > tr > td {
   border-bottom-width: 2px;
 }
 .table-striped > tbody > tr:nth-child(odd) {
-  background-color: #f4f4f4;
+  background-color: #f7f7f7;
 }
 .table-hover > tbody > tr:hover {
-  background-color: #e0e0e0;
+  background-color: #ededed;
 }
 table col[class*="col-"] {
   position: static;
@@ -1275,14 +1275,14 @@ table th[class*="col-"] {
 .table > thead > tr.active > th,
 .table > tbody > tr.active > th,
 .table > tfoot > tr.active > th {
-  background-color: #e0e0e0;
+  background-color: #ededed;
 }
 .table-hover > tbody > tr > td.active:hover,
 .table-hover > tbody > tr > th.active:hover,
 .table-hover > tbody > tr.active:hover > td,
 .table-hover > tbody > tr:hover > .active,
 .table-hover > tbody > tr.active:hover > th {
-  background-color: #d3d3d3;
+  background-color: #e0e0e0;
 }
 .table > thead > tr > td.success,
 .table > tbody > tr > td.success,
@@ -1378,7 +1378,7 @@ table th[class*="col-"] {
     margin-bottom: 13.5px;
     overflow-y: hidden;
     -ms-overflow-style: -ms-autohiding-scrollbar;
-    border: 1px solid #ffffff;
+    border: 1px solid #cccccc;
   }
   .table-responsive > .table {
     margin-bottom: 0;
@@ -1693,25 +1693,25 @@ select[multiple].form-group-lg .form-control {
 .has-success.checkbox label,
 .has-success.radio-inline label,
 .has-success.checkbox-inline label {
-  color: #323232;
+  color: #1eb941;
 }
 .has-success .form-control {
-  border-color: #323232;
+  border-color: #1eb941;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
 }
 .has-success .form-control:focus {
-  border-color: #181818;
-  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #656565;
-  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #656565;
+  border-color: #178d32;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #59e478;
+  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #59e478;
 }
 .has-success .input-group-addon {
-  color: #323232;
-  border-color: #323232;
+  color: #1eb941;
+  border-color: #1eb941;
   background-color: #c7f6d1;
 }
 .has-success .form-control-feedback {
-  color: #323232;
+  color: #1eb941;
 }
 .has-warning .help-block,
 .has-warning .control-label,
@@ -1723,25 +1723,25 @@ select[multiple].form-group-lg .form-control {
 .has-warning.checkbox label,
 .has-warning.radio-inline label,
 .has-warning.checkbox-inline label {
-  color: #323232;
+  color: #f07814;
 }
 .has-warning .form-control {
-  border-color: #323232;
+  border-color: #f07814;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
 }
 .has-warning .form-control:focus {
-  border-color: #181818;
-  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #656565;
-  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #656565;
+  border-color: #c4600d;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f6af74;
+  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #f6af74;
 }
 .has-warning .input-group-addon {
-  color: #323232;
-  border-color: #323232;
+  color: #f07814;
+  border-color: #f07814;
   background-color: #fbd8bc;
 }
 .has-warning .form-control-feedback {
-  color: #323232;
+  color: #f07814;
 }
 .has-error .help-block,
 .has-error .control-label,
@@ -1753,25 +1753,25 @@ select[multiple].form-group-lg .form-control {
 .has-error.checkbox label,
 .has-error.radio-inline label,
 .has-error.checkbox-inline label {
-  color: #323232;
+  color: #c83c3c;
 }
 .has-error .form-control {
-  border-color: #323232;
+  border-color: #c83c3c;
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
 }
 .has-error .form-control:focus {
-  border-color: #181818;
-  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #656565;
-  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #656565;
+  border-color: #a32e2e;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #de8c8c;
+  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #de8c8c;
 }
 .has-error .input-group-addon {
-  color: #323232;
-  border-color: #323232;
+  color: #c83c3c;
+  border-color: #c83c3c;
   background-color: #efc7c7;
 }
 .has-error .form-control-feedback {
-  color: #323232;
+  color: #c83c3c;
 }
 .has-feedback label ~ .form-control-feedback {
   top: 23px;
@@ -1927,7 +1927,7 @@ fieldset[disabled] .btn {
 .btn-default {
   color: #ffffff;
   background-color: #828282;
-  border-color: transparent;
+  border-color: #757575;
 }
 .btn-default:hover,
 .btn-default:focus,
@@ -1937,7 +1937,7 @@ fieldset[disabled] .btn {
 .open > .dropdown-toggle.btn-default {
   color: #ffffff;
   background-color: #696969;
-  border-color: rgba(0, 0, 0, 0);
+  border-color: #575757;
 }
 .btn-default:active,
 .btn-default.active,
@@ -1963,7 +1963,7 @@ fieldset[disabled] .btn-default:active,
 .btn-default[disabled].active,
 fieldset[disabled] .btn-default.active {
   background-color: #828282;
-  border-color: transparent;
+  border-color: #757575;
 }
 .btn-default .badge {
   color: #828282;
@@ -3475,6 +3475,99 @@ fieldset[disabled] .navbar-inverse .btn-link:hover,
 fieldset[disabled] .navbar-inverse .btn-link:focus {
   color: #4d4d4d;
 }
+.pagination {
+  display: inline-block;
+  padding-left: 0;
+  margin: 18px 0;
+  border-radius: 2px;
+}
+.pagination > li {
+  display: inline;
+}
+.pagination > li > a,
+.pagination > li > span {
+  position: relative;
+  float: left;
+  padding: 6px 6px;
+  line-height: 1.5;
+  text-decoration: none;
+  color: #212424;
+  background-color: #ffffff;
+  border: 1px solid #dddddd;
+  margin-left: -1px;
+}
+.pagination > li:first-child > a,
+.pagination > li:first-child > span {
+  margin-left: 0;
+  border-bottom-left-radius: 2px;
+  border-top-left-radius: 2px;
+}
+.pagination > li:last-child > a,
+.pagination > li:last-child > span {
+  border-bottom-right-radius: 2px;
+  border-top-right-radius: 2px;
+}
+.pagination > li > a:hover,
+.pagination > li > span:hover,
+.pagination > li > a:focus,
+.pagination > li > span:focus {
+  color: #000000;
+  background-color: #f5f5f5;
+  border-color: #dddddd;
+}
+.pagination > .active > a,
+.pagination > .active > span,
+.pagination > .active > a:hover,
+.pagination > .active > span:hover,
+.pagination > .active > a:focus,
+.pagination > .active > span:focus {
+  z-index: 2;
+  color: #ffffff;
+  background-color: #0078e6;
+  border-color: #0078e6;
+  cursor: default;
+}
+.pagination > .disabled > span,
+.pagination > .disabled > span:hover,
+.pagination > .disabled > span:focus,
+.pagination > .disabled > a,
+.pagination > .disabled > a:hover,
+.pagination > .disabled > a:focus {
+  color: #d7d7d7;
+  background-color: #ffffff;
+  border-color: #dddddd;
+  cursor: not-allowed;
+}
+.pagination-lg > li > a,
+.pagination-lg > li > span {
+  padding: 12px 12px;
+  font-size: 15px;
+}
+.pagination-lg > li:first-child > a,
+.pagination-lg > li:first-child > span {
+  border-bottom-left-radius: 2px;
+  border-top-left-radius: 2px;
+}
+.pagination-lg > li:last-child > a,
+.pagination-lg > li:last-child > span {
+  border-bottom-right-radius: 2px;
+  border-top-right-radius: 2px;
+}
+.pagination-sm > li > a,
+.pagination-sm > li > span {
+  padding: 4px 4px;
+  font-size: 11px;
+}
+.pagination-sm > li:first-child > a,
+.pagination-sm > li:first-child > span {
+  border-bottom-left-radius: 2px;
+  border-top-left-radius: 2px;
+}
+.pagination-sm > li:last-child > a,
+.pagination-sm > li:last-child > span {
+  border-bottom-right-radius: 2px;
+  border-top-right-radius: 2px;
+}
 .label {
   display: inline;
   padding: .2em .6em .3em;
@@ -3882,92 +3975,92 @@ a.list-group-item:focus {
   color: #b3dbff;
 }
 .list-group-item-success {
-  color: #323232;
+  color: #1eb941;
   background-color: #c7f6d1;
 }
 a.list-group-item-success {
-  color: #323232;
+  color: #1eb941;
 }
 a.list-group-item-success .list-group-item-heading {
   color: inherit;
 }
 a.list-group-item-success:hover,
 a.list-group-item-success:focus {
-  color: #323232;
+  color: #1eb941;
   background-color: #b1f2c0;
 }
 a.list-group-item-success.active,
 a.list-group-item-success.active:hover,
 a.list-group-item-success.active:focus {
   color: #fff;
-  background-color: #323232;
-  border-color: #323232;
+  background-color: #1eb941;
+  border-color: #1eb941;
 }
 .list-group-item-info {
-  color: #323232;
+  color: #41b4dc;
   background-color: #d8f0f8;
 }
 a.list-group-item-info {
-  color: #323232;
+  color: #41b4dc;
 }
 a.list-group-item-info .list-group-item-heading {
   color: inherit;
 }
 a.list-group-item-info:hover,
 a.list-group-item-info:focus {
-  color: #323232;
+  color: #41b4dc;
   background-color: #c2e7f4;
 }
 a.list-group-item-info.active,
 a.list-group-item-info.active:hover,
 a.list-group-item-info.active:focus {
   color: #fff;
-  background-color: #323232;
-  border-color: #323232;
+  background-color: #41b4dc;
+  border-color: #41b4dc;
 }
 .list-group-item-warning {
-  color: #323232;
+  color: #f07814;
   background-color: #fbd8bc;
 }
 a.list-group-item-warning {
-  color: #323232;
+  color: #f07814;
 }
 a.list-group-item-warning .list-group-item-heading {
   color: inherit;
 }
 a.list-group-item-warning:hover,
 a.list-group-item-warning:focus {
-  color: #323232;
+  color: #f07814;
   background-color: #f9cba4;
 }
 a.list-group-item-warning.active,
 a.list-group-item-warning.active:hover,
 a.list-group-item-warning.active:focus {
   color: #fff;
-  background-color: #323232;
-  border-color: #323232;
+  background-color: #f07814;
+  border-color: #f07814;
 }
 .list-group-item-danger {
-  color: #323232;
+  color: #c83c3c;
   background-color: #efc7c7;
 }
 a.list-group-item-danger {
-  color: #323232;
+  color: #c83c3c;
 }
 a.list-group-item-danger .list-group-item-heading {
   color: inherit;
 }
 a.list-group-item-danger:hover,
 a.list-group-item-danger:focus {
-  color: #323232;
+  color: #c83c3c;
   background-color: #eab3b3;
 }
 a.list-group-item-danger.active,
 a.list-group-item-danger.active:hover,
 a.list-group-item-danger.active:focus {
   color: #fff;
-  background-color: #323232;
-  border-color: #323232;
+  background-color: #c83c3c;
+  border-color: #c83c3c;
 }
 .list-group-item-heading {
   margin-top: 0;
@@ -4119,7 +4212,7 @@ a.list-group-item-danger.active:focus {
 .panel > .panel-body + .table-responsive,
 .panel > .table + .panel-body,
 .panel > .table-responsive + .panel-body {
-  border-top: 1px solid #ffffff;
+  border-top: 1px solid #cccccc;
 }
 .panel > .table > tbody:first-child > tr:first-child th,
 .panel > .table > tbody:first-child > tr:first-child td {
@@ -4244,7 +4337,7 @@ a.list-group-item-danger.active:focus {
   border-color: #1eb941;
 }
 .panel-success > .panel-heading {
-  color: #323232;
+  color: #1eb941;
   background-color: #c7f6d1;
   border-color: #1eb941;
 }
@@ -4253,7 +4346,7 @@ a.list-group-item-danger.active:focus {
 }
 .panel-success > .panel-heading .badge {
   color: #c7f6d1;
-  background-color: #323232;
+  background-color: #1eb941;
 }
 .panel-success > .panel-footer + .panel-collapse > .panel-body {
   border-bottom-color: #1eb941;
@@ -4262,7 +4355,7 @@ a.list-group-item-danger.active:focus {
   border-color: #41b4dc;
 }
 .panel-info > .panel-heading {
-  color: #323232;
+  color: #41b4dc;
   background-color: #d8f0f8;
   border-color: #41b4dc;
 }
@@ -4271,7 +4364,7 @@ a.list-group-item-danger.active:focus {
 }
 .panel-info > .panel-heading .badge {
   color: #d8f0f8;
-  background-color: #323232;
+  background-color: #41b4dc;
 }
 .panel-info > .panel-footer + .panel-collapse > .panel-body {
   border-bottom-color: #41b4dc;
@@ -4280,7 +4373,7 @@ a.list-group-item-danger.active:focus {
   border-color: #f07814;
 }
 .panel-warning > .panel-heading {
-  color: #323232;
+  color: #f07814;
   background-color: #fbd8bc;
   border-color: #f07814;
 }
@@ -4289,7 +4382,7 @@ a.list-group-item-danger.active:focus {
 }
 .panel-warning > .panel-heading .badge {
   color: #fbd8bc;
-  background-color: #323232;
+  background-color: #f07814;
 }
 .panel-warning > .panel-footer + .panel-collapse > .panel-body {
   border-bottom-color: #f07814;
@@ -4298,7 +4391,7 @@ a.list-group-item-danger.active:focus {
   border-color: #c83c3c;
 }
 .panel-danger > .panel-heading {
-  color: #323232;
+  color: #c83c3c;
   background-color: #efc7c7;
   border-color: #c83c3c;
 }
@@ -4307,7 +4400,7 @@ a.list-group-item-danger.active:focus {
 }
 .panel-danger > .panel-heading .badge {
   color: #efc7c7;
-  background-color: #323232;
+  background-color: #c83c3c;
 }
 .panel-danger > .panel-footer + .panel-collapse > .panel-body {
   border-bottom-color: #c83c3c;
@@ -7148,15 +7241,15 @@ table#typo3-history-item img {
   margin-bottom: 0;
 }
 .alert-notice {
-  color: #323232;
+  color: #8c8c8c;
   background-color: #f2f2f2;
   border-color: #8c8c8c;
 }
 .alert-notice a {
-  color: #252525;
+  color: #7f7f7f;
 }
 .alert-notice a:hover {
-  color: #181818;
+  color: #737373;
 }
 .alert-success a {
   color: #178d32;
@@ -7846,9 +7939,6 @@ div.typo3-dyntabmenu-divs-foldout div.disabled:hover {
   margin: 2px 0 15px 20px;
   padding-left: 22px;
 }
-table {
-  background: transparent;
-}
 /**
  * Common style for tables
  *
@@ -7869,230 +7959,1392 @@ table {
  *   </tbody>
  * </table>
  */
-.table > thead tr th:first-child,
-.table > tbody tr th:first-child,
-.table > thead tr th:last-child,
-.table > tbody tr th:last-child,
-.table > thead tr td:first-child,
-.table > tbody tr td:first-child,
-.table > thead tr td:last-child,
-.table > tbody tr td:last-child {
-  padding-left: 12px;
-}
-.table > thead > tr > th,
-.table > thead > tr > td {
-  border-bottom: 1px solid #666;
-}
-.table > tbody > tr > td {
-  background-color: #f9f9f9;
-}
-.table > tbody > tr:hover > td {
-  transition: background-color 100ms linear;
-}
-.table > tbody > tr:hover > td a {
-  text-decoration: underline;
-}
-table.t3-table {
+/**
+ * Copy table stylings from bootstrap
+ **/
+.t3-table {
   width: 100%;
   max-width: 100%;
   margin-bottom: 18px;
+  margin-bottom: 1.5em;
 }
-table.t3-table > thead > tr > th,
-table.t3-table > tbody > tr > th,
-table.t3-table > tfoot > tr > th,
-table.t3-table > thead > tr > td,
-table.t3-table > tbody > tr > td,
-table.t3-table > tfoot > tr > td {
+.t3-table > thead > tr > th,
+.t3-table > tbody > tr > th,
+.t3-table > tfoot > tr > th,
+.t3-table > thead > tr > td,
+.t3-table > tbody > tr > td,
+.t3-table > tfoot > tr > td {
   padding: 6px;
   line-height: 1.5;
   vertical-align: top;
-  border-top: 1px solid #ffffff;
+  border-top: 1px solid #cccccc;
 }
-table.t3-table > thead > tr > th {
+.t3-table > thead > tr > th {
   vertical-align: bottom;
-  border-bottom: 2px solid #ffffff;
-}
-table.t3-table > caption + thead > tr:first-child > th,
-table.t3-table > colgroup + thead > tr:first-child > th,
-table.t3-table > thead:first-child > tr:first-child > th,
-table.t3-table > caption + thead > tr:first-child > td,
-table.t3-table > colgroup + thead > tr:first-child > td,
-table.t3-table > thead:first-child > tr:first-child > td {
+  border-bottom: 2px solid #cccccc;
+}
+.t3-table > caption + thead > tr:first-child > th,
+.t3-table > colgroup + thead > tr:first-child > th,
+.t3-table > thead:first-child > tr:first-child > th,
+.t3-table > caption + thead > tr:first-child > td,
+.t3-table > colgroup + thead > tr:first-child > td,
+.t3-table > thead:first-child > tr:first-child > td {
   border-top: 0;
 }
-table.t3-table > tbody + tbody {
-  border-top: 2px solid #ffffff;
+.t3-table > tbody + tbody {
+  border-top: 2px solid #cccccc;
 }
-table.t3-table .table {
+.t3-table .table {
   background-color: #ffffff;
 }
-table.t3-table > thead tr th:first-child,
-table.t3-table > tbody tr th:first-child,
-table.t3-table > thead tr th:last-child,
-table.t3-table > tbody tr th:last-child,
-table.t3-table > thead tr td:first-child,
-table.t3-table > tbody tr td:first-child,
-table.t3-table > thead tr td:last-child,
-table.t3-table > tbody tr td:last-child {
-  padding-left: 12px;
-}
-table.t3-table > thead > tr > th,
-table.t3-table > thead > tr > td {
-  border-bottom: 1px solid #666;
+.t3-table * {
+  box-sizing: border-box;
 }
-table.t3-table > tbody > tr > td {
-  background-color: #f9f9f9;
+.t3-table > thead > tr > th,
+.t3-table > tbody > tr > th,
+.t3-table > tfoot > tr > th,
+.t3-table > thead > tr > td,
+.t3-table > tbody > tr > td,
+.t3-table > tfoot > tr > td {
+  vertical-align: middle;
 }
-table.t3-table > tbody > tr:hover > td {
-  transition: background-color 100ms linear;
+.t3-table > thead > tr {
+  background-color: #f0f0f0;
 }
-table.t3-table > tbody > tr:hover > td a {
-  text-decoration: underline;
+.t3-table > thead > tr th,
+.t3-table > thead > tr td {
+  border-bottom: 1px solid #cccccc;
 }
-table.t3-table > tbody > tr:nth-child(odd) {
-  background-color: #f4f4f4;
+.t3-table > thead > tr th i,
+.t3-table > thead > tr td i {
+  font-weight: normal;
 }
-table.t3-table > tbody > tr:hover {
-  background-color: #e0e0e0;
+.t3-table .btn {
+  padding: 4px 4px;
+  font-size: 11px;
+  line-height: 1.5;
+  border-radius: 2px;
+  color: #333;
+  background-color: #dedede;
+  border-color: #c4c4c4;
+  margin-top: -2px;
+  margin-bottom: -2px;
 }
-table.t3-table > thead > tr > td.active,
-table.t3-table > tbody > tr > td.active,
-table.t3-table > tfoot > tr > td.active,
-table.t3-table > thead > tr > th.active,
-table.t3-table > tbody > tr > th.active,
-table.t3-table > tfoot > tr > th.active,
-table.t3-table > thead > tr.active > td,
-table.t3-table > tbody > tr.active > td,
-table.t3-table > tfoot > tr.active > td,
-table.t3-table > thead > tr.active > th,
-table.t3-table > tbody > tr.active > th,
-table.t3-table > tfoot > tr.active > th {
-  background-color: #e0e0e0;
+.t3-table .btn:hover {
+  border-color: #ababab;
+  background-color: #c4c4c4;
 }
-table.t3-table > tbody > tr > td.active:hover,
-table.t3-table > tbody > tr > th.active:hover,
-table.t3-table > tbody > tr.active:hover > td,
-table.t3-table > tbody > tr:hover > .active,
-table.t3-table > tbody > tr.active:hover > th {
-  background-color: #d3d3d3;
-}
-table.t3-table > thead > tr > td.success,
-table.t3-table > tbody > tr > td.success,
-table.t3-table > tfoot > tr > td.success,
-table.t3-table > thead > tr > th.success,
-table.t3-table > tbody > tr > th.success,
-table.t3-table > tfoot > tr > th.success,
-table.t3-table > thead > tr.success > td,
-table.t3-table > tbody > tr.success > td,
-table.t3-table > tfoot > tr.success > td,
-table.t3-table > thead > tr.success > th,
-table.t3-table > tbody > tr.success > th,
-table.t3-table > tfoot > tr.success > th {
-  background-color: #c7f6d1;
+.t3-table .btn .t3-icon {
+  margin: 0;
 }
-table.t3-table > tbody > tr > td.success:hover,
-table.t3-table > tbody > tr > th.success:hover,
-table.t3-table > tbody > tr.success:hover > td,
-table.t3-table > tbody > tr:hover > .success,
-table.t3-table > tbody > tr.success:hover > th {
-  background-color: #b1f2c0;
+.t3-table .btn.btn-danger {
+  color: #ffffff;
+  background-color: #c83c3c;
+  border-color: #b73434;
 }
-table.t3-table > thead > tr > td.info,
-table.t3-table > tbody > tr > td.info,
-table.t3-table > tfoot > tr > td.info,
-table.t3-table > thead > tr > th.info,
-table.t3-table > tbody > tr > th.info,
-table.t3-table > tfoot > tr > th.info,
-table.t3-table > thead > tr.info > td,
-table.t3-table > tbody > tr.info > td,
-table.t3-table > tfoot > tr.info > td,
-table.t3-table > thead > tr.info > th,
-table.t3-table > tbody > tr.info > th,
-table.t3-table > tfoot > tr.info > th {
-  background-color: #d8f0f8;
+.t3-table .btn.btn-danger:hover,
+.t3-table .btn.btn-danger:focus,
+.t3-table .btn.btn-danger.focus,
+.t3-table .btn.btn-danger:active,
+.t3-table .btn.btn-danger.active,
+.open > .dropdown-toggle.t3-table .btn.btn-danger {
+  color: #ffffff;
+  background-color: #a32e2e;
+  border-color: #872626;
 }
-table.t3-table > tbody > tr > td.info:hover,
-table.t3-table > tbody > tr > th.info:hover,
-table.t3-table > tbody > tr.info:hover > td,
-table.t3-table > tbody > tr:hover > .info,
-table.t3-table > tbody > tr.info:hover > th {
-  background-color: #c2e7f4;
+.t3-table .btn.btn-danger:active,
+.t3-table .btn.btn-danger.active,
+.open > .dropdown-toggle.t3-table .btn.btn-danger {
+  background-image: none;
 }
-table.t3-table > thead > tr > td.warning,
-table.t3-table > tbody > tr > td.warning,
-table.t3-table > tfoot > tr > td.warning,
-table.t3-table > thead > tr > th.warning,
-table.t3-table > tbody > tr > th.warning,
-table.t3-table > tfoot > tr > th.warning,
-table.t3-table > thead > tr.warning > td,
-table.t3-table > tbody > tr.warning > td,
-table.t3-table > tfoot > tr.warning > td,
-table.t3-table > thead > tr.warning > th,
-table.t3-table > tbody > tr.warning > th,
-table.t3-table > tfoot > tr.warning > th {
-  background-color: #fbd8bc;
+.t3-table .btn.btn-danger.disabled,
+.t3-table .btn.btn-danger[disabled],
+fieldset[disabled] .t3-table .btn.btn-danger,
+.t3-table .btn.btn-danger.disabled:hover,
+.t3-table .btn.btn-danger[disabled]:hover,
+fieldset[disabled] .t3-table .btn.btn-danger:hover,
+.t3-table .btn.btn-danger.disabled:focus,
+.t3-table .btn.btn-danger[disabled]:focus,
+fieldset[disabled] .t3-table .btn.btn-danger:focus,
+.t3-table .btn.btn-danger.disabled.focus,
+.t3-table .btn.btn-danger[disabled].focus,
+fieldset[disabled] .t3-table .btn.btn-danger.focus,
+.t3-table .btn.btn-danger.disabled:active,
+.t3-table .btn.btn-danger[disabled]:active,
+fieldset[disabled] .t3-table .btn.btn-danger:active,
+.t3-table .btn.btn-danger.disabled.active,
+.t3-table .btn.btn-danger[disabled].active,
+fieldset[disabled] .t3-table .btn.btn-danger.active {
+  background-color: #c83c3c;
+  border-color: #b73434;
 }
-table.t3-table > tbody > tr > td.warning:hover,
-table.t3-table > tbody > tr > th.warning:hover,
-table.t3-table > tbody > tr.warning:hover > td,
-table.t3-table > tbody > tr:hover > .warning,
-table.t3-table > tbody > tr.warning:hover > th {
-  background-color: #f9cba4;
+.t3-table .btn.btn-danger .badge {
+  color: #c83c3c;
+  background-color: #ffffff;
 }
-table.t3-table > thead > tr > td.danger,
-table.t3-table > tbody > tr > td.danger,
-table.t3-table > tfoot > tr > td.danger,
-table.t3-table > thead > tr > th.danger,
-table.t3-table > tbody > tr > th.danger,
-table.t3-table > tfoot > tr > th.danger,
-table.t3-table > thead > tr.danger > td,
-table.t3-table > tbody > tr.danger > td,
-table.t3-table > tfoot > tr.danger > td,
-table.t3-table > thead > tr.danger > th,
-table.t3-table > tbody > tr.danger > th,
-table.t3-table > tfoot > tr.danger > th {
-  background-color: #efc7c7;
+.t3-table .btn.btn-success {
+  color: #ffffff;
+  background-color: #1eb941;
+  border-color: #1aa339;
 }
-table.t3-table > tbody > tr > td.danger:hover,
-table.t3-table > tbody > tr > th.danger:hover,
-table.t3-table > tbody > tr.danger:hover > td,
-table.t3-table > tbody > tr:hover > .danger,
-table.t3-table > tbody > tr.danger:hover > th {
-  background-color: #eab3b3;
+.t3-table .btn.btn-success:hover,
+.t3-table .btn.btn-success:focus,
+.t3-table .btn.btn-success.focus,
+.t3-table .btn.btn-success:active,
+.t3-table .btn.btn-success.active,
+.open > .dropdown-toggle.t3-table .btn.btn-success {
+  color: #ffffff;
+  background-color: #178d32;
+  border-color: #126e27;
 }
-/**
- * This file is part of the TYPO3 CMS project.
- *
- * It is free software; you can redistribute it and/or modify it under
- * the terms of the GNU General Public License, either version 2
- * of the License, or any later version.
- *
- * For the full copyright and license information, please read the
- * LICENSE.txt file that was distributed with this source code.
- *
- * The TYPO3 project - inspiring people to share!
- */
-/* - - - - - - - - - - - - - - - - - - - - -
-TCEforms
-- - - - - - - - - - - - - - - - - - - - - */
-.typo3-TCEforms div.typo3-dyntabmenu-divs {
-  padding: 0;
+.t3-table .btn.btn-success:active,
+.t3-table .btn.btn-success.active,
+.open > .dropdown-toggle.t3-table .btn.btn-success {
+  background-image: none;
 }
-.typo3-TCEforms .table {
-  margin-bottom: 0;
+.t3-table .btn.btn-success.disabled,
+.t3-table .btn.btn-success[disabled],
+fieldset[disabled] .t3-table .btn.btn-success,
+.t3-table .btn.btn-success.disabled:hover,
+.t3-table .btn.btn-success[disabled]:hover,
+fieldset[disabled] .t3-table .btn.btn-success:hover,
+.t3-table .btn.btn-success.disabled:focus,
+.t3-table .btn.btn-success[disabled]:focus,
+fieldset[disabled] .t3-table .btn.btn-success:focus,
+.t3-table .btn.btn-success.disabled.focus,
+.t3-table .btn.btn-success[disabled].focus,
+fieldset[disabled] .t3-table .btn.btn-success.focus,
+.t3-table .btn.btn-success.disabled:active,
+.t3-table .btn.btn-success[disabled]:active,
+fieldset[disabled] .t3-table .btn.btn-success:active,
+.t3-table .btn.btn-success.disabled.active,
+.t3-table .btn.btn-success[disabled].active,
+fieldset[disabled] .t3-table .btn.btn-success.active {
+  background-color: #1eb941;
+  border-color: #1aa339;
 }
-.typo3-TCEforms .table > tbody > tr > td {
-  background: none;
+.t3-table .btn.btn-success .badge {
+  color: #1eb941;
+  background-color: #ffffff;
 }
-.typo3-TCEforms .table > tbody > tr > td.palette-header {
-  border-top: 1px solid #d7d7d7;
+.t3-table .btn.btn-warning {
+  color: #ffffff;
+  background-color: #f07814;
+  border-color: #dc6c0e;
 }
-.typo3-TCEforms .table > tbody > tr > td.palette-header h3 {
-  margin-top: 12px;
-  margin-bottom: 0;
+.t3-table .btn.btn-warning:hover,
+.t3-table .btn.btn-warning:focus,
+.t3-table .btn.btn-warning.focus,
+.t3-table .btn.btn-warning:active,
+.t3-table .btn.btn-warning.active,
+.open > .dropdown-toggle.t3-table .btn.btn-warning {
+  color: #ffffff;
+  background-color: #c4600d;
+  border-color: #a3500a;
 }
-.typo3-TCEforms .table > tbody > tr > td .t3-form-palette-fieldset {
-  margin-bottom: 12px;
+.t3-table .btn.btn-warning:active,
+.t3-table .btn.btn-warning.active,
+.open > .dropdown-toggle.t3-table .btn.btn-warning {
+  background-image: none;
+}
+.t3-table .btn.btn-warning.disabled,
+.t3-table .btn.btn-warning[disabled],
+fieldset[disabled] .t3-table .btn.btn-warning,
+.t3-table .btn.btn-warning.disabled:hover,
+.t3-table .btn.btn-warning[disabled]:hover,
+fieldset[disabled] .t3-table .btn.btn-warning:hover,
+.t3-table .btn.btn-warning.disabled:focus,
+.t3-table .btn.btn-warning[disabled]:focus,
+fieldset[disabled] .t3-table .btn.btn-warning:focus,
+.t3-table .btn.btn-warning.disabled.focus,
+.t3-table .btn.btn-warning[disabled].focus,
+fieldset[disabled] .t3-table .btn.btn-warning.focus,
+.t3-table .btn.btn-warning.disabled:active,
+.t3-table .btn.btn-warning[disabled]:active,
+fieldset[disabled] .t3-table .btn.btn-warning:active,
+.t3-table .btn.btn-warning.disabled.active,
+.t3-table .btn.btn-warning[disabled].active,
+fieldset[disabled] .t3-table .btn.btn-warning.active {
+  background-color: #f07814;
+  border-color: #dc6c0e;
+}
+.t3-table .btn.btn-warning .badge {
+  color: #f07814;
+  background-color: #ffffff;
+}
+.t3-table .btn.btn-info {
+  color: #ffffff;
+  background-color: #41b4dc;
+  border-color: #2bacd8;
+}
+.t3-table .btn.btn-info:hover,
+.t3-table .btn.btn-info:focus,
+.t3-table .btn.btn-info.focus,
+.t3-table .btn.btn-info:active,
+.t3-table .btn.btn-info.active,
+.open > .dropdown-toggle.t3-table .btn.btn-info {
+  color: #ffffff;
+  background-color: #249cc6;
+  border-color: #1f84a7;
+}
+.t3-table .btn.btn-info:active,
+.t3-table .btn.btn-info.active,
+.open > .dropdown-toggle.t3-table .btn.btn-info {
+  background-image: none;
+}
+.t3-table .btn.btn-info.disabled,
+.t3-table .btn.btn-info[disabled],
+fieldset[disabled] .t3-table .btn.btn-info,
+.t3-table .btn.btn-info.disabled:hover,
+.t3-table .btn.btn-info[disabled]:hover,
+fieldset[disabled] .t3-table .btn.btn-info:hover,
+.t3-table .btn.btn-info.disabled:focus,
+.t3-table .btn.btn-info[disabled]:focus,
+fieldset[disabled] .t3-table .btn.btn-info:focus,
+.t3-table .btn.btn-info.disabled.focus,
+.t3-table .btn.btn-info[disabled].focus,
+fieldset[disabled] .t3-table .btn.btn-info.focus,
+.t3-table .btn.btn-info.disabled:active,
+.t3-table .btn.btn-info[disabled]:active,
+fieldset[disabled] .t3-table .btn.btn-info:active,
+.t3-table .btn.btn-info.disabled.active,
+.t3-table .btn.btn-info[disabled].active,
+fieldset[disabled] .t3-table .btn.btn-info.active {
+  background-color: #41b4dc;
+  border-color: #2bacd8;
+}
+.t3-table .btn.btn-info .badge {
+  color: #41b4dc;
+  background-color: #ffffff;
+}
+.t3-table .btn.btn-default {
+  color: #ffffff;
+  background-color: #828282;
+  border-color: #757575;
+}
+.t3-table .btn.btn-default:hover,
+.t3-table .btn.btn-default:focus,
+.t3-table .btn.btn-default.focus,
+.t3-table .btn.btn-default:active,
+.t3-table .btn.btn-default.active,
+.open > .dropdown-toggle.t3-table .btn.btn-default {
+  color: #ffffff;
+  background-color: #696969;
+  border-color: #575757;
+}
+.t3-table .btn.btn-default:active,
+.t3-table .btn.btn-default.active,
+.open > .dropdown-toggle.t3-table .btn.btn-default {
+  background-image: none;
+}
+.t3-table .btn.btn-default.disabled,
+.t3-table .btn.btn-default[disabled],
+fieldset[disabled] .t3-table .btn.btn-default,
+.t3-table .btn.btn-default.disabled:hover,
+.t3-table .btn.btn-default[disabled]:hover,
+fieldset[disabled] .t3-table .btn.btn-default:hover,
+.t3-table .btn.btn-default.disabled:focus,
+.t3-table .btn.btn-default[disabled]:focus,
+fieldset[disabled] .t3-table .btn.btn-default:focus,
+.t3-table .btn.btn-default.disabled.focus,
+.t3-table .btn.btn-default[disabled].focus,
+fieldset[disabled] .t3-table .btn.btn-default.focus,
+.t3-table .btn.btn-default.disabled:active,
+.t3-table .btn.btn-default[disabled]:active,
+fieldset[disabled] .t3-table .btn.btn-default:active,
+.t3-table .btn.btn-default.disabled.active,
+.t3-table .btn.btn-default[disabled].active,
+fieldset[disabled] .t3-table .btn.btn-default.active {
+  background-color: #828282;
+  border-color: #757575;
+}
+.t3-table .btn.btn-default .badge {
+  color: #828282;
+  background-color: #ffffff;
+}
+.t3-table .btn.btn-primary {
+  color: #ffffff;
+  background-color: #0078e6;
+  border-color: #006bcd;
+}
+.t3-table .btn.btn-primary:hover,
+.t3-table .btn.btn-primary:focus,
+.t3-table .btn.btn-primary.focus,
+.t3-table .btn.btn-primary:active,
+.t3-table .btn.btn-primary.active,
+.open > .dropdown-toggle.t3-table .btn.btn-primary {
+  color: #ffffff;
+  background-color: #005db3;
+  border-color: #004b8f;
+}
+.t3-table .btn.btn-primary:active,
+.t3-table .btn.btn-primary.active,
+.open > .dropdown-toggle.t3-table .btn.btn-primary {
+  background-image: none;
+}
+.t3-table .btn.btn-primary.disabled,
+.t3-table .btn.btn-primary[disabled],
+fieldset[disabled] .t3-table .btn.btn-primary,
+.t3-table .btn.btn-primary.disabled:hover,
+.t3-table .btn.btn-primary[disabled]:hover,
+fieldset[disabled] .t3-table .btn.btn-primary:hover,
+.t3-table .btn.btn-primary.disabled:focus,
+.t3-table .btn.btn-primary[disabled]:focus,
+fieldset[disabled] .t3-table .btn.btn-primary:focus,
+.t3-table .btn.btn-primary.disabled.focus,
+.t3-table .btn.btn-primary[disabled].focus,
+fieldset[disabled] .t3-table .btn.btn-primary.focus,
+.t3-table .btn.btn-primary.disabled:active,
+.t3-table .btn.btn-primary[disabled]:active,
+fieldset[disabled] .t3-table .btn.btn-primary:active,
+.t3-table .btn.btn-primary.disabled.active,
+.t3-table .btn.btn-primary[disabled].active,
+fieldset[disabled] .t3-table .btn.btn-primary.active {
+  background-color: #0078e6;
+  border-color: #006bcd;
+}
+.t3-table .btn.btn-primary .badge {
+  color: #0078e6;
+  background-color: #ffffff;
+}
+.t3-table .btn-group {
+  font-size: 0;
+}
+.t3-table .btn-group .btn {
+  font-size: 12px;
+  float: none;
+}
+.t3-table .btn-checkbox-holder {
+  position: relative;
+  display: inline-block;
+}
+.t3-table .btn-checkbox-holder .btn-checkbox {
+  position: absolute;
+  top: 0;
+  height: 100%;
+  width: 100%;
+  opacity: 0;
+  z-index: 10;
+}
+.t3-table .btn-checkbox-holder input[type=checkbox] + .btn .t3-icon:before {
+  content: "\f096";
+}
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn {
+  color: #ffffff;
+  background-color: #0078e6;
+  border-color: #006bcd;
+}
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:hover,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.active,
+.open > .dropdown-toggle.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn {
+  color: #ffffff;
+  background-color: #005db3;
+  border-color: #004b8f;
+}
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.active,
+.open > .dropdown-toggle.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn {
+  background-image: none;
+}
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled],
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled:hover,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled]:hover,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:hover,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled:focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled]:focus,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled.focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled].focus,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled:active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled]:active,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled.active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled].active,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.active {
+  background-color: #0078e6;
+  border-color: #006bcd;
+}
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn .badge {
+  color: #0078e6;
+  background-color: #ffffff;
+}
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn .t3-icon:before {
+  content: "\f00c";
+}
+.t3-table .btn-group .btn + .btn-checkbox-holder {
+  margin-left: -1px;
+  border-top-left-radius: 0;
+  border-bottom-left-radius: 0;
+}
+.t3-table .pagination {
+  margin: 0;
+}
+.t3-table .col-icon {
+  text-align: center;
+}
+.t3-table .col-icon .t3-icon {
+  margin: 0;
+}
+.t3-table .col-title {
+  width: 95%;
+}
+.t3-table .col-control,
+.t3-table .col-clipboard {
+  white-space: nowrap;
+  text-align: right;
+}
+.t3-table > tbody > tr:nth-child(odd) {
+  background-color: #f7f7f7;
+}
+.t3-table > tbody > tr:hover {
+  background-color: #ededed;
+}
+.t3-table > thead > tr > td.active,
+.t3-table > tbody > tr > td.active,
+.t3-table > tfoot > tr > td.active,
+.t3-table > thead > tr > th.active,
+.t3-table > tbody > tr > th.active,
+.t3-table > tfoot > tr > th.active,
+.t3-table > thead > tr.active > td,
+.t3-table > tbody > tr.active > td,
+.t3-table > tfoot > tr.active > td,
+.t3-table > thead > tr.active > th,
+.t3-table > tbody > tr.active > th,
+.t3-table > tfoot > tr.active > th {
+  background-color: #ededed;
+}
+.t3-table > tbody > tr > td.active:hover,
+.t3-table > tbody > tr > th.active:hover,
+.t3-table > tbody > tr.active:hover > td,
+.t3-table > tbody > tr:hover > .active,
+.t3-table > tbody > tr.active:hover > th {
+  background-color: #e0e0e0;
+}
+.t3-table > thead > tr > td.success,
+.t3-table > tbody > tr > td.success,
+.t3-table > tfoot > tr > td.success,
+.t3-table > thead > tr > th.success,
+.t3-table > tbody > tr > th.success,
+.t3-table > tfoot > tr > th.success,
+.t3-table > thead > tr.success > td,
+.t3-table > tbody > tr.success > td,
+.t3-table > tfoot > tr.success > td,
+.t3-table > thead > tr.success > th,
+.t3-table > tbody > tr.success > th,
+.t3-table > tfoot > tr.success > th {
+  background-color: #c7f6d1;
+}
+.t3-table > tbody > tr > td.success:hover,
+.t3-table > tbody > tr > th.success:hover,
+.t3-table > tbody > tr.success:hover > td,
+.t3-table > tbody > tr:hover > .success,
+.t3-table > tbody > tr.success:hover > th {
+  background-color: #b1f2c0;
+}
+.t3-table > thead > tr > td.info,
+.t3-table > tbody > tr > td.info,
+.t3-table > tfoot > tr > td.info,
+.t3-table > thead > tr > th.info,
+.t3-table > tbody > tr > th.info,
+.t3-table > tfoot > tr > th.info,
+.t3-table > thead > tr.info > td,
+.t3-table > tbody > tr.info > td,
+.t3-table > tfoot > tr.info > td,
+.t3-table > thead > tr.info > th,
+.t3-table > tbody > tr.info > th,
+.t3-table > tfoot > tr.info > th {
+  background-color: #d8f0f8;
+}
+.t3-table > tbody > tr > td.info:hover,
+.t3-table > tbody > tr > th.info:hover,
+.t3-table > tbody > tr.info:hover > td,
+.t3-table > tbody > tr:hover > .info,
+.t3-table > tbody > tr.info:hover > th {
+  background-color: #c2e7f4;
+}
+.t3-table > thead > tr > td.warning,
+.t3-table > tbody > tr > td.warning,
+.t3-table > tfoot > tr > td.warning,
+.t3-table > thead > tr > th.warning,
+.t3-table > tbody > tr > th.warning,
+.t3-table > tfoot > tr > th.warning,
+.t3-table > thead > tr.warning > td,
+.t3-table > tbody > tr.warning > td,
+.t3-table > tfoot > tr.warning > td,
+.t3-table > thead > tr.warning > th,
+.t3-table > tbody > tr.warning > th,
+.t3-table > tfoot > tr.warning > th {
+  background-color: #fbd8bc;
+}
+.t3-table > tbody > tr > td.warning:hover,
+.t3-table > tbody > tr > th.warning:hover,
+.t3-table > tbody > tr.warning:hover > td,
+.t3-table > tbody > tr:hover > .warning,
+.t3-table > tbody > tr.warning:hover > th {
+  background-color: #f9cba4;
+}
+.t3-table > thead > tr > td.danger,
+.t3-table > tbody > tr > td.danger,
+.t3-table > tfoot > tr > td.danger,
+.t3-table > thead > tr > th.danger,
+.t3-table > tbody > tr > th.danger,
+.t3-table > tfoot > tr > th.danger,
+.t3-table > thead > tr.danger > td,
+.t3-table > tbody > tr.danger > td,
+.t3-table > tfoot > tr.danger > td,
+.t3-table > thead > tr.danger > th,
+.t3-table > tbody > tr.danger > th,
+.t3-table > tfoot > tr.danger > th {
+  background-color: #efc7c7;
+}
+.t3-table > tbody > tr > td.danger:hover,
+.t3-table > tbody > tr > th.danger:hover,
+.t3-table > tbody > tr.danger:hover > td,
+.t3-table > tbody > tr:hover > .danger,
+.t3-table > tbody > tr.danger:hover > th {
+  background-color: #eab3b3;
+}
+/**
+ * Default table styling
+ **/
+.table,
+.t3-table {
+  margin-bottom: 1.5em;
+}
+.table *,
+.t3-table * {
+  box-sizing: border-box;
+}
+.table > thead > tr > th,
+.t3-table > thead > tr > th,
+.table > tbody > tr > th,
+.t3-table > tbody > tr > th,
+.table > tfoot > tr > th,
+.t3-table > tfoot > tr > th,
+.table > thead > tr > td,
+.t3-table > thead > tr > td,
+.table > tbody > tr > td,
+.t3-table > tbody > tr > td,
+.table > tfoot > tr > td,
+.t3-table > tfoot > tr > td {
+  vertical-align: middle;
+}
+.table > thead > tr,
+.t3-table > thead > tr {
+  background-color: #f0f0f0;
+}
+.table > thead > tr th,
+.t3-table > thead > tr th,
+.table > thead > tr td,
+.t3-table > thead > tr td {
+  border-bottom: 1px solid #cccccc;
+}
+.table > thead > tr th i,
+.t3-table > thead > tr th i,
+.table > thead > tr td i,
+.t3-table > thead > tr td i {
+  font-weight: normal;
+}
+.table .btn,
+.t3-table .btn {
+  padding: 4px 4px;
+  font-size: 11px;
+  line-height: 1.5;
+  border-radius: 2px;
+  color: #333;
+  background-color: #dedede;
+  border-color: #c4c4c4;
+  margin-top: -2px;
+  margin-bottom: -2px;
+}
+.table .btn:hover,
+.t3-table .btn:hover {
+  border-color: #ababab;
+  background-color: #c4c4c4;
+}
+.table .btn .t3-icon,
+.t3-table .btn .t3-icon {
+  margin: 0;
+}
+.table .btn.btn-danger,
+.t3-table .btn.btn-danger {
+  color: #ffffff;
+  background-color: #c83c3c;
+  border-color: #b73434;
+}
+.table .btn.btn-danger:hover,
+.t3-table .btn.btn-danger:hover,
+.table .btn.btn-danger:focus,
+.t3-table .btn.btn-danger:focus,
+.table .btn.btn-danger.focus,
+.t3-table .btn.btn-danger.focus,
+.table .btn.btn-danger:active,
+.t3-table .btn.btn-danger:active,
+.table .btn.btn-danger.active,
+.t3-table .btn.btn-danger.active,
+.open > .dropdown-toggle.table .btn.btn-danger,
+.open > .dropdown-toggle.t3-table .btn.btn-danger {
+  color: #ffffff;
+  background-color: #a32e2e;
+  border-color: #872626;
+}
+.table .btn.btn-danger:active,
+.t3-table .btn.btn-danger:active,
+.table .btn.btn-danger.active,
+.t3-table .btn.btn-danger.active,
+.open > .dropdown-toggle.table .btn.btn-danger,
+.open > .dropdown-toggle.t3-table .btn.btn-danger {
+  background-image: none;
+}
+.table .btn.btn-danger.disabled,
+.t3-table .btn.btn-danger.disabled,
+.table .btn.btn-danger[disabled],
+.t3-table .btn.btn-danger[disabled],
+fieldset[disabled] .table .btn.btn-danger,
+fieldset[disabled] .t3-table .btn.btn-danger,
+.table .btn.btn-danger.disabled:hover,
+.t3-table .btn.btn-danger.disabled:hover,
+.table .btn.btn-danger[disabled]:hover,
+.t3-table .btn.btn-danger[disabled]:hover,
+fieldset[disabled] .table .btn.btn-danger:hover,
+fieldset[disabled] .t3-table .btn.btn-danger:hover,
+.table .btn.btn-danger.disabled:focus,
+.t3-table .btn.btn-danger.disabled:focus,
+.table .btn.btn-danger[disabled]:focus,
+.t3-table .btn.btn-danger[disabled]:focus,
+fieldset[disabled] .table .btn.btn-danger:focus,
+fieldset[disabled] .t3-table .btn.btn-danger:focus,
+.table .btn.btn-danger.disabled.focus,
+.t3-table .btn.btn-danger.disabled.focus,
+.table .btn.btn-danger[disabled].focus,
+.t3-table .btn.btn-danger[disabled].focus,
+fieldset[disabled] .table .btn.btn-danger.focus,
+fieldset[disabled] .t3-table .btn.btn-danger.focus,
+.table .btn.btn-danger.disabled:active,
+.t3-table .btn.btn-danger.disabled:active,
+.table .btn.btn-danger[disabled]:active,
+.t3-table .btn.btn-danger[disabled]:active,
+fieldset[disabled] .table .btn.btn-danger:active,
+fieldset[disabled] .t3-table .btn.btn-danger:active,
+.table .btn.btn-danger.disabled.active,
+.t3-table .btn.btn-danger.disabled.active,
+.table .btn.btn-danger[disabled].active,
+.t3-table .btn.btn-danger[disabled].active,
+fieldset[disabled] .table .btn.btn-danger.active,
+fieldset[disabled] .t3-table .btn.btn-danger.active {
+  background-color: #c83c3c;
+  border-color: #b73434;
+}
+.table .btn.btn-danger .badge,
+.t3-table .btn.btn-danger .badge {
+  color: #c83c3c;
+  background-color: #ffffff;
+}
+.table .btn.btn-success,
+.t3-table .btn.btn-success {
+  color: #ffffff;
+  background-color: #1eb941;
+  border-color: #1aa339;
+}
+.table .btn.btn-success:hover,
+.t3-table .btn.btn-success:hover,
+.table .btn.btn-success:focus,
+.t3-table .btn.btn-success:focus,
+.table .btn.btn-success.focus,
+.t3-table .btn.btn-success.focus,
+.table .btn.btn-success:active,
+.t3-table .btn.btn-success:active,
+.table .btn.btn-success.active,
+.t3-table .btn.btn-success.active,
+.open > .dropdown-toggle.table .btn.btn-success,
+.open > .dropdown-toggle.t3-table .btn.btn-success {
+  color: #ffffff;
+  background-color: #178d32;
+  border-color: #126e27;
+}
+.table .btn.btn-success:active,
+.t3-table .btn.btn-success:active,
+.table .btn.btn-success.active,
+.t3-table .btn.btn-success.active,
+.open > .dropdown-toggle.table .btn.btn-success,
+.open > .dropdown-toggle.t3-table .btn.btn-success {
+  background-image: none;
+}
+.table .btn.btn-success.disabled,
+.t3-table .btn.btn-success.disabled,
+.table .btn.btn-success[disabled],
+.t3-table .btn.btn-success[disabled],
+fieldset[disabled] .table .btn.btn-success,
+fieldset[disabled] .t3-table .btn.btn-success,
+.table .btn.btn-success.disabled:hover,
+.t3-table .btn.btn-success.disabled:hover,
+.table .btn.btn-success[disabled]:hover,
+.t3-table .btn.btn-success[disabled]:hover,
+fieldset[disabled] .table .btn.btn-success:hover,
+fieldset[disabled] .t3-table .btn.btn-success:hover,
+.table .btn.btn-success.disabled:focus,
+.t3-table .btn.btn-success.disabled:focus,
+.table .btn.btn-success[disabled]:focus,
+.t3-table .btn.btn-success[disabled]:focus,
+fieldset[disabled] .table .btn.btn-success:focus,
+fieldset[disabled] .t3-table .btn.btn-success:focus,
+.table .btn.btn-success.disabled.focus,
+.t3-table .btn.btn-success.disabled.focus,
+.table .btn.btn-success[disabled].focus,
+.t3-table .btn.btn-success[disabled].focus,
+fieldset[disabled] .table .btn.btn-success.focus,
+fieldset[disabled] .t3-table .btn.btn-success.focus,
+.table .btn.btn-success.disabled:active,
+.t3-table .btn.btn-success.disabled:active,
+.table .btn.btn-success[disabled]:active,
+.t3-table .btn.btn-success[disabled]:active,
+fieldset[disabled] .table .btn.btn-success:active,
+fieldset[disabled] .t3-table .btn.btn-success:active,
+.table .btn.btn-success.disabled.active,
+.t3-table .btn.btn-success.disabled.active,
+.table .btn.btn-success[disabled].active,
+.t3-table .btn.btn-success[disabled].active,
+fieldset[disabled] .table .btn.btn-success.active,
+fieldset[disabled] .t3-table .btn.btn-success.active {
+  background-color: #1eb941;
+  border-color: #1aa339;
+}
+.table .btn.btn-success .badge,
+.t3-table .btn.btn-success .badge {
+  color: #1eb941;
+  background-color: #ffffff;
+}
+.table .btn.btn-warning,
+.t3-table .btn.btn-warning {
+  color: #ffffff;
+  background-color: #f07814;
+  border-color: #dc6c0e;
+}
+.table .btn.btn-warning:hover,
+.t3-table .btn.btn-warning:hover,
+.table .btn.btn-warning:focus,
+.t3-table .btn.btn-warning:focus,
+.table .btn.btn-warning.focus,
+.t3-table .btn.btn-warning.focus,
+.table .btn.btn-warning:active,
+.t3-table .btn.btn-warning:active,
+.table .btn.btn-warning.active,
+.t3-table .btn.btn-warning.active,
+.open > .dropdown-toggle.table .btn.btn-warning,
+.open > .dropdown-toggle.t3-table .btn.btn-warning {
+  color: #ffffff;
+  background-color: #c4600d;
+  border-color: #a3500a;
+}
+.table .btn.btn-warning:active,
+.t3-table .btn.btn-warning:active,
+.table .btn.btn-warning.active,
+.t3-table .btn.btn-warning.active,
+.open > .dropdown-toggle.table .btn.btn-warning,
+.open > .dropdown-toggle.t3-table .btn.btn-warning {
+  background-image: none;
+}
+.table .btn.btn-warning.disabled,
+.t3-table .btn.btn-warning.disabled,
+.table .btn.btn-warning[disabled],
+.t3-table .btn.btn-warning[disabled],
+fieldset[disabled] .table .btn.btn-warning,
+fieldset[disabled] .t3-table .btn.btn-warning,
+.table .btn.btn-warning.disabled:hover,
+.t3-table .btn.btn-warning.disabled:hover,
+.table .btn.btn-warning[disabled]:hover,
+.t3-table .btn.btn-warning[disabled]:hover,
+fieldset[disabled] .table .btn.btn-warning:hover,
+fieldset[disabled] .t3-table .btn.btn-warning:hover,
+.table .btn.btn-warning.disabled:focus,
+.t3-table .btn.btn-warning.disabled:focus,
+.table .btn.btn-warning[disabled]:focus,
+.t3-table .btn.btn-warning[disabled]:focus,
+fieldset[disabled] .table .btn.btn-warning:focus,
+fieldset[disabled] .t3-table .btn.btn-warning:focus,
+.table .btn.btn-warning.disabled.focus,
+.t3-table .btn.btn-warning.disabled.focus,
+.table .btn.btn-warning[disabled].focus,
+.t3-table .btn.btn-warning[disabled].focus,
+fieldset[disabled] .table .btn.btn-warning.focus,
+fieldset[disabled] .t3-table .btn.btn-warning.focus,
+.table .btn.btn-warning.disabled:active,
+.t3-table .btn.btn-warning.disabled:active,
+.table .btn.btn-warning[disabled]:active,
+.t3-table .btn.btn-warning[disabled]:active,
+fieldset[disabled] .table .btn.btn-warning:active,
+fieldset[disabled] .t3-table .btn.btn-warning:active,
+.table .btn.btn-warning.disabled.active,
+.t3-table .btn.btn-warning.disabled.active,
+.table .btn.btn-warning[disabled].active,
+.t3-table .btn.btn-warning[disabled].active,
+fieldset[disabled] .table .btn.btn-warning.active,
+fieldset[disabled] .t3-table .btn.btn-warning.active {
+  background-color: #f07814;
+  border-color: #dc6c0e;
+}
+.table .btn.btn-warning .badge,
+.t3-table .btn.btn-warning .badge {
+  color: #f07814;
+  background-color: #ffffff;
+}
+.table .btn.btn-info,
+.t3-table .btn.btn-info {
+  color: #ffffff;
+  background-color: #41b4dc;
+  border-color: #2bacd8;
+}
+.table .btn.btn-info:hover,
+.t3-table .btn.btn-info:hover,
+.table .btn.btn-info:focus,
+.t3-table .btn.btn-info:focus,
+.table .btn.btn-info.focus,
+.t3-table .btn.btn-info.focus,
+.table .btn.btn-info:active,
+.t3-table .btn.btn-info:active,
+.table .btn.btn-info.active,
+.t3-table .btn.btn-info.active,
+.open > .dropdown-toggle.table .btn.btn-info,
+.open > .dropdown-toggle.t3-table .btn.btn-info {
+  color: #ffffff;
+  background-color: #249cc6;
+  border-color: #1f84a7;
+}
+.table .btn.btn-info:active,
+.t3-table .btn.btn-info:active,
+.table .btn.btn-info.active,
+.t3-table .btn.btn-info.active,
+.open > .dropdown-toggle.table .btn.btn-info,
+.open > .dropdown-toggle.t3-table .btn.btn-info {
+  background-image: none;
+}
+.table .btn.btn-info.disabled,
+.t3-table .btn.btn-info.disabled,
+.table .btn.btn-info[disabled],
+.t3-table .btn.btn-info[disabled],
+fieldset[disabled] .table .btn.btn-info,
+fieldset[disabled] .t3-table .btn.btn-info,
+.table .btn.btn-info.disabled:hover,
+.t3-table .btn.btn-info.disabled:hover,
+.table .btn.btn-info[disabled]:hover,
+.t3-table .btn.btn-info[disabled]:hover,
+fieldset[disabled] .table .btn.btn-info:hover,
+fieldset[disabled] .t3-table .btn.btn-info:hover,
+.table .btn.btn-info.disabled:focus,
+.t3-table .btn.btn-info.disabled:focus,
+.table .btn.btn-info[disabled]:focus,
+.t3-table .btn.btn-info[disabled]:focus,
+fieldset[disabled] .table .btn.btn-info:focus,
+fieldset[disabled] .t3-table .btn.btn-info:focus,
+.table .btn.btn-info.disabled.focus,
+.t3-table .btn.btn-info.disabled.focus,
+.table .btn.btn-info[disabled].focus,
+.t3-table .btn.btn-info[disabled].focus,
+fieldset[disabled] .table .btn.btn-info.focus,
+fieldset[disabled] .t3-table .btn.btn-info.focus,
+.table .btn.btn-info.disabled:active,
+.t3-table .btn.btn-info.disabled:active,
+.table .btn.btn-info[disabled]:active,
+.t3-table .btn.btn-info[disabled]:active,
+fieldset[disabled] .table .btn.btn-info:active,
+fieldset[disabled] .t3-table .btn.btn-info:active,
+.table .btn.btn-info.disabled.active,
+.t3-table .btn.btn-info.disabled.active,
+.table .btn.btn-info[disabled].active,
+.t3-table .btn.btn-info[disabled].active,
+fieldset[disabled] .table .btn.btn-info.active,
+fieldset[disabled] .t3-table .btn.btn-info.active {
+  background-color: #41b4dc;
+  border-color: #2bacd8;
+}
+.table .btn.btn-info .badge,
+.t3-table .btn.btn-info .badge {
+  color: #41b4dc;
+  background-color: #ffffff;
+}
+.table .btn.btn-default,
+.t3-table .btn.btn-default {
+  color: #ffffff;
+  background-color: #828282;
+  border-color: #757575;
+}
+.table .btn.btn-default:hover,
+.t3-table .btn.btn-default:hover,
+.table .btn.btn-default:focus,
+.t3-table .btn.btn-default:focus,
+.table .btn.btn-default.focus,
+.t3-table .btn.btn-default.focus,
+.table .btn.btn-default:active,
+.t3-table .btn.btn-default:active,
+.table .btn.btn-default.active,
+.t3-table .btn.btn-default.active,
+.open > .dropdown-toggle.table .btn.btn-default,
+.open > .dropdown-toggle.t3-table .btn.btn-default {
+  color: #ffffff;
+  background-color: #696969;
+  border-color: #575757;
+}
+.table .btn.btn-default:active,
+.t3-table .btn.btn-default:active,
+.table .btn.btn-default.active,
+.t3-table .btn.btn-default.active,
+.open > .dropdown-toggle.table .btn.btn-default,
+.open > .dropdown-toggle.t3-table .btn.btn-default {
+  background-image: none;
+}
+.table .btn.btn-default.disabled,
+.t3-table .btn.btn-default.disabled,
+.table .btn.btn-default[disabled],
+.t3-table .btn.btn-default[disabled],
+fieldset[disabled] .table .btn.btn-default,
+fieldset[disabled] .t3-table .btn.btn-default,
+.table .btn.btn-default.disabled:hover,
+.t3-table .btn.btn-default.disabled:hover,
+.table .btn.btn-default[disabled]:hover,
+.t3-table .btn.btn-default[disabled]:hover,
+fieldset[disabled] .table .btn.btn-default:hover,
+fieldset[disabled] .t3-table .btn.btn-default:hover,
+.table .btn.btn-default.disabled:focus,
+.t3-table .btn.btn-default.disabled:focus,
+.table .btn.btn-default[disabled]:focus,
+.t3-table .btn.btn-default[disabled]:focus,
+fieldset[disabled] .table .btn.btn-default:focus,
+fieldset[disabled] .t3-table .btn.btn-default:focus,
+.table .btn.btn-default.disabled.focus,
+.t3-table .btn.btn-default.disabled.focus,
+.table .btn.btn-default[disabled].focus,
+.t3-table .btn.btn-default[disabled].focus,
+fieldset[disabled] .table .btn.btn-default.focus,
+fieldset[disabled] .t3-table .btn.btn-default.focus,
+.table .btn.btn-default.disabled:active,
+.t3-table .btn.btn-default.disabled:active,
+.table .btn.btn-default[disabled]:active,
+.t3-table .btn.btn-default[disabled]:active,
+fieldset[disabled] .table .btn.btn-default:active,
+fieldset[disabled] .t3-table .btn.btn-default:active,
+.table .btn.btn-default.disabled.active,
+.t3-table .btn.btn-default.disabled.active,
+.table .btn.btn-default[disabled].active,
+.t3-table .btn.btn-default[disabled].active,
+fieldset[disabled] .table .btn.btn-default.active,
+fieldset[disabled] .t3-table .btn.btn-default.active {
+  background-color: #828282;
+  border-color: #757575;
+}
+.table .btn.btn-default .badge,
+.t3-table .btn.btn-default .badge {
+  color: #828282;
+  background-color: #ffffff;
+}
+.table .btn.btn-primary,
+.t3-table .btn.btn-primary {
+  color: #ffffff;
+  background-color: #0078e6;
+  border-color: #006bcd;
+}
+.table .btn.btn-primary:hover,
+.t3-table .btn.btn-primary:hover,
+.table .btn.btn-primary:focus,
+.t3-table .btn.btn-primary:focus,
+.table .btn.btn-primary.focus,
+.t3-table .btn.btn-primary.focus,
+.table .btn.btn-primary:active,
+.t3-table .btn.btn-primary:active,
+.table .btn.btn-primary.active,
+.t3-table .btn.btn-primary.active,
+.open > .dropdown-toggle.table .btn.btn-primary,
+.open > .dropdown-toggle.t3-table .btn.btn-primary {
+  color: #ffffff;
+  background-color: #005db3;
+  border-color: #004b8f;
+}
+.table .btn.btn-primary:active,
+.t3-table .btn.btn-primary:active,
+.table .btn.btn-primary.active,
+.t3-table .btn.btn-primary.active,
+.open > .dropdown-toggle.table .btn.btn-primary,
+.open > .dropdown-toggle.t3-table .btn.btn-primary {
+  background-image: none;
+}
+.table .btn.btn-primary.disabled,
+.t3-table .btn.btn-primary.disabled,
+.table .btn.btn-primary[disabled],
+.t3-table .btn.btn-primary[disabled],
+fieldset[disabled] .table .btn.btn-primary,
+fieldset[disabled] .t3-table .btn.btn-primary,
+.table .btn.btn-primary.disabled:hover,
+.t3-table .btn.btn-primary.disabled:hover,
+.table .btn.btn-primary[disabled]:hover,
+.t3-table .btn.btn-primary[disabled]:hover,
+fieldset[disabled] .table .btn.btn-primary:hover,
+fieldset[disabled] .t3-table .btn.btn-primary:hover,
+.table .btn.btn-primary.disabled:focus,
+.t3-table .btn.btn-primary.disabled:focus,
+.table .btn.btn-primary[disabled]:focus,
+.t3-table .btn.btn-primary[disabled]:focus,
+fieldset[disabled] .table .btn.btn-primary:focus,
+fieldset[disabled] .t3-table .btn.btn-primary:focus,
+.table .btn.btn-primary.disabled.focus,
+.t3-table .btn.btn-primary.disabled.focus,
+.table .btn.btn-primary[disabled].focus,
+.t3-table .btn.btn-primary[disabled].focus,
+fieldset[disabled] .table .btn.btn-primary.focus,
+fieldset[disabled] .t3-table .btn.btn-primary.focus,
+.table .btn.btn-primary.disabled:active,
+.t3-table .btn.btn-primary.disabled:active,
+.table .btn.btn-primary[disabled]:active,
+.t3-table .btn.btn-primary[disabled]:active,
+fieldset[disabled] .table .btn.btn-primary:active,
+fieldset[disabled] .t3-table .btn.btn-primary:active,
+.table .btn.btn-primary.disabled.active,
+.t3-table .btn.btn-primary.disabled.active,
+.table .btn.btn-primary[disabled].active,
+.t3-table .btn.btn-primary[disabled].active,
+fieldset[disabled] .table .btn.btn-primary.active,
+fieldset[disabled] .t3-table .btn.btn-primary.active {
+  background-color: #0078e6;
+  border-color: #006bcd;
+}
+.table .btn.btn-primary .badge,
+.t3-table .btn.btn-primary .badge {
+  color: #0078e6;
+  background-color: #ffffff;
+}
+.table .btn-group,
+.t3-table .btn-group {
+  font-size: 0;
+}
+.table .btn-group .btn,
+.t3-table .btn-group .btn {
+  font-size: 12px;
+  float: none;
+}
+.table .btn-checkbox-holder,
+.t3-table .btn-checkbox-holder {
+  position: relative;
+  display: inline-block;
+}
+.table .btn-checkbox-holder .btn-checkbox,
+.t3-table .btn-checkbox-holder .btn-checkbox {
+  position: absolute;
+  top: 0;
+  height: 100%;
+  width: 100%;
+  opacity: 0;
+  z-index: 10;
+}
+.table .btn-checkbox-holder input[type=checkbox] + .btn .t3-icon:before,
+.t3-table .btn-checkbox-holder input[type=checkbox] + .btn .t3-icon:before {
+  content: "\f096";
+}
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn {
+  color: #ffffff;
+  background-color: #0078e6;
+  border-color: #006bcd;
+}
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn:hover,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:hover,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn:focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:focus,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn.focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.focus,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn:active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:active,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn.active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.active,
+.open > .dropdown-toggle.table .btn-checkbox-holder input[type=checkbox]:checked + .btn,
+.open > .dropdown-toggle.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn {
+  color: #ffffff;
+  background-color: #005db3;
+  border-color: #004b8f;
+}
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn:active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:active,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn.active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.active,
+.open > .dropdown-toggle.table .btn-checkbox-holder input[type=checkbox]:checked + .btn,
+.open > .dropdown-toggle.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn {
+  background-image: none;
+}
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled],
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled],
+fieldset[disabled] .table .btn-checkbox-holder input[type=checkbox]:checked + .btn,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled:hover,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled:hover,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled]:hover,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled]:hover,
+fieldset[disabled] .table .btn-checkbox-holder input[type=checkbox]:checked + .btn:hover,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:hover,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled:focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled:focus,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled]:focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled]:focus,
+fieldset[disabled] .table .btn-checkbox-holder input[type=checkbox]:checked + .btn:focus,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:focus,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled.focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled.focus,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled].focus,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled].focus,
+fieldset[disabled] .table .btn-checkbox-holder input[type=checkbox]:checked + .btn.focus,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.focus,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled:active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled:active,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled]:active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled]:active,
+fieldset[disabled] .table .btn-checkbox-holder input[type=checkbox]:checked + .btn:active,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn:active,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled.active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.disabled.active,
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled].active,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn[disabled].active,
+fieldset[disabled] .table .btn-checkbox-holder input[type=checkbox]:checked + .btn.active,
+fieldset[disabled] .t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn.active {
+  background-color: #0078e6;
+  border-color: #006bcd;
+}
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn .badge,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn .badge {
+  color: #0078e6;
+  background-color: #ffffff;
+}
+.table .btn-checkbox-holder input[type=checkbox]:checked + .btn .t3-icon:before,
+.t3-table .btn-checkbox-holder input[type=checkbox]:checked + .btn .t3-icon:before {
+  content: "\f00c";
+}
+.table .btn-group .btn + .btn-checkbox-holder,
+.t3-table .btn-group .btn + .btn-checkbox-holder {
+  margin-left: -1px;
+  border-top-left-radius: 0;
+  border-bottom-left-radius: 0;
+}
+.table .pagination,
+.t3-table .pagination {
+  margin: 0;
+}
+.table .col-icon,
+.t3-table .col-icon {
+  text-align: center;
+}
+.table .col-icon .t3-icon,
+.t3-table .col-icon .t3-icon {
+  margin: 0;
+}
+.table .col-title,
+.t3-table .col-title {
+  width: 95%;
+}
+.table .col-control,
+.t3-table .col-control,
+.table .col-clipboard,
+.t3-table .col-clipboard {
+  white-space: nowrap;
+  text-align: right;
+}
+.t3-table > thead > tr > td.success,
+.t3-table > tbody > tr > td.success,
+.t3-table > tfoot > tr > td.success,
+.t3-table > thead > tr > th.success,
+.t3-table > tbody > tr > th.success,
+.t3-table > tfoot > tr > th.success,
+.t3-table > thead > tr.success > td,
+.t3-table > tbody > tr.success > td,
+.t3-table > tfoot > tr.success > td,
+.t3-table > thead > tr.success > th,
+.t3-table > tbody > tr.success > th,
+.t3-table > tfoot > tr.success > th {
+  background-color: #c7f6d1;
+}
+.t3-table > tbody > tr > td.success:hover,
+.t3-table > tbody > tr > th.success:hover,
+.t3-table > tbody > tr.success:hover > td,
+.t3-table > tbody > tr:hover > .success,
+.t3-table > tbody > tr.success:hover > th {
+  background-color: #b1f2c0;
+}
+.t3-table > thead > tr > td.info,
+.t3-table > tbody > tr > td.info,
+.t3-table > tfoot > tr > td.info,
+.t3-table > thead > tr > th.info,
+.t3-table > tbody > tr > th.info,
+.t3-table > tfoot > tr > th.info,
+.t3-table > thead > tr.info > td,
+.t3-table > tbody > tr.info > td,
+.t3-table > tfoot > tr.info > td,
+.t3-table > thead > tr.info > th,
+.t3-table > tbody > tr.info > th,
+.t3-table > tfoot > tr.info > th {
+  background-color: #d8f0f8;
+}
+.t3-table > tbody > tr > td.info:hover,
+.t3-table > tbody > tr > th.info:hover,
+.t3-table > tbody > tr.info:hover > td,
+.t3-table > tbody > tr:hover > .info,
+.t3-table > tbody > tr.info:hover > th {
+  background-color: #c2e7f4;
+}
+.t3-table > thead > tr > td.warning,
+.t3-table > tbody > tr > td.warning,
+.t3-table > tfoot > tr > td.warning,
+.t3-table > thead > tr > th.warning,
+.t3-table > tbody > tr > th.warning,
+.t3-table > tfoot > tr > th.warning,
+.t3-table > thead > tr.warning > td,
+.t3-table > tbody > tr.warning > td,
+.t3-table > tfoot > tr.warning > td,
+.t3-table > thead > tr.warning > th,
+.t3-table > tbody > tr.warning > th,
+.t3-table > tfoot > tr.warning > th {
+  background-color: #fbd8bc;
+}
+.t3-table > tbody > tr > td.warning:hover,
+.t3-table > tbody > tr > th.warning:hover,
+.t3-table > tbody > tr.warning:hover > td,
+.t3-table > tbody > tr:hover > .warning,
+.t3-table > tbody > tr.warning:hover > th {
+  background-color: #f9cba4;
+}
+.t3-table > thead > tr > td.danger,
+.t3-table > tbody > tr > td.danger,
+.t3-table > tfoot > tr > td.danger,
+.t3-table > thead > tr > th.danger,
+.t3-table > tbody > tr > th.danger,
+.t3-table > tfoot > tr > th.danger,
+.t3-table > thead > tr.danger > td,
+.t3-table > tbody > tr.danger > td,
+.t3-table > tfoot > tr.danger > td,
+.t3-table > thead > tr.danger > th,
+.t3-table > tbody > tr.danger > th,
+.t3-table > tfoot > tr.danger > th {
+  background-color: #efc7c7;
+}
+.t3-table > tbody > tr > td.danger:hover,
+.t3-table > tbody > tr > th.danger:hover,
+.t3-table > tbody > tr.danger:hover > td,
+.t3-table > tbody > tr:hover > .danger,
+.t3-table > tbody > tr.danger:hover > th {
+  background-color: #eab3b3;
+}
+/**
+ * Fits the table in the viewport and makes overflow possible
+ **/
+.table-fit {
+  width: 100%;
+  margin-bottom: 1.5em;
+  overflow-x: auto;
+  overflow-y: hidden;
+  -webkit-overflow-scrolling: touch;
+  -ms-overflow-style: -ms-autohiding-scrollbar;
+  border: 1px solid #ddd;
+}
+.table-fit > .table,
+.table-fit > .t3-table {
+  margin-top: 0;
+  margin-bottom: 0;
+}
+.table-fit > .table > thead > tr > th,
+.table-fit > .t3-table > thead > tr > th,
+.table-fit > .table > tbody > tr > th,
+.table-fit > .t3-table > tbody > tr > th,
+.table-fit > .table > tfoot > tr > th,
+.table-fit > .t3-table > tfoot > tr > th,
+.table-fit > .table > thead > tr > td,
+.table-fit > .t3-table > thead > tr > td,
+.table-fit > .table > tbody > tr > td,
+.table-fit > .t3-table > tbody > tr > td,
+.table-fit > .table > tfoot > tr > td,
+.table-fit > .t3-table > tfoot > tr > td {
+  white-space: nowrap;
+}
+.table-fit > .table-bordered {
+  border: 0;
+}
+.table-fit > .table-bordered > thead > tr > th:first-child,
+.table-fit > .table-bordered > tbody > tr > th:first-child,
+.table-fit > .table-bordered > tfoot > tr > th:first-child,
+.table-fit > .table-bordered > thead > tr > td:first-child,
+.table-fit > .table-bordered > tbody > tr > td:first-child,
+.table-fit > .table-bordered > tfoot > tr > td:first-child {
+  border-left: 0;
+}
+.table-fit > .table-bordered > thead > tr > th:last-child,
+.table-fit > .table-bordered > tbody > tr > th:last-child,
+.table-fit > .table-bordered > tfoot > tr > th:last-child,
+.table-fit > .table-bordered > thead > tr > td:last-child,
+.table-fit > .table-bordered > tbody > tr > td:last-child,
+.table-fit > .table-bordered > tfoot > tr > td:last-child {
+  border-right: 0;
+}
+.table-fit > .table-bordered > tbody > tr:last-child > th,
+.table-fit > .table-bordered > tfoot > tr:last-child > th,
+.table-fit > .table-bordered > tbody > tr:last-child > td,
+.table-fit > .table-bordered > tfoot > tr:last-child > td {
+  border-bottom: 0;
+}
+/**
+ * This file is part of the TYPO3 CMS project.
+ *
+ * It is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License, either version 2
+ * of the License, or any later version.
+ *
+ * For the full copyright and license information, please read the
+ * LICENSE.txt file that was distributed with this source code.
+ *
+ * The TYPO3 project - inspiring people to share!
+ */
+.panel {
+  margin: 3em 0;
+}
+.panel .panel-heading {
+  font-weight: bold;
+}
+.panel .table-fit {
+  border: 0;
+  margin: 0;
+}
+/**
+ * This file is part of the TYPO3 CMS project.
+ *
+ * It is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License, either version 2
+ * of the License, or any later version.
+ *
+ * For the full copyright and license information, please read the
+ * LICENSE.txt file that was distributed with this source code.
+ *
+ * The TYPO3 project - inspiring people to share!
+ */
+/* - - - - - - - - - - - - - - - - - - - - -
+TCEforms
+- - - - - - - - - - - - - - - - - - - - - */
+.typo3-TCEforms div.typo3-dyntabmenu-divs {
+  padding: 0;
+}
+.typo3-TCEforms .table {
+  margin-bottom: 0;
+}
+.typo3-TCEforms .table > tbody > tr > td {
+  background: none;
+}
+.typo3-TCEforms .table > tbody > tr > td.palette-header {
+  border-top: 1px solid #d7d7d7;
+}
+.typo3-TCEforms .table > tbody > tr > td.palette-header h3 {
+  margin-top: 12px;
+  margin-bottom: 0;
+}
+.typo3-TCEforms .table > tbody > tr > td .t3-form-palette-fieldset {
+  margin-bottom: 12px;
 }
 .typo3-TCEforms .table > tbody > tr > td .t3-form-palette-fieldset .t3-form-palette-field-container {
   margin-bottom: 6px;
@@ -9126,6 +10378,26 @@ AJAX Page Tree
  *
  * The TYPO3 project - inspiring people to share!
  */
+.pagination .t3-icon {
+  margin: 0;
+  text-align: center;
+}
+.pagination .paginator-input {
+  display: inline-block;
+  margin: -2px 0;
+}
+/**
+ * This file is part of the TYPO3 CMS project.
+ *
+ * It is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License, either version 2
+ * of the License, or any later version.
+ *
+ * For the full copyright and license information, please read the
+ * LICENSE.txt file that was distributed with this source code.
+ *
+ * The TYPO3 project - inspiring people to share!
+ */
 /* Include Share webfont */
 @font-face {
   font-family: 'Share';
@@ -9457,9 +10729,6 @@ img.absmiddle {
 /* - - - - - - - - - - - - - - - - - - - - -
 TYPO3 styles for basic elements
 - - - - - - - - - - - - - - - - - - - - - */
-tr:hover a {
-  text-decoration: underline;
-}
 tr:hover .t3-page-ce a,
 tr:hover .x-tree a {
   text-decoration: none;
@@ -9599,13 +10868,6 @@ input[type="checkbox"] {
 /* - - - - - - - - - - - - - - - - - - - - -
 Buttons
 - - - - - - - - - - - - - - - - - - - - - */
-.btn {
-  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
-  padding: 3px 12px;
-}
-.btn:hover {
-  transition: background-color 0.1s ease;
-}
 /* Deprecated HTML5 definitions */
 .t3-button,
 button,
@@ -9630,11 +10892,9 @@ input[type=reset] {
   -moz-user-select: none;
   -ms-user-select: none;
   user-select: none;
-  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
-  padding: 3px 12px;
   color: #ffffff;
   background-color: #828282;
-  border-color: transparent;
+  border-color: #757575;
 }
 .t3-button:focus,
 button:focus,
@@ -9757,7 +11017,7 @@ input[type=reset].active,
 .open > .dropdown-toggleinput[type=reset] {
   color: #ffffff;
   background-color: #696969;
-  border-color: rgba(0, 0, 0, 0);
+  border-color: #575757;
 }
 .t3-button:active,
 button:active,
@@ -9867,7 +11127,7 @@ fieldset[disabled] input[type=submit].active,
 fieldset[disabled] input[type=button].active,
 fieldset[disabled] input[type=reset].active {
   background-color: #828282;
-  border-color: transparent;
+  border-color: #757575;
 }
 .t3-button .badge,
 button .badge,