@import url(fonts.css?v=3); @import url(pure-min.css?v=1); :root { --primary: #5e72e4; --dark-primary: #483d8b; --main-color: #09c; --header-bg: #09c; --header-color: #fff; --bar-bg: #5e72e4; --menu-bg-color: #fff; --menu-color: #5f6368; --menu-color-hover: #202124; --main-menu-color: #202124; --submenu-bg-hover: #d4d4d4; --submenu-bg-hover-active: #09c; --blue: #5e72e4; --indigo: #5603ad; --purple: #8965e0; --pink: #f3a4b5; --red: #f5365c; --orange: #fb6340; --yellow: #ffd600; --green: #2dce89; --teal: #11cdef; --cyan: #2bffc6; --gray: #8898aa; --gray-dark: #32325d; --lighter: #e9ecef; --secondary: #f7fafc; --success: #2dce89; --info: #11cdef; --warning: #fb6340; --danger: #f5365c; --light: #adb5bd; --dark: #212529; --default: #172b4d; --white: #fff; --neutral: #fff; --darker: #000; --background-color: #f4f5f7; --login-form-bg-color: rgba(244,245,247,0.8); --breakpoint-xs: 0; --breakpoint-sm: 576px; --breakpoint-md: 768px; --breakpoint-lg: 992px; --breakpoint-xl: 1200px; --blur-radius: 10px; --blur-opacity: .5; --blur-radius-dark: 10px; --blur-opacity-dark: .5; --font-family-sans-serif: "Google Sans","Microsoft Yahei","WenQuanYi Micro Hei",sans-serif,"Helvetica Neue",Helvetica,"Hiragino Sans GB"; --font-family-monospace: SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace; --font-family-normal: Open Sans,PingFangSC-Regular,Microsoft Yahei,WenQuanYi Micro Hei,"Helvetica Neue",Helvetica,Hiragino Sans GB,sans-serif; } html,body { height: 100%; font-size: 16px; font-family: var(--font-family-sans-serif); margin: 0px; padding: 0px; } html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; } body { font-size: .875rem; background-color: var(--background-color); color: var(--gray-dark); } * { box-sizing: border-box; margin: 0; padding: 0; } ::selection { background-color: var(--primary); color: var(--white); } a:link,a:visited,a:active { color: var(--primary); text-decoration: none; } a:hover { text-decoration: underline; } li { list-style-type: none; } .table { position: relative; display: table; } .tr { display: table-row; } .thead { display: table-header-group; } .tbody { display: table-row-group; } .tfoot { display: table-footer-group; } .td,.th { line-height: normal; display: table-cell; text-align: center; vertical-align: middle; padding: .5em; } .th { font-weight: 700; white-space: nowrap; } .tr.placeholder { height: 4em; } .tr.placeholder>.td { line-height: 3; position: absolute; right: 0; bottom: 0; left: 0; text-align: center!important; background: inherit; padding: .4rem 0!important; } .td[width="33%"] { padding: 1.1em 1.5rem; } .table[width="33%"],.th[width="33%"],.td[width="33%"] { width: 33%; } .col-1 { flex: 1 1 30px!important; } .col-2 { flex: 2 2 60px!important; } .col-3 { flex: 3 3 90px!important; } .col-4 { flex: 4 4 120px!important; } .col-5 { flex: 5 5 150px!important; } .col-6 { flex: 6 6 180px!important; } .col-7 { flex: 7 7 210px!important; } .col-8 { flex: 8 8 240px!important; } .col-9 { flex: 9 9 270px!important; } .col-10 { flex: 10 10 300px!important; } .h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6 { font-family: inherit; font-weight: 400; line-height: 1.1!important; color: inherit; } select { color: #555; border: thin solid #ccc; background-color: #fff; background-image: none; padding: .36rem .8rem; } .btn,button,select,input,.cbi-dropdown { line-height: 1.5rem; color: #8898aa; border: 1px solid #dee2e6; border-radius: .25rem; outline: 0; background-image: none; box-shadow: none; transition: box-shadow .15s ease; margin: .25rem .1rem; padding: .5rem .75rem; } select,.cbi-dropdown { width: inherit; cursor: default; } select:not([multiple="multiple"]):focus,input:not(.cbi-button):focus,.cbi-dropdown:focus { box-shadow: 0 3px 9px rgba(50,50,9,0),3px 4px 8px rgba(94,114,228,0.1); border-color: var(--primary); } pre { overflow: auto; } code { font-size: 1rem; font-size-adjust: .35; color: #101010; border-radius: 2px; background: #ddd; padding: 1px 3px; } abbr { cursor: help; text-decoration: underline; color: var(--primary); } hr { opacity: .1; border-color: #eee; margin: 1rem 0; } .login-page { height: 95vh; width: 95vw; } .login-page .video { position: absolute; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; background-color: var(--darker); overflow: hidden; } .login-page .video video { width: 100%; height: auto; } .login-page .volume-control { position: fixed; right: 1rem; top: 1rem; width: 1.5rem; height: 1.5rem; z-index: 5000; cursor: pointer; background-size: contain; background-image: url(../img/volume_high.svg); } .login-page .volume-control.mute { background-image: url(../img/volume_off.svg); } .login-page .main-bg { position: absolute; width: 101vw; height: 101vh; left: 0; top: 0; background-image: url(../img/blank.png); background-repeat: no-repeat; background-position: center; background-size: cover; transition: all .5s; background-color: rgba(255,255,255,1); } .login-page .status-container { height: 100%; position: absolute; top: 0px; right: 0px; display: flex; flex-direction: column; -webkit-box-pack: center; justify-content: center; align-items: flex-start; min-height: 100%; z-index: 2; width: 800px; box-shadow: rgba(0,0,0,0.75) 0 0 35px -5px; margin-left: 5%; background: transparent; } .login-page .status-container .status-form { display: flex; flex-direction: column; -webkit-box-align: center; align-items: right; position: absolute; top: 0px; width: 100%; min-height: 100%; max-width: 800px; background-color: rgba(224,224,224,0); } .login-page .login-container { height: 100%; position: absolute; top: 0px; display: flex; flex-direction: column; -webkit-box-pack: center; justify-content: center; align-items: flex-start; min-height: 100%; z-index: 2; width: 20vw; box-shadow: rgba(0,0,0,0.75) 0 0 35px -5px; margin-left: 4%; background: transparent; } /* color of login panel */ .login-page .login-container .login-form { display: flex; flex-direction: column; -webkit-box-align: center; align-items: center; position: absolute; top: 0px; width: 100%; min-height: 100%; max-width: 100%; background-color: rgba(224,224,224,0.7); } /* change for login box */ .login-page .login-container .login-form .brand { display: flex; -webkit-box-align: center; align-items: center; color: var(--default); margin: 20px auto 5px 10px; } .login-page .login-container .login-form .brandim { display: flex; -webkit-box-align: center; align-items: center; color: var(--default); margin: 12vh 0px 30px 0px; } .login-page .login-container .login-form .brandim .icon-im { width: 19vw; height: auto; margin-right: 0px; } .login-page .login-iframem { height: 76vh; position: absolute; left: 40vw; top: 0; display: flex; flex-direction: column; -webkit-box-pack: center; justify-content: center; align-items: flex-start; min-height: 76vh; z-index: 2; width: 50vw; margin-left: 1vw; background: transparent; } .login-page .login-iframem .login-iform { display: flex; flex-direction: column; -webkit-box-align: center; align-items: center; position: absolute; top: 0px; width: 100%; min-height: 76vh; max-width: 100%; } .login-page .login-iframem .login-iform .ifframe { width: 100vw; max-width: 100%; height: 76vh; max-height: 100%; left: 0px; position: absolute; top: 0px; } .login-page .login-iframe { height: 12vh; position: absolute; top: 85vh; left: 0; display: flex; flex-direction: column; -webkit-box-pack: center; justify-content: center; align-items: flex-start; min-height: 12vh; z-index: 2; width: 18vw; margin-left: 1vw; background: transparent; } .login-page .login-iframe .login-iform { display: flex; flex-direction: column; -webkit-box-align: center; align-items: center; position: absolute; top: 0px; width: 100%; min-height: 12vh; max-width: 100%; } .login-page .login-iframe .login-iform .ifframe { width: 100vw; max-width: 100%; height: 50vh; max-height: 100%; left: 0px; position: absolute; top: 0px; } .login-page .login-bframe { height: 45vh; position: absolute; top: 52vh; left: 0; display: flex; flex-direction: column; -webkit-box-pack: center; justify-content: center; align-items: flex-start; min-height: 45vh; z-index: 2; width: 24vw; margin-left: -2vw; background: transparent; } .login-page .login-bframe .login-bform { display: flex; flex-direction: column; -webkit-box-align: center; align-items: center; position: absolute; top: 0px; width: 100%; min-height: 45vh; max-width: 100%; } .login-page .login-bframe .login-bform .ibframe { width: 100vw; max-width: 100%; height: 50vh; max-height: 100%; left: 0px; position: absolute; top: 0px; } /* size of logo displayed */ .login-page .login-container .login-form .brand .icon-lg { width: 19vw; height: auto; margin-right: 10px; } .login-page .login-container .login-form .brand .icon { width: 7vw; height: auto; margin-right: 10px; } .login-page .login-container .login-form .brand .brand-text { font-size: 1.2vw; font-weight: 700; font-family: TypoGraphica; } .login-page .login-container .login-form .brand .brand-textlg { font-size: 1.2vw; font-weight: 700; font-family: TypoGraphica; margin-left: 2vw; } .login-page .login-container .login-form .form-login { width: 100%; box-sizing: border-box; padding: 20px 50px; } .login-page .login-container .login-form .form-login .errorbox { text-align: center; color: var(--warning); padding-bottom: 2rem; } .login-page .login-container .login-form .form-login .input-group { margin-bottom: 1.25rem; position: relative; } .login-page .login-container .login-form .form-login .input-group::before { font-family: argon!important; font-style: normal; font-weight: 400; font-variant: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; color: var(--default); font-size: 1.5rem; position: absolute; z-index: 100; left: 10px; top: 10px; } .login-page .login-container .login-form .form-login .input-group .border { position: absolute; width: 100%; height: 1px; bottom: 0; border-bottom: 1px var(--primary) solid; transform: scaleX(0); transition: transform .3s; } .login-page .login-container .login-form .form-login .input-group input { font-size: 1rem; line-height: 1.5em; display: block; width: 100%; box-sizing: border-box; transition: all .3s cubic-bezier(.68,-0.55,.265,1.55); color: var(--default); border: 0; border-radius: 0; border-bottom: 1px solid var(--white); background-color: transparent; background-clip: padding-box; box-shadow: 0 3px 2px rgba(233,236,239,0.05); outline: none; margin: .825rem 0; padding: .5rem .75rem .5rem 3rem; } .login-page .login-container .login-form .form-login .input-group input:focus+.border { transform: scaleX(1); } .login-page .login-container .login-form .form-login .input-group .cbi-input-password { margin-bottom: 2rem; position: relative; } .login-page .login-container .login-form .form-login .user-icon::before { content: "\e971"; } .login-page .login-container .login-form .form-login .pass-icon::before { content: "\e910"; } .login-page .login-container .login-form .cbi-button-apply { width: 100%!important; box-shadow: rgba(0,0,0,0.1) 0 0 50px 0; font-weight: 600; font-size: 15px; color: var(--white); text-align: center; cursor: pointer; min-height: 50px; background-color: var(--primary)!important; border-radius: 6px; outline: none; border-image: initial; transition: all .3s!important; letter-spacing: .8rem; border-color: initial; border-style: none; border-width: initial; margin: 30px 0px 20px; padding: 10px 0px; } .login-page .login-container .login-form .cbi-button-apply:hover,.login-page .login-container .login-form .cbi-button-apply :focus { opacity: .9; } .login-page .login-container footer { box-sizing: border-box; width: 100%; text-align: center; line-height: 1.6rem; display: flex; justify-content: space-evenly; margin-top: auto; z-index: 10; color: var(--default); position: absolute; bottom: 0; padding: 0px 0px 30px; } .login-page .login-container footer .ftc { position: absolute; bottom: 30px; width: 100%; } footer { font-size: .8rem; overflow: hidden; text-align: right; white-space: nowrap; color: #aaa; padding: 1rem; } footer>a { text-decoration: none; color: #aaa; } small { font-size: 90%; line-height: 1.42857143; white-space: normal; } .main { position: relative; top: 0; bottom: 0; overflow-y: auto; height: 100%; } .main-left { top: 0; float: left; width: calc(0% + 15rem); height: 100%; background-color: var(--menu-bg-color); box-shadow: rgba(0,0,0,0.75) 0 0 15px -5px; overflow-x: auto; position: fixed; z-index: 100; } .main-left .sidenav-header { text-align: center; padding: 1.5rem; } .main-left .sidenav-header .brand { font-size: 1.8rem; color: var(--primary); font-family: TypoGraphica; text-decoration: none; text-align: center; cursor: default; vertical-align: text-bottom; white-space: nowrap; } .main-left::-webkit-scrollbar { width: 5px; height: 1px; } .main-right { float: right; width: calc(100% - 15rem); height: 100%; transition: all .2s; } .main-right>#maincontent { position: relative; z-index: 50; } .pull-right { float: right; } .nowrap:not(.td) { white-space: nowrap; } [disabled="disabled"] { pointer-events: none; } header { color: var(--header-color); position: relative; padding: 0; } header.bg-primary { background-color: var(--primary)!important; } header::after { content: ""; position: absolute; height: 2rem; width: 100%; background-color: var(--primary)!important; } header .fill { border-bottom: 0 solid rgba(255,255,255,0.08)!important; padding: .8rem 0; } header .fill .container { height: 2rem; padding: 0 1.25rem; } header .fill .container .showSide { display: none; color: #fff; font-size: 1.4rem; } header .fill .container .brand { font-size: 1.5rem; color: #fff; font-family: TypoGraphica; text-decoration: none; padding-left: 1rem; cursor: default; vertical-align: text-bottom; display: none; } header .fill .container .pull-right { float: right; margin-top: 0rem; display: flex; } header .fill .status { position: absolute; top: 25%; right: 1.25rem; float: right; } header .fill .status span[data-indicator="poll-status"] { display: block; font-size: .8rem; font-weight: 700; white-space: nowrap; text-decoration: none; text-transform: uppercase; text-shadow: none; border-radius: 3px; cursor: pointer; transition: all .3s; padding: .3rem .8rem; } header .fill .status span[data-style="active"] { color: #32325d!important; background-color: #fff; } header .fill .status span[data-style="inactive"] { color: #FFF!important; background-color: #32325d; } #xhr_poll_status { display: flex; margin-left: .5rem; } div[style="width:100%;height:300px;border:1px solid #000;background:#fff"] { border: 0!important; } .danger { background-color: #ff7d60!important; } .warning { background-color: #f0e68c!important; } .success { background-color: #5cb85c!important; } .notice { background-color: #11cdef!important; color: #fff; } .error { color: red; } .alert,.alert-message { font-weight: 700; margin-bottom: 1em; border: 0; border-radius: .375rem!important; background-color: #fff; box-shadow: 0 2px 2px 0 rgba(0,0,0,0.16),0 0 2px 0 rgba(0,0,0,0.12); text-shadow: 1px 1px rgba(0,0,0,0.1); padding: 1rem; } .alert.error,.alert-message.error { background-color: #ffd600; } .alert h4,.alert-message h4 { padding: 0 1.5rem .75rem 0; } .alert-message>h4 { font-size: 110%; font-weight: 700; } .alert-message>* { margin: .5rem 0; } .alert-message .btn { padding: .3rem .6rem; } .main .main-left { transition: all .2s; } .main .main-left .nav li { cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; padding: 0; } .main .main-left .nav li a { display: block; color: var(--menu-color); } .main .main-left .nav li.slide .slide-menu { margin: 0 .5rem 0 2.5rem; padding: 0 .5rem; } .main .main-left .nav li.slide .slide-menu li { position: relative; border-radius: .375rem; background: none; list-style: none; margin: 0; padding: .5rem 0; } .main .main-left .nav li.slide .slide-menu li a { white-space: nowrap; text-decoration: none; } .main .main-left .nav li.slide .slide-menu li::after { content: ""; position: absolute; left: 0; bottom: 0; width: 0; height: 2px; background-color: var(--primary); transition: all .2s; } .main .main-left .nav li.slide .slide-menu .active { background: none; color: var(--menu-color); } .main .main-left .nav li.slide .slide-menu .active a { color: var(--menu-color); } .main .main-left .nav li.slide .slide-menu .active::after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background-color: var(--primary); transition: all .2s; } .main .main-left .nav li .menu::after { position: absolute; right: .5rem; top: .8rem; font-family: argon!important; font-style: normal; font-weight: 400; font-variant: normal; text-transform: none; line-height: 1; -moz-osx-font-smoothing: grayscale; content: '\e90f'; color: #ced4da; text-rendering: auto; -webkit-font-smoothing: antialiased; transition: all .3s; } .main .main-left .nav li .menu[data-title=Status]:before { content: "\e906"; color: var(--primary); } .main .main-left .nav li .menu[data-title=System]:before { content: "\e90a"; color: #fb6340; } .main .main-left .nav li .menu[data-title=Services]:before { content: "\e909"; color: #11cdef; } .main .main-left .nav li .menu[data-title=NAS]:before { content: "\e90c"; color: #f3a4b5; } .main .main-left .nav li .menu[data-title=VPN]:before { content: "\e90b"; color: #8965e0; } .main .main-left .nav li .menu[data-title=Network]:before { content: "\e908"; color: #8965e0; } .main .main-left .nav li .menu[data-title=Bandwidth_Monitor]:before { content: "\e90d"; color: #2dce89; } .main .main-left .nav li .menu[data-title=Docker]:before { content: "\e911"; color: #69F; } .main .main-left .nav li .menu[data-title=Statistics]:before { content: "\e913"; color: #8965e0; } .main .main-left .nav li .menu[data-title=Control]:before { content: "\e912"; color: var(--primary); } .main .main-left .nav li .menu[data-title=Asterisk]:before { content: "\e914"; color: #fb6340; } .main .main-left .nav li a[data-title=Logout]:before { content: "\e907"; color: #adb5bd; } .lg { margin: 0; padding: 0!important; } .logout { display: block; border-radius: .375rem; text-decoration: none; font-size: 1rem; transition: all .2s; position: relative; margin: .8rem .5rem .1rem; padding: .675rem 0 .675rem 2.5rem; } .logout:before { font-family: argon!important; font-style: normal; font-weight: 400; font-variant: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; position: absolute; left: .8rem; padding-top: 3px; transition: all .3s; content: "\e907"; color: #32325d!important; } body[class*="node-"]>.main>.main-left>.nav>.slide>.menu::before { transition: transform .1s ease-in-out; } body[class*="node-"]>.main>.main-left>.nav>.slide>.menu.active::before { transition: transform .2s ease-in-out; } #maincontent>.container { margin: 0 1.25rem 1rem; } ul { line-height: normal; } h1 { font-size: 2rem; padding-bottom: 10px; border-bottom: thin solid #eee; } h2 { font-size: 1.25rem; letter-spacing: .1rem; color: #32325d; border-radius: .375rem; background: #fff; box-shadow: 0 4px 8px rgba(0,0,0,0.03); margin: 0 0 1rem; padding: 1rem 1.5rem; } h3 { font-size: 1.1rem; line-height: 1; display: block; width: 100%; color: var(--gray-dark); border-radius: .375rem; background: #fff; margin: 0; padding: .8755rem 1.5rem; } h4 { font-size: .7rem; font-weight: 600; color: #525f7f; background-color: var(--lighter); margin: 0; padding: .75rem 1.5rem; } h4 em { padding: 0 .5rem; } h5 { font-size: 1rem; padding-bottom: 10px; margin: 2rem 0 0; } .cbi-section,.cbi-section-error,#iptables,.Firewall form,#cbi-network>.cbi-section-node,#cbi-wireless>.cbi-section-node,#cbi-wireless>#wifi_assoclist_table,[data-tab-title],[data-page^="admin-system-admin"]:not(.node-main-login) .cbi-map:not(#cbi-dropbear),[data-page="admin-system-opkg"] #maincontent>.container { font-family: inherit; font-weight: 400; font-style: normal; line-height: normal; min-width: inherit; border: 0; border-radius: .375rem; background-color: #fff; box-shadow: 0 0 1rem 0 rgba(136,152,170,0.15); margin: 1.5rem 0; padding: 0rem; } .cbi-modal .cbi-section,.cbi-section .cbi-section { box-shadow: none; padding: 0; } .cbi-modal .cbi-tabmenu { margin-left: 0; } .cbi-map-descr,.cbi-section-descr { font-size: small; line-height: 1.42857143; padding: .5rem 1.5rem; } .cbi-map-descr>abbr { cursor: help; text-decoration: underline; } .cbi-section>legend { display: none!important; } fieldset>fieldset,.cbi-section>.cbi-section { border: 0; box-shadow: none; margin: 0; padding: 0; } .cbi-section>h3:first-child,.panel-title { font-size: 1.1rem; line-height: 1; display: block; width: 100%; color: var(--gray-dark); margin: 0; padding: .8755rem 1.5rem; } table { border-spacing: 0; border-collapse: collapse; } table,.table { overflow-y: hidden; width: 100%; font-size: 90%; } .table .table-titles th { background-color: var(--lighter); } .container>.cbi-section:first-of-type>.table[width="100%"]>.tr>.td { padding: .6rem; } .cbi-section-table-cell { line-height: 1.1; align-self: flex-end; flex: 1 1 auto; } tr>td,tr>th,.tr>.td,.tr>.th,.cbi-section-table-row::before,#cbi-wireless>#wifi_assoclist_table>.tr:nth-child(2) { border-top: thin solid #ddd; padding: 1.1em 1.5rem; } #cbi-wireless .td,#cbi-network .tr:first-child>.td,.table[width="100%"]>.tr:first-child>.td,[data-page="admin-network-diagnostics"] .tr>.td,.tr.table-titles>.th,.tr.cbi-section-table-titles>.th { border-top: 0!important; background-color: #f6f9fc; line-height: 1.3rem; padding: 1.1em 1.5rem; } .table[width="100%"]>.tr:first-child>.td { margin: auto 0; } .cbi-section-table-row { margin-bottom: 1rem; text-align: center!important; background: #f4f4f4; } .cbi-section-table-row:last-child { margin-bottom: 0; } .cbi-section-table-row>.cbi-value-field [data-dynlist]>input,.cbi-section-table-row>.cbi-value-field input.cbi-input-password { width: calc(100% - 1.5rem); } table table,.table .table,.cbi-value-field table,.cbi-value-field .table,td>table>tbody>tr>td,.td>.table>.tbody>.tr>.td,.cbi-value-field>table>tbody>tr>td,.cbi-value-field>.table>.tbody>.tr>.td { border: 0; } .btn,.cbi-button,.item::after { font-size: .8rem; display: inline-block; width: auto!important; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; transition: all .2s ease-in-out; text-align: center; vertical-align: middle; white-space: nowrap; text-decoration: none; text-transform: uppercase; color: rgba(0,0,0,0.87); border: 0; border-radius: .2rem; background-color: #f0f0f0; background-image: none; -webkit-appearance: none; -ms-touch-action: manipulation; touch-action: manipulation; padding: .45rem .8rem; } .cbi-button-up,.cbi-button-down { font-size: 1.2rem; display: inline-block; min-width: 0; color: transparent!important; background: url(../icon/arrow.svg) no-repeat center; background-size: 12px 20px; padding: .2rem .3rem; } .cbi-button-up { transform: scaleY(-1); } .cbi-button:not(select) { -webkit-appearance: none!important; } .btn:hover,.btn:focus,.btn:active,.cbi-button:hover,.cbi-button:focus,.cbi-button:active,.item:hover::after,.item:focus::after,.item:active::after,.cbi-page-actions .cbi-button-apply+.cbi-button-save:hover,.cbi-page-actions .cbi-button-apply+.cbi-button-save:focus,.cbi-page-actions .cbi-button-apply+.cbi-button-save:active { text-decoration: none; outline: 0; } .btn:hover,.btn:focus,.cbi-button:hover,.cbi-button:focus,.item:hover::after,.item:focus::after { box-shadow: 0 0 2px rgba(0,0,0,0.12),0 2px 2px rgba(0,0,0,0.2); } .btn:active,.cbi-button:active,.item:active::after { box-shadow: 0 10px 20px rgba(0,0,0,0.19),0 6px 6px rgba(0,0,0,0.23); } .cbi-button-up:hover,.cbi-button-up:focus { box-shadow: 0 0 2px rgba(0,0,0,0.12),0 -2px 2px rgba(0,0,0,0.2); } .cbi-button-up:active { box-shadow: 0 -10px 20px rgba(0,0,0,0.19),0 -6px 6px rgba(0,0,0,0.23); } .btn:disabled,.cbi-button:disabled { cursor: not-allowed; pointer-events: none; opacity: .5; box-shadow: none; } .alert-message [class="btn"],.modal div[class="btn"],.cbi-button-find,.cbi-button-link,.cbi-button-up,.cbi-button-down,.cbi-button-neutral,.cbi-button[name="zero"],.cbi-button[name="restart"],.cbi-button[onclick="hide_empty(this)"] { font-weight: 700; color: #fff; border: thin solid #8898aa; background-color: #8898aa; } .btn.danger,.cbi-section-remove>.cbi-button,.cbi-button-remove,.cbi-button-reset,.cbi-button-negative,.cbi-button[value="Stop"],.cbi-button[value="Kill"],.cbi-button[onclick="reboot(this)"],.cbi-button-neutral[value="Restart"] { font-weight: 400; color: #fff; border: thin solid var(--red); background-color: var(--red); } .btn[value="Dismiss"],.cbi-button[value="Terminate"],.cbi-button[value="Reset"],.cbi-button[value="Disabled"],.cbi-button[onclick^="iface_reconnect"],.cbi-button[onclick="handleReset(event)"],.cbi-button-neutral[value="Disable"] { font-weight: 400; color: #fff; border: thin solid #eea236; background-color: #f0ad4e; } .cbi-button-success,.cbi-button-download,.cbi-button[name="backup"],.cbi-button[value="Download"],.cbi-button[value="Save mtdblock"] { font-weight: 400; color: #fff; border: thin solid #4cae4c; background-color: #5cb85c; } .cbi-value-field .cbi-button-add { font-weight: 700; display: flex; align-items: center; margin: 4px 0 4px 3px; padding: 1px 6px; } .tabs { background-color: #FFF; border-radius: .375rem; box-shadow: 0 4px 8px rgba(0,0,0,0.03); white-space: nowrap; overflow-x: auto; margin: 0 0 1rem; padding: 0 1rem; } .tabs li[class~="active"],.tabs li:hover { cursor: pointer; border-bottom: .18751rem solid var(--primary); color: var(--primary); background-color: #dce1fe; margin-bottom: 0; border-radius: 0; } .tabs li { font-size: .875rem; display: inline-block; border-bottom: .18751rem solid rgba(0,0,0,0); margin: 0 .2rem; padding: .875rem 0; } .tabs li:hover { border-bottom: .18751rem solid var(--primary); } .cbi-tabmenu { color: #fff; white-space: nowrap; overflow-x: auto; padding: .5rem 1rem 0; } .cbi-tabmenu li { background: #dce3e9; display: inline-block; font-size: .875rem; border-top-left-radius: .25rem; border-top-right-radius: .25rem; border-bottom: .18751rem solid rgba(0,0,0,0); margin: 0 .2rem; padding: .5rem 0; } .cbi-tabmenu li:hover { cursor: pointer; border-bottom: .18751rem solid var(--primary); color: var(--primary); background-color: #dce1fe; margin-bottom: 0; } .cbi-tabmenu li:hover a { color: #525f7f; } .cbi-tabmenu li[class~="cbi-tab"] { border-bottom: .18751rem solid var(--primary); color: var(--primary); background-color: #dce1fe; margin-bottom: 0; } .cbi-tab-descr { padding: .5rem 1.5rem; } [data-tab-title] { overflow: hidden; height: 0; opacity: 0; margin: 0; padding: 0rem!important; } [data-tab-title] p { margin-left: 1rem; margin-bottom: 1rem; } [data-tab-active="true"] { overflow: visible; height: auto; opacity: 1; transition: opacity .25s ease-in; margin: inherit!important; } .cbi-section-node-tabbed { margin-top: 0; border: 0 solid #d4d4d4; border-radius: .375rem; padding: 0; } .cbi-value-field,.cbi-value-description { line-height: 1.25; display: table-cell; } .cbi-value-field abbr,.cbi-value-description abbr { color: var(--gray-dark); } .cbi-value-description { font-size: small; opacity: .5; padding: .5rem; } .cbi-value-title { display: table-cell; float: left; width: 23rem; padding-top: .25rem; padding-right: 2rem; text-align: right; word-wrap: break-word; } .cbi-value { display: inline-block; width: 100%; line-height: 2.4rem; padding: .35rem 1rem .2rem; } .cbi-value ul { line-height: 1.25; } .cbi-value-field .cbi-dropdown,.cbi-value-field .cbi-input-select,.cbi-value input[type="text"],.cbi-value input[type="password"] { min-width: 18rem; } .cbi-value input[type="password"] { border-bottom-right-radius: 0; border-top-right-radius: 0; margin-right: 0; } .cbi-value input[type="password"]+.cbi-button-neutral { height: 42px; border-bottom-left-radius: 0; border-top-left-radius: 0; margin-left: 0; border: 0; } #cbi-firewall-zone .cbi-input-select,#cbi-network-switch_vlan .cbi-input-select { min-width: 11rem; } #cbi-network-switch_vlan .cbi-input-text { max-width: 3rem; } .cbi-input-invalid { color: #f5365c; border-bottom-color: #f5365c; } .cbi-section-error { font-weight: 700; line-height: 1.42857143; border: thin solid #f5365c; border-radius: 3px; background-color: #fce6e6; margin: 18px; padding: 6px; } .cbi-section-error ul { margin: 0 0 0 20px; } .cbi-section-error ul li { font-weight: 700; color: #f5365c; } .td[data-title]::before { font-weight: 700; display: none; content: attr(data-title) ":\20"; text-align: left; white-space: nowrap; padding: .25rem 0; } .tr[data-title]::before,.tr.cbi-section-table-titles.named::before { font-weight: 700; display: table-cell; align-self: center; flex: 1 1 5%; content: attr(data-title) "\20"; text-align: center; vertical-align: middle; white-space: normal; word-wrap: break-word; padding: .25rem; } .cbi-rowstyle-2 { background-color: #eee; } .cbi-rowstyle-2 .cbi-button-up,.cbi-rowstyle-2 .cbi-button-down,body:not(.Interfaces) .cbi-rowstyle-2:first-child { background-color: #fff!important; } .cbi-section-table .cbi-section-table-titles .cbi-section-table-cell { width: auto!important; } .td.cbi-section-actions { text-align: right!important; vertical-align: middle; } .td.cbi-section-actions>* { display: inline-flex; } .td.cbi-section-actions>*>*,.td.cbi-section-actions>*>form>* { display: flex; align-items: center; margin: 0 5px; } .td.cbi-section-actions>*>form { display: inline-flex; margin: 0; } .cbi-checkbox { margin: 0 .25rem; } .cbi-dynlist { line-height: 1.3; flex-direction: column; min-height: 30px; cursor: text; } .cbi-dynlist>.item { position: relative; max-width: 25rem; pointer-events: none; color: #8898aa; outline: 0; } .cbi-dynlist[name="sshkeys"]>.item { max-width: none; } .cbi-dynlist>.item::after { position: absolute; width: 2.2rem!important; height: calc(100% - .5rem - 2px); right: 0; bottom: 0; content: "\00D7"; pointer-events: auto; background-color: var(--red); font-weight: 400; font-size: 1.2rem; display: flex; align-items: center; justify-content: center; line-height: 1.5rem; color: #fff; border: 1px solid #f5365c; border-radius: .25rem; outline: 0; background-image: none; box-shadow: none; border-top-left-radius: 0; border-bottom-left-radius: 0; margin: .25rem .1rem .25rem 0; padding: 0; } .cbi-dynlist>.item>span { white-space: normal; word-break: break-word; line-height: 1.5rem; color: #8898aa; border: 1px solid #dee2e6; border-radius: .25rem; outline: 0; background-image: none; box-shadow: none; display: block; transition: box-shadow .15s ease; box-sizing: border-box; min-width: 15rem; margin: .25rem .1rem; padding: .5rem; } .cbi-dynlist>.add-item { display: inline-flex; align-items: center; width: 100%; min-width: 16rem; } .cbi-dynlist>.add-item input { border-top-right-radius: 0; border-bottom-right-radius: 0; margin-right: 0; border-right: none; } .cbi-dynlist>.add-item .cbi-button-add { font-weight: 400; font-size: 1.2rem; display: flex; align-items: center; line-height: 1.5rem; color: #fff; border: 1px solid var(--primary); border-radius: .25rem; outline: 0; background-image: none; box-shadow: none; border-top-left-radius: 0; border-bottom-left-radius: 0; margin: .25rem .1rem .25rem 0; padding: .5rem .75rem; } .cbi-dynlist>.add-item:not([ondrop])>input { overflow: hidden; width: 100%; min-width: 15rem; white-space: nowrap; text-overflow: ellipsis; } .cbi-dynlist>.add-item[ondrop]>input { min-width: 13rem; } .cbi-dynlist,.cbi-dropdown { position: relative; display: inline-flex; padding: .2rem; } .cbi-dropdown[placeholder*="select"] { max-width: 25rem; height: auto; margin-top: -3px; } .cbi-dropdown>ul { display: flex; overflow-x: hidden; overflow-y: auto; width: 100%; list-style: none; outline: 0; margin: 0!important; padding: 0; } .cbi-dropdown>.open { flex-basis: 15px; } .cbi-dropdown>.open,.cbi-dropdown>.more { font-size: 1rem; font-weight: 900; line-height: 2; display: flex; flex-direction: column; flex-grow: 0; flex-shrink: 0; justify-content: center; cursor: default; text-align: center; outline: 0; padding: 0 .25em; } .cbi-dropdown>.more,.cbi-dropdown>ul>li[placeholder] { font-weight: 700; display: none; color: #777; text-shadow: 1px 1px 0 #fff; } .cbi-dropdown>ul>li { display: none; overflow: hidden; align-items: center; align-self: center; flex-grow: 1; flex-shrink: 1; min-height: 20px; white-space: nowrap; text-overflow: ellipsis; padding: .25em; } .cbi-dropdown>ul>li[display]:not([display="0"]) { border-left: thin solid #ccc; } .cbi-dropdown[empty]>ul { max-width: 1px; } .cbi-dropdown>ul>li>form { display: none; pointer-events: none; margin: 0; padding: 0; } .cbi-dropdown>ul>li img { margin-right: .25em; vertical-align: middle; } .cbi-dropdown>ul>li>form>input[type="checkbox"] { height: auto; margin: 0; } .cbi-dropdown>ul>li input[type="text"] { height: 20px; } .cbi-dropdown[open]>ul.dropdown { position: absolute; z-index: 1100; display: block; width: auto; min-width: 100%; max-width: none; max-height: 200px!important; border: 0 solid #918e8c; background: #FFF; box-shadow: 0 0 4px #918e8c; border-bottom-left-radius: .35rem; border-bottom-right-radius: .35rem; color: var(--main-menu-color); margin-left: -0.2rem!important; } .cbi-dropdown[open]>ul.dropdown li { color: #000; } .cbi-dropdown>ul>li[display],.cbi-dropdown[open]>ul.preview,.cbi-dropdown[open]>ul.dropdown>li,.cbi-dropdown[multiple]>ul>li>label,.cbi-dropdown[multiple][open]>ul.dropdown>li,.cbi-dropdown[multiple][more]>.more,.cbi-dropdown[multiple][empty]>.more { display: flex; align-items: center; flex-grow: 1; } .cbi-dropdown[open]>ul.dropdown>li { border-bottom: thin solid #ccc; padding: .5rem .8rem; } .cbi-dropdown[open]>ul.dropdown>li[selected] { background: #dce1fe; } .cbi-dropdown[open]>ul.dropdown>li.focus { background: #dce1fe; outline: none; } .cbi-dropdown[open]>ul.dropdown>li:last-child { margin-bottom: 0; border-bottom: 0; } .cbi-dropdown[open]>ul.dropdown>li[unselectable] { opacity: .7; } .cbi-dropdown[disabled] { pointer-events: none; opacity: .6; } .cbi-dropdown[open] .zonebadge { width: auto; } .cbi-progressbar { position: relative; min-width: 170px; height: 20px; border: thin solid #999; background: #eee; border-radius: .2rem; overflow: hidden; margin: 6px 0; } .cbi-progressbar>div { width: 0; height: 100%; transition: width .25s ease-in; background: var(--bar-bg); } .cbi-progressbar::after { font-family: monospace; font-size: 1em; font-weight: 700; font-size-adjust: .38; line-height: normal; position: absolute; top: 2px; right: 0; bottom: 2px; left: 0; overflow: hidden; content: attr(title); text-align: center; white-space: pre; text-overflow: ellipsis; } #modal_overlay { position: fixed; z-index: 900; top: 0; right: 10000px; bottom: 0; left: -10000px; overflow-y: scroll; transition: opacity .125s ease-in; opacity: 0; background: rgba(0,0,0,0.7); -webkit-overflow-scrolling: touch; } .modal { display: flex; align-items: center; flex-wrap: wrap; width: 90%; min-width: 270px; max-width: 600px; min-height: 32px; border-radius: 3px!important; background: #fff; box-shadow: 0 2px 2px 0 rgba(0,0,0,0.16),0 0 2px 0 rgba(0,0,0,0.12); margin: 5em auto; padding: 1em; } .modal>* { line-height: normal; flex-basis: 100%; margin-bottom: .5em; max-width: 100%; } .modal>pre,.modal>textarea { font-size: 1rem; font-size-adjust: .35; overflow: auto; margin-bottom: .5em; cursor: auto; white-space: pre-wrap; color: #eee; outline: 0; background-color: #101010; box-shadow: 0 2px 2px 0 rgba(0,0,0,0.16),0 0 2px 0 rgba(0,0,0,0.12); padding: 8.5px; } .modal>h4 { margin: .5em 0; } .modal ul { margin-left: 2.2em; } .modal li { list-style-type: square; color: gray; } .modal p { word-break: break-word; } .modal .label { font-size: .6rem; font-weight: 400; cursor: default; border-radius: 0; padding: .1rem .3rem 0; } .modal .label.warning { background-color: #f0ad4e!important; } .modal .btn { padding: .45rem .8rem; } .modal.cbi-modal { max-width: 90%; max-height: none; } body.modal-overlay-active { overflow: hidden; height: 100vh; } body.modal-overlay-active #modal_overlay { right: 0; left: 0; opacity: 1; } .spinning { position: relative; padding-left: 32px!important; } .spinning::before { position: absolute; top: 0; bottom: 0; left: .2em; width: 32px; content: ""; background: url(/luci-static/resources/icons/loading.gif) no-repeat center; background-size: 16px; } .left,.left::before { text-align: left!important; } .right,.right::before { text-align: right!important; } .top { align-self: flex-start!important; vertical-align: top!important; } .bottom { align-self: flex-end!important; vertical-align: bottom!important; } .inline { display: inline; } .cbi-page-actions { padding-top: 1rem; text-align: right; } .cbi-page-actions>form[method="post"] { display: inline-block; } .th[data-type="button"],.td[data-type="button"],.th[data-type="fvalue"],.td[data-type="fvalue"] { flex: 1 1 2em; text-align: center; } .ifacebadge { display: inline-flex; border-bottom: thin solid #ccc; background: #eee; box-shadow: inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05); padding: .5rem .8rem; } td>.ifacebadge,.td>.ifacebadge { font-size: .8rem; background-color: #f0f0f0; } .ifacebadge>em,.ifacebadge>img { display: inline-block; align-self: flex-start; margin: 0 .2rem; } .ifacebadge>img+img { margin: 0 .2rem 0 0; } .network-status-table .ifacebox { flex-grow: 1; margin: .5em; } .network-status-table .ifacebox-body { display: flex; flex-direction: column; height: 100%; } .network-status-table .ifacebox-body>span { flex: 10 10 auto; height: 100%; } .network-status-table .ifacebox-body .ifacebadge { align-items: center; flex: 1 1 auto; min-width: 220px; background-color: #fff; margin: .5em 0 0; padding: .5em; } .cbi-input-textarea { font-family: monospace; width: 100%; font-size: .875rem; min-height: 14rem; color: #000; padding: .8rem; } #syslog { font-size: small; line-height: 1.25; overflow-y: hidden; width: 100%; min-height: 15rem; resize: none; color: #242424; border: 0; border-radius: .375rem; background-color: #FFF; box-shadow: 0 2px 2px 0 rgba(0,0,0,0.16),0 0 2px 0 rgba(0,0,0,0.12); padding: 1rem; } #syslog:focus { outline: 0; } .uci-change-list { font-family: monospace; } .uci-change-list ins,.uci-change-legend-label ins { display: block; text-decoration: none; border: thin solid #0f0; background-color: #cfc; padding: 2px; } .uci-change-list del,.uci-change-legend-label del { font-style: normal; display: block; text-decoration: none; border: thin solid red; background-color: #fcc; padding: 2px; } .uci-change-list var,.uci-change-legend-label var { font-style: normal; display: block; text-decoration: none; border: thin solid #ccc; background-color: #eee; padding: 2px; } .uci-change-list var ins,.uci-change-list var del { font-style: normal; white-space: pre; border: 0; padding: 0; } .uci-change-legend { padding: 5px; } .uci-change-legend-label { float: left; width: 150px; } .uci-change-legend-label>ins,.uci-change-legend-label>del,.uci-change-legend-label>var { display: block; float: left; width: 10px; height: 10px; margin-right: 4px; } .uci-change-legend-label var ins,.uci-change-legend-label var del { line-height: .4; border: 0; } #iwsvg,#iwsvg2,#bwsvg { border: thin solid #d4d4d4!important; } #iwsvg,[data-page="admin-status-realtime-bandwidth"] #bwsvg { border-top: 0!important; } .ifacebox { line-height: 1.25; display: inline-flex; flex-direction: column; min-width: 100px; border-bottom: thin solid #ccc; background-color: #f9f9f9; box-shadow: inset 0 1px 0 rgba(255,255,255,0.4),0 1px 2px rgba(0,0,0,0.2); } .ifacebox-head { background: #eee; padding: .25em; } .ifacebox-head.active { background: var(--primary); } .ifacebox-head.active * { color: var(--white); } .ifacebox-body { line-height: 1.6em; padding: .5em 1rem; } .zonebadge { display: inline-block; padding: .2rem .5rem; } .zonebadge .ifacebadge { border: thin solid #6c6c6c; margin: .1rem .2rem; padding: .2rem .3rem; } .zonebadge>input[type="text"] { min-width: 10rem; margin-top: .3rem; padding: .16rem 1rem; } .zonebadge>em,.zonebadge>strong { display: inline-block; margin: 0 .2rem; } .cbi-value-field .cbi-input-checkbox,.cbi-value-field .cbi-input-radio { margin-top: .1rem; } .cbi-value-field>ul>li { display: flex; } .cbi-value-field>ul>li .ifacebadge { margin-top: -0.5rem; margin-left: .4rem; background-color: #eee; } .cbi-section-table-row>.cbi-value-field .cbi-dropdown { min-width: 7rem; } .cbi-section-create { display: inline-flex; align-items: center; margin: .25rem 0 .25rem 1rem; } .cbi-section-create>* { margin: .5rem; } div.cbi-value var,td.cbi-value-field var,.td.cbi-value-field var { font-style: italic; color: #0069d6; } .cbi-optionals { border-top: thin solid #ccc; padding: 1rem 1rem 0; } .cbi-dropdown-container { position: relative; } .cbi-tooltip-container,span[data-tooltip],span[data-tooltip] .label { cursor: help!important; } .cbi-tooltip { position: absolute; z-index: 1000; left: -1000px; transition: opacity .25s ease-out; white-space: pre; pointer-events: none; opacity: 0; border-radius: 3px; background: #fff; box-shadow: 0 0 2px #444; padding: 2px 5px; } .cbi-tooltip-container:hover .cbi-tooltip { left: auto; transition: opacity .25s ease-in; opacity: 1; } .zonebadge .cbi-tooltip { background: inherit; margin: -1.5rem 0 0 -0.5rem; padding: .25rem; } .zonebadge-empty { color: #404040; background: repeating-linear-gradient(45deg,rgba(204,204,204,0.5),rgba(204,204,204,0.5) 5px,rgba(255,255,255,0.5) 5px,rgba(255,255,255,0.5) 10px); } .zone-forwards { display: flex; min-width: 10rem; } .zone-forwards>* { flex: 1 1 45%; } .zone-forwards>span { flex-basis: 10%; text-align: center; padding: 0 .25rem; } .zone-forwards .zone-src,.zone-forwards .zone-dest { display: flex; flex-direction: column; } .label { font-size: .8rem; font-weight: 700; white-space: nowrap; text-decoration: none; text-transform: uppercase; color: #fff!important; border-radius: 3px; background-color: #bfbfbf; text-shadow: none; padding: .3rem .8rem; } label>input[type="checkbox"],label>input[type="radio"] { position: relative; top: .4rem; right: .2rem; vertical-align: bottom; margin: 0; } label[data-index][data-depends] { padding-right: 2em; } .darkMask { position: fixed; z-index: 99; display: none; width: 100%; height: 100%; content: ""; top: 0; background-color: rgba(0,0,0,0.56); } #diag-rc-output>pre,#command-rc-output>pre,[data-page="admin-services-wol"] .notice code { font-size: 1.2rem; font-size-adjust: .35; line-height: normal; display: block; overflow-y: hidden; width: 100%; white-space: pre; color: #eee; background-color: #101010; box-shadow: 0 2px 2px 0 rgba(0,0,0,0.16),0 0 2px 0 rgba(0,0,0,0.12); padding: 8.5px; } [data-page="admin-network-diagnostics"] .table { box-shadow: none; } input[name="ping"],input[name="traceroute"],input[name="nslookup"] { width: 80%; } .node-status-overview>.main fieldset:nth-child(4) .td:nth-child(2),.node-status-processes>.main .table .tr .td:nth-child(3) { white-space: normal; } [data-page="admin-system-reboot"] .cbi-button { background: #fb6340!important; } [data-page="admin-system-reboot"] p>span { position: relative; top: .1rem; left: 1rem; } [data-page="admin-vpn-passwall"] h4 { background: transparent; } #cbi-samba [data-tab="template"] .cbi-value-title { width: auto; padding-bottom: .6rem; } .controls { margin: .5em 1rem 1em!important; } .controls>*>.btn:not([aria-label$="page"]) { flex-grow: initial!important; margin-top: .25rem; } .controls>#pager>.btn[aria-label$="page"] { font-size: 1.4rem; font-weight: 700; } .controls>*>label { margin-bottom: .2rem; } [data-page="admin-system-opkg"] div.btn { line-height: 3; display: inline; padding: .3rem .6rem; } [data-page^="admin-system-admin"]:not(.node-main-login) .cbi-map:not(#cbi-dropbear),[data-page="admin-system-opkg"] #maincontent>.container { margin-top: 2rem; padding-top: .1rem; } [data-page="admin-system-opkg"] #maincontent>.container { margin: 0 1.25rem 1rem; } .td.version,.td.size { white-space: normal!important; word-break: break-word; } [data-page="admin-system-crontab"] #view p { margin-bottom: 1rem; } [data-page="admin-system-flash"] .cbi-map-tabbed { border-radius: .375rem; } [data-page="admin-system-flash"] legend { display: block!important; font-size: 1.2rem; width: 100%; border-bottom: 1px solid rgba(0,0,0,0.05); line-height: 1.5; margin-bottom: 0rem; letter-spacing: .1rem; color: #32325d; font-weight: 700; padding: 1rem 0 1rem 1.5rem; } [data-page="admin-system-flash"] .cbi-section-descr { font-weight: 600; color: #525f7f; padding: 1rem 0 1rem 1.5rem; } [data-page="admin-system-flash"] .modal label>input[type="checkbox"] { top: -0.35rem; } [data-page="admin-system-flash"] .modal .btn { white-space: normal!important; } #cbi-wireless>#wifi_assoclist_table>.tr { box-shadow: inset 1px -1px 0 #ddd,inset -1px -1px 0 #ddd; } #cbi-wireless>#wifi_assoclist_table>.tr.placeholder>.td { right: 33px; bottom: 33px; left: 33px; border-top: thin solid #ddd!important; } #cbi-wireless>#wifi_assoclist_table>.tr.table-titles { box-shadow: inset 1px 0 0 #ddd,inset -1px 0 0 #ddd; } #cbi-wireless>#wifi_assoclist_table>.tr.table-titles>.th { border-bottom: thin solid #ddd; box-shadow: 0 -1px 0 0 #ddd; } #wifi_assoclist_table>.tr>.td[data-title="RX Rate / TX Rate"] { width: 23rem; } [data-page="admin-network-dhcp"] [data-tab-active="true"] { padding: 1rem 0!important; } #iptables { margin: 0; } .Firewall form { box-shadow: none; margin: 2rem 2rem 0 0; padding: 0; } #cbi-firewall-redirect table *,#cbi-network-switch_vlan table *,#cbi-firewall-zone table * { font-size: small; } #cbi-firewall-redirect table input[type="text"],#cbi-network-switch_vlan table input[type="text"],#cbi-firewall-zone table input[type="text"] { width: 5rem; } #cbi-firewall-redirect table select,#cbi-network-switch_vlan table select,#cbi-firewall-zone table select { min-width: 3.5rem; } #cbi-network-switch_vlan .th,#cbi-network-switch_vlan .td { flex-basis: 12%; } [data-page="admin-network-firewall-custom"] #view p,[data-page="admin-status-routes"] #view p { margin-bottom: 1rem; padding: 0 1.5rem; } [data-page="admin-network-firewall-custom"] #view p textarea,[data-page="admin-status-routes"] #view p textarea { border-radius: .375rem; padding: 1rem; } #applyreboot-container { margin: 2rem; } #applyreboot-section { line-height: 300%; margin: 2rem; } .OpenVPN a { line-height: initial!important; } .commandbox { width: 24%!important; border-bottom: thin solid #ccc; background: #eee; box-shadow: inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05); margin: 10px 0 0 10px!important; padding: .5rem 1rem; } .commandbox h3 { line-height: normal!important; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; margin: 6px 0!important; } .commandbox div { left: auto!important; } .commandbox code { position: absolute; overflow: hidden; max-width: 60%; margin-left: 4px; white-space: nowrap; text-overflow: ellipsis; padding: 2px 3px; } .commandbox code:hover { overflow-y: auto; max-height: 50px; white-space: normal; } .commandbox p:first-of-type { margin-top: -6px; } .commandbox p:nth-of-type(2) { margin-top: 2px; } #command-rc-output .alert-message { line-height: 1.42857143; position: absolute; top: 40px; right: 32px; max-width: 40%; animation: anim-fade-in 1.5s forwards; word-break: break-word; opacity: 0; margin: 0; } input[type="checkbox"] { appearance: none!important; -webkit-appearance: none!important; border: 1px solid #dee2e6; width: 16px!important; height: 16px!important; cursor: pointer; transition: all .2s; margin: 1rem 0 0; padding: 0; } input[type="checkbox"]:checked { border: 1px solid var(--primary); background-image: url('data:image/svg+xml,%3csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 8 8\'%3e%3cpath fill=\'%23fff\' d=\'M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z\'/%3e%3c/svg%3e')!important; background-color: var(--primary); background-size: 70%; background-repeat: no-repeat; background-position: center; } .fb-container .cbi-button { height: auto!important; } #cbi-usb_printer-printer em { display: block; text-align: center; padding: 1rem; } pre.command-output { padding: 1.5rem; } [data-page="admin-nlbw-display"] .cbi-section[data-tab="export"] { padding: 1.5rem!important; } [data-page="admin-status-iptables"] .right { margin-bottom: 0!important; } .table[width="100%"],.th[width="100%"],.td[width="100%"],header,.main,.main .main-left .nav li.slide .slide-menu li:hover::after,.main .main-left .nav li.slide .slide-menu .active:hover::after,.cbi-section-table-row>.cbi-value-field .cbi-dropdown,.cbi-section-table-row>.cbi-value-field .cbi-input-select,.cbi-section-table-row>.cbi-value-field .cbi-input-text,.cbi-section-table-row>.cbi-value-field .cbi-input-password,.cbi-dropdown[open]>ul.dropdown>li>input.create-item-input:first-child:last-child,.cbi-dropdown .zonebadge,#cbi-firewall-zone .td,#cbi-network-switch_vlan .td { width: 100%; } .cbi-dropdown,select[multiple="multiple"],.alert .btn,.alert-message .btn { height: auto; } .login-page .login-container .login-form .brand:hover,header .fill .container .showSide:hover,.a-to-btn { text-decoration: none; } .login-page .login-container footer .luci-link,.cbi-dropdown[empty]>ul>li,.cbi-dropdown[optional][open]>ul.dropdown>li[placeholder],.cbi-dropdown[multiple][open]>ul.dropdown>li>form,#cbi-samba [data-tab="template"] .cbi-value-field,#cbi-firewall-zone .table,#cbi-network-switch_vlan .table { display: block; } .main-left::-webkit-scrollbar-thumb,.tabs::-webkit-scrollbar-thumb,.cbi-tabmenu::-webkit-scrollbar-thumb { background-color: #f6f9fc; } .main-left::-webkit-scrollbar-track,.tabs::-webkit-scrollbar-track,.cbi-tabmenu::-webkit-scrollbar-track { background-color: #fff; } .pull-left,.cbi-page-actions .cbi-button-link:first-child { float: left; } #xhr_poll_status *,.cbi-button-apply>ul.preview li,.cbi-button-apply>ul:first-child li { color: #fff; } .container .alert,.container .alert-message,.cbi-map-descr+fieldset { margin-top: 1rem; } .main .main-left .nav,.cbi-value-field>ul>li>label { margin-top: .5rem; } .main .main-left .nav>li>a:first-child,.main .main-left .nav li .menu { border-radius: .375rem; cursor: default; display: block; font-size: 1rem; position: relative; text-decoration: none; transition: all .2s; margin: .1rem .5rem; padding: .675rem 0 .675rem 2.5rem; } .main .main-left .nav>li>a:first-child.active,.main .main-left .nav li .menu.active { background: var(--primary); color: #fff; } .main .main-left .nav>li>a:first-child.active::before,.main .main-left .nav>li>a:first-child:hover::before,.main .main-left .nav li .menu.active::before,.main .main-left .nav li .menu:hover::before { color: #fff!important; } .main .main-left .nav>li>a:first-child.active::after,.main .main-left .nav li .menu.active::after { color: #fff!important; transform: rotate(90deg); } .main .main-left .nav>li>a:first-child:hover,.main .main-left .nav li .menu:hover { background: var(--primary); color: #fff; cursor: pointer; } .main .main-left .nav>li>a:first-child::before,.main .main-left .nav li .menu::before { -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; color: var(--primary); content: "\e915"; font-family: argon!important; font-style: normal; font-variant: normal; font-weight: 400; left: .8rem; line-height: 1; padding-top: 3px; position: absolute; text-transform: none; transition: all .3s; } .main .main-left .nav li.slide,[data-page="admin-system-flash"] .cbi-value,[data-page="admin-network-dhcp"] .cbi-value { padding: 0; } .main .main-left .nav li.slide ul,.main>.main-left[style*="overflow: hidden"]>.nav>.slide>.menu::before,.tr.placeholder .td[data-title]::before,.cbi-dropdown>ul.preview,.cbi-button-apply>ul.preview,.cbi-dropdown>ul>li .hide-close,.cbi-dropdown[open]>ul.dropdown>li .hide-open,.hidden,.showSide,[data-page^="admin-system-commands"] .panel-title,[data-page^="command-cfg"] .mobile-hide,[data-page^="command-cfg"] .showSide { display: none; } .main .main-left .nav li.slide:hover,.main .main-left .nav li.slide .slide-menu li:hover,.main .main-left .nav li.slide .slide-menu .active:hover { background: none; } .cbi-section>h3:first-child,.cbi-section>h4:first-child,.cbi-section>p:first-child,[data-tab-title]>h3:first-child,[data-tab-title]>h4:first-child,[data-tab-title]>p:first-child,.cbi-section p { padding: 1rem; } table>tbody>tr>td,table>tbody>tr>th,table>tfoot>tr>td,table>tfoot>tr>th,table>thead>tr>td,table>thead>tr>th,.table>.tbody>.tr>.td,.table>.tbody>.tr>.th,.table>.tfoot>.tr>.td,.table>.tfoot>.tr>.th,.table>.thead>.tr>.td,.table>.thead>.tr>.th,.table>.tr>.td.cbi-value-field,.table>.tr>.th.cbi-section-table-cell,.uci-change-list var,.uci-change-list del,.uci-change-list ins,.cbi-section-remove { padding: .5rem; } .cbi-section-table-row .td,.center,.center::before { text-align: center!important; } div>table>tbody>tr:nth-of-type(2n),div>.table>.tr:nth-of-type(2n),.cbi-section .cbi-section-remove:nth-of-type(2n),.container>.cbi-section .cbi-section-node:nth-of-type(2n),.cbi-section[id] .cbi-section-remove:nth-of-type(4n+3),.cbi-section[id] .cbi-section-node:nth-of-type(4n+4),.cbi-tabcontainer>.cbi-value:nth-of-type(2n),.cbi-rowstyle-1 { background-color: #f9f9f9; } .btn.primary,.cbi-page-actions .cbi-button-save,.cbi-page-actions .cbi-button-apply+.cbi-button-save,.cbi-button-add,.cbi-button-save,.cbi-button-positive,.cbi-button-link,.cbi-button[value="Enable"],.cbi-button[value="Scan"],.cbi-button[value^="Back"],.cbi-button-neutral[onclick="handleConfig(event)"],.cbi-page-actions .cbi-button-apply,.cbi-section-actions .cbi-button-edit,.cbi-button-edit,.cbi-button-apply,.cbi-button-reload,.cbi-button-action,.cbi-button[value="Submit"],.cbi-button[value="Upload"],.cbi-button[value$="Apply"],.cbi-button[onclick="addKey(event)"] { background-color: var(--primary); border: thin solid var(--primary); color: #fff!important; font-weight: 400; } .tabs::-webkit-scrollbar,.cbi-tabmenu::-webkit-scrollbar { height: 5px; width: 1px; } .tabs li[class~="active"] a,.tabs li:hover a,.cbi-tabmenu li[class~="cbi-tab"] a { color: var(--primary); } .tabs li a,.cbi-tabmenu li a { color: #404040; text-decoration: none; padding: .5rem .8rem; } .cbi-dropdown>ul>li .hide-open,.cbi-dropdown[open]>ul.dropdown>li .hide-close { display: initial; } .cbi-dropdown[open]>ul.dropdown>li label,.cbi-image-button { margin-left: .5rem; } .network-status-table,.network-status-table .ifacebox-body>div { display: flex; flex-wrap: wrap; } [data-page="admin-system-reboot"] p,[data-page="admin-nlbw-backup"] form { padding-left: 1.5rem; } [data-page="admin-system-admin"] .cbi-map h2,[data-page="admin-system-admin-password"] .cbi-map h2,[data-page="admin-system-admin"] .cbi-map .cbi-map-descr,[data-page="admin-system-admin-password"] .cbi-map .cbi-map-descr,[data-page="admin-system-opkg"] h2 { color: var(--gray-dark); margin-left: 0; } .cbi-tabmenu+.cbi-section,[data-page="admin-system-flash"] .cbi-section .cbi-section { margin-top: 0; } @keyframes anim-fade-in { 100% { opacity: 1; } } @media all and (-ms-high-contrast:none) { .main>.main-left>.nav>.slide>.menu::before { top: 30.25%; } .main>.main-left>.nav>li:last-child::before { top: 20%; } .showSide::before { top: -12px; } } @media screen and (max-width:1600px) { header>.fill>.container>#logo { margin: 0 2.5rem 0 .5rem; } .main-left { width: calc(0% + 13rem); } .main-right { width: calc(100% - 13rem); } .btn:not(button),.cbi-button { font-size: .8rem; } .label { padding: .2rem .6rem; } .cbi-value-title { width: 15rem; padding-right: .6rem; } .cbi-value-field .cbi-dropdown,.cbi-value-field .cbi-input-select,.cbi-value input[type="text"],.cbi-value input[type="password"] { min-width: 18rem; } #cbi-firewall-zone .cbi-input-select { min-width: 9rem; } .cbi-input-textarea { font-size: small; } .node-admin-status>.main fieldset li>a { padding: .3rem .6rem; } } @media screen and (max-width:1366px) { header>.fill>.container { cursor: default; } .main-left { width: calc(0% + 13rem); } .main-right { width: calc(100% - 13rem); } .tabs>li>a,.cbi-tabmenu>li>a { padding: .2rem .8rem; } .panel-title { font-size: 1.1rem; padding-bottom: 1rem; } table { font-size: .7rem!important; width: 100%!important; } .table .cbi-input-text { width: 100%; } .cbi-value-field .cbi-dropdown,.cbi-value-field .cbi-input-select,.cbi-value input[type="text"],.cbi-value input[type="password"] { min-width: 16rem; } #cbi-firewall-zone .cbi-input-select { min-width: 4rem; } .main>.main-left>.nav>li,.main>.main-left>.nav>li>a,.main .main-left .nav>li>a:first-child,.main>.main-left>.nav>.slide>.menu,.main>.main-left>.nav>li>[data-title="Logout"] { font-size: .9rem; } .main>.main-left>.nav>.slide>.slide-menu>li>a { font-size: .7rem; } #modal_overlay { top: 0rem; } [data-page="admin-network-firewall-forwards"] .table:not(.cbi-section-table) { display: block; } [data-page="admin-network-firewall-forwards"] .table:not(.cbi-section-table),[data-page="admin-network-firewall-rules"] .table:not(.cbi-section-table),[data-page="admin-network-hosts"] .table,[data-page="admin-network-routes"] .table { overflow-y: visible; } .commandbox { width: 32%!important; } .btn:not(button),.cbi-button { font-size: .8rem; } } @media screen and (max-width:1152px) { header>.fill>.container>.brand { position: relative; } html,.main { overflow-y: visible; } .main>.loading>span { top: 25%; } .main-left { width: calc(0% + 13rem); } .main-right { width: calc(100% - 13rem); } body:not(.logged-in) .showSide { visibility: hidden; width: 0; margin: 0; } .cbi-value-title { width: 12rem; padding-right: 1rem; } .cbi-value-field .cbi-dropdown,.cbi-value-field .cbi-input-select,.cbi-value input[type="text"] { width: 16rem; min-width: 16rem; } .cbi-value input[name^="pw"],.cbi-value input[data-update="change"]:nth-child(2) { width: 13rem!important; min-width: 13rem; } #diag-rc-output>pre,#command-rc-output>pre,[data-page="admin-services-wol"] .notice code { font-size: 1rem; } .Interfaces .table { overflow-x: hidden; } #packages.table { display: grid; } .tr { display: flex; flex-direction: row; flex-wrap: wrap; } .Overview .table[width="100%"]>.tr { flex-wrap: nowrap; } .tr.placeholder { border-bottom: thin solid #ddd; } .tr.placeholder>.td,#cbi-firewall .tr>.td,#cbi-network .tr:nth-child(2)>.td,.cbi-section #wifi_assoclist_table .tr>.td { border-top: 0; } .th,.td { display: inline-block; align-self: flex-start; flex: 2 2 10%; text-overflow: ellipsis; word-wrap: break-word; } .td select,.td input[type="text"] { width: 100%; word-wrap: normal; } .td [data-dynlist]>input,.td input.cbi-input-password { width: calc(100% - 1.5rem); } .td[data-type="button"],.td[data-type="fvalue"] { flex: 1 1 12.5%; text-align: left; } .th.cbi-value-field,.td.cbi-value-field,.th.cbi-section-table-cell,.td.cbi-section-table-cell { flex-basis: auto; padding-top: 1rem; } .cbi-section-table-row { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; box-shadow: 0 2px 2px 0 rgba(0,0,0,0.16),0 0 2px 0 rgba(0,0,0,0.12); } .td.cbi-value-field,.cbi-section-table-cell { display: inline-block; flex: 10 10 auto; flex-basis: 50%; text-align: center; } .td.cbi-section-actions { vertical-align: bottom; } .tr[data-title]::before,.tr.cbi-section-table-titles.named::before { font-size: .9rem; display: block; flex: 1 1 100%; border-bottom: thin solid rgba(0,0,0,0.26); background: #e9ecef; } .cbi-button+.cbi-button { margin-left: 0; } .td.cbi-section-actions>*>*,.td.cbi-section-actions>*>form>* { margin: 2.1px 3px; } .Firewall form { position: static!important; box-shadow: 0 2px 2px 0 rgba(0,0,0,0.16),0 0 2px 0 rgba(0,0,0,0.12); margin: 0 0 2rem; padding: 2rem; } .Firewall form input { width: 100%!important; margin: 1rem 0 0; } .Firewall .center,.Firewall .center::before { text-align: left!important; } .commandbox { width: 100%!important; margin-left: 0!important; } .btn:not(button),.cbi-button { font-size: .8rem; } header>.fill>.container>#logo,.tr.table-titles,.tr.cbi-section-table-titles,.tr.cbi-section-table-descr { display: none; } .node-main-login>.main .cbi-value-title,.td[data-title],[data-page^="admin-status-realtime"] .td[id] { text-align: left; } .table,.td[data-title]::before { display: block; } } @media screen and (max-width:768px) { .cbi-progressbar::after { font-size: .5rem; line-height: 1.5; } .main-left { position: fixed; z-index: 100; width: 0; } .main-right { width: 100%; } .showSide { position: relative; z-index: 99; display: inline-block!important; padding: .1rem; } .showSide::before { font-family: argon!important; font-style: normal!important; font-weight: 400!important; font-variant: normal!important; text-transform: none!important; line-height: 1; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; content: "\e20e"; font-size: 1.7rem; } header>.fill>.container>.brand { display: inline-block; } body,.main>.main-left>.nav>.slide>.slide-menu>li>a { font-size: .8rem; } } @media screen and (max-width:600px) { #maincontent>.container { margin: 0 1rem 1rem; } .cbi-value-title { text-align: left; } [data-page="admin-system-flash"] .cbi-value { padding: 0 1rem; } [data-page="admin-network-dhcp"] [data-tab-active="true"] { padding: 1rem!important; } .cbi-dynlist p { padding: .5rem 1rem; } body { overflow-x: hidden; } .node-main-login .main .main-right #maincontent .container .cbi-map .cbi-section .cbi-section-node .cbi-value .cbi-value-field { width: 16rem; } .tabs::-webkit-scrollbar,.cbi-tabmenu::-webkit-scrollbar { width: 0px; height: 0px; } .cbi-value-field,.cbi-value-description { display: block!important; padding-left: 0!important; padding-right: 0!important; } [data-page="admin-system-admin-password"] .cbi-value-field { display: table-cell!important; } .modal.cbi-modal { max-width: 100%; max-height: none; } .modal { display: flex; align-items: center; flex-wrap: wrap; width: 100%; min-width: 270px; max-width: 600px; min-height: 32px; border-radius: 3px!important; background: #fff; box-shadow: 0 2px 2px 0 rgba(0,0,0,0.16),0 0 2px 0 rgba(0,0,0,0.12); margin: 5em auto; padding: 1em; } .cbi-dropdown[open]>ul.dropdown { left: .2rem!important; right: 0!important; margin-bottom: 1rem; } .mobile-hide,.node-main-login footer { display: none; } [data-page="admin-system-flash"] legend,[data-page="admin-system-flash"] .cbi-section-descr { padding: 1rem 0 1rem 1rem; } } @media screen and (min-width:600px) { ::-webkit-scrollbar { width: 10px; height: 10px; } ::-webkit-scrollbar,::-webkit-scrollbar-corner { background: transparent; } ::-webkit-scrollbar-thumb { background: #9e9e9e; } ::-webkit-scrollbar-thumb:hover { background: #757575; } ::-webkit-scrollbar-thumb:active { background: #424242; } } @media screen and (max-width:480px) { .mobile-hide { display: none; } .login-page .login-container { margin-left: 0rem!important; width: 100%; } .login-page .login-container .login-form .form-login .input-group::before { color: #525461; } .login-page .login-container .login-form .form-login .input-group input { color: #525461; border-bottom: var(--white) 1px solid; border-radius: 0; } }