/** Top bar */ body { padding-top: 60px; } .navbar-inner-text (@base) { text-shadow: 0 1px 0 contrast(@base, lighten(@base, 15%), darken(@base, 15%)); color: @text-color; @caret-color: average(@base, @text-color); @caret-hover-color: average(@caret-color, @text-color); .caret { border-bottom-color: @caret-color; border-top-color: @caret-color; } &:hover .caret, &:focus .caret { border-bottom-color: @caret-hover-color; border-top-color: @caret-hover-color; } } .brand (@color, @dark, @light) when (@color = @dark) { span { background-image: url(../img/tentacle-20x20.png); @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { background-image: url(../img/tentacle-20x20@2x.png); } } } .brand (@color, @dark, @light) when (@color = @light) { span { background-image: url(../img/tentacle-20x20-light.png); @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { background-image: url(../img/tentacle-20x20-light@2x.png); } } } .navbar-inner-color (@base) { @top: lighten(@base, 25%); @bottom: darken(@base, 15%); @text-color-light: #f2f2f2; @text-color-dark: #333333; @text-color: contrast(@base, @text-color-dark, @text-color-light); background-color: @base; /* fallback color if gradients are not supported */ background-image: -webkit-linear-gradient(top, @top, @bottom); /* For Chrome and Safari */ background-image: -moz-linear-gradient(top, @top, @bottom); /* For old Fx (3.6 to 15) */ background-image: -ms-linear-gradient(top, @top, @bottom); /* For pre-releases of IE 10*/ background-image: -o-linear-gradient(top, @top, @bottom); /* For old Opera (11.1 to 12.0) */ background-image: linear-gradient(to bottom, @top, @bottom); /* Standard syntax; must be last */ .brand, .nav>li>a { .navbar-inner-text(@base); } .brand { .brand(@text-color, @text-color-dark, @text-color-light); } .nav { li.dropdown.open>.dropdown-toggle, li.dropdown.active>.dropdown-toggle, li.dropdown.open.active>.dropdown-toggle { // invert for dropdown background-color: @base; /* fallback color if gradients are not supported */ background-image: -webkit-linear-gradient(top, @bottom, @top); /* For Chrome and Safari */ background-image: -moz-linear-gradient(top, @bottom, @top); /* For old Fx (3.6 to 15) */ background-image: -ms-linear-gradient(top, @bottom, @top); /* For pre-releases of IE 10*/ background-image: -o-linear-gradient(top, @bottom, @top); /* For old Opera (11.1 to 12.0) */ background-image: linear-gradient(to bottom, @bottom, @top); /* Standard syntax; must be last */ } } } #navbar .navbar-inner { @base: #F2F2F2; .navbar-inner-color(@base); &.red { @base: #F22828; .navbar-inner-color(@base); } &.orange { @base: #F27728; .navbar-inner-color(@base); } &.yellow { @base: #F2DE28; .navbar-inner-color(@base); } &.green { @base: #77FF28; .navbar-inner-color(@base); } &.blue { @base: #2877FF; .navbar-inner-color(@base); } &.violet { @base: #7728FF; .navbar-inner-color(@base); } &.black { @base: #383838; .navbar-inner-color(@base); } .brand span { background-size: 20px 20px; background-position: left center; padding-left: 24px; background-repeat: no-repeat; } } /** OctoPrint application tabs */ .octoprint-container { .tab-content { padding: 9px 15px; border-left: 1px solid #DDD; border-right: 1px solid #DDD; border-bottom: 1px solid #DDD; -webkit-border-bottom-right-radius: 4px; -webkit-border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -moz-border-radius-bottomleft: 4px; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px; } .nav { margin-bottom: 0px; } .tab-content h1 { display: block; width: 100%; padding: 0; margin-bottom: 20px; font-size: 21px; line-height: 40px; color: #333; border: 0; border-bottom: 1px solid #E5E5E5; font-weight: normal; } } /** Accordions */ .octoprint-container { .accordion-heading { .accordion-heading-button { float: right; a { display: inline-block; padding: 8px 15px; font-size: 14px; line-height: 20px; color: #000; text-decoration: none; background: none; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; } } a.accordion-toggle { display: inline-block; } [class^="icon-"], [class*=" icon-"] { color: #000; } } } .print-control .btn { padding-left: 4px; padding-right: 4px; } .upload-buttons .btn { margin-right: 0; } /** Tables */ table { table-layout: fixed; th, td { overflow: hidden; // gcode files &.gcode_files_name { text-overflow: ellipsis; text-align: left; } &.gcode_files_size { text-align: right; width: 55px; } &.gcode_files_action { text-align: center; width: 70px; a { text-decoration: none; color: #000; &.disabled { color: #ccc; cursor: default; } } } // timelapse files &.timelapse_files_name { text-overflow: ellipsis; text-align: left; } &.timelapse_files_size { text-align: right; width: 55px; } &.timelapse_files_action { text-align: center; width: 45px; a { text-decoration: none; color: #000; &.disabled { color: #ccc; cursor: default; } } } // user settings &.settings_users_name { text-overflow: ellipsis; text-align: left; } &.settings_users_active, &.settings_users_admin { text-align: center; width: 55px; } &.settings_users_actions { text-align: center; width: 60px; a { text-decoration: none; color: #000; &.disabled { color: #ccc; cursor: default; } } } } } /** Temperature tab */ #temperature-graph { height: 350px; width: 100%; background-image: url("/static/img/graph-background.png"); background-position: center; background-repeat: no-repeat; } .tab-content, .tab-pane { overflow: visible; } .tempInput { width: 50px; } #temp_newTemp, #temp_newBedTemp, #speed_innerWall, #speed_outerWall, #speed_fill, #speed_support, #webcam_timelapse_interval { text-align: right; } ul.dropdown-menu li a { cursor: pointer; } /** Connection settings */ #connection_ports, #connection_baudrates { width: 100%; } /** Offline overlay */ #offline_overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 10000; display: none; } #offline_overlay_background { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #000000; filter:alpha(opacity=50); -moz-opacity:0.5; -khtml-opacity: 0.5; opacity: 0.5; } #offline_overlay_wrapper { position: absolute; top: 0; bottom: 0; left: 0; right: 0; padding-top: 60px; .container { margin: auto; } } /** Webcam */ #webcam_container { width: 100%; } /** GCODE file manager */ #files { .popover { font-size: 85%; p:last-child { margin-bottom: 0; } } } /** Control tab */ #control { overflow: hidden; .jog-panel { float: left; margin-right: 19px; } h1 { text-align: left; } .jog-panel > div { text-align: center; } .jog-panel > div.distance { text-align: left; } .box { width: 30px; height: 30px; margin-right: 10px; margin-bottom: 10px; padding-left: 8px; } .control-box { display: block; height: 30px; margin-bottom: 10px; } .btn-group { margin-bottom: 10px; } .btn-group > .btn { width: 43px; padding: 3px 0; height: 30px; } } /** Settings dialog */ #settings_dialog { } /** Footer */ .footer { text-align: right; ul li { display: inline; margin-left: 1em; font-size: 85%; a { color: #555; } } } /** General helper classes */ .text-right { text-align: right; } .overflow_visible { overflow: visible !important; } #drop_overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 10000; display: none; &.in { display: block; } #drop_overlay_background { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: #000000; filter:alpha(opacity=50); -moz-opacity:0.5; -khtml-opacity: 0.5; opacity: 0.5; } #drop_overlay_wrapper { position: absolute; top: 0; bottom: 0; left: 0; right: 0; padding-top: 60px; @dropzone_width: 400px; @dropzone_height: 400px; @dropzone_distance: 50px; @dropzone_border: 2px; #drop, #drop_background { position: absolute; top: 50%; left: 50%; margin-left: -1 * @dropzone_width / 2; margin-top: -1 * @dropzone_height / 2; } #drop_locally, #drop_locally_background { position: absolute; top: 50%; left: 50%; margin-left: -1 * @dropzone_width - @dropzone_distance / 2; margin-top: -1 * @dropzone_height / 2; } #drop_sd, #drop_sd_background { position: absolute; top: 50%; left: 50%; margin-left: @dropzone_distance / 2; margin-top: -1 * @dropzone_height / 2; } .dropzone { width: @dropzone_width + 2 * @dropzone_border; height: @dropzone_height + 2 * @dropzone_border; z-index: 10001; color: #ffffff; font-size: 30px; i { font-size: 50px; } .centered { display: table-cell; text-align: center; vertical-align: middle; width: @dropzone_width; height: @dropzone_height; line-height: 40px; filter:alpha(opacity=100); -moz-opacity:1.0; -khtml-opacity: 1.0; opacity: 1.0; } } .dropzone_background { width: @dropzone_width; height: @dropzone_height; border: 2px dashed #eeeeee; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; background-color: #000000; filter:alpha(opacity=25); -moz-opacity:0.25; -khtml-opacity: 0.25; opacity: 0.25; &.hover { background-color: #000000; filter:alpha(opacity=50); -moz-opacity:0.5; -khtml-opacity: 0.5; opacity: 0.5; } &.fade { -webkit-transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -ms-transition: all 0.3s ease-out; -o-transition: all 0.3s ease-out; transition: all 0.3s ease-out; opacity: 1; } } } }