├── .gitignore ├── Dockerfile ├── LICENSE ├── README.md ├── docker-compose.yml ├── example.env ├── favicon.png ├── img └── boxed-bg-dark.jpg ├── index.html ├── logo.svg ├── manager.js ├── pihole-manager.png ├── piholegrabber.py ├── piholemanage.service ├── requirements.txt └── style ├── custom.css ├── pi-hole-dark.css ├── pi-hole.css └── vendor ├── AdminLTE.min.css ├── SourceSansPro ├── OFL.txt ├── SourceSansPro-Black.ttf ├── SourceSansPro-BlackItalic.ttf ├── SourceSansPro-Bold.ttf ├── SourceSansPro-BoldItalic.ttf ├── SourceSansPro-ExtraLight.ttf ├── SourceSansPro-ExtraLightItalic.ttf ├── SourceSansPro-Italic.ttf ├── SourceSansPro-Light.ttf ├── SourceSansPro-LightItalic.ttf ├── SourceSansPro-Regular.ttf ├── SourceSansPro-Semibold.ttf ├── SourceSansPro-SemiboldItalic.ttf └── SourceSansPro.css ├── ionicons-2.0.1 ├── css │ └── ionicons.min.css └── fonts │ ├── ionicons.eot │ ├── ionicons.svg │ ├── ionicons.ttf │ └── ionicons.woff └── skin-blue.min.css /.gitignore: -------------------------------------------------------------------------------- 1 | .env 2 | data/*.json -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3 2 | 3 | WORKDIR /usr/src/app 4 | 5 | COPY requirements.txt ./ 6 | RUN pip install --no-cache-dir -r requirements.txt 7 | 8 | COPY . . 9 | 10 | CMD [ "python", "./piholegrabber.py" ] 11 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Tony Jeffree 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # pihole-manager 2 | 3 | Simple web interface for managing two Pi-hole instances 4 | 5 | ![piholemanager](https://raw.githubusercontent.com/tjeffree/pihole-manager/master/pihole-manager.png) 6 | 7 | ## Contents 8 | 9 | ### pihole grabber 10 | 11 | The pihole grabber is a program to fetch data from the two Pi-hole instances and save it to `json` files. A systemctl service file is included too. 12 | 13 | ### web interface 14 | 15 | The web interface needs putting behind a web server of some kind. An nginx docker container is probably the most convenient. 16 | 17 | ## Instructions 18 | 19 | ``` 20 | git clone https://github.com/tjeffree/pihole-manager.git 21 | cd pihole-manager 22 | ``` 23 | 24 | ### Set up `.env` 25 | 26 | Copy the `example.env` to `.env` and update it with your two Pi-hole details. 27 | 28 | ``` 29 | cp example.env .env 30 | 31 | nano .env 32 | ``` 33 | 34 | *There is no attention to security here, it's assumed your Pi-holes are on your internal network and not exposed to the world.* 35 | 36 | ### Full docker 37 | 38 | **Install docker and docker compose** 39 | 40 | Hit up [docker.io](https://docker.io) 41 | 42 | **Run** 43 | 44 | ``` 45 | docker-compose up -d 46 | ``` 47 | 48 | That's it, you're done. The dashboard will be available at `http://[address-of-server]:8080` 49 | 50 | --- 51 | 52 | ### Python daemon setup 53 | 54 | **Install dependencies** 55 | 56 | `pip3 install --no-cache-dir -r requirements.txt` 57 | 58 | **Test it** 59 | 60 | `python3 ./piholegrabber.py` 61 | 62 | Should see a bit of output showing the Pis that are being monitored. It'll wait for you to `ctrl+c` to quit. 63 | 64 | **Set up service** 65 | 66 | Modify `piholemanage.service` with the location of `piholegrabber.py` then: 67 | 68 | ``` 69 | sudo cp piholemanage.service /etc/systemd/system/ 70 | sudo chown root:root /etc/systemd/system/piholemanage.service 71 | sudo chmod 644 /etc/systemd/system/piholemanage.service 72 | 73 | sudo systemctl enable piholemanage 74 | sudo systemctl start piholemanage 75 | ``` 76 | Check it's running with: 77 | ``` 78 | sudo systemctl status piholemanage 79 | ``` 80 | You should also find a new `data` directory in the `pihole-manager` directory. 81 | 82 | ### Web interface setup 83 | 84 | **Install docker** 85 | 86 | Hit up [docker.io](https://docker.io) 87 | 88 | **Start container** 89 | 90 | ``` 91 | docker run --name pihole-manage -v `pwd`:/usr/share/nginx/html -p 8080:80 -d nginx 92 | ``` 93 | 94 | Now you should be able to hit `http://[address-of-server]:8080` 95 | 96 | *I used `8080` in case you are running this on the same server as Pi-hole which already uses port `80` but change as you like* 97 | 98 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3' 2 | services: 3 | pythonservice: 4 | image: "tjeffree/piholemanager" 5 | build: 6 | context: . 7 | dockerfile: Dockerfile 8 | volumes: 9 | - $PWD:/usr/src/app 10 | restart: unless-stopped 11 | nginx: 12 | image: "nginx" 13 | ports: 14 | - 8080:80 15 | volumes: 16 | - $PWD:/usr/share/nginx/html 17 | restart: unless-stopped 18 | -------------------------------------------------------------------------------- /example.env: -------------------------------------------------------------------------------- 1 | PI_ONE=192.168.0.2 2 | PI_TWO=192.168.0.3 3 | PI_ONE_AUTH=xxxxxxxxxxx 4 | PI_TWO_AUTH=xxxxxxxxxxx 5 | -------------------------------------------------------------------------------- /favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/favicon.png -------------------------------------------------------------------------------- /img/boxed-bg-dark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/img/boxed-bg-dark.jpg -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | Pi Hole Manager 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 |

Pi-holes

25 | 26 |
27 |
28 |
29 |
30 |

Total queries (29 clients)

31 |

?

32 |
33 |
34 | 35 |
36 |
37 |
38 |
39 |
40 |
41 |

Queries Blocked

42 |

?

43 |
44 |
45 | 46 |
47 |
48 |
49 |
50 |
51 |
52 |

Percent Blocked

53 |

?

54 |
55 |
56 | 57 |
58 |
59 |
60 |
61 |
62 |
63 |

Domains on Blocklist

64 |

?

65 |
66 |
67 | 68 |
69 |
70 |
71 |
72 | 73 |
74 |
75 | 76 |
77 |
78 | 79 |
80 |
81 | 82 |
83 |
84 | 85 |
86 |
87 | 88 |
89 |
90 | 91 |
92 |
93 | 94 |
95 |
96 |
97 |
98 |

Top Blocked Domains

99 |
100 | 101 |
102 |
103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 |
DomainHitsFrequency
115 |
116 |
117 | 120 | 121 |
122 | 123 |
124 |
125 | 126 |
127 |
128 | Visit 129 | Pi Hole I 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 |
138 |
139 |
140 | Visit 141 | Pi Hole II 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 |
150 |
151 |
152 | 153 |
154 | 155 | 156 | 157 | 158 | 159 | -------------------------------------------------------------------------------- /logo.svg: -------------------------------------------------------------------------------- 1 | NewVortex -------------------------------------------------------------------------------- /manager.js: -------------------------------------------------------------------------------- 1 | const REFRESH = 2000 2 | 3 | $(document).ready(() => { 4 | 5 | let totalQueries = null 6 | 7 | const $enable = $('.enable'), 8 | $unique_clients = $('#unique_clients'), 9 | $dns_queries_today = $('#dns_queries_today'), 10 | $ads_blocked_today = $('#ads_blocked_today'), 11 | $ads_percentage_today = $('#ads_percentage_today'), 12 | $domains_being_blocked = $('#domains_being_blocked'), 13 | $top_ads = $('#top_ads'), 14 | 15 | $table1 = $('#table1'), 16 | $table2 = $('#table2'), 17 | 18 | keymap = { 19 | 'domains_being_blocked': 'Domains', 20 | 'dns_queries_today': 'Queries', 21 | 'ads_blocked_today': 'Blocked', 22 | 'ads_percentage_today': 'Percent', 23 | 'unique_domains': 'Unique Domains', 24 | 'queries_forwarded': null, 25 | 'queries_cached': null, 26 | 'clients_ever_seen': null, 27 | 'unique_clients': 'Clients', 28 | 'dns_queries_all_types': 'Queries All', 29 | 'reply_NODATA': null, 30 | 'reply_NXDOMAIN': null, 31 | 'reply_CNAME': null, 32 | 'reply_IP': null, 33 | 'privacy_level': null, 34 | 'status': 'Status' 35 | } 36 | 37 | const endpoints = [ 38 | {}, 39 | {} 40 | ] 41 | 42 | const summarypoints = [ 43 | './data/summary-1.json', 44 | './data/summary-2.json' 45 | ] 46 | 47 | const statusAction = 'status' 48 | 49 | $('button').on('click', function () { 50 | const action = this.getAttribute('data-action'), 51 | time = this.getAttribute('data-time') 52 | 53 | doAction(action, time); 54 | }) 55 | 56 | function apiEnd(host, action, val) { 57 | let actionVal = val ? `=${val}` : '' 58 | return `http://${host.ip}/admin/api.php?auth=${host.auth}&${action}${actionVal}` 59 | } 60 | 61 | function doAction(action, time) { 62 | 63 | endpoints.forEach(host => { 64 | 65 | let url = apiEnd(host, action, time) 66 | 67 | fetch(url, { 68 | mode: 'no-cors' 69 | }) 70 | 71 | if (action === 'disable') { 72 | enableOn() 73 | } else { 74 | enableOff() 75 | } 76 | 77 | }) 78 | 79 | } 80 | 81 | function requestInterval(fn, delay) { 82 | let start = new Date().getTime(), 83 | handle = {} 84 | function loop() { 85 | handle.value = requestAnimationFrame(loop) 86 | const current = new Date().getTime(), 87 | delta = current - start 88 | if (delta >= delay) { 89 | fn.call() 90 | start = new Date().getTime() 91 | } 92 | } 93 | handle.value = requestAnimationFrame(loop) 94 | return handle 95 | } 96 | 97 | function updateStatus(host) { 98 | requestInterval(() => { 99 | getData() 100 | }, REFRESH) 101 | } 102 | 103 | async function getData() { 104 | 105 | pi1data = await fetch(`${summarypoints[0]}`) 106 | pi2data = await fetch(`${summarypoints[1]}`) 107 | pi1sum = await pi1data.json() 108 | pi2sum = await pi2data.json() 109 | 110 | let clients = cleanNumber(pi1sum.unique_clients).toLocaleString() 111 | + ' / ' + 112 | cleanNumber(pi2sum.unique_clients).toLocaleString() 113 | let dns = cleanNumber(pi1sum.dns_queries_today) + cleanNumber(pi2sum.dns_queries_today) 114 | let blocked = cleanNumber(pi1sum.ads_blocked_today) + cleanNumber(pi2sum.ads_blocked_today) 115 | 116 | let perc = 117 | ((cleanNumber(pi1sum.ads_blocked_today) + cleanNumber(pi2sum.ads_blocked_today)) / 118 | (cleanNumber(pi1sum.dns_queries_today) + cleanNumber(pi2sum.dns_queries_today))) * 100 119 | 120 | let domains = cleanNumber(pi1sum.domains_being_blocked).toLocaleString() 121 | + ' / ' + 122 | cleanNumber(pi2sum.domains_being_blocked).toLocaleString() 123 | 124 | if (pi1sum.status === 'disabled' || pi2sum.status === 'disabled') { 125 | enableOn() 126 | } else { 127 | enableOff() 128 | } 129 | 130 | totalQueries = dns 131 | 132 | $unique_clients.text(clients) 133 | $dns_queries_today.text(dns.toLocaleString()) 134 | $ads_blocked_today.text(blocked.toLocaleString()) 135 | $ads_percentage_today.text(Math.round(perc * 10) / 10 + "%") 136 | $domains_being_blocked.text(domains) 137 | 138 | $table1.bootstrapTable('load', summaryToKeyVal(pi1sum)) 139 | $table2.bootstrapTable('load', summaryToKeyVal(pi2sum)) 140 | 141 | loadTopList($top_ads, pi1sum.top_ads, pi2sum.top_ads) 142 | } 143 | 144 | function cleanNumber(n) { 145 | n = "" + n 146 | return parseFloat(n.replace(/,/g, '')) 147 | } 148 | 149 | function enableOff() { 150 | $enable.text('Enabled').attr('disabled', true).addClass('btn-default') 151 | } 152 | 153 | function enableOn() { 154 | $enable.text('ENABLE').attr('disabled', false).removeClass('btn-default') 155 | } 156 | 157 | function summaryToKeyVal(data) { 158 | 159 | let ret = [] 160 | 161 | for (let i in data) { 162 | 163 | if (i in keymap && keymap[i] !== null) { 164 | 165 | ret.push({ 166 | key: keymap[i], 167 | val: data[i] 168 | }) 169 | 170 | } 171 | 172 | } 173 | 174 | return ret 175 | } 176 | 177 | function parseKeyVal(key, val) { 178 | switch (key) { 179 | case 'PI_ONE': endpoints[0].ip = val; break; 180 | case 'PI_TWO': endpoints[1].ip = val; break; 181 | case 'PI_ONE_AUTH': endpoints[0].auth = val; break; 182 | case 'PI_TWO_AUTH': endpoints[1].auth = val; break; 183 | } 184 | } 185 | 186 | function setAdminUrls() { 187 | let x = 0 188 | endpoints.forEach(host => { 189 | document.getElementById(`admin-link-${x++}`).href = `http://${host.ip}/admin/` 190 | }) 191 | } 192 | 193 | function loadTopList($dest, top1, top2) { 194 | 195 | let topQueries = {} 196 | let topQueriesArray = [] 197 | 198 | for (let domain in top1) { 199 | topQueries[domain] = top1[domain] 200 | } 201 | 202 | for (let domain in top2) { 203 | if (domain in topQueries) { 204 | topQueries[domain] += top2[domain] 205 | } else { 206 | topQueries[domain] = top2[domain] 207 | } 208 | } 209 | 210 | for (let domain in topQueries) { 211 | topQueriesArray.push([domain, topQueries[domain]]) 212 | } 213 | 214 | topQueriesArray.sort(sortTop) 215 | 216 | $dest.empty() 217 | 218 | topQueriesArray.slice(0,5).forEach(domain => { 219 | 220 | const perc = Math.round((domain[1] / totalQueries) * 100, 1) 221 | 222 | $dest.append('' 223 | + `${domain[0]}` 224 | + `${domain[1]}` 225 | + `
` 226 | + '' 227 | ) 228 | }) 229 | 230 | } 231 | 232 | function sortTop(a, b) { 233 | if (a[1] === b[1]) { 234 | return 0; 235 | } 236 | else { 237 | return (a[1] > b[1]) ? -1 : 1; 238 | } 239 | } 240 | 241 | $table1.bootstrapTable({ data: [] }) 242 | $table2.bootstrapTable({ data: [] }) 243 | 244 | fetch('.env') 245 | .then(response => { 246 | if (!response.ok) { 247 | throw new Error("HTTP error " + response.status) 248 | } 249 | return response.text() 250 | }) 251 | .then(env => { 252 | const lines = env.split('\n') 253 | for (let line = 0; line < lines.length; line++) { 254 | const keyval = lines[line].split('=') 255 | if (keyval.length === 2) { 256 | parseKeyVal(keyval[0], keyval[1]) 257 | } 258 | 259 | } 260 | 261 | setAdminUrls() 262 | getData() 263 | updateStatus() 264 | }) 265 | .catch(function () { 266 | alert('Something bad happened.') 267 | }) 268 | 269 | }) -------------------------------------------------------------------------------- /pihole-manager.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/pihole-manager.png -------------------------------------------------------------------------------- /piholegrabber.py: -------------------------------------------------------------------------------- 1 | import time 2 | import requests 3 | import re 4 | import os 5 | from dotenv import load_dotenv 6 | 7 | load_dotenv() 8 | 9 | PI_ONE = os.getenv("PI_ONE") 10 | PI_TWO = os.getenv("PI_TWO") 11 | PI_ONE_AUTH = os.getenv("PI_ONE_AUTH") 12 | PI_TWO_AUTH = os.getenv("PI_ONE_AUTH") 13 | 14 | hosts = [ 15 | f'http://{PI_ONE}/admin/api.php?auth={PI_ONE_AUTH}&', 16 | f'http://{PI_TWO}/admin/api.php?auth={PI_TWO_AUTH}&' 17 | ] 18 | 19 | print(f'Monitoring: {hosts}') 20 | 21 | pdir = os.path.dirname(os.path.abspath(__file__)) 22 | datadir = f'{pdir}/data' 23 | 24 | if not os.path.isdir(datadir): 25 | try: 26 | os.mkdir(datadir) 27 | except OSError: 28 | print ("Creation of the directory %s failed" % path) 29 | 30 | def main_program(): 31 | 32 | while True: 33 | 34 | i = 1 35 | 36 | for x in hosts: 37 | 38 | try: 39 | 40 | req1 = requests.get(x + "summaryRaw&topItems", headers={"Accept":"application/json"}) 41 | txt1 = req1.text 42 | json1 = req1.json() 43 | 44 | with open(f'{datadir}/summary-{i}.json', 'w') as fh: 45 | fh.write(txt1 + "\n") 46 | 47 | fh.close() 48 | 49 | except: 50 | pass 51 | 52 | i += 1 53 | 54 | time.sleep(2) 55 | 56 | main_program() 57 | -------------------------------------------------------------------------------- /piholemanage.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Pi Hole Data Grabber Service 3 | 4 | [Service] 5 | Type=simple 6 | ExecStart=/usr/bin/env python3 /home/pi/piholemanage/piholegrabber.py 7 | Environment=PYTHONUNBUFFERED=1 8 | User=pi 9 | Restart=on-failure 10 | 11 | [Install] 12 | WantedBy=default.target 13 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | python-dotenv 2 | requests 3 | -------------------------------------------------------------------------------- /style/custom.css: -------------------------------------------------------------------------------- 1 | 2 | body { 3 | color: #fefefe; 4 | background: #272c30 url(../img/boxed-bg-dark.jpg) repeat fixed; 5 | } 6 | 7 | body .container { 8 | background: #272c30; 9 | padding-bottom: 30px; 10 | box-shadow: 0 0 8px rgba(0,0,0,0.5); 11 | } 12 | 13 | .small-box { 14 | overflow: hidden; 15 | } 16 | .small-box span { 17 | text-overflow: ellipsis; 18 | } 19 | 20 | @media (min-width: 576px) { 21 | #domains_being_blocked { 22 | font-size: 25px; 23 | } 24 | } 25 | 26 | .enable, .disable { 27 | margin-bottom: 10px; 28 | } 29 | 30 | .btn-success.disabled, .btn-success:disabled { 31 | color: #fff; 32 | background-color: #bbbbbb; 33 | border-color: #999999; 34 | } 35 | 36 | .btn-link, .btn-link:visited, .btn-link:link, .btn-link:active { 37 | color: #fefefe; 38 | } 39 | 40 | .keyval-table { 41 | background-color: #fefefe; 42 | overflow: hidden; 43 | } 44 | 45 | .keyval-table th { 46 | display: none; 47 | } 48 | 49 | .table, .table-bordered { 50 | color: #bec5cb; 51 | } 52 | 53 | .table-hover { 54 | color: #222; 55 | } 56 | 57 | .btn-visit { 58 | padding: 0 .5rem; 59 | line-height: 1.4; 60 | } 61 | -------------------------------------------------------------------------------- /style/pi-hole-dark.css: -------------------------------------------------------------------------------- 1 | /* Pi-hole: A black hole for Internet advertisements 2 | * (c) 2020 Pi-hole, LLC (https://pi-hole.net) 3 | * Network-wide ad blocking via your own hardware. 4 | * 5 | * This file is copyright under the latest version of the EUPL. 6 | * Please see LICENSE file for your rights under this license. 7 | * 8 | * The colors used in this theme has been inspired by 9 | * https://github.com/anvyst/adminlte-skin-midnight */ 10 | 11 | body { 12 | color: #bec5cb; 13 | } 14 | h4 { 15 | color: #44def1; 16 | } 17 | .content-header > .breadcrumb > li > a { 18 | color: #bec5cb; 19 | } 20 | .table > thead > tr > th, 21 | .table > tbody > tr > th, 22 | .table > tfoot > tr > th, 23 | .table > thead > tr > td, 24 | .table > tbody > tr > td, 25 | .table > tfoot > tr > td { 26 | border-top: 0; 27 | } 28 | .table > thead > tr.odd, 29 | .table > tbody > tr.odd, 30 | .table > tfoot > tr.odd { 31 | background-color: #2a2f34; 32 | } 33 | .table > thead > tr.odd:hover, 34 | .table > tbody > tr.odd:hover, 35 | .table > tfoot > tr.odd:hover, 36 | .table > thead > tr.even:hover, 37 | .table > tbody > tr.even:hover, 38 | .table > tfoot > tr.even:hover { 39 | background-color: #1e2226; 40 | } 41 | .table-bordered, 42 | .table-bordered > thead > tr > th, 43 | .table-bordered > tbody > tr > th, 44 | .table-bordered > tfoot > tr > th, 45 | .table-bordered > thead > tr > td, 46 | .table-bordered > tbody > tr > td, 47 | .table-bordered > tfoot > tr > td { 48 | border: 1px solid #353c42; 49 | } 50 | .dataTables_wrapper input[type="search"] { 51 | border-radius: 4px; 52 | background-color: #353c42; 53 | border: 0; 54 | color: #bec5cb; 55 | } 56 | .dataTables_paginate .pagination li > a { 57 | background-color: #353c42; 58 | border-color: #353c42; 59 | } 60 | .pagination > .disabled > a, 61 | .pagination > .disabled > a:focus, 62 | .pagination > .disabled > a:hover, 63 | .pagination > .disabled > span, 64 | .pagination > .disabled > span:focus, 65 | .pagination > .disabled > span:hover { 66 | cursor: not-allowed; 67 | color: #bec5cb; 68 | background-color: #353c42; 69 | border-color: #353c42; 70 | } 71 | .pagination > li > a:focus, 72 | .pagination > li > a:hover, 73 | .pagination > li > span:focus, 74 | .pagination > li > span:hover { 75 | z-index: 2; 76 | color: #bec5cb; 77 | background-color: #54606b; 78 | border-color: #54606b; 79 | } 80 | .wrapper, 81 | .main-sidebar, 82 | .left-side { 83 | background-color: #272c30; 84 | } 85 | .user-panel > .info, 86 | .user-panel > .info > a { 87 | color: #fff; 88 | } 89 | .sidebar-menu > li.header { 90 | color: #556068; 91 | background-color: #1e2225; 92 | } 93 | .sidebar-menu > li > a { 94 | border-left: 3px solid transparent; 95 | } 96 | .sidebar-menu > li:hover > a, 97 | .sidebar-menu > li.active > a { 98 | color: #fff; 99 | background-color: #22272a; 100 | border-left-color: #272c30; 101 | } 102 | .sidebar-menu > li > .treeview-menu { 103 | margin: 0 1px; 104 | background-color: #32393e; 105 | } 106 | .sidebar a { 107 | color: #bec5cb; 108 | } 109 | .sidebar a:hover { 110 | text-decoration: none; 111 | } 112 | .treeview-menu > li > a { 113 | color: #949fa8; 114 | } 115 | .treeview-menu > li.active > a, 116 | .treeview-menu > li > a:hover { 117 | color: #fff; 118 | } 119 | .sidebar-form { 120 | border-radius: 3px; 121 | border: 1px solid #3e464c; 122 | margin: 10px; 123 | } 124 | .sidebar-form input[type="text"], 125 | .sidebar-form .btn { 126 | box-shadow: none; 127 | background-color: #3e464c; 128 | border: 1px solid transparent; 129 | height: 35px; 130 | } 131 | .sidebar-form input[type="text"] { 132 | color: #666; 133 | border-top-left-radius: 2px; 134 | border-top-right-radius: 0; 135 | border-bottom-right-radius: 0; 136 | border-bottom-left-radius: 2px; 137 | } 138 | .sidebar-form input[type="text"]:focus, 139 | .sidebar-form input[type="text"]:focus + .input-group-btn .btn { 140 | background-color: #fff; 141 | color: #666; 142 | } 143 | .sidebar-form input[type="text"]:focus + .input-group-btn .btn { 144 | border-left-color: #fff; 145 | } 146 | .sidebar-form .btn { 147 | color: #999; 148 | border-top-left-radius: 0; 149 | border-top-right-radius: 2px; 150 | border-bottom-right-radius: 2px; 151 | border-bottom-left-radius: 0; 152 | } 153 | .box, 154 | .box-footer, 155 | .info-box, 156 | .box-comment, 157 | .comment-text, 158 | .comment-text .username { 159 | color: #bec5cb; 160 | background-color: #272c30; 161 | } 162 | .box-comments .box-comment { 163 | border-bottom-color: #353c42; 164 | } 165 | .box-footer { 166 | border-top: 1px solid #353c42; 167 | } 168 | .box-header.with-border { 169 | border-bottom: 1px solid #353c42; 170 | } 171 | .box-solid, 172 | .box { 173 | border: 1px solid #272c30; 174 | } 175 | .box-solid > .box-header, 176 | .box > .box-header { 177 | color: #bec5cb; 178 | background-color: #272c30; 179 | } 180 | .box-solid > .box-header a, 181 | .box > .box-header a, 182 | .box-solid > .box-header .btn, 183 | .box > .box-header .btn { 184 | color: #bec5cb; 185 | } 186 | .box.box-info, 187 | .box.box-primary, 188 | .box.box-success, 189 | .box.box-warning, 190 | .box.box-danger { 191 | border-top-width: 3px; 192 | } 193 | .box.box-info { 194 | border-top-color: #00c0ef; 195 | } 196 | .box.box-primary { 197 | border-top-color: #075383; 198 | } 199 | .box.box-success { 200 | border-top-color: #00a65a; 201 | } 202 | .box.box-warning { 203 | border-top-color: #ff851b; 204 | } 205 | .box.box-danger { 206 | border-top-color: #dd4b39; 207 | } 208 | .main-header .navbar { 209 | background-color: #272c30; 210 | } 211 | .main-header .navbar .nav > li > a, 212 | .main-header .navbar .nav > li > .navbar-text { 213 | color: #bec5cb; 214 | } 215 | .main-header .navbar .nav > li > a:hover, 216 | .main-header .navbar .nav > li > a:active, 217 | .main-header .navbar .nav > li > a:focus, 218 | .main-header .navbar .nav .open > a, 219 | .main-header .navbar .nav .open > a:hover, 220 | .main-header .navbar .nav .open > a:focus, 221 | .main-header .navbar .nav > .active > a { 222 | background-color: rgba(0, 0, 0, 0.1); 223 | color: #f6f6f6; 224 | } 225 | .main-header .navbar .sidebar-toggle { 226 | color: #bec5cb; 227 | } 228 | .main-header .navbar .sidebar-toggle:hover { 229 | color: #f6f6f6; 230 | background-color: rgba(0, 0, 0, 0.1); 231 | } 232 | .timeline li .timeline-item { 233 | color: #bec5cb; 234 | background-color: #272c30; 235 | border-color: #353c42; 236 | } 237 | .timeline li .timeline-header { 238 | border-bottom-color: #353c42; 239 | } 240 | .nav-stacked > li > a { 241 | color: #bec5cb; 242 | } 243 | .nav-stacked > li > a:hover { 244 | color: white; 245 | background-color: #1e2226; 246 | } 247 | .content-wrapper, 248 | .right-side { 249 | background-color: #353c42; 250 | } 251 | .main-footer, 252 | .nav-tabs-custom { 253 | background-color: #272c30; 254 | border-top-color: #353c42; 255 | color: #bec5cb; 256 | } 257 | .main-footer .nav-tabs, 258 | .nav-tabs-custom .nav-tabs { 259 | background-color: #30383f; 260 | border-bottom-color: #2f363b; 261 | } 262 | .main-footer .tab-content, 263 | .nav-tabs-custom .tab-content { 264 | background-color: #30383f; 265 | } 266 | .nav-tabs-custom > .nav-tabs > li.active > a { 267 | border-left-color: #353c42; 268 | border-right-color: #353c42; 269 | background-color: #272c30; 270 | color: #bec5cb; 271 | } 272 | .nav-tabs-custom > .nav-tabs.pull-right > li:first-of-type.active > a { 273 | border-left-color: #353c42; 274 | } 275 | .nav-tabs-custom > .nav-tabs > li { 276 | color: #bec5cb; 277 | } 278 | .nav-tabs-custom > .nav-tabs > li > a { 279 | color: #bec5cb; 280 | } 281 | .list-group { 282 | color: #bec5cb; 283 | background-color: #272c30; 284 | } 285 | .list-group .list-group-item { 286 | border-color: #353c42; 287 | background-color: #272c30; 288 | } 289 | .input-group .input-group-addon { 290 | border-right: 1px solid #272c30; 291 | } 292 | .select2 .select2-selection { 293 | background-color: #353c42; 294 | color: #bec5cb; 295 | border: 1px solid #353c42; 296 | } 297 | .select2 .select2-selection .select2-container--default, 298 | .select2 .select2-selection .select2-selection--single, 299 | .select2 .select2-selection .select2-selection--multiple, 300 | .select2 .select2-selection .select2-selection__rendered { 301 | color: #bec5cb; 302 | } 303 | .select2-dropdown { 304 | background-color: #353c42; 305 | color: #bec5cb; 306 | border: 1px solid #353c42; 307 | } 308 | .select2-dropdown .select2-search__field { 309 | background-color: #272c30; 310 | color: #bec5cb; 311 | border: 1px solid #353c42; 312 | } 313 | .select2-container--default.select2-container--open { 314 | background-color: #272c30; 315 | } 316 | 317 | .layout-boxed { 318 | background: url("../../img/boxed-bg-dark.jpg") repeat fixed; 319 | } 320 | .not-used { 321 | background-color: #eee; 322 | } 323 | .not-used:hover { 324 | background-color: #c5c5c5; 325 | } 326 | .used { 327 | background-color: #fff; 328 | } 329 | .used:hover { 330 | background-color: #ddd; 331 | } 332 | 333 | .graphs-grid { 334 | background-color: rgba(255, 255, 255, 0.2); 335 | } 336 | .graphs-ticks { 337 | color: #b8c7ce; 338 | } 339 | .queries-permitted { 340 | background-color: #00a65a; 341 | } 342 | .queries-blocked { 343 | background-color: #999; 344 | } 345 | .progress { 346 | background-color: #333; 347 | } 348 | 349 | .bg-green { 350 | background-color: #005c32 !important; 351 | } 352 | .bg-aqua { 353 | background-color: #007997 !important; 354 | } 355 | .bg-yellow { 356 | background-color: #b1720c !important; 357 | } 358 | .bg-red { 359 | background-color: #913225 !important; 360 | } 361 | 362 | code, 363 | pre { 364 | padding: 2px 4px; 365 | font-size: 90%; 366 | color: #bec5cb; 367 | background-color: #353c42; 368 | border-radius: 4px; 369 | } 370 | 371 | /* Used in the Query Log table */ 372 | .text-green-light { 373 | color: #5ca314 !important; 374 | } 375 | .text-green { 376 | color: #00aa60 !important; 377 | } 378 | .text-orange { 379 | color: #b1720c !important; 380 | } 381 | .text-red { 382 | color: #bd2c19 !important; 383 | } 384 | .text-vivid-blue { 385 | color: #007997 !important; 386 | } 387 | td.highlight { 388 | background-color: rgba(255, 204, 0, 0.333); 389 | } 390 | .btn-default { 391 | box-shadow: none; 392 | background-color: #3e464c; 393 | color: #bec5cb; 394 | border: 1px solid #353c42; 395 | } 396 | 397 | /* Used by the long-term pages */ 398 | .daterangepicker { 399 | background-color: #3e464c; 400 | border-radius: 4px; 401 | border: 1px solid #353c42; 402 | } 403 | .daterangepicker .ranges li:hover { 404 | background-color: #353c42; 405 | } 406 | .daterangepicker .ranges li.active { 407 | background-color: #1e2226; /* Color also used in table pagination */ 408 | } 409 | .daterangepicker .calendar-table { 410 | background-color: #3e464c; 411 | border-radius: 4px; 412 | border: 1px solid #353c42; 413 | } 414 | .daterangepicker td.off, 415 | .daterangepicker td.off.in-range, 416 | .daterangepicker td.off.start-date, 417 | .daterangepicker td.off.end-date { 418 | background-color: #485158; 419 | } 420 | .daterangepicker td.available:hover, 421 | .daterangepicker th.available:hover { 422 | background-color: #1e2226; 423 | } 424 | .daterangepicker td.active, 425 | .daterangepicker td.active:hover, 426 | .daterangepicker td.in-range:hover { 427 | background-color: #225e92; 428 | } 429 | .daterangepicker td.in-range { 430 | background-color: #1e2226; 431 | color: #bec5cb; 432 | } 433 | input, 434 | select, 435 | select.form-control, 436 | .form-group .input-group-addon, 437 | .input-group .input-group-addon, 438 | .form-group input, 439 | .input-group input, 440 | .form-group textarea, 441 | .input-group textarea, 442 | .daterangepicker select.hourselect, 443 | .daterangepicker select.minuteselect, 444 | .daterangepicker select.secondselect, 445 | .daterangepicker select.ampmselect, 446 | .form-control, 447 | div.dataTables_wrapper div.dataTables_length select { 448 | background-color: #353c42; 449 | color: #bec5cb; 450 | border: 1px solid #3d444b; 451 | } 452 | .nav-tabs-custom > .nav-tabs > li:hover > a, 453 | .nav-tabs-custom > .nav-tabs > li.active:hover > a { 454 | background-color: #353c42; 455 | color: #bec5cb; 456 | } 457 | .form-control[disabled], 458 | .form-control[readonly], 459 | fieldset[disabled] .form-control { 460 | background-color: #353c42; 461 | opacity: 1; 462 | } 463 | .dropdown-menu { 464 | background-color: #4c5761; 465 | color: #bec5cb; 466 | border: 1px solid #171c20; 467 | } 468 | .table-striped > tbody > tr:nth-of-type(2n + 1) { 469 | background-color: #2d343a; 470 | } 471 | .panel, 472 | .panel-body, 473 | .panel-default > .panel-heading { 474 | background-color: #3e464c; 475 | border-radius: 4px; 476 | border: 1px solid #353c42; 477 | color: #bec5cb; 478 | } 479 | .box.box-solid.box-info, 480 | .box.box-solid.box-info > .box-header { 481 | color: #bec5cb; 482 | background-color: #367fa9 !important; 483 | border: 1px solid #367fa9; 484 | } 485 | 486 | .network-never { 487 | background-color: #661b02; 488 | } 489 | .network-recent { 490 | background-color: #114100; 491 | } 492 | .network-old { 493 | background-color: #525200; 494 | } 495 | .network-older { 496 | background-color: #502b00; 497 | } 498 | .network-gradient { 499 | background-image: linear-gradient(to right, #114100 0%, #525200 100%); 500 | } 501 | 502 | .icheckbox_polaris, 503 | .icheckbox_futurico, 504 | .icheckbox_minimal-blue { 505 | margin-right: 10px; 506 | } 507 | .iradio_polaris, 508 | .iradio_futurico, 509 | .iradio_minimal-blue { 510 | margin-right: 8px; 511 | } 512 | 513 | /* Overlay box with spinners as shown during data collection for graphs */ 514 | .box .overlay, 515 | .overlay-wrapper .overlay { 516 | z-index: 50; 517 | background-color: rgba(53, 60, 66, 0.733); 518 | border-radius: 3px; 519 | } 520 | .box .overlay > .fa, 521 | .overlay-wrapper .overlay > .fa, 522 | .navbar-nav > .user-menu > .dropdown-menu > .user-body a { 523 | color: #bec5cb !important; 524 | } 525 | 526 | .navbar-nav > .user-menu > .dropdown-menu > .user-footer { 527 | background-color: #353c42bb; 528 | padding: 10px; 529 | } 530 | -------------------------------------------------------------------------------- /style/pi-hole.css: -------------------------------------------------------------------------------- 1 | /* Pi-hole: A black hole for Internet advertisements 2 | * (c) 2017 Pi-hole, LLC (https://pi-hole.net) 3 | * Network-wide ad blocking via your own hardware. 4 | * 5 | * This file is copyright under the latest version of the EUPL. 6 | * Please see LICENSE file for your rights under this license. */ 7 | 8 | .small-box { 9 | cursor: default; 10 | -webkit-user-select: none; /* Chrome/Safari */ 11 | -moz-user-select: none; /* Firefox */ 12 | -ms-user-select: none; /* IE10+ */ 13 | 14 | /* Rules below not implemented in browsers yet */ 15 | -o-user-select: none; 16 | user-select: none; 17 | } 18 | .small-box span { 19 | transition-duration: 500ms; 20 | } 21 | .small-box span.glow { 22 | text-shadow: 0px 0px 5px #fff; 23 | } 24 | .skin-blue .list-group-item:hover { 25 | background: #ddd; 26 | } 27 | @-webkit-keyframes Pulse{ 28 | from {color:#630030;-webkit-text-shadow:0 0 2px transparent;} 29 | 50% {color:#e33100;-webkit-text-shadow:0 0 5px #e33100;} 30 | to {color:#630030;-webkit-text-shadow:0 0 2px transparent;} 31 | } 32 | @keyframes Pulse{ 33 | from {color:#630030;text-shadow:0 0 2px transparent;} 34 | 50% {color:#e33100;text-shadow:0 0 5px #e33100;} 35 | to {color:#630030;text-shadow:0 0 2px transparent;} 36 | } 37 | .lookatme { 38 | -webkit-animation-name: Pulse; 39 | animation-name: Pulse; 40 | -webkit-animation-duration: 2s; 41 | animation-duration: 2s; 42 | -webkit-animation-iteration-count: infinite; 43 | animation-iteration-count: infinite; 44 | } 45 | 46 | .table-responsive { 47 | -webkit-overflow-scrolling: touch; 48 | } 49 | 50 | /* Optimize Queries-Table for small screens */ 51 | #all-queries td:nth-of-type(1), /* Time column */ 52 | #all-queries td:nth-of-type(5) { /* Status column */ 53 | white-space: nowrap; 54 | } 55 | #all-queries td:nth-of-type(3) { /* Domain column */ 56 | min-width: 200px; 57 | word-break: break-all; 58 | white-space: pre-wrap; 59 | } 60 | #all-queries_info { /* Allow Info String to wrap (useful while filtering entries on small screen) */ 61 | white-space: unset; 62 | } 63 | #all-queries_wrapper .pagination > li > a { /* adjust the buttons width */ 64 | padding-left: 6px; 65 | padding-right: 6px; 66 | min-width: 34px; 67 | text-align: center; 68 | } 69 | @media screen and (max-width: 500px), 70 | screen and (min-width: 767px) and (max-width: 1000px) { 71 | /* Hide "Previous" & "Next"-Buttons in Pagination */ 72 | #all-queries_wrapper .pagination > li.previous, 73 | #all-queries_wrapper .pagination > li.next { 74 | display: none; 75 | } 76 | #all-queries_wrapper .pagination > li:nth-of-type(2) a { 77 | border-top-left-radius: 4px; 78 | border-bottom-left-radius: 4px; 79 | } 80 | #all-queries_wrapper .pagination > li:nth-last-of-type(2) a { 81 | border-top-right-radius: 4px; 82 | border-bottom-right-radius: 4px; 83 | } 84 | } 85 | 86 | .main-header>.navbar, .navbar>.sidebar-toggle { 87 | height: 50px; 88 | } 89 | 90 | #resetButton { 91 | color: red; 92 | font-weight: bold; 93 | } 94 | 95 | .vertical-alignment-helper { 96 | display: table; 97 | width: 100%; 98 | height: 100%; 99 | pointer-events: none; 100 | } 101 | .vertical-alignment-helper > .vertical-align-center { 102 | display: table-cell; 103 | vertical-align: middle; 104 | } 105 | .vertical-alignment-helper > .vertical-align-center > .modal-content { 106 | width: 250px; 107 | margin-left: auto; 108 | margin-right: auto; 109 | word-wrap: break-word; 110 | pointer-events: all; 111 | } 112 | 113 | .alSpinner { 114 | top: 0.1em; 115 | left: 0.1em; 116 | width: 0.8em; 117 | height: 0.8em; 118 | border-radius: 50%; 119 | border: 4px solid silver; 120 | border-right-color: transparent; 121 | -webkit-animation: fa-spin 1s infinite linear; 122 | animation: fa-spin 1s infinite linear; 123 | } 124 | 125 | .extratooltipcanvas{ 126 | -moz-user-select: none; 127 | -webkit-user-select: none; 128 | -ms-user-select: none; 129 | } 130 | 131 | #chartjs-tooltip { 132 | opacity: 1; 133 | position: absolute; 134 | background: rgba(0, 0, 0, .7); 135 | color: white; 136 | border-radius: 3px; 137 | -webkit-transition: all .1s ease; 138 | transition: all .1s ease; 139 | pointer-events: none; 140 | -webkit-transform: translate(-50%, 0); 141 | transform: translate(-50%, 0); 142 | } 143 | 144 | .chartjs-tooltip-key { 145 | display: inline-block; 146 | width: 20px; 147 | height: 10px; 148 | margin-right: 10px; 149 | } 150 | 151 | .chart-legend { 152 | height:250px; 153 | overflow:auto; 154 | } 155 | 156 | .chart-legend ul { 157 | list-style-type: none; 158 | } 159 | 160 | .chart-legend li { 161 | cursor:pointer; 162 | } 163 | 164 | .chart-legend li span { 165 | display: inline-block; 166 | width: 20px; 167 | height: 12px; 168 | margin-right: 5px; 169 | } 170 | 171 | .strike { 172 | text-decoration: line-through !important; 173 | } 174 | 175 | .float-left{ 176 | float:left; 177 | } 178 | 179 | .fa-paypal-icon { 180 | width: 18px; 181 | margin-left: 2px; 182 | } 183 | 184 | .sidebar-toggle:before { 185 | font-weight: 900; 186 | font-family: "Font Awesome 5 Free"; 187 | } -------------------------------------------------------------------------------- /style/vendor/AdminLTE.min.css: -------------------------------------------------------------------------------- 1 | @import url(SourceSansPro/SourceSansPro.css);/*! 2 | * AdminLTE v2.1.2 3 | * Author: Almsaeed Studio 4 | * Website: Almsaeed Studio 5 | * License: Open source - MIT 6 | * Please visit http://opensource.org/licenses/MIT for more information 7 | !*/html,body{min-height:100%}.layout-boxed html,.layout-boxed body{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:'Source Sans Pro','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:400;overflow-x:hidden;overflow-y:auto}.wrapper{min-height:100%;position:static;overflow:hidden}.wrapper:before,.wrapper:after{content:" ";display:table}.wrapper:after{clear:both}.layout-boxed .wrapper{max-width:1250px;margin:0 auto;min-height:100%;box-shadow:0 0 8px rgba(0,0,0,0.5);position:relative}.layout-boxed{background:url('../../img/boxed-bg.jpg') repeat fixed} .content-wrapper,.right-side,.main-footer{-webkit-transition:-webkit-transform .3s ease-in-out,margin .3s ease-in-out;-moz-transition:-moz-transform .3s ease-in-out,margin .3s ease-in-out;-o-transition:-o-transform .3s ease-in-out,margin .3s ease-in-out;transition:transform .3s ease-in-out,margin .3s ease-in-out;margin-left:230px;z-index:820} .layout-top-nav .content-wrapper,.layout-top-nav .right-side,.layout-top-nav .main-footer{margin-left:0}@media (max-width:767px){.content-wrapper,.right-side,.main-footer{margin-left:0}}@media (min-width:768px){.sidebar-collapse .content-wrapper,.sidebar-collapse .right-side,.sidebar-collapse .main-footer{margin-left:0}}@media (max-width:767px){.sidebar-open .content-wrapper,.sidebar-open .right-side,.sidebar-open .main-footer{-webkit-transform:translate(230px, 0);-ms-transform:translate(230px, 0);-o-transform:translate(230px, 0);transform:translate(230px, 0)}} .content-wrapper,.right-side{min-height:100%;background-color:#ecf0f5;z-index:800} .main-footer{background:#fff;padding:15px;color:#444;border-top:1px solid #d2d6de} .fixed .main-header,.fixed .main-sidebar,.fixed .left-side{position:fixed} .fixed .main-header{top:0;right:0;left:0} .fixed .content-wrapper,.fixed .right-side{padding-top:50px}@media (max-width:767px){.fixed .content-wrapper,.fixed .right-side{padding-top:100px}} .fixed.layout-boxed .wrapper{max-width:100%} .content{min-height:250px;padding:15px;margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px} h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:'Source Sans Pro',sans-serif} a{color:#3c8dbc} a:hover,a:active,a:focus{outline:none;text-decoration:none;color:#72afd2} .page-header{margin:10px 0 20px 0;font-size:22px} .page-header>small{color:#666;display:block;margin-top:5px} .main-header{position:relative;max-height:100px;z-index:1030} .main-header>.navbar{-webkit-transition:margin-left .3s ease-in-out;-o-transition:margin-left .3s ease-in-out;transition:margin-left .3s ease-in-out;margin-bottom:0;margin-left:230px;border:none;min-height:50px;border-radius:0} .layout-top-nav .main-header>.navbar{margin-left:0} .main-header #navbar-search-input.form-control{background:rgba(255,255,255,0.2);border-color:transparent} .main-header #navbar-search-input.form-control:focus,.main-header #navbar-search-input.form-control:active{border-color:rgba(0,0,0,0.1);background:rgba(255,255,255,0.9)} .main-header #navbar-search-input.form-control::-moz-placeholder{color:#ccc;opacity:1} .main-header #navbar-search-input.form-control:-ms-input-placeholder{color:#ccc} .main-header #navbar-search-input.form-control::-webkit-input-placeholder{color:#ccc} .main-header .navbar-custom-menu,.main-header .navbar-right{float:right}@media (max-width:991px){.main-header .navbar-custom-menu a,.main-header .navbar-right a{color:inherit;background:transparent}}@media (max-width:767px){.main-header .navbar-right{float:none}.navbar-collapse .main-header .navbar-right{margin:7.5px -15px}.main-header .navbar-right>li{color:inherit;border:0}} .main-header .sidebar-toggle{float:left;background-color:transparent;background-image:none;padding:15px 15px;font-family:fontAwesome} .main-header .sidebar-toggle:before{content:"\f0c9"} .main-header .sidebar-toggle:hover{color:#fff} .main-header .sidebar-toggle:focus,.main-header .sidebar-toggle:active{background:transparent} .main-header .sidebar-toggle .icon-bar{display:none} .main-header .navbar .nav>li.user>a>.fa,.main-header .navbar .nav>li.user>a>.glyphicon,.main-header .navbar .nav>li.user>a>.ion{margin-right:5px} .main-header .navbar .nav>li>a>.label{position:absolute;top:9px;right:7px;text-align:center;font-size:9px;padding:2px 3px;line-height:.9} .main-header .logo{-webkit-transition:width .3s ease-in-out;-o-transition:width .3s ease-in-out;transition:width .3s ease-in-out;display:block;float:left;height:50px;font-size:20px;line-height:50px;text-align:center;width:230px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;padding:0 15px;font-weight:300;overflow:hidden} .main-header .logo .logo-lg{display:block} .main-header .logo .logo-mini{display:none} .main-header .navbar-brand{color:#fff} .content-header{position:relative;padding:15px 15px 0 15px} .content-header>h1{margin:0;font-size:24px} .content-header>h1>small{font-size:15px;display:inline-block;padding-left:4px;font-weight:300} .content-header>.breadcrumb{float:right;background:transparent;margin-top:0px;margin-bottom:0;font-size:12px;padding:7px 5px;position:absolute;top:15px;right:10px;border-radius:2px} .content-header>.breadcrumb>li>a{color:#444;text-decoration:none;display:inline-block} .content-header>.breadcrumb>li>a>.fa,.content-header>.breadcrumb>li>a>.glyphicon,.content-header>.breadcrumb>li>a>.ion{margin-right:5px} .content-header>.breadcrumb>li+li:before{content:'>\00a0'}@media (max-width:991px){.content-header>.breadcrumb{position:relative;margin-top:5px;top:0;right:0;float:none;background:#d2d6de;padding-left:10px}.content-header>.breadcrumb li:before{color:#97a0b3}} .navbar-toggle{color:#fff;border:0;margin:0;padding:15px 15px}@media (max-width:991px){.navbar-custom-menu .navbar-nav>li{float:left}.navbar-custom-menu .navbar-nav{margin:0;float:left}.navbar-custom-menu .navbar-nav>li>a{padding-top:15px;padding-bottom:15px;line-height:20px}}@media (max-width:767px){.main-header{position:relative}.main-header .logo,.main-header .navbar{width:100%;float:none}.main-header .navbar{margin:0}.main-header .navbar-custom-menu{float:right}}@media (max-width:991px){.navbar-collapse.pull-left{float:none!important}.navbar-collapse.pull-left+.navbar-custom-menu{display:block;position:absolute;top:0;right:40px}} .main-sidebar,.left-side{position:absolute;top:0;left:0;padding-top:50px;min-height:100%;width:230px;z-index:810;-webkit-transition:-webkit-transform .3s ease-in-out,width .3s ease-in-out;-moz-transition:-moz-transform .3s ease-in-out,width .3s ease-in-out;-o-transition:-o-transform .3s ease-in-out,width .3s ease-in-out;transition:transform .3s ease-in-out,width .3s ease-in-out}@media (max-width:767px){.main-sidebar,.left-side{padding-top:100px}}@media (max-width:767px){.main-sidebar,.left-side{-webkit-transform:translate(-230px, 0);-ms-transform:translate(-230px, 0);-o-transform:translate(-230px, 0);transform:translate(-230px, 0)}}@media (min-width:768px){.sidebar-collapse .main-sidebar,.sidebar-collapse .left-side{-webkit-transform:translate(-230px, 0);-ms-transform:translate(-230px, 0);-o-transform:translate(-230px, 0);transform:translate(-230px, 0)}}@media (max-width:767px){.sidebar-open .main-sidebar,.sidebar-open .left-side{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}} .sidebar{padding-bottom:10px} .sidebar-form input:focus{border-color:transparent} .user-panel{position:relative;width:100%;padding:10px;overflow:hidden} .user-panel:before,.user-panel:after{content:" ";display:table} .user-panel:after{clear:both} .user-panel>.image>img{width:100%;max-width:45px;height:auto} .user-panel>.info{padding:5px 5px 5px 15px;line-height:1;position:absolute;left:55px} .user-panel>.info>p{font-weight:600;margin-bottom:9px} .user-panel>.info>a{text-decoration:none;padding-right:5px;margin-top:3px;font-size:11px} .user-panel>.info>a>.fa,.user-panel>.info>a>.ion,.user-panel>.info>a>.glyphicon{margin-right:3px} .sidebar-menu{list-style:none;margin:0;padding:0} .sidebar-menu>li{position:relative;margin:0;padding:0} .sidebar-menu>li>a{padding:12px 5px 12px 15px;display:block} .sidebar-menu>li>a>.fa,.sidebar-menu>li>a>.glyphicon,.sidebar-menu>li>a>.ion{width:20px} .sidebar-menu>li .label,.sidebar-menu>li .badge{margin-top:3px;margin-right:5px} .sidebar-menu li.header{padding:10px 25px 10px 15px;font-size:12px} .sidebar-menu li>a>.fa-angle-left{width:auto;height:auto;padding:0;margin-right:10px;margin-top:3px} .sidebar-menu li.active>a>.fa-angle-left{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)} .sidebar-menu li.active>.treeview-menu{display:block} .sidebar-menu .treeview-menu{display:none;list-style:none;padding:0;margin:0;padding-left:5px} .sidebar-menu .treeview-menu .treeview-menu{padding-left:20px} .sidebar-menu .treeview-menu>li{margin:0} .sidebar-menu .treeview-menu>li>a{padding:5px 5px 5px 15px;display:block;font-size:14px} .sidebar-menu .treeview-menu>li>a>.fa,.sidebar-menu .treeview-menu>li>a>.glyphicon,.sidebar-menu .treeview-menu>li>a>.ion{width:20px} .sidebar-menu .treeview-menu>li>a>.fa-angle-left,.sidebar-menu .treeview-menu>li>a>.fa-angle-down{width:auto}@media (min-width:768px){.sidebar-mini.sidebar-collapse .content-wrapper,.sidebar-mini.sidebar-collapse .right-side,.sidebar-mini.sidebar-collapse .main-footer{margin-left:50px!important;z-index:840}.sidebar-mini.sidebar-collapse .main-sidebar{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0);width:50px!important;z-index:850}.sidebar-mini.sidebar-collapse .sidebar-menu>li{position:relative}.sidebar-mini.sidebar-collapse .sidebar-menu>li>a{margin-right:0}.sidebar-mini.sidebar-collapse .sidebar-menu>li>a>span{border-top-right-radius:4px}.sidebar-mini.sidebar-collapse .sidebar-menu>li:not(.treeview)>a>span{border-bottom-right-radius:4px}.sidebar-mini.sidebar-collapse .sidebar-menu>li>.treeview-menu{padding-top:5px;padding-bottom:5px;border-bottom-right-radius:4px}.sidebar-mini.sidebar-collapse .sidebar-menu>li:hover>a>span:not(.pull-right),.sidebar-mini.sidebar-collapse .sidebar-menu>li:hover>.treeview-menu{display:block!important;position:absolute;width:180px;left:50px}.sidebar-mini.sidebar-collapse .sidebar-menu>li:hover>a>span{top:0;margin-left:-3px;padding:12px 5px 12px 20px;background-color:inherit}.sidebar-mini.sidebar-collapse .sidebar-menu>li:hover>.treeview-menu{top:44px;margin-left:0}.sidebar-mini.sidebar-collapse .main-sidebar .user-panel>.info,.sidebar-mini.sidebar-collapse .sidebar-form,.sidebar-mini.sidebar-collapse .sidebar-menu>li>a>span,.sidebar-mini.sidebar-collapse .sidebar-menu>li>.treeview-menu,.sidebar-mini.sidebar-collapse .sidebar-menu>li>a>.pull-right,.sidebar-mini.sidebar-collapse .sidebar-menu li.header{display:none!important;-webkit-transform:translateZ(0)}.sidebar-mini.sidebar-collapse .main-header .logo{width:50px}.sidebar-mini.sidebar-collapse .main-header .logo>.logo-mini{display:block;margin-left:-15px;margin-right:-15px;font-size:18px}.sidebar-mini.sidebar-collapse .main-header .logo>.logo-lg{display:none}.sidebar-mini.sidebar-collapse .main-header .navbar{margin-left:50px}} .sidebar-menu,.main-sidebar .user-panel,.sidebar-menu>li.header{white-space:nowrap;overflow:hidden} .sidebar-menu:hover{overflow:visible} .sidebar-form,.sidebar-menu>li.header{overflow:hidden;text-overflow:clip} .sidebar-menu li>a{position:relative} .sidebar-menu li>a>.pull-right{position:absolute;top:50%;right:10px;margin-top:-7px} .control-sidebar-bg{position:fixed;z-index:1000;bottom:0} .control-sidebar-bg,.control-sidebar{top:0;right:-230px;width:230px;-webkit-transition:right .3s ease-in-out;-o-transition:right .3s ease-in-out;transition:right .3s ease-in-out} .control-sidebar{position:absolute;padding-top:50px;z-index:1010}@media (max-width:768px){.control-sidebar{padding-top:100px}} .control-sidebar>.tab-content{padding:10px 15px} .control-sidebar.control-sidebar-open,.control-sidebar.control-sidebar-open+.control-sidebar-bg{right:0} .control-sidebar-open .control-sidebar-bg,.control-sidebar-open .control-sidebar{right:0}@media (min-width:768px){.control-sidebar-open .content-wrapper,.control-sidebar-open .right-side,.control-sidebar-open .main-footer{margin-right:230px}} .nav-tabs.control-sidebar-tabs>li:first-of-type>a,.nav-tabs.control-sidebar-tabs>li:first-of-type>a:hover,.nav-tabs.control-sidebar-tabs>li:first-of-type>a:focus{border-left-width:0} .nav-tabs.control-sidebar-tabs>li>a{border-radius:0} .nav-tabs.control-sidebar-tabs>li>a,.nav-tabs.control-sidebar-tabs>li>a:hover{border-top:none;border-right:none;border-left:1px solid transparent;border-bottom:1px solid transparent} .nav-tabs.control-sidebar-tabs>li>a .icon{font-size:16px} .nav-tabs.control-sidebar-tabs>li.active>a,.nav-tabs.control-sidebar-tabs>li.active>a:hover,.nav-tabs.control-sidebar-tabs>li.active>a:focus,.nav-tabs.control-sidebar-tabs>li.active>a:active{border-top:none;border-right:none;border-bottom:none}@media (max-width:768px){.nav-tabs.control-sidebar-tabs{display:table}.nav-tabs.control-sidebar-tabs>li{display:table-cell}} .control-sidebar-heading{font-weight:400;font-size:16px;padding:10px 0;margin-bottom:10px} .control-sidebar-subheading{display:block;font-weight:400;font-size:14px} .control-sidebar-menu{list-style:none;padding:0;margin:0 -15px} .control-sidebar-menu>li>a{display:block;padding:10px 15px} .control-sidebar-menu>li>a:before,.control-sidebar-menu>li>a:after{content:" ";display:table} .control-sidebar-menu>li>a:after{clear:both} .control-sidebar-menu>li>a>.control-sidebar-subheading{margin-top:0} .control-sidebar-menu .menu-icon{float:left;width:35px;height:35px;border-radius:50%;text-align:center;line-height:35px} .control-sidebar-menu .menu-info{margin-left:45px;margin-top:3px} .control-sidebar-menu .menu-info>.control-sidebar-subheading{margin:0} .control-sidebar-menu .menu-info>p{margin:0;font-size:11px} .control-sidebar-menu .progress{margin:0} .control-sidebar-dark{color:#b8c7ce} .control-sidebar-dark,.control-sidebar-dark+.control-sidebar-bg{background:#222d32} .control-sidebar-dark .nav-tabs.control-sidebar-tabs{border-bottom:#1c2529} .control-sidebar-dark .nav-tabs.control-sidebar-tabs>li>a{background:#181f23;color:#b8c7ce} .control-sidebar-dark .nav-tabs.control-sidebar-tabs>li>a,.control-sidebar-dark .nav-tabs.control-sidebar-tabs>li>a:hover,.control-sidebar-dark .nav-tabs.control-sidebar-tabs>li>a:focus{border-left-color:#141a1d;border-bottom-color:#141a1d} .control-sidebar-dark .nav-tabs.control-sidebar-tabs>li>a:hover,.control-sidebar-dark .nav-tabs.control-sidebar-tabs>li>a:focus,.control-sidebar-dark .nav-tabs.control-sidebar-tabs>li>a:active{background:#1c2529} .control-sidebar-dark .nav-tabs.control-sidebar-tabs>li>a:hover{color:#fff} .control-sidebar-dark .nav-tabs.control-sidebar-tabs>li.active>a,.control-sidebar-dark .nav-tabs.control-sidebar-tabs>li.active>a:hover,.control-sidebar-dark .nav-tabs.control-sidebar-tabs>li.active>a:focus,.control-sidebar-dark .nav-tabs.control-sidebar-tabs>li.active>a:active{background:#222d32;color:#fff} .control-sidebar-dark .control-sidebar-heading,.control-sidebar-dark .control-sidebar-subheading{color:#fff} .control-sidebar-dark .control-sidebar-menu>li>a:hover{background:#1e282c} .control-sidebar-dark .control-sidebar-menu>li>a .menu-info>p{color:#b8c7ce} .control-sidebar-light{color:#5e5e5e} .control-sidebar-light,.control-sidebar-light+.control-sidebar-bg{background:#f9fafc;border-left:1px solid #d2d6de} .control-sidebar-light .nav-tabs.control-sidebar-tabs{border-bottom:#d2d6de} .control-sidebar-light .nav-tabs.control-sidebar-tabs>li>a{background:#e8ecf4;color:#444} .control-sidebar-light .nav-tabs.control-sidebar-tabs>li>a,.control-sidebar-light .nav-tabs.control-sidebar-tabs>li>a:hover,.control-sidebar-light .nav-tabs.control-sidebar-tabs>li>a:focus{border-left-color:#d2d6de;border-bottom-color:#d2d6de} .control-sidebar-light .nav-tabs.control-sidebar-tabs>li>a:hover,.control-sidebar-light .nav-tabs.control-sidebar-tabs>li>a:focus,.control-sidebar-light .nav-tabs.control-sidebar-tabs>li>a:active{background:#eff1f7} .control-sidebar-light .nav-tabs.control-sidebar-tabs>li.active>a,.control-sidebar-light .nav-tabs.control-sidebar-tabs>li.active>a:hover,.control-sidebar-light .nav-tabs.control-sidebar-tabs>li.active>a:focus,.control-sidebar-light .nav-tabs.control-sidebar-tabs>li.active>a:active{background:#f9fafc;color:#111} .control-sidebar-light .control-sidebar-heading,.control-sidebar-light .control-sidebar-subheading{color:#111} .control-sidebar-light .control-sidebar-menu{margin-left:-14px} .control-sidebar-light .control-sidebar-menu>li>a:hover{background:#f4f4f5} .control-sidebar-light .control-sidebar-menu>li>a .menu-info>p{color:#5e5e5e} .dropdown-menu{box-shadow:none;border-color:#eee} .dropdown-menu>li>a{color:#777} .dropdown-menu>li>a>.glyphicon,.dropdown-menu>li>a>.fa,.dropdown-menu>li>a>.ion{margin-right:10px} .dropdown-menu>li>a:hover{background-color:#e1e3e9;color:#333} .dropdown-menu>.divider{background-color:#eee} .navbar-nav>.notifications-menu>.dropdown-menu,.navbar-nav>.messages-menu>.dropdown-menu,.navbar-nav>.tasks-menu>.dropdown-menu{width:280px;padding:0 0 0 0;margin:0;top:100%} .navbar-nav>.notifications-menu>.dropdown-menu>li,.navbar-nav>.messages-menu>.dropdown-menu>li,.navbar-nav>.tasks-menu>.dropdown-menu>li{position:relative} .navbar-nav>.notifications-menu>.dropdown-menu>li.header,.navbar-nav>.messages-menu>.dropdown-menu>li.header,.navbar-nav>.tasks-menu>.dropdown-menu>li.header{border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0;background-color:#ffffff;padding:7px 10px;border-bottom:1px solid #f4f4f4;color:#444444;font-size:14px} .navbar-nav>.notifications-menu>.dropdown-menu>li.footer>a,.navbar-nav>.messages-menu>.dropdown-menu>li.footer>a,.navbar-nav>.tasks-menu>.dropdown-menu>li.footer>a{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px;font-size:12px;background-color:#fff;padding:7px 10px;border-bottom:1px solid #eeeeee;color:#444!important;text-align:center}@media (max-width:991px){.navbar-nav>.notifications-menu>.dropdown-menu>li.footer>a,.navbar-nav>.messages-menu>.dropdown-menu>li.footer>a,.navbar-nav>.tasks-menu>.dropdown-menu>li.footer>a{background:#fff!important;color:#444!important}} .navbar-nav>.notifications-menu>.dropdown-menu>li.footer>a:hover,.navbar-nav>.messages-menu>.dropdown-menu>li.footer>a:hover,.navbar-nav>.tasks-menu>.dropdown-menu>li.footer>a:hover{text-decoration:none;font-weight:normal} .navbar-nav>.notifications-menu>.dropdown-menu>li .menu,.navbar-nav>.messages-menu>.dropdown-menu>li .menu,.navbar-nav>.tasks-menu>.dropdown-menu>li .menu{max-height:200px;margin:0;padding:0;list-style:none;overflow-x:hidden} .navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a,.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a,.navbar-nav>.tasks-menu>.dropdown-menu>li .menu>li>a{display:block;white-space:nowrap;border-bottom:1px solid #f4f4f4} .navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a:hover,.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a:hover,.navbar-nav>.tasks-menu>.dropdown-menu>li .menu>li>a:hover{background:#f4f4f4;text-decoration:none} .navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a{color:#444444;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:10px} .navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a>.glyphicon,.navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a>.fa,.navbar-nav>.notifications-menu>.dropdown-menu>li .menu>li>a>.ion{width:20px} .navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a{margin:0px;padding:10px 10px} .navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a>div>img{margin:auto 10px auto auto;width:40px;height:40px} .navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a>h4{padding:0;margin:0 0 0 45px;color:#444444;font-size:15px;position:relative} .navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a>h4>small{color:#999999;font-size:10px;position:absolute;top:0px;right:0px} .navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a>p{margin:0 0 0 45px;font-size:12px;color:#888888} .navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a:before,.navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a:after{content:" ";display:table} .navbar-nav>.messages-menu>.dropdown-menu>li .menu>li>a:after{clear:both} .navbar-nav>.tasks-menu>.dropdown-menu>li .menu>li>a{padding:10px} .navbar-nav>.tasks-menu>.dropdown-menu>li .menu>li>a>h3{font-size:14px;padding:0;margin:0 0 10px 0;color:#666666} .navbar-nav>.tasks-menu>.dropdown-menu>li .menu>li>a>.progress{padding:0;margin:0} .navbar-nav>.user-menu>.dropdown-menu{border-top-right-radius:0;border-top-left-radius:0;padding:1px 0 0 0;border-top-width:0;width:280px} .navbar-nav>.user-menu>.dropdown-menu,.navbar-nav>.user-menu>.dropdown-menu>.user-body{border-bottom-right-radius:4px;border-bottom-left-radius:4px} .navbar-nav>.user-menu>.dropdown-menu>li.user-header{height:175px;padding:10px;text-align:center} .navbar-nav>.user-menu>.dropdown-menu>li.user-header>img{z-index:5;height:90px;width:90px;border:3px solid;border-color:transparent;border-color:rgba(255,255,255,0.2)} .navbar-nav>.user-menu>.dropdown-menu>li.user-header>p{z-index:5;color:#fff;color:rgba(255,255,255,0.8);font-size:17px;margin-top:10px} .navbar-nav>.user-menu>.dropdown-menu>li.user-header>p>small{display:block;font-size:12px} .navbar-nav>.user-menu>.dropdown-menu>.user-body{padding:15px;border-bottom:1px solid #f4f4f4;border-top:1px solid #dddddd} .navbar-nav>.user-menu>.dropdown-menu>.user-body:before,.navbar-nav>.user-menu>.dropdown-menu>.user-body:after{content:" ";display:table} .navbar-nav>.user-menu>.dropdown-menu>.user-body:after{clear:both} .navbar-nav>.user-menu>.dropdown-menu>.user-body a{color:#444 !important}@media (max-width:991px){.navbar-nav>.user-menu>.dropdown-menu>.user-body a{background:#fff !important;color:#444 !important}} .navbar-nav>.user-menu>.dropdown-menu>.user-footer{background-color:#f9f9f9;padding:10px} .navbar-nav>.user-menu>.dropdown-menu>.user-footer:before,.navbar-nav>.user-menu>.dropdown-menu>.user-footer:after{content:" ";display:table} .navbar-nav>.user-menu>.dropdown-menu>.user-footer:after{clear:both} .navbar-nav>.user-menu>.dropdown-menu>.user-footer .btn-default{color:#666666}@media (max-width:991px){.navbar-nav>.user-menu>.dropdown-menu>.user-footer .btn-default:hover{background-color:#f9f9f9}} .navbar-nav>.user-menu .user-image{float:left;width:25px;height:25px;border-radius:50%;margin-right:10px;margin-top:-2px}@media (max-width:767px){.navbar-nav>.user-menu .user-image{float:none;margin-right:0;margin-top:-8px;line-height:10px}} .open:not(.dropup)>.animated-dropdown-menu{backface-visibility:visible !important;-webkit-animation:flipInX .7s both;-o-animation:flipInX .7s both;animation:flipInX .7s both} @keyframes flipInX{0%{transform:perspective(400px) rotate3d(1, 0, 0, 90deg);transition-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotate3d(1, 0, 0, -20deg);transition-timing-function:ease-in}60%{transform:perspective(400px) rotate3d(1, 0, 0, 10deg);opacity:1}80%{transform:perspective(400px) rotate3d(1, 0, 0, -5deg)}100%{transform:perspective(400px)}} @-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotate3d(1, 0, 0, 90deg);-webkit-transition-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1, 0, 0, -20deg);-webkit-transition-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(1, 0, 0, 10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1, 0, 0, -5deg)}100%{-webkit-transform:perspective(400px)}} .navbar-custom-menu>.navbar-nav>li{position:relative} .navbar-custom-menu>.navbar-nav>li>.dropdown-menu{position:absolute;right:0;left:auto}@media (max-width:991px){.navbar-custom-menu>.navbar-nav{float:right}.navbar-custom-menu>.navbar-nav>li{position:static}.navbar-custom-menu>.navbar-nav>li>.dropdown-menu{position:absolute;right:5%;left:auto;border:1px solid #ddd;background:#fff}} .form-control{border-radius:0;box-shadow:none;border-color:#d2d6de} .form-control:focus{border-color:#3c8dbc;box-shadow:none} .form-control::-moz-placeholder,.form-control:-ms-input-placeholder,.form-control::-webkit-input-placeholder{color:#bbb;opacity:1} .form-control:not(select){-webkit-appearance:none;-moz-appearance:none;appearance:none} .form-group.has-success label{color:#00a65a} .form-group.has-success .form-control{border-color:#00a65a;box-shadow:none} .form-group.has-warning label{color:#f39c12} .form-group.has-warning .form-control{border-color:#f39c12;box-shadow:none} .form-group.has-error label{color:#dd4b39} .form-group.has-error .form-control{border-color:#dd4b39;box-shadow:none} .input-group .input-group-addon{border-radius:0;border-color:#d2d6de;background-color:#fff} .btn-group-vertical .btn.btn-flat:first-of-type,.btn-group-vertical .btn.btn-flat:last-of-type{border-radius:0} .icheck>label{padding-left:0} .form-control-feedback.fa{line-height:34px} .input-lg+.form-control-feedback.fa,.input-group-lg+.form-control-feedback.fa,.form-group-lg .form-control+.form-control-feedback.fa{line-height:46px} .input-sm+.form-control-feedback.fa,.input-group-sm+.form-control-feedback.fa,.form-group-sm .form-control+.form-control-feedback.fa{line-height:30px} .progress,.progress>.progress-bar{-webkit-box-shadow:none;box-shadow:none} .progress,.progress>.progress-bar,.progress .progress-bar,.progress>.progress-bar .progress-bar{border-radius:1px} .progress.sm,.progress-sm{height:10px} .progress.sm,.progress-sm,.progress.sm .progress-bar,.progress-sm .progress-bar{border-radius:1px} .progress.xs,.progress-xs{height:7px} .progress.xs,.progress-xs,.progress.xs .progress-bar,.progress-xs .progress-bar{border-radius:1px} .progress.xxs,.progress-xxs{height:3px} .progress.xxs,.progress-xxs,.progress.xxs .progress-bar,.progress-xxs .progress-bar{border-radius:1px} .progress.vertical{position:relative;width:30px;height:200px;display:inline-block;margin-right:10px} .progress.vertical>.progress-bar{width:100%;position:absolute;bottom:0} .progress.vertical.sm,.progress.vertical.progress-sm{width:20px} .progress.vertical.xs,.progress.vertical.progress-xs{width:10px} .progress.vertical.xxs,.progress.vertical.progress-xxs{width:3px} .progress-group .progress-text{font-weight:600} .progress-group .progress-number{float:right} .table tr>td .progress{margin:0} .progress-bar-light-blue,.progress-bar-primary{background-color:#3c8dbc} .progress-striped .progress-bar-light-blue,.progress-striped .progress-bar-primary{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)} .progress-bar-green,.progress-bar-success{background-color:#00a65a} .progress-striped .progress-bar-green,.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)} .progress-bar-aqua,.progress-bar-info{background-color:#00c0ef} .progress-striped .progress-bar-aqua,.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)} .progress-bar-yellow,.progress-bar-warning{background-color:#f39c12} .progress-striped .progress-bar-yellow,.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)} .progress-bar-red,.progress-bar-danger{background-color:#dd4b39} .progress-striped .progress-bar-red,.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-o-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)} .small-box{border-radius:2px;position:relative;display:block;margin-bottom:20px;box-shadow:0 1px 1px rgba(0,0,0,0.1)} .small-box>.inner{padding:10px} .small-box>.small-box-footer{position:relative;text-align:center;padding:3px 0;color:#fff;color:rgba(255,255,255,0.8);display:block;z-index:10;background:rgba(0,0,0,0.1);text-decoration:none} .small-box>.small-box-footer:hover{color:#fff;background:rgba(0,0,0,0.15)} .small-box h3{font-size:38px;font-weight:bold;margin:0 0 10px 0;white-space:nowrap;padding:0} .small-box p{font-size:15px} .small-box p>small{display:block;color:#f9f9f9;font-size:13px;margin-top:5px} .small-box h3,.small-box p{z-index:5px} .small-box .icon{-webkit-transition:all .3s linear;-o-transition:all .3s linear;transition:all .3s linear;position:absolute;top:-10px;right:10px;z-index:0;font-size:90px;color:rgba(0,0,0,0.15)} .small-box:hover{text-decoration:none;color:#f9f9f9} .small-box:hover .icon{font-size:95px}@media (max-width:767px){.small-box{text-align:center}.small-box .icon{display:none}.small-box p{font-size:12px}} .box{position:relative;border-radius:3px;background:#ffffff;border-top:3px solid #d2d6de;margin-bottom:20px;width:100%;box-shadow:0 1px 1px rgba(0,0,0,0.1)} .box.box-primary{border-top-color:#3c8dbc} .box.box-info{border-top-color:#00c0ef} .box.box-danger{border-top-color:#dd4b39} .box.box-warning{border-top-color:#f39c12} .box.box-success{border-top-color:#00a65a} .box.box-default{border-top-color:#d2d6de} .box.collapsed-box .box-body,.box.collapsed-box .box-footer{display:none} .box .nav-stacked>li{border-bottom:1px solid #f4f4f4;margin:0} .box .nav-stacked>li:last-of-type{border-bottom:none} .box.height-control .box-body{max-height:300px;overflow:auto} .box .border-right{border-right:1px solid #f4f4f4} .box .border-left{border-left:1px solid #f4f4f4} .box.box-solid{border-top:0px} .box.box-solid>.box-header .btn.btn-default{background:transparent} .box.box-solid>.box-header .btn:hover,.box.box-solid>.box-header a:hover{background:rgba(0,0,0,0.1)} .box.box-solid.box-default{border:1px solid #d2d6de} .box.box-solid.box-default>.box-header{color:#444;background:#d2d6de;background-color:#d2d6de} .box.box-solid.box-default>.box-header a,.box.box-solid.box-default>.box-header .btn{color:#444} .box.box-solid.box-primary{border:1px solid #3c8dbc} .box.box-solid.box-primary>.box-header{color:#fff;background:#3c8dbc;background-color:#3c8dbc} .box.box-solid.box-primary>.box-header a,.box.box-solid.box-primary>.box-header .btn{color:#fff} .box.box-solid.box-info{border:1px solid #00c0ef} .box.box-solid.box-info>.box-header{color:#fff;background:#00c0ef;background-color:#00c0ef} .box.box-solid.box-info>.box-header a,.box.box-solid.box-info>.box-header .btn{color:#fff} .box.box-solid.box-danger{border:1px solid #dd4b39} .box.box-solid.box-danger>.box-header{color:#fff;background:#dd4b39;background-color:#dd4b39} .box.box-solid.box-danger>.box-header a,.box.box-solid.box-danger>.box-header .btn{color:#fff} .box.box-solid.box-warning{border:1px solid #f39c12} .box.box-solid.box-warning>.box-header{color:#fff;background:#f39c12;background-color:#f39c12} .box.box-solid.box-warning>.box-header a,.box.box-solid.box-warning>.box-header .btn{color:#fff} .box.box-solid.box-success{border:1px solid #00a65a} .box.box-solid.box-success>.box-header{color:#fff;background:#00a65a;background-color:#00a65a} .box.box-solid.box-success>.box-header a,.box.box-solid.box-success>.box-header .btn{color:#fff} .box.box-solid>.box-header>.box-tools .btn{border:0;box-shadow:none} .box.box-solid[class*='bg']>.box-header{color:#fff} .box .box-group>.box{margin-bottom:5px} .box .knob-label{text-align:center;color:#333;font-weight:100;font-size:12px;margin-bottom:0.3em} .box>.overlay,.overlay-wrapper>.overlay,.box>.loading-img,.overlay-wrapper>.loading-img{position:absolute;top:0;left:0;width:100%;height:100%} .box .overlay,.overlay-wrapper .overlay{z-index:50;background:rgba(255,255,255,0.7);border-radius:3px} .box .overlay>.fa,.overlay-wrapper .overlay>.fa{position:absolute;top:50%;left:50%;margin-left:-15px;margin-top:-15px;color:#000;font-size:30px} .box .overlay.dark,.overlay-wrapper .overlay.dark{background:rgba(0,0,0,0.5)} .box-header:before,.box-body:before,.box-footer:before,.box-header:after,.box-body:after,.box-footer:after{content:" ";display:table} .box-header:after,.box-body:after,.box-footer:after{clear:both} .box-header{color:#444;display:block;padding:10px;position:relative} .box-header.with-border{border-bottom:1px solid #f4f4f4} .collapsed-box .box-header.with-border{border-bottom:none} .box-header>.fa,.box-header>.glyphicon,.box-header>.ion,.box-header .box-title{display:inline-block;font-size:18px;margin:0;line-height:1} .box-header>.fa,.box-header>.glyphicon,.box-header>.ion{margin-right:5px} .box-header>.box-tools{position:absolute;right:10px;top:5px} .box-header>.box-tools [data-toggle="tooltip"]{position:relative} .box-header>.box-tools.pull-right .dropdown-menu{right:0;left:auto} .btn-box-tool{padding:5px;font-size:12px;background:transparent;color:#97a0b3} .open .btn-box-tool,.btn-box-tool:hover{color:#606c84} .btn-box-tool.btn:active{box-shadow:none} .box-body{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px;padding:10px} .no-header .box-body{border-top-right-radius:3px;border-top-left-radius:3px} .box-body>.table{margin-bottom:0} .box-body .fc{margin-top:5px} .box-body .full-width-chart{margin:-19px} .box-body.no-padding .full-width-chart{margin:-9px} .box-body .box-pane{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:3px} .box-body .box-pane-right{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:0} .box-footer{border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px;border-top:1px solid #f4f4f4;padding:10px;background-color:#fff} .chart-legend{margin:10px 0}@media (max-width:991px){.chart-legend>li{float:left;margin-right:10px}} .todo-list{margin:0;padding:0px 0px;list-style:none;overflow:auto} .todo-list>li{border-radius:2px;padding:10px;background:#f4f4f4;margin-bottom:2px;border-left:2px solid #e6e7e8;color:#444} .todo-list>li:last-of-type{margin-bottom:0} .todo-list>li.danger{border-left-color:#dd4b39} .todo-list>li.warning{border-left-color:#f39c12} .todo-list>li.info{border-left-color:#00c0ef} .todo-list>li.success{border-left-color:#00a65a} .todo-list>li.primary{border-left-color:#3c8dbc} .todo-list>li>input[type='checkbox']{margin:0 10px 0 5px} .todo-list>li .text{display:inline-block;margin-left:5px;font-weight:600} .todo-list>li .label{margin-left:10px;font-size:9px} .todo-list>li .tools{display:none;float:right;color:#dd4b39} .todo-list>li .tools>.fa,.todo-list>li .tools>.glyphicon,.todo-list>li .tools>.ion{margin-right:5px;cursor:pointer} .todo-list>li:hover .tools{display:inline-block} .todo-list>li.done{color:#999} .todo-list>li.done .text{text-decoration:line-through;font-weight:500} .todo-list>li.done .label{background:#d2d6de !important} .todo-list .handle{display:inline-block;cursor:move;margin:0 5px} .chat{padding:5px 20px 5px 10px} .chat .item{margin-bottom:10px} .chat .item:before,.chat .item:after{content:" ";display:table} .chat .item:after{clear:both} .chat .item>img{width:40px;height:40px;border:2px solid transparent;border-radius:50%} .chat .item>img.online{border:2px solid #00a65a} .chat .item>img.offline{border:2px solid #dd4b39} .chat .item>.message{margin-left:55px;margin-top:-40px} .chat .item>.message>.name{display:block;font-weight:600} .chat .item>.attachment{border-radius:3px;background:#f4f4f4;margin-left:65px;margin-right:15px;padding:10px} .chat .item>.attachment>h4{margin:0 0 5px 0;font-weight:600;font-size:14px} .chat .item>.attachment>p,.chat .item>.attachment>.filename{font-weight:600;font-size:13px;font-style:italic;margin:0} .chat .item>.attachment:before,.chat .item>.attachment:after{content:" ";display:table} .chat .item>.attachment:after{clear:both} .box-input{max-width:200px} .modal .panel-body{color:#444} .info-box{display:block;min-height:90px;background:#fff;width:100%;box-shadow:0 1px 1px rgba(0,0,0,0.1);border-radius:2px;margin-bottom:15px} .info-box small{font-size:14px} .info-box .progress{background:rgba(0,0,0,0.2);margin:5px -10px 5px -10px;height:2px} .info-box .progress,.info-box .progress .progress-bar{border-radius:0} .info-box .progress .progress-bar{background:#fff} .info-box-icon{border-top-left-radius:2px;border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:2px;display:block;float:left;height:90px;width:90px;text-align:center;font-size:45px;line-height:90px;background:rgba(0,0,0,0.2)} .info-box-icon>img{max-width:100%} .info-box-content{padding:5px 10px;margin-left:90px} .info-box-number{display:block;font-weight:bold;font-size:18px} .progress-description,.info-box-text{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} .info-box-text{text-transform:uppercase} .info-box-more{display:block} .progress-description{margin:0} .timeline{position:relative;margin:0 0 30px 0;padding:0;list-style:none} .timeline:before{content:'';position:absolute;top:0px;bottom:0;width:4px;background:#ddd;left:31px;margin:0;border-radius:2px} .timeline>li{position:relative;margin-right:10px;margin-bottom:15px} .timeline>li:before,.timeline>li:after{content:" ";display:table} .timeline>li:after{clear:both} .timeline>li>.timeline-item{-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1);border-radius:3px;margin-top:0px;background:#fff;color:#444;margin-left:60px;margin-right:15px;padding:0;position:relative} .timeline>li>.timeline-item>.time{color:#999;float:right;padding:10px;font-size:12px} .timeline>li>.timeline-item>.timeline-header{margin:0;color:#555;border-bottom:1px solid #f4f4f4;padding:10px;font-size:16px;line-height:1.1} .timeline>li>.timeline-item>.timeline-header>a{font-weight:600} .timeline>li>.timeline-item>.timeline-body,.timeline>li>.timeline-item>.timeline-footer{padding:10px} .timeline>li.time-label>span{font-weight:600;padding:5px;display:inline-block;background-color:#fff;border-radius:4px} .timeline>li>.fa,.timeline>li>.glyphicon,.timeline>li>.ion{width:30px;height:30px;font-size:15px;line-height:30px;position:absolute;color:#666;background:#d2d6de;border-radius:50%;text-align:center;left:18px;top:0} .btn{border-radius:3px;-webkit-box-shadow:none;box-shadow:none;border:1px solid transparent} .btn.uppercase{text-transform:uppercase} .btn.btn-flat{border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border-width:1px} .btn:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)} .btn:focus{outline:none} .btn.btn-file{position:relative;overflow:hidden} .btn.btn-file>input[type='file']{position:absolute;top:0;right:0;min-width:100%;min-height:100%;font-size:100px;text-align:right;opacity:0;filter:alpha(opacity=0);outline:none;background:white;cursor:inherit;display:block} .btn-default{background-color:#f4f4f4;color:#444;border-color:#ddd} .btn-default:hover,.btn-default:active,.btn-default.hover{background-color:#e7e7e7} .btn-primary{background-color:#3c8dbc;border-color:#367fa9} .btn-primary:hover,.btn-primary:active,.btn-primary.hover{background-color:#367fa9} .btn-success{background-color:#00a65a;border-color:#008d4c} .btn-success:hover,.btn-success:active,.btn-success.hover{background-color:#008d4c} .btn-info{background-color:#00c0ef;border-color:#00acd6} .btn-info:hover,.btn-info:active,.btn-info.hover{background-color:#00acd6} .btn-danger{background-color:#dd4b39;border-color:#d73925} .btn-danger:hover,.btn-danger:active,.btn-danger.hover{background-color:#d73925} .btn-warning{background-color:#f39c12;border-color:#e08e0b} .btn-warning:hover,.btn-warning:active,.btn-warning.hover{background-color:#e08e0b} .btn-outline{border:1px solid #fff;background:transparent;color:#fff} .btn-outline:hover,.btn-outline:focus,.btn-outline:active{color:rgba(255,255,255,0.7);border-color:rgba(255,255,255,0.7)} .btn-link{-webkit-box-shadow:none;box-shadow:none} .btn[class*='bg-']:hover{-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,0.2);box-shadow:inset 0 0 100px rgba(0,0,0,0.2)} .btn-app{border-radius:3px;position:relative;padding:15px 5px;margin:0 0 10px 10px;min-width:80px;height:60px;text-align:center;color:#666;border:1px solid #ddd;background-color:#f4f4f4;font-size:12px} .btn-app>.fa,.btn-app>.glyphicon,.btn-app>.ion{font-size:20px;display:block} .btn-app:hover{background:#f4f4f4;color:#444;border-color:#aaa} .btn-app:active,.btn-app:focus{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)} .btn-app>.badge{position:absolute;top:-3px;right:-10px;font-size:10px;font-weight:400} .callout{border-radius:3px;margin:0 0 20px 0;padding:15px 30px 15px 15px;border-left:5px solid #eee} .callout a{color:#fff;text-decoration:underline} .callout a:hover{color:#eee} .callout h4{margin-top:0;font-weight:600} .callout p:last-child{margin-bottom:0} .callout code,.callout .highlight{background-color:#fff} .callout.callout-danger{border-color:#c23321} .callout.callout-warning{border-color:#c87f0a} .callout.callout-info{border-color:#0097bc} .callout.callout-success{border-color:#00733e} .alert{border-radius:3px} .alert h4{font-weight:600} .alert .icon{margin-right:10px} .alert .close{color:#000;opacity:.2;filter:alpha(opacity=20)} .alert .close:hover{opacity:.5;filter:alpha(opacity=50)} .alert a{color:#fff;text-decoration:underline} .alert-success{border-color:#008d4c} .alert-danger,.alert-error{border-color:#d73925} .alert-warning{border-color:#e08e0b} .alert-info{border-color:#00acd6} .nav>li>a:hover,.nav>li>a:active,.nav>li>a:focus{color:#444;background:#f7f7f7} .nav-pills>li>a{border-radius:0;border-top:3px solid transparent;color:#444} .nav-pills>li>a>.fa,.nav-pills>li>a>.glyphicon,.nav-pills>li>a>.ion{margin-right:5px} .nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{border-top-color:#3c8dbc} .nav-pills>li.active>a{font-weight:600} .nav-stacked>li>a{border-radius:0;border-top:0;border-left:3px solid transparent;color:#444} .nav-stacked>li.active>a,.nav-stacked>li.active>a:hover{background:transparent;color:#444;border-top:0;border-left-color:#3c8dbc} .nav-stacked>li.header{border-bottom:1px solid #ddd;color:#777;margin-bottom:10px;padding:5px 10px;text-transform:uppercase} .nav-tabs-custom{margin-bottom:20px;background:#fff;box-shadow:0 1px 1px rgba(0,0,0,0.1);border-radius:3px} .nav-tabs-custom>.nav-tabs{margin:0;border-bottom-color:#f4f4f4;border-top-right-radius:3px;border-top-left-radius:3px} .nav-tabs-custom>.nav-tabs>li{border-top:3px solid transparent;margin-bottom:-2px;margin-right:5px} .nav-tabs-custom>.nav-tabs>li>a{color:#444;border-radius:0} .nav-tabs-custom>.nav-tabs>li>a,.nav-tabs-custom>.nav-tabs>li>a:hover{background:transparent;margin:0} .nav-tabs-custom>.nav-tabs>li>a:hover{color:#999} .nav-tabs-custom>.nav-tabs>li:not(.active)>a:hover,.nav-tabs-custom>.nav-tabs>li:not(.active)>a:focus,.nav-tabs-custom>.nav-tabs>li:not(.active)>a:active{border-color:transparent} .nav-tabs-custom>.nav-tabs>li.active{border-top-color:#3c8dbc} .nav-tabs-custom>.nav-tabs>li.active>a,.nav-tabs-custom>.nav-tabs>li.active:hover>a{background-color:#fff;color:#444} .nav-tabs-custom>.nav-tabs>li.active>a{border-top-color:transparent;border-left-color:#f4f4f4;border-right-color:#f4f4f4} .nav-tabs-custom>.nav-tabs>li:first-of-type{margin-left:0} .nav-tabs-custom>.nav-tabs>li:first-of-type.active>a{border-left-color:transparent} .nav-tabs-custom>.nav-tabs.pull-right{float:none!important} .nav-tabs-custom>.nav-tabs.pull-right>li{float:right} .nav-tabs-custom>.nav-tabs.pull-right>li:first-of-type{margin-right:0} .nav-tabs-custom>.nav-tabs.pull-right>li:first-of-type>a{border-left-width:1px} .nav-tabs-custom>.nav-tabs.pull-right>li:first-of-type.active>a{border-left-color:#f4f4f4;border-right-color:transparent} .nav-tabs-custom>.nav-tabs>li.header{line-height:35px;padding:0 10px;font-size:20px;color:#444} .nav-tabs-custom>.nav-tabs>li.header>.fa,.nav-tabs-custom>.nav-tabs>li.header>.glyphicon,.nav-tabs-custom>.nav-tabs>li.header>.ion{margin-right:5px} .nav-tabs-custom>.tab-content{background:#fff;padding:10px;border-bottom-right-radius:3px;border-bottom-left-radius:3px} .nav-tabs-custom .dropdown.open>a:active,.nav-tabs-custom .dropdown.open>a:focus{background:transparent;color:#999} .pagination>li>a{background:#fafafa;color:#666} .pagination.pagination-flat>li>a{border-radius:0 !important} .products-list{list-style:none;margin:0;padding:0} .products-list>.item{border-radius:3px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.1);box-shadow:0 1px 1px rgba(0,0,0,0.1);padding:10px 0;background:#fff} .products-list>.item:before,.products-list>.item:after{content:" ";display:table} .products-list>.item:after{clear:both} .products-list .product-img{float:left} .products-list .product-img img{width:50px;height:50px} .products-list .product-info{margin-left:60px} .products-list .product-title{font-weight:600} .products-list .product-description{display:block;color:#999;overflow:hidden;white-space:nowrap;text-overflow:ellipsis} .product-list-in-box>.item{-webkit-box-shadow:none;box-shadow:none;border-radius:0;border-bottom:1px solid #f4f4f4} .product-list-in-box>.item:last-of-type{border-bottom-width:0} .table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{border-top:1px solid #f4f4f4} .table>thead>tr>th{border-bottom:2px solid #f4f4f4} .table tr td .progress{margin-top:5px} .table-bordered{border:1px solid #f4f4f4} .table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #f4f4f4} .table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px} .table.no-border,.table.no-border td,.table.no-border th{border:0} table.text-center,table.text-center td,table.text-center th{text-align:center} .table.align th{text-align:left} .table.align td{text-align:right} .label-default{background-color:#d2d6de;color:#444} .direct-chat .box-body{border-bottom-right-radius:0;border-bottom-left-radius:0;position:relative;overflow-x:hidden;padding:0} .direct-chat.chat-pane-open .direct-chat-contacts{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)} .direct-chat-messages{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0);padding:10px;height:250px;overflow:auto} .direct-chat-msg,.direct-chat-text{display:block} .direct-chat-msg{margin-bottom:10px} .direct-chat-msg:before,.direct-chat-msg:after{content:" ";display:table} .direct-chat-msg:after{clear:both} .direct-chat-messages,.direct-chat-contacts{-webkit-transition:-webkit-transform .5s ease-in-out;-moz-transition:-moz-transform .5s ease-in-out;-o-transition:-o-transform .5s ease-in-out;transition:transform .5s ease-in-out} .direct-chat-text{border-radius:5px;position:relative;padding:5px 10px;background:#d2d6de;border:1px solid #d2d6de;margin:5px 0 0 50px;color:#444} .direct-chat-text:after,.direct-chat-text:before{position:absolute;right:100%;top:15px;border:solid transparent;border-right-color:#d2d6de;content:' ';height:0;width:0;pointer-events:none} .direct-chat-text:after{border-width:5px;margin-top:-5px} .direct-chat-text:before{border-width:6px;margin-top:-6px} .right .direct-chat-text{margin-right:50px;margin-left:0} .right .direct-chat-text:after,.right .direct-chat-text:before{right:auto;left:100%;border-right-color:transparent;border-left-color:#d2d6de} .direct-chat-img{border-radius:50%;float:left;width:40px;height:40px} .right .direct-chat-img{float:right} .direct-chat-info{display:block;margin-bottom:2px;font-size:12px} .direct-chat-name{font-weight:600} .direct-chat-timestamp{color:#999} .direct-chat-contacts-open .direct-chat-contacts{-webkit-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)} .direct-chat-contacts{-webkit-transform:translate(101%, 0);-ms-transform:translate(101%, 0);-o-transform:translate(101%, 0);transform:translate(101%, 0);position:absolute;top:0;bottom:0;height:250px;width:100%;background:#222d32;color:#fff;overflow:auto} .contacts-list>li{border-bottom:1px solid rgba(0,0,0,0.2);padding:10px;margin:0} .contacts-list>li:before,.contacts-list>li:after{content:" ";display:table} .contacts-list>li:after{clear:both} .contacts-list>li:last-of-type{border-bottom:none} .contacts-list-img{border-radius:50%;width:40px;float:left} .contacts-list-info{margin-left:45px;color:#fff} .contacts-list-name,.contacts-list-status{display:block} .contacts-list-name{font-weight:600} .contacts-list-status{font-size:12px} .contacts-list-date{color:#aaa;font-weight:normal} .contacts-list-msg{color:#999} .direct-chat-danger .right>.direct-chat-text{background:#dd4b39;border-color:#dd4b39;color:#fff} .direct-chat-danger .right>.direct-chat-text:after,.direct-chat-danger .right>.direct-chat-text:before{border-left-color:#dd4b39} .direct-chat-primary .right>.direct-chat-text{background:#3c8dbc;border-color:#3c8dbc;color:#fff} .direct-chat-primary .right>.direct-chat-text:after,.direct-chat-primary .right>.direct-chat-text:before{border-left-color:#3c8dbc} .direct-chat-warning .right>.direct-chat-text{background:#f39c12;border-color:#f39c12;color:#fff} .direct-chat-warning .right>.direct-chat-text:after,.direct-chat-warning .right>.direct-chat-text:before{border-left-color:#f39c12} .direct-chat-info .right>.direct-chat-text{background:#00c0ef;border-color:#00c0ef;color:#fff} .direct-chat-info .right>.direct-chat-text:after,.direct-chat-info .right>.direct-chat-text:before{border-left-color:#00c0ef} .direct-chat-success .right>.direct-chat-text{background:#00a65a;border-color:#00a65a;color:#fff} .direct-chat-success .right>.direct-chat-text:after,.direct-chat-success .right>.direct-chat-text:before{border-left-color:#00a65a} .users-list>li{width:25%;float:left;padding:10px;text-align:center} .users-list>li img{border-radius:50%;max-width:100%;height:auto} .users-list>li>a:hover,.users-list>li>a:hover .users-list-name{color:#999} .users-list-name,.users-list-date{display:block} .users-list-name{font-weight:600;color:#444;overflow:hidden;white-space:nowrap;text-overflow:ellipsis} .users-list-date{color:#999;font-size:12px} .carousel-control.left,.carousel-control.right{background-image:none} .carousel-control>.fa{font-size:40px;position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-20px} .modal{background:rgba(0,0,0,0.3)} .modal-content{border-radius:0;-webkit-box-shadow:0 2px 3px rgba(0,0,0,0.125);box-shadow:0 2px 3px rgba(0,0,0,0.125);border:0}@media (min-width:768px){.modal-content{-webkit-box-shadow:0 2px 3px rgba(0,0,0,0.125);box-shadow:0 2px 3px rgba(0,0,0,0.125)}} .modal-header{border-bottom-color:#f4f4f4} .modal-footer{border-top-color:#f4f4f4} .modal-primary .modal-header,.modal-primary .modal-footer{border-color:#307095} .modal-warning .modal-header,.modal-warning .modal-footer{border-color:#c87f0a} .modal-info .modal-header,.modal-info .modal-footer{border-color:#0097bc} .modal-success .modal-header,.modal-success .modal-footer{border-color:#00733e} .modal-danger .modal-header,.modal-danger .modal-footer{border-color:#c23321} .mailbox-messages>.table{margin:0} .mailbox-controls{padding:5px} .mailbox-controls.with-border{border-bottom:1px solid #f4f4f4} .mailbox-read-info{border-bottom:1px solid #f4f4f4;padding:10px} .mailbox-read-info h3{font-size:20px;margin:0} .mailbox-read-info h5{margin:0;padding:5px 0 0 0} .mailbox-read-time{color:#999;font-size:13px} .mailbox-read-message{padding:10px} .mailbox-attachments li{float:left;width:200px;border:1px solid #eee;margin-bottom:10px;margin-right:10px} .mailbox-attachment-name{font-weight:bold;color:#666} .mailbox-attachment-icon,.mailbox-attachment-info,.mailbox-attachment-size{display:block} .mailbox-attachment-info{padding:10px;background:#f4f4f4} .mailbox-attachment-size{color:#999;font-size:12px} .mailbox-attachment-icon{text-align:center;font-size:65px;color:#666;padding:20px 10px} .mailbox-attachment-icon.has-img{padding:0} .mailbox-attachment-icon.has-img>img{max-width:100%;height:auto} .lockscreen{background:#d2d6de} .lockscreen-logo{font-size:35px;text-align:center;margin-bottom:25px;font-weight:300} .lockscreen-logo a{color:#444} .lockscreen-wrapper{max-width:400px;margin:0 auto;margin-top:10%} .lockscreen .lockscreen-name{text-align:center;font-weight:600} .lockscreen-item{border-radius:4px;padding:0;background:#fff;position:relative;margin:10px auto 30px auto;width:290px} .lockscreen-image{border-radius:50%;position:absolute;left:-10px;top:-25px;background:#fff;padding:5px;z-index:10} .lockscreen-image>img{border-radius:50%;width:70px;height:70px} .lockscreen-credentials{margin-left:70px} .lockscreen-credentials .form-control{border:0} .lockscreen-credentials .btn{background-color:#fff;border:0;padding:0 10px} .lockscreen-footer{margin-top:10px} .login-logo,.register-logo{font-size:35px;text-align:center;margin-bottom:25px;font-weight:300} .login-logo a,.register-logo a{color:#444} .login-page,.register-page{background:#d2d6de} .login-box,.register-box{width:360px;margin:7% auto}@media (max-width:768px){.login-box,.register-box{width:90%;margin-top:20px}} .login-box-body,.register-box-body{background:#fff;padding:20px;color:#444;border-top:0;color:#666} .login-box-body .form-control-feedback,.register-box-body .form-control-feedback{color:#777} .login-box-msg,.register-box-msg{margin:0;text-align:center;padding:0 20px 20px 20px} .social-auth-links{margin:10px 0} .error-page{width:600px;margin:20px auto 0 auto}@media (max-width:991px){.error-page{width:100%}} .error-page>.headline{float:left;font-size:100px;font-weight:300}@media (max-width:991px){.error-page>.headline{float:none;text-align:center}} .error-page>.error-content{margin-left:190px;display:block}@media (max-width:991px){.error-page>.error-content{margin-left:0}} .error-page>.error-content>h3{font-weight:300;font-size:25px}@media (max-width:991px){.error-page>.error-content>h3{text-align:center}} .invoice{position:relative;background:#fff;border:1px solid #f4f4f4;padding:20px;margin:10px 25px} .invoice-title{margin-top:0} .btn-social{position:relative;padding-left:44px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} .btn-social>:first-child{position:absolute;left:0;top:0;bottom:0;width:32px;line-height:34px;font-size:1.6em;text-align:center;border-right:1px solid rgba(0,0,0,0.2)} .btn-social.btn-lg{padding-left:61px} .btn-social.btn-lg>:first-child{line-height:45px;width:45px;font-size:1.8em} .btn-social.btn-sm{padding-left:38px} .btn-social.btn-sm>:first-child{line-height:28px;width:28px;font-size:1.4em} .btn-social.btn-xs{padding-left:30px} .btn-social.btn-xs>:first-child{line-height:20px;width:20px;font-size:1.2em} .btn-social-icon{position:relative;padding-left:44px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:34px;width:34px;padding:0} .btn-social-icon>:first-child{position:absolute;left:0;top:0;bottom:0;width:32px;line-height:34px;font-size:1.6em;text-align:center;border-right:1px solid rgba(0,0,0,0.2)} .btn-social-icon.btn-lg{padding-left:61px} .btn-social-icon.btn-lg>:first-child{line-height:45px;width:45px;font-size:1.8em} .btn-social-icon.btn-sm{padding-left:38px} .btn-social-icon.btn-sm>:first-child{line-height:28px;width:28px;font-size:1.4em} .btn-social-icon.btn-xs{padding-left:30px} .btn-social-icon.btn-xs>:first-child{line-height:20px;width:20px;font-size:1.2em} .btn-social-icon>:first-child{border:none;text-align:center;width:100%} .btn-social-icon.btn-lg{height:45px;width:45px;padding-left:0;padding-right:0} .btn-social-icon.btn-sm{height:30px;width:30px;padding-left:0;padding-right:0} .btn-social-icon.btn-xs{height:22px;width:22px;padding-left:0;padding-right:0} .btn-adn{color:#fff;background-color:#d87a68;border-color:rgba(0,0,0,0.2)} .btn-adn:hover,.btn-adn:focus,.btn-adn.focus,.btn-adn:active,.btn-adn.active,.open>.dropdown-toggle.btn-adn{color:#fff;background-color:#ce563f;border-color:rgba(0,0,0,0.2)} .btn-adn:active,.btn-adn.active,.open>.dropdown-toggle.btn-adn{background-image:none} .btn-adn .badge{color:#d87a68;background-color:#fff} .btn-bitbucket{color:#fff;background-color:#205081;border-color:rgba(0,0,0,0.2)} .btn-bitbucket:hover,.btn-bitbucket:focus,.btn-bitbucket.focus,.btn-bitbucket:active,.btn-bitbucket.active,.open>.dropdown-toggle.btn-bitbucket{color:#fff;background-color:#163758;border-color:rgba(0,0,0,0.2)} .btn-bitbucket:active,.btn-bitbucket.active,.open>.dropdown-toggle.btn-bitbucket{background-image:none} .btn-bitbucket .badge{color:#205081;background-color:#fff} .btn-dropbox{color:#fff;background-color:#1087dd;border-color:rgba(0,0,0,0.2)} .btn-dropbox:hover,.btn-dropbox:focus,.btn-dropbox.focus,.btn-dropbox:active,.btn-dropbox.active,.open>.dropdown-toggle.btn-dropbox{color:#fff;background-color:#0d6aad;border-color:rgba(0,0,0,0.2)} .btn-dropbox:active,.btn-dropbox.active,.open>.dropdown-toggle.btn-dropbox{background-image:none} .btn-dropbox .badge{color:#1087dd;background-color:#fff} .btn-facebook{color:#fff;background-color:#3b5998;border-color:rgba(0,0,0,0.2)} .btn-facebook:hover,.btn-facebook:focus,.btn-facebook.focus,.btn-facebook:active,.btn-facebook.active,.open>.dropdown-toggle.btn-facebook{color:#fff;background-color:#2d4373;border-color:rgba(0,0,0,0.2)} .btn-facebook:active,.btn-facebook.active,.open>.dropdown-toggle.btn-facebook{background-image:none} .btn-facebook .badge{color:#3b5998;background-color:#fff} .btn-flickr{color:#fff;background-color:#ff0084;border-color:rgba(0,0,0,0.2)} .btn-flickr:hover,.btn-flickr:focus,.btn-flickr.focus,.btn-flickr:active,.btn-flickr.active,.open>.dropdown-toggle.btn-flickr{color:#fff;background-color:#cc006a;border-color:rgba(0,0,0,0.2)} .btn-flickr:active,.btn-flickr.active,.open>.dropdown-toggle.btn-flickr{background-image:none} .btn-flickr .badge{color:#ff0084;background-color:#fff} .btn-foursquare{color:#fff;background-color:#f94877;border-color:rgba(0,0,0,0.2)} .btn-foursquare:hover,.btn-foursquare:focus,.btn-foursquare.focus,.btn-foursquare:active,.btn-foursquare.active,.open>.dropdown-toggle.btn-foursquare{color:#fff;background-color:#f71752;border-color:rgba(0,0,0,0.2)} .btn-foursquare:active,.btn-foursquare.active,.open>.dropdown-toggle.btn-foursquare{background-image:none} .btn-foursquare .badge{color:#f94877;background-color:#fff} .btn-github{color:#fff;background-color:#444;border-color:rgba(0,0,0,0.2)} .btn-github:hover,.btn-github:focus,.btn-github.focus,.btn-github:active,.btn-github.active,.open>.dropdown-toggle.btn-github{color:#fff;background-color:#2b2b2b;border-color:rgba(0,0,0,0.2)} .btn-github:active,.btn-github.active,.open>.dropdown-toggle.btn-github{background-image:none} .btn-github .badge{color:#444;background-color:#fff} .btn-google{color:#fff;background-color:#dd4b39;border-color:rgba(0,0,0,0.2)} .btn-google:hover,.btn-google:focus,.btn-google.focus,.btn-google:active,.btn-google.active,.open>.dropdown-toggle.btn-google{color:#fff;background-color:#c23321;border-color:rgba(0,0,0,0.2)} .btn-google:active,.btn-google.active,.open>.dropdown-toggle.btn-google{background-image:none} .btn-google .badge{color:#dd4b39;background-color:#fff} .btn-instagram{color:#fff;background-color:#3f729b;border-color:rgba(0,0,0,0.2)} .btn-instagram:hover,.btn-instagram:focus,.btn-instagram.focus,.btn-instagram:active,.btn-instagram.active,.open>.dropdown-toggle.btn-instagram{color:#fff;background-color:#305777;border-color:rgba(0,0,0,0.2)} .btn-instagram:active,.btn-instagram.active,.open>.dropdown-toggle.btn-instagram{background-image:none} .btn-instagram .badge{color:#3f729b;background-color:#fff} .btn-linkedin{color:#fff;background-color:#007bb6;border-color:rgba(0,0,0,0.2)} .btn-linkedin:hover,.btn-linkedin:focus,.btn-linkedin.focus,.btn-linkedin:active,.btn-linkedin.active,.open>.dropdown-toggle.btn-linkedin{color:#fff;background-color:#005983;border-color:rgba(0,0,0,0.2)} .btn-linkedin:active,.btn-linkedin.active,.open>.dropdown-toggle.btn-linkedin{background-image:none} .btn-linkedin .badge{color:#007bb6;background-color:#fff} .btn-microsoft{color:#fff;background-color:#2672ec;border-color:rgba(0,0,0,0.2)} .btn-microsoft:hover,.btn-microsoft:focus,.btn-microsoft.focus,.btn-microsoft:active,.btn-microsoft.active,.open>.dropdown-toggle.btn-microsoft{color:#fff;background-color:#125acd;border-color:rgba(0,0,0,0.2)} .btn-microsoft:active,.btn-microsoft.active,.open>.dropdown-toggle.btn-microsoft{background-image:none} .btn-microsoft .badge{color:#2672ec;background-color:#fff} .btn-openid{color:#fff;background-color:#f7931e;border-color:rgba(0,0,0,0.2)} .btn-openid:hover,.btn-openid:focus,.btn-openid.focus,.btn-openid:active,.btn-openid.active,.open>.dropdown-toggle.btn-openid{color:#fff;background-color:#da7908;border-color:rgba(0,0,0,0.2)} .btn-openid:active,.btn-openid.active,.open>.dropdown-toggle.btn-openid{background-image:none} .btn-openid .badge{color:#f7931e;background-color:#fff} .btn-pinterest{color:#fff;background-color:#cb2027;border-color:rgba(0,0,0,0.2)} .btn-pinterest:hover,.btn-pinterest:focus,.btn-pinterest.focus,.btn-pinterest:active,.btn-pinterest.active,.open>.dropdown-toggle.btn-pinterest{color:#fff;background-color:#9f191f;border-color:rgba(0,0,0,0.2)} .btn-pinterest:active,.btn-pinterest.active,.open>.dropdown-toggle.btn-pinterest{background-image:none} .btn-pinterest .badge{color:#cb2027;background-color:#fff} .btn-reddit{color:#000;background-color:#eff7ff;border-color:rgba(0,0,0,0.2)} .btn-reddit:hover,.btn-reddit:focus,.btn-reddit.focus,.btn-reddit:active,.btn-reddit.active,.open>.dropdown-toggle.btn-reddit{color:#000;background-color:#bcddff;border-color:rgba(0,0,0,0.2)} .btn-reddit:active,.btn-reddit.active,.open>.dropdown-toggle.btn-reddit{background-image:none} .btn-reddit .badge{color:#eff7ff;background-color:#000} .btn-soundcloud{color:#fff;background-color:#f50;border-color:rgba(0,0,0,0.2)} .btn-soundcloud:hover,.btn-soundcloud:focus,.btn-soundcloud.focus,.btn-soundcloud:active,.btn-soundcloud.active,.open>.dropdown-toggle.btn-soundcloud{color:#fff;background-color:#c40;border-color:rgba(0,0,0,0.2)} .btn-soundcloud:active,.btn-soundcloud.active,.open>.dropdown-toggle.btn-soundcloud{background-image:none} .btn-soundcloud .badge{color:#f50;background-color:#fff} .btn-tumblr{color:#fff;background-color:#2c4762;border-color:rgba(0,0,0,0.2)} .btn-tumblr:hover,.btn-tumblr:focus,.btn-tumblr.focus,.btn-tumblr:active,.btn-tumblr.active,.open>.dropdown-toggle.btn-tumblr{color:#fff;background-color:#1c2d3f;border-color:rgba(0,0,0,0.2)} .btn-tumblr:active,.btn-tumblr.active,.open>.dropdown-toggle.btn-tumblr{background-image:none} .btn-tumblr .badge{color:#2c4762;background-color:#fff} .btn-twitter{color:#fff;background-color:#55acee;border-color:rgba(0,0,0,0.2)} .btn-twitter:hover,.btn-twitter:focus,.btn-twitter.focus,.btn-twitter:active,.btn-twitter.active,.open>.dropdown-toggle.btn-twitter{color:#fff;background-color:#2795e9;border-color:rgba(0,0,0,0.2)} .btn-twitter:active,.btn-twitter.active,.open>.dropdown-toggle.btn-twitter{background-image:none} .btn-twitter .badge{color:#55acee;background-color:#fff} .btn-vimeo{color:#fff;background-color:#1ab7ea;border-color:rgba(0,0,0,0.2)} .btn-vimeo:hover,.btn-vimeo:focus,.btn-vimeo.focus,.btn-vimeo:active,.btn-vimeo.active,.open>.dropdown-toggle.btn-vimeo{color:#fff;background-color:#1295bf;border-color:rgba(0,0,0,0.2)} .btn-vimeo:active,.btn-vimeo.active,.open>.dropdown-toggle.btn-vimeo{background-image:none} .btn-vimeo .badge{color:#1ab7ea;background-color:#fff} .btn-vk{color:#fff;background-color:#587ea3;border-color:rgba(0,0,0,0.2)} .btn-vk:hover,.btn-vk:focus,.btn-vk.focus,.btn-vk:active,.btn-vk.active,.open>.dropdown-toggle.btn-vk{color:#fff;background-color:#466482;border-color:rgba(0,0,0,0.2)} .btn-vk:active,.btn-vk.active,.open>.dropdown-toggle.btn-vk{background-image:none} .btn-vk .badge{color:#587ea3;background-color:#fff} .btn-yahoo{color:#fff;background-color:#720e9e;border-color:rgba(0,0,0,0.2)} .btn-yahoo:hover,.btn-yahoo:focus,.btn-yahoo.focus,.btn-yahoo:active,.btn-yahoo.active,.open>.dropdown-toggle.btn-yahoo{color:#fff;background-color:#500a6f;border-color:rgba(0,0,0,0.2)} .btn-yahoo:active,.btn-yahoo.active,.open>.dropdown-toggle.btn-yahoo{background-image:none} .btn-yahoo .badge{color:#720e9e;background-color:#fff} .fc-button{background:#f4f4f4;background-image:none;color:#444;border-color:#ddd;border-bottom-color:#ddd} .fc-button:hover,.fc-button:active,.fc-button.hover{background-color:#e9e9e9} .fc-header-title h2{font-size:15px;line-height:1.6em;color:#666;margin-left:10px} .fc-header-right{padding-right:10px} .fc-header-left{padding-left:10px} .fc-widget-header{background:#fafafa} .fc-grid{width:100%;border:0} .fc-widget-header:first-of-type,.fc-widget-content:first-of-type{border-left:0;border-right:0} .fc-widget-header:last-of-type,.fc-widget-content:last-of-type{border-right:0} .fc-toolbar{padding:10px;margin:0} .fc-day-number{font-size:20px;font-weight:300;padding-right:10px} .fc-color-picker{list-style:none;margin:0;padding:0} .fc-color-picker>li{float:left;font-size:30px;margin-right:5px;line-height:30px} .fc-color-picker>li .fa{-webkit-transition:-webkit-transform linear .3s;-moz-transition:-moz-transform linear .3s;-o-transition:-o-transform linear .3s;transition:transform linear .3s} .fc-color-picker>li .fa:hover{-webkit-transform:rotate(30deg);-ms-transform:rotate(30deg);-o-transform:rotate(30deg);transform:rotate(30deg)} #add-new-event{-webkit-transition:all linear .3s;-o-transition:all linear .3s;transition:all linear .3s} .external-event{padding:5px 10px;font-weight:bold;margin-bottom:4px;box-shadow:0 1px 1px rgba(0,0,0,0.1);text-shadow:0 1px 1px rgba(0,0,0,0.1);border-radius:3px;cursor:move} .external-event:hover{box-shadow:inset 0 0 90px rgba(0,0,0,0.2)} .select2-container--default.select2-container--focus,.select2-selection.select2-container--focus,.select2-container--default:focus,.select2-selection:focus,.select2-container--default:active,.select2-selection:active{outline:none} .select2-container--default .select2-selection--single,.select2-selection .select2-selection--single{border:1px solid #d2d6de;border-radius:0;padding:6px 12px;height:34px} .select2-container--default.select2-container--open{border-color:#3c8dbc} .select2-dropdown{border:1px solid #d2d6de;border-radius:0} .select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:#3c8dbc;color:white} .select2-results__option{padding:6px 12px;user-select:none;-webkit-user-select:none} .select2-container .select2-selection--single .select2-selection__rendered{padding-left:0;padding-right:0;height:auto;margin-top:-4px} .select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered{padding-right:6px;padding-left:20px} .select2-container--default .select2-selection--single .select2-selection__arrow{height:28px;right:3px} .select2-container--default .select2-selection--single .select2-selection__arrow b{margin-top:0} .select2-dropdown .select2-search__field,.select2-search--inline .select2-search__field{border:1px solid #d2d6de} .select2-dropdown .select2-search__field:focus,.select2-search--inline .select2-search__field:focus{outline:none;border:1px solid #3c8dbc} .select2-container--default .select2-results__option[aria-disabled=true]{color:#999} .select2-container--default .select2-results__option[aria-selected=true]{background-color:#ddd} .select2-container--default .select2-results__option[aria-selected=true],.select2-container--default .select2-results__option[aria-selected=true]:hover{color:#444} .select2-container--default .select2-selection--multiple{border:1px solid #d2d6de;border-radius:0;height:34px} .select2-container--default .select2-selection--multiple:focus{border-color:#3c8dbc} .select2-container--default.select2-container--focus .select2-selection--multiple{border-color:#d2d6de} .select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#3c8dbc;border-color:#367fa9;padding:1px 10px;color:#fff} .select2-container--default .select2-selection--multiple .select2-selection__choice__remove{margin-right:5px;color:rgba(255,255,255,0.7)} .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{color:#fff} .select2-container .select2-selection--single .select2-selection__rendered{padding-right:10px} .pad{padding:10px} .margin{margin:10px} .margin-bottom{margin-bottom:20px} .inline{display:inline;width:auto} .description-block{display:block;margin:10px 0;text-align:center} .description-block.margin-bottom{margin-bottom:25px} .description-block>.description-header{margin:0;padding:0;font-weight:600;font-size:16px} .description-block>.description-text{text-transform:uppercase} .bg-red,.bg-yellow,.bg-aqua,.bg-blue,.bg-light-blue,.bg-green,.bg-navy,.bg-teal,.bg-olive,.bg-lime,.bg-orange,.bg-fuchsia,.bg-purple,.bg-maroon,.bg-black,.bg-red-active,.bg-yellow-active,.bg-aqua-active,.bg-blue-active,.bg-light-blue-active,.bg-green-active,.bg-navy-active,.bg-teal-active,.bg-olive-active,.bg-lime-active,.bg-orange-active,.bg-fuchsia-active,.bg-purple-active,.bg-maroon-active,.bg-black-active,.callout.callout-danger,.callout.callout-warning,.callout.callout-info,.callout.callout-success,.alert-success,.alert-danger,.alert-error,.alert-warning,.alert-info,.label-danger,.label-info,.label-warning,.label-primary,.label-success,.modal-primary .modal-body,.modal-primary .modal-header,.modal-primary .modal-footer,.modal-warning .modal-body,.modal-warning .modal-header,.modal-warning .modal-footer,.modal-info .modal-body,.modal-info .modal-header,.modal-info .modal-footer,.modal-success .modal-body,.modal-success .modal-header,.modal-success .modal-footer,.modal-danger .modal-body,.modal-danger .modal-header,.modal-danger .modal-footer{color:#fff !important} .bg-gray{color:#000;background-color:#d2d6de !important} .bg-black{background-color:#111 !important} .bg-red,.callout.callout-danger,.alert-danger,.alert-error,.label-danger,.modal-danger .modal-body{background-color:#dd4b39 !important} .bg-yellow,.callout.callout-warning,.alert-warning,.label-warning,.modal-warning .modal-body{background-color:#f39c12 !important} .bg-aqua,.callout.callout-info,.alert-info,.label-info,.modal-info .modal-body{background-color:#00c0ef !important} .bg-blue{background-color:#0073b7 !important} .bg-light-blue,.label-primary,.modal-primary .modal-body{background-color:#3c8dbc !important} .bg-green,.callout.callout-success,.alert-success,.label-success,.modal-success .modal-body{background-color:#00a65a !important} .bg-navy{background-color:#001f3f !important} .bg-teal{background-color:#39cccc !important} .bg-olive{background-color:#3d9970 !important} .bg-lime{background-color:#01ff70 !important} .bg-orange{background-color:#ff851b !important} .bg-fuchsia{background-color:#f012be !important} .bg-purple{background-color:#605ca8 !important} .bg-maroon{background-color:#d81b60 !important} .bg-gray-active{color:#000;background-color:#b5bbc8 !important} .bg-black-active{background-color:#000 !important} .bg-red-active,.modal-danger .modal-header,.modal-danger .modal-footer{background-color:#d33724 !important} .bg-yellow-active,.modal-warning .modal-header,.modal-warning .modal-footer{background-color:#db8b0b !important} .bg-aqua-active,.modal-info .modal-header,.modal-info .modal-footer{background-color:#00a7d0 !important} .bg-blue-active{background-color:#005384 !important} .bg-light-blue-active,.modal-primary .modal-header,.modal-primary .modal-footer{background-color:#357ca5 !important} .bg-green-active,.modal-success .modal-header,.modal-success .modal-footer{background-color:#008d4c !important} .bg-navy-active{background-color:#001a35 !important} .bg-teal-active{background-color:#30bbbb !important} .bg-olive-active{background-color:#368763 !important} .bg-lime-active{background-color:#00e765 !important} .bg-orange-active{background-color:#ff7701 !important} .bg-fuchsia-active{background-color:#db0ead !important} .bg-purple-active{background-color:#555299 !important} .bg-maroon-active{background-color:#ca195a !important} [class^="bg-"].disabled{opacity:.65;filter:alpha(opacity=65)} .text-red{color:#dd4b39 !important} .text-yellow{color:#f39c12 !important} .text-aqua{color:#00c0ef !important} .text-blue{color:#0073b7 !important} .text-black{color:#111 !important} .text-light-blue{color:#3c8dbc !important} .text-green{color:#00a65a !important} .text-gray{color:#d2d6de !important} .text-navy{color:#001f3f !important} .text-teal{color:#39cccc !important} .text-olive{color:#3d9970 !important} .text-lime{color:#01ff70 !important} .text-orange{color:#ff851b !important} .text-fuchsia{color:#f012be !important} .text-purple{color:#605ca8 !important} .text-maroon{color:#d81b60 !important} .hide{display:none !important} .no-border{border:0px !important} .no-padding{padding:0px !important} .no-margin{margin:0px !important} .no-shadow{box-shadow:none!important} .list-unstyled,.chart-legend,.contacts-list,.users-list,.mailbox-attachments{list-style:none;margin:0;padding:0} .flat{border-radius:0 !important} .text-bold,.text-bold.table td,.text-bold.table th{font-weight:700} .jqstooltip{padding:5px!important;width:auto!important;height:auto!important} .bg-teal-gradient{background:#39cccc !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #39cccc), color-stop(1, #7adddd)) !important;background:-ms-linear-gradient(bottom, #39cccc, #7adddd) !important;background:-moz-linear-gradient(center bottom, #39cccc 0, #7adddd 100%) !important;background:-o-linear-gradient(#7adddd, #39cccc) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#7adddd', endColorstr='#39cccc', GradientType=0) !important;color:#fff} .bg-light-blue-gradient{background:#3c8dbc !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #3c8dbc), color-stop(1, #67a8ce)) !important;background:-ms-linear-gradient(bottom, #3c8dbc, #67a8ce) !important;background:-moz-linear-gradient(center bottom, #3c8dbc 0, #67a8ce 100%) !important;background:-o-linear-gradient(#67a8ce, #3c8dbc) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#67a8ce', endColorstr='#3c8dbc', GradientType=0) !important;color:#fff} .bg-blue-gradient{background:#0073b7 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #0073b7), color-stop(1, #0089db)) !important;background:-ms-linear-gradient(bottom, #0073b7, #0089db) !important;background:-moz-linear-gradient(center bottom, #0073b7 0, #0089db 100%) !important;background:-o-linear-gradient(#0089db, #0073b7) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#0089db', endColorstr='#0073b7', GradientType=0) !important;color:#fff} .bg-aqua-gradient{background:#00c0ef !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #00c0ef), color-stop(1, #14d1ff)) !important;background:-ms-linear-gradient(bottom, #00c0ef, #14d1ff) !important;background:-moz-linear-gradient(center bottom, #00c0ef 0, #14d1ff 100%) !important;background:-o-linear-gradient(#14d1ff, #00c0ef) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#14d1ff', endColorstr='#00c0ef', GradientType=0) !important;color:#fff} .bg-yellow-gradient{background:#f39c12 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #f39c12), color-stop(1, #f7bc60)) !important;background:-ms-linear-gradient(bottom, #f39c12, #f7bc60) !important;background:-moz-linear-gradient(center bottom, #f39c12 0, #f7bc60 100%) !important;background:-o-linear-gradient(#f7bc60, #f39c12) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f7bc60', endColorstr='#f39c12', GradientType=0) !important;color:#fff} .bg-purple-gradient{background:#605ca8 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #605ca8), color-stop(1, #9491c4)) !important;background:-ms-linear-gradient(bottom, #605ca8, #9491c4) !important;background:-moz-linear-gradient(center bottom, #605ca8 0, #9491c4 100%) !important;background:-o-linear-gradient(#9491c4, #605ca8) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#9491c4', endColorstr='#605ca8', GradientType=0) !important;color:#fff} .bg-green-gradient{background:#00a65a !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #00a65a), color-stop(1, #00ca6d)) !important;background:-ms-linear-gradient(bottom, #00a65a, #00ca6d) !important;background:-moz-linear-gradient(center bottom, #00a65a 0, #00ca6d 100%) !important;background:-o-linear-gradient(#00ca6d, #00a65a) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ca6d', endColorstr='#00a65a', GradientType=0) !important;color:#fff} .bg-red-gradient{background:#dd4b39 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #dd4b39), color-stop(1, #e47365)) !important;background:-ms-linear-gradient(bottom, #dd4b39, #e47365) !important;background:-moz-linear-gradient(center bottom, #dd4b39 0, #e47365 100%) !important;background:-o-linear-gradient(#e47365, #dd4b39) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e47365', endColorstr='#dd4b39', GradientType=0) !important;color:#fff} .bg-black-gradient{background:#111 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #111), color-stop(1, #2b2b2b)) !important;background:-ms-linear-gradient(bottom, #111, #2b2b2b) !important;background:-moz-linear-gradient(center bottom, #111 0, #2b2b2b 100%) !important;background:-o-linear-gradient(#2b2b2b, #111) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#2b2b2b', endColorstr='#111111', GradientType=0) !important;color:#fff} .bg-maroon-gradient{background:#d81b60 !important;background:-webkit-gradient(linear, left bottom, left top, color-stop(0, #d81b60), color-stop(1, #e73f7c)) !important;background:-ms-linear-gradient(bottom, #d81b60, #e73f7c) !important;background:-moz-linear-gradient(center bottom, #d81b60 0, #e73f7c 100%) !important;background:-o-linear-gradient(#e73f7c, #d81b60) !important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e73f7c', endColorstr='#d81b60', GradientType=0) !important;color:#fff} .connectedSortable{min-height:100px} .ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px} .sort-highlight{background:#f4f4f4;border:1px dashed #ddd;margin-bottom:10px} .full-opacity-hover{opacity:.65;filter:alpha(opacity=65)} .full-opacity-hover:hover{opacity:1;filter:alpha(opacity=100)} .chart{position:relative;overflow:hidden;width:100%} .chart svg,.chart canvas{width:100%!important}@media print{.no-print,.main-sidebar,.left-side,.main-header,.content-header{display:none!important}.content-wrapper,.right-side,.main-footer{margin-left:0!important;min-height:0!important;-webkit-transform:translate(0, 0) !important;-ms-transform:translate(0, 0) !important;-o-transform:translate(0, 0) !important;transform:translate(0, 0) !important}.fixed .content-wrapper,.fixed .right-side{padding-top:0!important}.invoice{width:100%;border:0;margin:0;padding:0}.invoice-col{float:left;width:33.3333333%}.table-responsive{overflow:auto}.table-responsive>.table tr th,.table-responsive>.table tr td{white-space:normal!important}} -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/OFL.txt: -------------------------------------------------------------------------------- 1 | Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name 'Source'. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries. 2 | This Font Software is licensed under the SIL Open Font License, Version 1.1. 3 | This license is copied below, and is also available with a FAQ at: 4 | http://scripts.sil.org/OFL 5 | 6 | 7 | ----------------------------------------------------------- 8 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 9 | ----------------------------------------------------------- 10 | 11 | PREAMBLE 12 | The goals of the Open Font License (OFL) are to stimulate worldwide 13 | development of collaborative font projects, to support the font creation 14 | efforts of academic and linguistic communities, and to provide a free and 15 | open framework in which fonts may be shared and improved in partnership 16 | with others. 17 | 18 | The OFL allows the licensed fonts to be used, studied, modified and 19 | redistributed freely as long as they are not sold by themselves. The 20 | fonts, including any derivative works, can be bundled, embedded, 21 | redistributed and/or sold with any software provided that any reserved 22 | names are not used by derivative works. The fonts and derivatives, 23 | however, cannot be released under any other type of license. The 24 | requirement for fonts to remain under this license does not apply 25 | to any document created using the fonts or their derivatives. 26 | 27 | DEFINITIONS 28 | "Font Software" refers to the set of files released by the Copyright 29 | Holder(s) under this license and clearly marked as such. This may 30 | include source files, build scripts and documentation. 31 | 32 | "Reserved Font Name" refers to any names specified as such after the 33 | copyright statement(s). 34 | 35 | "Original Version" refers to the collection of Font Software components as 36 | distributed by the Copyright Holder(s). 37 | 38 | "Modified Version" refers to any derivative made by adding to, deleting, 39 | or substituting -- in part or in whole -- any of the components of the 40 | Original Version, by changing formats or by porting the Font Software to a 41 | new environment. 42 | 43 | "Author" refers to any designer, engineer, programmer, technical 44 | writer or other person who contributed to the Font Software. 45 | 46 | PERMISSION & CONDITIONS 47 | Permission is hereby granted, free of charge, to any person obtaining 48 | a copy of the Font Software, to use, study, copy, merge, embed, modify, 49 | redistribute, and sell modified and unmodified copies of the Font 50 | Software, subject to the following conditions: 51 | 52 | 1) Neither the Font Software nor any of its individual components, 53 | in Original or Modified Versions, may be sold by itself. 54 | 55 | 2) Original or Modified Versions of the Font Software may be bundled, 56 | redistributed and/or sold with any software, provided that each copy 57 | contains the above copyright notice and this license. These can be 58 | included either as stand-alone text files, human-readable headers or 59 | in the appropriate machine-readable metadata fields within text or 60 | binary files as long as those fields can be easily viewed by the user. 61 | 62 | 3) No Modified Version of the Font Software may use the Reserved Font 63 | Name(s) unless explicit written permission is granted by the corresponding 64 | Copyright Holder. This restriction only applies to the primary font name as 65 | presented to the users. 66 | 67 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font 68 | Software shall not be used to promote, endorse or advertise any 69 | Modified Version, except to acknowledge the contribution(s) of the 70 | Copyright Holder(s) and the Author(s) or with their explicit written 71 | permission. 72 | 73 | 5) The Font Software, modified or unmodified, in part or in whole, 74 | must be distributed entirely under this license, and must not be 75 | distributed under any other license. The requirement for fonts to 76 | remain under this license does not apply to any document created 77 | using the Font Software. 78 | 79 | TERMINATION 80 | This license becomes null and void if any of the above conditions are 81 | not met. 82 | 83 | DISCLAIMER 84 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 85 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF 86 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT 87 | OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE 88 | COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 89 | INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL 90 | DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 91 | FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM 92 | OTHER DEALINGS IN THE FONT SOFTWARE. 93 | -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-Black.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-Black.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-BlackItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-BlackItalic.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-Bold.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-BoldItalic.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-ExtraLight.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-ExtraLight.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-ExtraLightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-ExtraLightItalic.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-Italic.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-Light.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-LightItalic.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-Regular.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-Semibold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-Semibold.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro-SemiboldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/SourceSansPro/SourceSansPro-SemiboldItalic.ttf -------------------------------------------------------------------------------- /style/vendor/SourceSansPro/SourceSansPro.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Source Sans Pro'; 3 | font-style: normal; 4 | font-weight: 300; 5 | src: local('Source Sans Pro Light'), local('SourceSansPro-Light'), url(SourceSansPro-Light.ttf) format('truetype'); 6 | } 7 | @font-face { 8 | font-family: 'Source Sans Pro'; 9 | font-style: normal; 10 | font-weight: 400; 11 | src: local('Source Sans Pro'), local('SourceSansPro-Regular'), url(SourceSansPro-Regular.ttf) format('truetype'); 12 | } 13 | @font-face { 14 | font-family: 'Source Sans Pro'; 15 | font-style: normal; 16 | font-weight: 600; 17 | src: local('Source Sans Pro Semibold'), local('SourceSansPro-Semibold'), url(SourceSansPro-Semibold.ttf) format('truetype'); 18 | } 19 | @font-face { 20 | font-family: 'Source Sans Pro'; 21 | font-style: normal; 22 | font-weight: 700; 23 | src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'), url(SourceSansPro-Bold.ttf) format('truetype'); 24 | } 25 | @font-face { 26 | font-family: 'Source Sans Pro'; 27 | font-style: italic; 28 | font-weight: 300; 29 | src: local('Source Sans Pro Light Italic'), local('SourceSansPro-LightIt'), url(SourceSansPro-LightItalic.ttf) format('truetype'); 30 | } 31 | @font-face { 32 | font-family: 'Source Sans Pro'; 33 | font-style: italic; 34 | font-weight: 400; 35 | src: local('Source Sans Pro Italic'), local('SourceSansPro-It'), url(SourceSansPro-Italic.ttf) format('truetype'); 36 | } 37 | @font-face { 38 | font-family: 'Source Sans Pro'; 39 | font-style: italic; 40 | font-weight: 600; 41 | src: local('Source Sans Pro Semibold Italic'), local('SourceSansPro-SemiboldIt'), url(SourceSansPro-SemiboldItalic.ttf) format('truetype'); 42 | } 43 | -------------------------------------------------------------------------------- /style/vendor/ionicons-2.0.1/css/ionicons.min.css: -------------------------------------------------------------------------------- 1 | @charset "UTF-8";/*! 2 | Ionicons, v2.0.0 3 | Created by Ben Sperry for the Ionic Framework, http://ionicons.com/ 4 | https://twitter.com/benjsperry https://twitter.com/ionicframework 5 | MIT License: https://github.com/driftyco/ionicons 6 | 7 | Android-style icons originally built by Google’s 8 | Material Design Icons: https://github.com/google/material-design-icons 9 | used under CC BY http://creativecommons.org/licenses/by/4.0/ 10 | Modified icons to fit ionicon’s grid from original. 11 | */@font-face{font-family:"Ionicons";src:url("../fonts/ionicons.eot?v=2.0.0");src:url("../fonts/ionicons.eot?v=2.0.0#iefix") format("embedded-opentype"),url("../fonts/ionicons.ttf?v=2.0.0") format("truetype"),url("../fonts/ionicons.woff?v=2.0.0") format("woff"),url("../fonts/ionicons.svg?v=2.0.0#Ionicons") format("svg");font-weight:normal;font-style:normal}.ion,.ionicons,.ion-alert:before,.ion-alert-circled:before,.ion-android-add:before,.ion-android-add-circle:before,.ion-android-alarm-clock:before,.ion-android-alert:before,.ion-android-apps:before,.ion-android-archive:before,.ion-android-arrow-back:before,.ion-android-arrow-down:before,.ion-android-arrow-dropdown:before,.ion-android-arrow-dropdown-circle:before,.ion-android-arrow-dropleft:before,.ion-android-arrow-dropleft-circle:before,.ion-android-arrow-dropright:before,.ion-android-arrow-dropright-circle:before,.ion-android-arrow-dropup:before,.ion-android-arrow-dropup-circle:before,.ion-android-arrow-forward:before,.ion-android-arrow-up:before,.ion-android-attach:before,.ion-android-bar:before,.ion-android-bicycle:before,.ion-android-boat:before,.ion-android-bookmark:before,.ion-android-bulb:before,.ion-android-bus:before,.ion-android-calendar:before,.ion-android-call:before,.ion-android-camera:before,.ion-android-cancel:before,.ion-android-car:before,.ion-android-cart:before,.ion-android-chat:before,.ion-android-checkbox:before,.ion-android-checkbox-blank:before,.ion-android-checkbox-outline:before,.ion-android-checkbox-outline-blank:before,.ion-android-checkmark-circle:before,.ion-android-clipboard:before,.ion-android-close:before,.ion-android-cloud:before,.ion-android-cloud-circle:before,.ion-android-cloud-done:before,.ion-android-cloud-outline:before,.ion-android-color-palette:before,.ion-android-compass:before,.ion-android-contact:before,.ion-android-contacts:before,.ion-android-contract:before,.ion-android-create:before,.ion-android-delete:before,.ion-android-desktop:before,.ion-android-document:before,.ion-android-done:before,.ion-android-done-all:before,.ion-android-download:before,.ion-android-drafts:before,.ion-android-exit:before,.ion-android-expand:before,.ion-android-favorite:before,.ion-android-favorite-outline:before,.ion-android-film:before,.ion-android-folder:before,.ion-android-folder-open:before,.ion-android-funnel:before,.ion-android-globe:before,.ion-android-hand:before,.ion-android-hangout:before,.ion-android-happy:before,.ion-android-home:before,.ion-android-image:before,.ion-android-laptop:before,.ion-android-list:before,.ion-android-locate:before,.ion-android-lock:before,.ion-android-mail:before,.ion-android-map:before,.ion-android-menu:before,.ion-android-microphone:before,.ion-android-microphone-off:before,.ion-android-more-horizontal:before,.ion-android-more-vertical:before,.ion-android-navigate:before,.ion-android-notifications:before,.ion-android-notifications-none:before,.ion-android-notifications-off:before,.ion-android-open:before,.ion-android-options:before,.ion-android-people:before,.ion-android-person:before,.ion-android-person-add:before,.ion-android-phone-landscape:before,.ion-android-phone-portrait:before,.ion-android-pin:before,.ion-android-plane:before,.ion-android-playstore:before,.ion-android-print:before,.ion-android-radio-button-off:before,.ion-android-radio-button-on:before,.ion-android-refresh:before,.ion-android-remove:before,.ion-android-remove-circle:before,.ion-android-restaurant:before,.ion-android-sad:before,.ion-android-search:before,.ion-android-send:before,.ion-android-settings:before,.ion-android-share:before,.ion-android-share-alt:before,.ion-android-star:before,.ion-android-star-half:before,.ion-android-star-outline:before,.ion-android-stopwatch:before,.ion-android-subway:before,.ion-android-sunny:before,.ion-android-sync:before,.ion-android-textsms:before,.ion-android-time:before,.ion-android-train:before,.ion-android-unlock:before,.ion-android-upload:before,.ion-android-volume-down:before,.ion-android-volume-mute:before,.ion-android-volume-off:before,.ion-android-volume-up:before,.ion-android-walk:before,.ion-android-warning:before,.ion-android-watch:before,.ion-android-wifi:before,.ion-aperture:before,.ion-archive:before,.ion-arrow-down-a:before,.ion-arrow-down-b:before,.ion-arrow-down-c:before,.ion-arrow-expand:before,.ion-arrow-graph-down-left:before,.ion-arrow-graph-down-right:before,.ion-arrow-graph-up-left:before,.ion-arrow-graph-up-right:before,.ion-arrow-left-a:before,.ion-arrow-left-b:before,.ion-arrow-left-c:before,.ion-arrow-move:before,.ion-arrow-resize:before,.ion-arrow-return-left:before,.ion-arrow-return-right:before,.ion-arrow-right-a:before,.ion-arrow-right-b:before,.ion-arrow-right-c:before,.ion-arrow-shrink:before,.ion-arrow-swap:before,.ion-arrow-up-a:before,.ion-arrow-up-b:before,.ion-arrow-up-c:before,.ion-asterisk:before,.ion-at:before,.ion-backspace:before,.ion-backspace-outline:before,.ion-bag:before,.ion-battery-charging:before,.ion-battery-empty:before,.ion-battery-full:before,.ion-battery-half:before,.ion-battery-low:before,.ion-beaker:before,.ion-beer:before,.ion-bluetooth:before,.ion-bonfire:before,.ion-bookmark:before,.ion-bowtie:before,.ion-briefcase:before,.ion-bug:before,.ion-calculator:before,.ion-calendar:before,.ion-camera:before,.ion-card:before,.ion-cash:before,.ion-chatbox:before,.ion-chatbox-working:before,.ion-chatboxes:before,.ion-chatbubble:before,.ion-chatbubble-working:before,.ion-chatbubbles:before,.ion-checkmark:before,.ion-checkmark-circled:before,.ion-checkmark-round:before,.ion-chevron-down:before,.ion-chevron-left:before,.ion-chevron-right:before,.ion-chevron-up:before,.ion-clipboard:before,.ion-clock:before,.ion-close:before,.ion-close-circled:before,.ion-close-round:before,.ion-closed-captioning:before,.ion-cloud:before,.ion-code:before,.ion-code-download:before,.ion-code-working:before,.ion-coffee:before,.ion-compass:before,.ion-compose:before,.ion-connection-bars:before,.ion-contrast:before,.ion-crop:before,.ion-cube:before,.ion-disc:before,.ion-document:before,.ion-document-text:before,.ion-drag:before,.ion-earth:before,.ion-easel:before,.ion-edit:before,.ion-egg:before,.ion-eject:before,.ion-email:before,.ion-email-unread:before,.ion-erlenmeyer-flask:before,.ion-erlenmeyer-flask-bubbles:before,.ion-eye:before,.ion-eye-disabled:before,.ion-female:before,.ion-filing:before,.ion-film-marker:before,.ion-fireball:before,.ion-flag:before,.ion-flame:before,.ion-flash:before,.ion-flash-off:before,.ion-folder:before,.ion-fork:before,.ion-fork-repo:before,.ion-forward:before,.ion-funnel:before,.ion-gear-a:before,.ion-gear-b:before,.ion-grid:before,.ion-hammer:before,.ion-happy:before,.ion-happy-outline:before,.ion-headphone:before,.ion-heart:before,.ion-heart-broken:before,.ion-help:before,.ion-help-buoy:before,.ion-help-circled:before,.ion-home:before,.ion-icecream:before,.ion-image:before,.ion-images:before,.ion-information:before,.ion-information-circled:before,.ion-ionic:before,.ion-ios-alarm:before,.ion-ios-alarm-outline:before,.ion-ios-albums:before,.ion-ios-albums-outline:before,.ion-ios-americanfootball:before,.ion-ios-americanfootball-outline:before,.ion-ios-analytics:before,.ion-ios-analytics-outline:before,.ion-ios-arrow-back:before,.ion-ios-arrow-down:before,.ion-ios-arrow-forward:before,.ion-ios-arrow-left:before,.ion-ios-arrow-right:before,.ion-ios-arrow-thin-down:before,.ion-ios-arrow-thin-left:before,.ion-ios-arrow-thin-right:before,.ion-ios-arrow-thin-up:before,.ion-ios-arrow-up:before,.ion-ios-at:before,.ion-ios-at-outline:before,.ion-ios-barcode:before,.ion-ios-barcode-outline:before,.ion-ios-baseball:before,.ion-ios-baseball-outline:before,.ion-ios-basketball:before,.ion-ios-basketball-outline:before,.ion-ios-bell:before,.ion-ios-bell-outline:before,.ion-ios-body:before,.ion-ios-body-outline:before,.ion-ios-bolt:before,.ion-ios-bolt-outline:before,.ion-ios-book:before,.ion-ios-book-outline:before,.ion-ios-bookmarks:before,.ion-ios-bookmarks-outline:before,.ion-ios-box:before,.ion-ios-box-outline:before,.ion-ios-briefcase:before,.ion-ios-briefcase-outline:before,.ion-ios-browsers:before,.ion-ios-browsers-outline:before,.ion-ios-calculator:before,.ion-ios-calculator-outline:before,.ion-ios-calendar:before,.ion-ios-calendar-outline:before,.ion-ios-camera:before,.ion-ios-camera-outline:before,.ion-ios-cart:before,.ion-ios-cart-outline:before,.ion-ios-chatboxes:before,.ion-ios-chatboxes-outline:before,.ion-ios-chatbubble:before,.ion-ios-chatbubble-outline:before,.ion-ios-checkmark:before,.ion-ios-checkmark-empty:before,.ion-ios-checkmark-outline:before,.ion-ios-circle-filled:before,.ion-ios-circle-outline:before,.ion-ios-clock:before,.ion-ios-clock-outline:before,.ion-ios-close:before,.ion-ios-close-empty:before,.ion-ios-close-outline:before,.ion-ios-cloud:before,.ion-ios-cloud-download:before,.ion-ios-cloud-download-outline:before,.ion-ios-cloud-outline:before,.ion-ios-cloud-upload:before,.ion-ios-cloud-upload-outline:before,.ion-ios-cloudy:before,.ion-ios-cloudy-night:before,.ion-ios-cloudy-night-outline:before,.ion-ios-cloudy-outline:before,.ion-ios-cog:before,.ion-ios-cog-outline:before,.ion-ios-color-filter:before,.ion-ios-color-filter-outline:before,.ion-ios-color-wand:before,.ion-ios-color-wand-outline:before,.ion-ios-compose:before,.ion-ios-compose-outline:before,.ion-ios-contact:before,.ion-ios-contact-outline:before,.ion-ios-copy:before,.ion-ios-copy-outline:before,.ion-ios-crop:before,.ion-ios-crop-strong:before,.ion-ios-download:before,.ion-ios-download-outline:before,.ion-ios-drag:before,.ion-ios-email:before,.ion-ios-email-outline:before,.ion-ios-eye:before,.ion-ios-eye-outline:before,.ion-ios-fastforward:before,.ion-ios-fastforward-outline:before,.ion-ios-filing:before,.ion-ios-filing-outline:before,.ion-ios-film:before,.ion-ios-film-outline:before,.ion-ios-flag:before,.ion-ios-flag-outline:before,.ion-ios-flame:before,.ion-ios-flame-outline:before,.ion-ios-flask:before,.ion-ios-flask-outline:before,.ion-ios-flower:before,.ion-ios-flower-outline:before,.ion-ios-folder:before,.ion-ios-folder-outline:before,.ion-ios-football:before,.ion-ios-football-outline:before,.ion-ios-game-controller-a:before,.ion-ios-game-controller-a-outline:before,.ion-ios-game-controller-b:before,.ion-ios-game-controller-b-outline:before,.ion-ios-gear:before,.ion-ios-gear-outline:before,.ion-ios-glasses:before,.ion-ios-glasses-outline:before,.ion-ios-grid-view:before,.ion-ios-grid-view-outline:before,.ion-ios-heart:before,.ion-ios-heart-outline:before,.ion-ios-help:before,.ion-ios-help-empty:before,.ion-ios-help-outline:before,.ion-ios-home:before,.ion-ios-home-outline:before,.ion-ios-infinite:before,.ion-ios-infinite-outline:before,.ion-ios-information:before,.ion-ios-information-empty:before,.ion-ios-information-outline:before,.ion-ios-ionic-outline:before,.ion-ios-keypad:before,.ion-ios-keypad-outline:before,.ion-ios-lightbulb:before,.ion-ios-lightbulb-outline:before,.ion-ios-list:before,.ion-ios-list-outline:before,.ion-ios-location:before,.ion-ios-location-outline:before,.ion-ios-locked:before,.ion-ios-locked-outline:before,.ion-ios-loop:before,.ion-ios-loop-strong:before,.ion-ios-medical:before,.ion-ios-medical-outline:before,.ion-ios-medkit:before,.ion-ios-medkit-outline:before,.ion-ios-mic:before,.ion-ios-mic-off:before,.ion-ios-mic-outline:before,.ion-ios-minus:before,.ion-ios-minus-empty:before,.ion-ios-minus-outline:before,.ion-ios-monitor:before,.ion-ios-monitor-outline:before,.ion-ios-moon:before,.ion-ios-moon-outline:before,.ion-ios-more:before,.ion-ios-more-outline:before,.ion-ios-musical-note:before,.ion-ios-musical-notes:before,.ion-ios-navigate:before,.ion-ios-navigate-outline:before,.ion-ios-nutrition:before,.ion-ios-nutrition-outline:before,.ion-ios-paper:before,.ion-ios-paper-outline:before,.ion-ios-paperplane:before,.ion-ios-paperplane-outline:before,.ion-ios-partlysunny:before,.ion-ios-partlysunny-outline:before,.ion-ios-pause:before,.ion-ios-pause-outline:before,.ion-ios-paw:before,.ion-ios-paw-outline:before,.ion-ios-people:before,.ion-ios-people-outline:before,.ion-ios-person:before,.ion-ios-person-outline:before,.ion-ios-personadd:before,.ion-ios-personadd-outline:before,.ion-ios-photos:before,.ion-ios-photos-outline:before,.ion-ios-pie:before,.ion-ios-pie-outline:before,.ion-ios-pint:before,.ion-ios-pint-outline:before,.ion-ios-play:before,.ion-ios-play-outline:before,.ion-ios-plus:before,.ion-ios-plus-empty:before,.ion-ios-plus-outline:before,.ion-ios-pricetag:before,.ion-ios-pricetag-outline:before,.ion-ios-pricetags:before,.ion-ios-pricetags-outline:before,.ion-ios-printer:before,.ion-ios-printer-outline:before,.ion-ios-pulse:before,.ion-ios-pulse-strong:before,.ion-ios-rainy:before,.ion-ios-rainy-outline:before,.ion-ios-recording:before,.ion-ios-recording-outline:before,.ion-ios-redo:before,.ion-ios-redo-outline:before,.ion-ios-refresh:before,.ion-ios-refresh-empty:before,.ion-ios-refresh-outline:before,.ion-ios-reload:before,.ion-ios-reverse-camera:before,.ion-ios-reverse-camera-outline:before,.ion-ios-rewind:before,.ion-ios-rewind-outline:before,.ion-ios-rose:before,.ion-ios-rose-outline:before,.ion-ios-search:before,.ion-ios-search-strong:before,.ion-ios-settings:before,.ion-ios-settings-strong:before,.ion-ios-shuffle:before,.ion-ios-shuffle-strong:before,.ion-ios-skipbackward:before,.ion-ios-skipbackward-outline:before,.ion-ios-skipforward:before,.ion-ios-skipforward-outline:before,.ion-ios-snowy:before,.ion-ios-speedometer:before,.ion-ios-speedometer-outline:before,.ion-ios-star:before,.ion-ios-star-half:before,.ion-ios-star-outline:before,.ion-ios-stopwatch:before,.ion-ios-stopwatch-outline:before,.ion-ios-sunny:before,.ion-ios-sunny-outline:before,.ion-ios-telephone:before,.ion-ios-telephone-outline:before,.ion-ios-tennisball:before,.ion-ios-tennisball-outline:before,.ion-ios-thunderstorm:before,.ion-ios-thunderstorm-outline:before,.ion-ios-time:before,.ion-ios-time-outline:before,.ion-ios-timer:before,.ion-ios-timer-outline:before,.ion-ios-toggle:before,.ion-ios-toggle-outline:before,.ion-ios-trash:before,.ion-ios-trash-outline:before,.ion-ios-undo:before,.ion-ios-undo-outline:before,.ion-ios-unlocked:before,.ion-ios-unlocked-outline:before,.ion-ios-upload:before,.ion-ios-upload-outline:before,.ion-ios-videocam:before,.ion-ios-videocam-outline:before,.ion-ios-volume-high:before,.ion-ios-volume-low:before,.ion-ios-wineglass:before,.ion-ios-wineglass-outline:before,.ion-ios-world:before,.ion-ios-world-outline:before,.ion-ipad:before,.ion-iphone:before,.ion-ipod:before,.ion-jet:before,.ion-key:before,.ion-knife:before,.ion-laptop:before,.ion-leaf:before,.ion-levels:before,.ion-lightbulb:before,.ion-link:before,.ion-load-a:before,.ion-load-b:before,.ion-load-c:before,.ion-load-d:before,.ion-location:before,.ion-lock-combination:before,.ion-locked:before,.ion-log-in:before,.ion-log-out:before,.ion-loop:before,.ion-magnet:before,.ion-male:before,.ion-man:before,.ion-map:before,.ion-medkit:before,.ion-merge:before,.ion-mic-a:before,.ion-mic-b:before,.ion-mic-c:before,.ion-minus:before,.ion-minus-circled:before,.ion-minus-round:before,.ion-model-s:before,.ion-monitor:before,.ion-more:before,.ion-mouse:before,.ion-music-note:before,.ion-navicon:before,.ion-navicon-round:before,.ion-navigate:before,.ion-network:before,.ion-no-smoking:before,.ion-nuclear:before,.ion-outlet:before,.ion-paintbrush:before,.ion-paintbucket:before,.ion-paper-airplane:before,.ion-paperclip:before,.ion-pause:before,.ion-person:before,.ion-person-add:before,.ion-person-stalker:before,.ion-pie-graph:before,.ion-pin:before,.ion-pinpoint:before,.ion-pizza:before,.ion-plane:before,.ion-planet:before,.ion-play:before,.ion-playstation:before,.ion-plus:before,.ion-plus-circled:before,.ion-plus-round:before,.ion-podium:before,.ion-pound:before,.ion-power:before,.ion-pricetag:before,.ion-pricetags:before,.ion-printer:before,.ion-pull-request:before,.ion-qr-scanner:before,.ion-quote:before,.ion-radio-waves:before,.ion-record:before,.ion-refresh:before,.ion-reply:before,.ion-reply-all:before,.ion-ribbon-a:before,.ion-ribbon-b:before,.ion-sad:before,.ion-sad-outline:before,.ion-scissors:before,.ion-search:before,.ion-settings:before,.ion-share:before,.ion-shuffle:before,.ion-skip-backward:before,.ion-skip-forward:before,.ion-social-android:before,.ion-social-android-outline:before,.ion-social-angular:before,.ion-social-angular-outline:before,.ion-social-apple:before,.ion-social-apple-outline:before,.ion-social-bitcoin:before,.ion-social-bitcoin-outline:before,.ion-social-buffer:before,.ion-social-buffer-outline:before,.ion-social-chrome:before,.ion-social-chrome-outline:before,.ion-social-codepen:before,.ion-social-codepen-outline:before,.ion-social-css3:before,.ion-social-css3-outline:before,.ion-social-designernews:before,.ion-social-designernews-outline:before,.ion-social-dribbble:before,.ion-social-dribbble-outline:before,.ion-social-dropbox:before,.ion-social-dropbox-outline:before,.ion-social-euro:before,.ion-social-euro-outline:before,.ion-social-facebook:before,.ion-social-facebook-outline:before,.ion-social-foursquare:before,.ion-social-foursquare-outline:before,.ion-social-freebsd-devil:before,.ion-social-github:before,.ion-social-github-outline:before,.ion-social-google:before,.ion-social-google-outline:before,.ion-social-googleplus:before,.ion-social-googleplus-outline:before,.ion-social-hackernews:before,.ion-social-hackernews-outline:before,.ion-social-html5:before,.ion-social-html5-outline:before,.ion-social-instagram:before,.ion-social-instagram-outline:before,.ion-social-javascript:before,.ion-social-javascript-outline:before,.ion-social-linkedin:before,.ion-social-linkedin-outline:before,.ion-social-markdown:before,.ion-social-nodejs:before,.ion-social-octocat:before,.ion-social-pinterest:before,.ion-social-pinterest-outline:before,.ion-social-python:before,.ion-social-reddit:before,.ion-social-reddit-outline:before,.ion-social-rss:before,.ion-social-rss-outline:before,.ion-social-sass:before,.ion-social-skype:before,.ion-social-skype-outline:before,.ion-social-snapchat:before,.ion-social-snapchat-outline:before,.ion-social-tumblr:before,.ion-social-tumblr-outline:before,.ion-social-tux:before,.ion-social-twitch:before,.ion-social-twitch-outline:before,.ion-social-twitter:before,.ion-social-twitter-outline:before,.ion-social-usd:before,.ion-social-usd-outline:before,.ion-social-vimeo:before,.ion-social-vimeo-outline:before,.ion-social-whatsapp:before,.ion-social-whatsapp-outline:before,.ion-social-windows:before,.ion-social-windows-outline:before,.ion-social-wordpress:before,.ion-social-wordpress-outline:before,.ion-social-yahoo:before,.ion-social-yahoo-outline:before,.ion-social-yen:before,.ion-social-yen-outline:before,.ion-social-youtube:before,.ion-social-youtube-outline:before,.ion-soup-can:before,.ion-soup-can-outline:before,.ion-speakerphone:before,.ion-speedometer:before,.ion-spoon:before,.ion-star:before,.ion-stats-bars:before,.ion-steam:before,.ion-stop:before,.ion-thermometer:before,.ion-thumbsdown:before,.ion-thumbsup:before,.ion-toggle:before,.ion-toggle-filled:before,.ion-transgender:before,.ion-trash-a:before,.ion-trash-b:before,.ion-trophy:before,.ion-tshirt:before,.ion-tshirt-outline:before,.ion-umbrella:before,.ion-university:before,.ion-unlocked:before,.ion-upload:before,.ion-usb:before,.ion-videocamera:before,.ion-volume-high:before,.ion-volume-low:before,.ion-volume-medium:before,.ion-volume-mute:before,.ion-wand:before,.ion-waterdrop:before,.ion-wifi:before,.ion-wineglass:before,.ion-woman:before,.ion-wrench:before,.ion-xbox:before{display:inline-block;font-family:"Ionicons";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;text-rendering:auto;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale} .ion-alert:before{content:"\f101"} .ion-alert-circled:before{content:"\f100"} .ion-android-add:before{content:"\f2c7"} .ion-android-add-circle:before{content:"\f359"} .ion-android-alarm-clock:before{content:"\f35a"} .ion-android-alert:before{content:"\f35b"} .ion-android-apps:before{content:"\f35c"} .ion-android-archive:before{content:"\f2c9"} .ion-android-arrow-back:before{content:"\f2ca"} .ion-android-arrow-down:before{content:"\f35d"} .ion-android-arrow-dropdown:before{content:"\f35f"} .ion-android-arrow-dropdown-circle:before{content:"\f35e"} .ion-android-arrow-dropleft:before{content:"\f361"} .ion-android-arrow-dropleft-circle:before{content:"\f360"} .ion-android-arrow-dropright:before{content:"\f363"} .ion-android-arrow-dropright-circle:before{content:"\f362"} .ion-android-arrow-dropup:before{content:"\f365"} .ion-android-arrow-dropup-circle:before{content:"\f364"} .ion-android-arrow-forward:before{content:"\f30f"} .ion-android-arrow-up:before{content:"\f366"} .ion-android-attach:before{content:"\f367"} .ion-android-bar:before{content:"\f368"} .ion-android-bicycle:before{content:"\f369"} .ion-android-boat:before{content:"\f36a"} .ion-android-bookmark:before{content:"\f36b"} .ion-android-bulb:before{content:"\f36c"} .ion-android-bus:before{content:"\f36d"} .ion-android-calendar:before{content:"\f2d1"} .ion-android-call:before{content:"\f2d2"} .ion-android-camera:before{content:"\f2d3"} .ion-android-cancel:before{content:"\f36e"} .ion-android-car:before{content:"\f36f"} .ion-android-cart:before{content:"\f370"} .ion-android-chat:before{content:"\f2d4"} .ion-android-checkbox:before{content:"\f374"} .ion-android-checkbox-blank:before{content:"\f371"} .ion-android-checkbox-outline:before{content:"\f373"} .ion-android-checkbox-outline-blank:before{content:"\f372"} .ion-android-checkmark-circle:before{content:"\f375"} .ion-android-clipboard:before{content:"\f376"} .ion-android-close:before{content:"\f2d7"} .ion-android-cloud:before{content:"\f37a"} .ion-android-cloud-circle:before{content:"\f377"} .ion-android-cloud-done:before{content:"\f378"} .ion-android-cloud-outline:before{content:"\f379"} .ion-android-color-palette:before{content:"\f37b"} .ion-android-compass:before{content:"\f37c"} .ion-android-contact:before{content:"\f2d8"} .ion-android-contacts:before{content:"\f2d9"} .ion-android-contract:before{content:"\f37d"} .ion-android-create:before{content:"\f37e"} .ion-android-delete:before{content:"\f37f"} .ion-android-desktop:before{content:"\f380"} .ion-android-document:before{content:"\f381"} .ion-android-done:before{content:"\f383"} .ion-android-done-all:before{content:"\f382"} .ion-android-download:before{content:"\f2dd"} .ion-android-drafts:before{content:"\f384"} .ion-android-exit:before{content:"\f385"} .ion-android-expand:before{content:"\f386"} .ion-android-favorite:before{content:"\f388"} .ion-android-favorite-outline:before{content:"\f387"} .ion-android-film:before{content:"\f389"} .ion-android-folder:before{content:"\f2e0"} .ion-android-folder-open:before{content:"\f38a"} .ion-android-funnel:before{content:"\f38b"} .ion-android-globe:before{content:"\f38c"} .ion-android-hand:before{content:"\f2e3"} .ion-android-hangout:before{content:"\f38d"} .ion-android-happy:before{content:"\f38e"} .ion-android-home:before{content:"\f38f"} .ion-android-image:before{content:"\f2e4"} .ion-android-laptop:before{content:"\f390"} .ion-android-list:before{content:"\f391"} .ion-android-locate:before{content:"\f2e9"} .ion-android-lock:before{content:"\f392"} .ion-android-mail:before{content:"\f2eb"} .ion-android-map:before{content:"\f393"} .ion-android-menu:before{content:"\f394"} .ion-android-microphone:before{content:"\f2ec"} .ion-android-microphone-off:before{content:"\f395"} .ion-android-more-horizontal:before{content:"\f396"} .ion-android-more-vertical:before{content:"\f397"} .ion-android-navigate:before{content:"\f398"} .ion-android-notifications:before{content:"\f39b"} .ion-android-notifications-none:before{content:"\f399"} .ion-android-notifications-off:before{content:"\f39a"} .ion-android-open:before{content:"\f39c"} .ion-android-options:before{content:"\f39d"} .ion-android-people:before{content:"\f39e"} .ion-android-person:before{content:"\f3a0"} .ion-android-person-add:before{content:"\f39f"} .ion-android-phone-landscape:before{content:"\f3a1"} .ion-android-phone-portrait:before{content:"\f3a2"} .ion-android-pin:before{content:"\f3a3"} .ion-android-plane:before{content:"\f3a4"} .ion-android-playstore:before{content:"\f2f0"} .ion-android-print:before{content:"\f3a5"} .ion-android-radio-button-off:before{content:"\f3a6"} .ion-android-radio-button-on:before{content:"\f3a7"} .ion-android-refresh:before{content:"\f3a8"} .ion-android-remove:before{content:"\f2f4"} .ion-android-remove-circle:before{content:"\f3a9"} .ion-android-restaurant:before{content:"\f3aa"} .ion-android-sad:before{content:"\f3ab"} .ion-android-search:before{content:"\f2f5"} .ion-android-send:before{content:"\f2f6"} .ion-android-settings:before{content:"\f2f7"} .ion-android-share:before{content:"\f2f8"} .ion-android-share-alt:before{content:"\f3ac"} .ion-android-star:before{content:"\f2fc"} .ion-android-star-half:before{content:"\f3ad"} .ion-android-star-outline:before{content:"\f3ae"} .ion-android-stopwatch:before{content:"\f2fd"} .ion-android-subway:before{content:"\f3af"} .ion-android-sunny:before{content:"\f3b0"} .ion-android-sync:before{content:"\f3b1"} .ion-android-textsms:before{content:"\f3b2"} .ion-android-time:before{content:"\f3b3"} .ion-android-train:before{content:"\f3b4"} .ion-android-unlock:before{content:"\f3b5"} .ion-android-upload:before{content:"\f3b6"} .ion-android-volume-down:before{content:"\f3b7"} .ion-android-volume-mute:before{content:"\f3b8"} .ion-android-volume-off:before{content:"\f3b9"} .ion-android-volume-up:before{content:"\f3ba"} .ion-android-walk:before{content:"\f3bb"} .ion-android-warning:before{content:"\f3bc"} .ion-android-watch:before{content:"\f3bd"} .ion-android-wifi:before{content:"\f305"} .ion-aperture:before{content:"\f313"} .ion-archive:before{content:"\f102"} .ion-arrow-down-a:before{content:"\f103"} .ion-arrow-down-b:before{content:"\f104"} .ion-arrow-down-c:before{content:"\f105"} .ion-arrow-expand:before{content:"\f25e"} .ion-arrow-graph-down-left:before{content:"\f25f"} .ion-arrow-graph-down-right:before{content:"\f260"} .ion-arrow-graph-up-left:before{content:"\f261"} .ion-arrow-graph-up-right:before{content:"\f262"} .ion-arrow-left-a:before{content:"\f106"} .ion-arrow-left-b:before{content:"\f107"} .ion-arrow-left-c:before{content:"\f108"} .ion-arrow-move:before{content:"\f263"} .ion-arrow-resize:before{content:"\f264"} .ion-arrow-return-left:before{content:"\f265"} .ion-arrow-return-right:before{content:"\f266"} .ion-arrow-right-a:before{content:"\f109"} .ion-arrow-right-b:before{content:"\f10a"} .ion-arrow-right-c:before{content:"\f10b"} .ion-arrow-shrink:before{content:"\f267"} .ion-arrow-swap:before{content:"\f268"} .ion-arrow-up-a:before{content:"\f10c"} .ion-arrow-up-b:before{content:"\f10d"} .ion-arrow-up-c:before{content:"\f10e"} .ion-asterisk:before{content:"\f314"} .ion-at:before{content:"\f10f"} .ion-backspace:before{content:"\f3bf"} .ion-backspace-outline:before{content:"\f3be"} .ion-bag:before{content:"\f110"} .ion-battery-charging:before{content:"\f111"} .ion-battery-empty:before{content:"\f112"} .ion-battery-full:before{content:"\f113"} .ion-battery-half:before{content:"\f114"} .ion-battery-low:before{content:"\f115"} .ion-beaker:before{content:"\f269"} .ion-beer:before{content:"\f26a"} .ion-bluetooth:before{content:"\f116"} .ion-bonfire:before{content:"\f315"} .ion-bookmark:before{content:"\f26b"} .ion-bowtie:before{content:"\f3c0"} .ion-briefcase:before{content:"\f26c"} .ion-bug:before{content:"\f2be"} .ion-calculator:before{content:"\f26d"} .ion-calendar:before{content:"\f117"} .ion-camera:before{content:"\f118"} .ion-card:before{content:"\f119"} .ion-cash:before{content:"\f316"} .ion-chatbox:before{content:"\f11b"} .ion-chatbox-working:before{content:"\f11a"} .ion-chatboxes:before{content:"\f11c"} .ion-chatbubble:before{content:"\f11e"} .ion-chatbubble-working:before{content:"\f11d"} .ion-chatbubbles:before{content:"\f11f"} .ion-checkmark:before{content:"\f122"} .ion-checkmark-circled:before{content:"\f120"} .ion-checkmark-round:before{content:"\f121"} .ion-chevron-down:before{content:"\f123"} .ion-chevron-left:before{content:"\f124"} .ion-chevron-right:before{content:"\f125"} .ion-chevron-up:before{content:"\f126"} .ion-clipboard:before{content:"\f127"} .ion-clock:before{content:"\f26e"} .ion-close:before{content:"\f12a"} .ion-close-circled:before{content:"\f128"} .ion-close-round:before{content:"\f129"} .ion-closed-captioning:before{content:"\f317"} .ion-cloud:before{content:"\f12b"} .ion-code:before{content:"\f271"} .ion-code-download:before{content:"\f26f"} .ion-code-working:before{content:"\f270"} .ion-coffee:before{content:"\f272"} .ion-compass:before{content:"\f273"} .ion-compose:before{content:"\f12c"} .ion-connection-bars:before{content:"\f274"} .ion-contrast:before{content:"\f275"} .ion-crop:before{content:"\f3c1"} .ion-cube:before{content:"\f318"} .ion-disc:before{content:"\f12d"} .ion-document:before{content:"\f12f"} .ion-document-text:before{content:"\f12e"} .ion-drag:before{content:"\f130"} .ion-earth:before{content:"\f276"} .ion-easel:before{content:"\f3c2"} .ion-edit:before{content:"\f2bf"} .ion-egg:before{content:"\f277"} .ion-eject:before{content:"\f131"} .ion-email:before{content:"\f132"} .ion-email-unread:before{content:"\f3c3"} .ion-erlenmeyer-flask:before{content:"\f3c5"} .ion-erlenmeyer-flask-bubbles:before{content:"\f3c4"} .ion-eye:before{content:"\f133"} .ion-eye-disabled:before{content:"\f306"} .ion-female:before{content:"\f278"} .ion-filing:before{content:"\f134"} .ion-film-marker:before{content:"\f135"} .ion-fireball:before{content:"\f319"} .ion-flag:before{content:"\f279"} .ion-flame:before{content:"\f31a"} .ion-flash:before{content:"\f137"} .ion-flash-off:before{content:"\f136"} .ion-folder:before{content:"\f139"} .ion-fork:before{content:"\f27a"} .ion-fork-repo:before{content:"\f2c0"} .ion-forward:before{content:"\f13a"} .ion-funnel:before{content:"\f31b"} .ion-gear-a:before{content:"\f13d"} .ion-gear-b:before{content:"\f13e"} .ion-grid:before{content:"\f13f"} .ion-hammer:before{content:"\f27b"} .ion-happy:before{content:"\f31c"} .ion-happy-outline:before{content:"\f3c6"} .ion-headphone:before{content:"\f140"} .ion-heart:before{content:"\f141"} .ion-heart-broken:before{content:"\f31d"} .ion-help:before{content:"\f143"} .ion-help-buoy:before{content:"\f27c"} .ion-help-circled:before{content:"\f142"} .ion-home:before{content:"\f144"} .ion-icecream:before{content:"\f27d"} .ion-image:before{content:"\f147"} .ion-images:before{content:"\f148"} .ion-information:before{content:"\f14a"} .ion-information-circled:before{content:"\f149"} .ion-ionic:before{content:"\f14b"} .ion-ios-alarm:before{content:"\f3c8"} .ion-ios-alarm-outline:before{content:"\f3c7"} .ion-ios-albums:before{content:"\f3ca"} .ion-ios-albums-outline:before{content:"\f3c9"} .ion-ios-americanfootball:before{content:"\f3cc"} .ion-ios-americanfootball-outline:before{content:"\f3cb"} .ion-ios-analytics:before{content:"\f3ce"} .ion-ios-analytics-outline:before{content:"\f3cd"} .ion-ios-arrow-back:before{content:"\f3cf"} .ion-ios-arrow-down:before{content:"\f3d0"} .ion-ios-arrow-forward:before{content:"\f3d1"} .ion-ios-arrow-left:before{content:"\f3d2"} .ion-ios-arrow-right:before{content:"\f3d3"} .ion-ios-arrow-thin-down:before{content:"\f3d4"} .ion-ios-arrow-thin-left:before{content:"\f3d5"} .ion-ios-arrow-thin-right:before{content:"\f3d6"} .ion-ios-arrow-thin-up:before{content:"\f3d7"} .ion-ios-arrow-up:before{content:"\f3d8"} .ion-ios-at:before{content:"\f3da"} .ion-ios-at-outline:before{content:"\f3d9"} .ion-ios-barcode:before{content:"\f3dc"} .ion-ios-barcode-outline:before{content:"\f3db"} .ion-ios-baseball:before{content:"\f3de"} .ion-ios-baseball-outline:before{content:"\f3dd"} .ion-ios-basketball:before{content:"\f3e0"} .ion-ios-basketball-outline:before{content:"\f3df"} .ion-ios-bell:before{content:"\f3e2"} .ion-ios-bell-outline:before{content:"\f3e1"} .ion-ios-body:before{content:"\f3e4"} .ion-ios-body-outline:before{content:"\f3e3"} .ion-ios-bolt:before{content:"\f3e6"} .ion-ios-bolt-outline:before{content:"\f3e5"} .ion-ios-book:before{content:"\f3e8"} .ion-ios-book-outline:before{content:"\f3e7"} .ion-ios-bookmarks:before{content:"\f3ea"} .ion-ios-bookmarks-outline:before{content:"\f3e9"} .ion-ios-box:before{content:"\f3ec"} .ion-ios-box-outline:before{content:"\f3eb"} .ion-ios-briefcase:before{content:"\f3ee"} .ion-ios-briefcase-outline:before{content:"\f3ed"} .ion-ios-browsers:before{content:"\f3f0"} .ion-ios-browsers-outline:before{content:"\f3ef"} .ion-ios-calculator:before{content:"\f3f2"} .ion-ios-calculator-outline:before{content:"\f3f1"} .ion-ios-calendar:before{content:"\f3f4"} .ion-ios-calendar-outline:before{content:"\f3f3"} .ion-ios-camera:before{content:"\f3f6"} .ion-ios-camera-outline:before{content:"\f3f5"} .ion-ios-cart:before{content:"\f3f8"} .ion-ios-cart-outline:before{content:"\f3f7"} .ion-ios-chatboxes:before{content:"\f3fa"} .ion-ios-chatboxes-outline:before{content:"\f3f9"} .ion-ios-chatbubble:before{content:"\f3fc"} .ion-ios-chatbubble-outline:before{content:"\f3fb"} .ion-ios-checkmark:before{content:"\f3ff"} .ion-ios-checkmark-empty:before{content:"\f3fd"} .ion-ios-checkmark-outline:before{content:"\f3fe"} .ion-ios-circle-filled:before{content:"\f400"} .ion-ios-circle-outline:before{content:"\f401"} .ion-ios-clock:before{content:"\f403"} .ion-ios-clock-outline:before{content:"\f402"} .ion-ios-close:before{content:"\f406"} .ion-ios-close-empty:before{content:"\f404"} .ion-ios-close-outline:before{content:"\f405"} .ion-ios-cloud:before{content:"\f40c"} .ion-ios-cloud-download:before{content:"\f408"} .ion-ios-cloud-download-outline:before{content:"\f407"} .ion-ios-cloud-outline:before{content:"\f409"} .ion-ios-cloud-upload:before{content:"\f40b"} .ion-ios-cloud-upload-outline:before{content:"\f40a"} .ion-ios-cloudy:before{content:"\f410"} .ion-ios-cloudy-night:before{content:"\f40e"} .ion-ios-cloudy-night-outline:before{content:"\f40d"} .ion-ios-cloudy-outline:before{content:"\f40f"} .ion-ios-cog:before{content:"\f412"} .ion-ios-cog-outline:before{content:"\f411"} .ion-ios-color-filter:before{content:"\f414"} .ion-ios-color-filter-outline:before{content:"\f413"} .ion-ios-color-wand:before{content:"\f416"} .ion-ios-color-wand-outline:before{content:"\f415"} .ion-ios-compose:before{content:"\f418"} .ion-ios-compose-outline:before{content:"\f417"} .ion-ios-contact:before{content:"\f41a"} .ion-ios-contact-outline:before{content:"\f419"} .ion-ios-copy:before{content:"\f41c"} .ion-ios-copy-outline:before{content:"\f41b"} .ion-ios-crop:before{content:"\f41e"} .ion-ios-crop-strong:before{content:"\f41d"} .ion-ios-download:before{content:"\f420"} .ion-ios-download-outline:before{content:"\f41f"} .ion-ios-drag:before{content:"\f421"} .ion-ios-email:before{content:"\f423"} .ion-ios-email-outline:before{content:"\f422"} .ion-ios-eye:before{content:"\f425"} .ion-ios-eye-outline:before{content:"\f424"} .ion-ios-fastforward:before{content:"\f427"} .ion-ios-fastforward-outline:before{content:"\f426"} .ion-ios-filing:before{content:"\f429"} .ion-ios-filing-outline:before{content:"\f428"} .ion-ios-film:before{content:"\f42b"} .ion-ios-film-outline:before{content:"\f42a"} .ion-ios-flag:before{content:"\f42d"} .ion-ios-flag-outline:before{content:"\f42c"} .ion-ios-flame:before{content:"\f42f"} .ion-ios-flame-outline:before{content:"\f42e"} .ion-ios-flask:before{content:"\f431"} .ion-ios-flask-outline:before{content:"\f430"} .ion-ios-flower:before{content:"\f433"} .ion-ios-flower-outline:before{content:"\f432"} .ion-ios-folder:before{content:"\f435"} .ion-ios-folder-outline:before{content:"\f434"} .ion-ios-football:before{content:"\f437"} .ion-ios-football-outline:before{content:"\f436"} .ion-ios-game-controller-a:before{content:"\f439"} .ion-ios-game-controller-a-outline:before{content:"\f438"} .ion-ios-game-controller-b:before{content:"\f43b"} .ion-ios-game-controller-b-outline:before{content:"\f43a"} .ion-ios-gear:before{content:"\f43d"} .ion-ios-gear-outline:before{content:"\f43c"} .ion-ios-glasses:before{content:"\f43f"} .ion-ios-glasses-outline:before{content:"\f43e"} .ion-ios-grid-view:before{content:"\f441"} .ion-ios-grid-view-outline:before{content:"\f440"} .ion-ios-heart:before{content:"\f443"} .ion-ios-heart-outline:before{content:"\f442"} .ion-ios-help:before{content:"\f446"} .ion-ios-help-empty:before{content:"\f444"} .ion-ios-help-outline:before{content:"\f445"} .ion-ios-home:before{content:"\f448"} .ion-ios-home-outline:before{content:"\f447"} .ion-ios-infinite:before{content:"\f44a"} .ion-ios-infinite-outline:before{content:"\f449"} .ion-ios-information:before{content:"\f44d"} .ion-ios-information-empty:before{content:"\f44b"} .ion-ios-information-outline:before{content:"\f44c"} .ion-ios-ionic-outline:before{content:"\f44e"} .ion-ios-keypad:before{content:"\f450"} .ion-ios-keypad-outline:before{content:"\f44f"} .ion-ios-lightbulb:before{content:"\f452"} .ion-ios-lightbulb-outline:before{content:"\f451"} .ion-ios-list:before{content:"\f454"} .ion-ios-list-outline:before{content:"\f453"} .ion-ios-location:before{content:"\f456"} .ion-ios-location-outline:before{content:"\f455"} .ion-ios-locked:before{content:"\f458"} .ion-ios-locked-outline:before{content:"\f457"} .ion-ios-loop:before{content:"\f45a"} .ion-ios-loop-strong:before{content:"\f459"} .ion-ios-medical:before{content:"\f45c"} .ion-ios-medical-outline:before{content:"\f45b"} .ion-ios-medkit:before{content:"\f45e"} .ion-ios-medkit-outline:before{content:"\f45d"} .ion-ios-mic:before{content:"\f461"} .ion-ios-mic-off:before{content:"\f45f"} .ion-ios-mic-outline:before{content:"\f460"} .ion-ios-minus:before{content:"\f464"} .ion-ios-minus-empty:before{content:"\f462"} .ion-ios-minus-outline:before{content:"\f463"} .ion-ios-monitor:before{content:"\f466"} .ion-ios-monitor-outline:before{content:"\f465"} .ion-ios-moon:before{content:"\f468"} .ion-ios-moon-outline:before{content:"\f467"} .ion-ios-more:before{content:"\f46a"} .ion-ios-more-outline:before{content:"\f469"} .ion-ios-musical-note:before{content:"\f46b"} .ion-ios-musical-notes:before{content:"\f46c"} .ion-ios-navigate:before{content:"\f46e"} .ion-ios-navigate-outline:before{content:"\f46d"} .ion-ios-nutrition:before{content:"\f470"} .ion-ios-nutrition-outline:before{content:"\f46f"} .ion-ios-paper:before{content:"\f472"} .ion-ios-paper-outline:before{content:"\f471"} .ion-ios-paperplane:before{content:"\f474"} .ion-ios-paperplane-outline:before{content:"\f473"} .ion-ios-partlysunny:before{content:"\f476"} .ion-ios-partlysunny-outline:before{content:"\f475"} .ion-ios-pause:before{content:"\f478"} .ion-ios-pause-outline:before{content:"\f477"} .ion-ios-paw:before{content:"\f47a"} .ion-ios-paw-outline:before{content:"\f479"} .ion-ios-people:before{content:"\f47c"} .ion-ios-people-outline:before{content:"\f47b"} .ion-ios-person:before{content:"\f47e"} .ion-ios-person-outline:before{content:"\f47d"} .ion-ios-personadd:before{content:"\f480"} .ion-ios-personadd-outline:before{content:"\f47f"} .ion-ios-photos:before{content:"\f482"} .ion-ios-photos-outline:before{content:"\f481"} .ion-ios-pie:before{content:"\f484"} .ion-ios-pie-outline:before{content:"\f483"} .ion-ios-pint:before{content:"\f486"} .ion-ios-pint-outline:before{content:"\f485"} .ion-ios-play:before{content:"\f488"} .ion-ios-play-outline:before{content:"\f487"} .ion-ios-plus:before{content:"\f48b"} .ion-ios-plus-empty:before{content:"\f489"} .ion-ios-plus-outline:before{content:"\f48a"} .ion-ios-pricetag:before{content:"\f48d"} .ion-ios-pricetag-outline:before{content:"\f48c"} .ion-ios-pricetags:before{content:"\f48f"} .ion-ios-pricetags-outline:before{content:"\f48e"} .ion-ios-printer:before{content:"\f491"} .ion-ios-printer-outline:before{content:"\f490"} .ion-ios-pulse:before{content:"\f493"} .ion-ios-pulse-strong:before{content:"\f492"} .ion-ios-rainy:before{content:"\f495"} .ion-ios-rainy-outline:before{content:"\f494"} .ion-ios-recording:before{content:"\f497"} .ion-ios-recording-outline:before{content:"\f496"} .ion-ios-redo:before{content:"\f499"} .ion-ios-redo-outline:before{content:"\f498"} .ion-ios-refresh:before{content:"\f49c"} .ion-ios-refresh-empty:before{content:"\f49a"} .ion-ios-refresh-outline:before{content:"\f49b"} .ion-ios-reload:before{content:"\f49d"} .ion-ios-reverse-camera:before{content:"\f49f"} .ion-ios-reverse-camera-outline:before{content:"\f49e"} .ion-ios-rewind:before{content:"\f4a1"} .ion-ios-rewind-outline:before{content:"\f4a0"} .ion-ios-rose:before{content:"\f4a3"} .ion-ios-rose-outline:before{content:"\f4a2"} .ion-ios-search:before{content:"\f4a5"} .ion-ios-search-strong:before{content:"\f4a4"} .ion-ios-settings:before{content:"\f4a7"} .ion-ios-settings-strong:before{content:"\f4a6"} .ion-ios-shuffle:before{content:"\f4a9"} .ion-ios-shuffle-strong:before{content:"\f4a8"} .ion-ios-skipbackward:before{content:"\f4ab"} .ion-ios-skipbackward-outline:before{content:"\f4aa"} .ion-ios-skipforward:before{content:"\f4ad"} .ion-ios-skipforward-outline:before{content:"\f4ac"} .ion-ios-snowy:before{content:"\f4ae"} .ion-ios-speedometer:before{content:"\f4b0"} .ion-ios-speedometer-outline:before{content:"\f4af"} .ion-ios-star:before{content:"\f4b3"} .ion-ios-star-half:before{content:"\f4b1"} .ion-ios-star-outline:before{content:"\f4b2"} .ion-ios-stopwatch:before{content:"\f4b5"} .ion-ios-stopwatch-outline:before{content:"\f4b4"} .ion-ios-sunny:before{content:"\f4b7"} .ion-ios-sunny-outline:before{content:"\f4b6"} .ion-ios-telephone:before{content:"\f4b9"} .ion-ios-telephone-outline:before{content:"\f4b8"} .ion-ios-tennisball:before{content:"\f4bb"} .ion-ios-tennisball-outline:before{content:"\f4ba"} .ion-ios-thunderstorm:before{content:"\f4bd"} .ion-ios-thunderstorm-outline:before{content:"\f4bc"} .ion-ios-time:before{content:"\f4bf"} .ion-ios-time-outline:before{content:"\f4be"} .ion-ios-timer:before{content:"\f4c1"} .ion-ios-timer-outline:before{content:"\f4c0"} .ion-ios-toggle:before{content:"\f4c3"} .ion-ios-toggle-outline:before{content:"\f4c2"} .ion-ios-trash:before{content:"\f4c5"} .ion-ios-trash-outline:before{content:"\f4c4"} .ion-ios-undo:before{content:"\f4c7"} .ion-ios-undo-outline:before{content:"\f4c6"} .ion-ios-unlocked:before{content:"\f4c9"} .ion-ios-unlocked-outline:before{content:"\f4c8"} .ion-ios-upload:before{content:"\f4cb"} .ion-ios-upload-outline:before{content:"\f4ca"} .ion-ios-videocam:before{content:"\f4cd"} .ion-ios-videocam-outline:before{content:"\f4cc"} .ion-ios-volume-high:before{content:"\f4ce"} .ion-ios-volume-low:before{content:"\f4cf"} .ion-ios-wineglass:before{content:"\f4d1"} .ion-ios-wineglass-outline:before{content:"\f4d0"} .ion-ios-world:before{content:"\f4d3"} .ion-ios-world-outline:before{content:"\f4d2"} .ion-ipad:before{content:"\f1f9"} .ion-iphone:before{content:"\f1fa"} .ion-ipod:before{content:"\f1fb"} .ion-jet:before{content:"\f295"} .ion-key:before{content:"\f296"} .ion-knife:before{content:"\f297"} .ion-laptop:before{content:"\f1fc"} .ion-leaf:before{content:"\f1fd"} .ion-levels:before{content:"\f298"} .ion-lightbulb:before{content:"\f299"} .ion-link:before{content:"\f1fe"} .ion-load-a:before{content:"\f29a"} .ion-load-b:before{content:"\f29b"} .ion-load-c:before{content:"\f29c"} .ion-load-d:before{content:"\f29d"} .ion-location:before{content:"\f1ff"} .ion-lock-combination:before{content:"\f4d4"} .ion-locked:before{content:"\f200"} .ion-log-in:before{content:"\f29e"} .ion-log-out:before{content:"\f29f"} .ion-loop:before{content:"\f201"} .ion-magnet:before{content:"\f2a0"} .ion-male:before{content:"\f2a1"} .ion-man:before{content:"\f202"} .ion-map:before{content:"\f203"} .ion-medkit:before{content:"\f2a2"} .ion-merge:before{content:"\f33f"} .ion-mic-a:before{content:"\f204"} .ion-mic-b:before{content:"\f205"} .ion-mic-c:before{content:"\f206"} .ion-minus:before{content:"\f209"} .ion-minus-circled:before{content:"\f207"} .ion-minus-round:before{content:"\f208"} .ion-model-s:before{content:"\f2c1"} .ion-monitor:before{content:"\f20a"} .ion-more:before{content:"\f20b"} .ion-mouse:before{content:"\f340"} .ion-music-note:before{content:"\f20c"} .ion-navicon:before{content:"\f20e"} .ion-navicon-round:before{content:"\f20d"} .ion-navigate:before{content:"\f2a3"} .ion-network:before{content:"\f341"} .ion-no-smoking:before{content:"\f2c2"} .ion-nuclear:before{content:"\f2a4"} .ion-outlet:before{content:"\f342"} .ion-paintbrush:before{content:"\f4d5"} .ion-paintbucket:before{content:"\f4d6"} .ion-paper-airplane:before{content:"\f2c3"} .ion-paperclip:before{content:"\f20f"} .ion-pause:before{content:"\f210"} .ion-person:before{content:"\f213"} .ion-person-add:before{content:"\f211"} .ion-person-stalker:before{content:"\f212"} .ion-pie-graph:before{content:"\f2a5"} .ion-pin:before{content:"\f2a6"} .ion-pinpoint:before{content:"\f2a7"} .ion-pizza:before{content:"\f2a8"} .ion-plane:before{content:"\f214"} .ion-planet:before{content:"\f343"} .ion-play:before{content:"\f215"} .ion-playstation:before{content:"\f30a"} .ion-plus:before{content:"\f218"} .ion-plus-circled:before{content:"\f216"} .ion-plus-round:before{content:"\f217"} .ion-podium:before{content:"\f344"} .ion-pound:before{content:"\f219"} .ion-power:before{content:"\f2a9"} .ion-pricetag:before{content:"\f2aa"} .ion-pricetags:before{content:"\f2ab"} .ion-printer:before{content:"\f21a"} .ion-pull-request:before{content:"\f345"} .ion-qr-scanner:before{content:"\f346"} .ion-quote:before{content:"\f347"} .ion-radio-waves:before{content:"\f2ac"} .ion-record:before{content:"\f21b"} .ion-refresh:before{content:"\f21c"} .ion-reply:before{content:"\f21e"} .ion-reply-all:before{content:"\f21d"} .ion-ribbon-a:before{content:"\f348"} .ion-ribbon-b:before{content:"\f349"} .ion-sad:before{content:"\f34a"} .ion-sad-outline:before{content:"\f4d7"} .ion-scissors:before{content:"\f34b"} .ion-search:before{content:"\f21f"} .ion-settings:before{content:"\f2ad"} .ion-share:before{content:"\f220"} .ion-shuffle:before{content:"\f221"} .ion-skip-backward:before{content:"\f222"} .ion-skip-forward:before{content:"\f223"} .ion-social-android:before{content:"\f225"} .ion-social-android-outline:before{content:"\f224"} .ion-social-angular:before{content:"\f4d9"} .ion-social-angular-outline:before{content:"\f4d8"} .ion-social-apple:before{content:"\f227"} .ion-social-apple-outline:before{content:"\f226"} .ion-social-bitcoin:before{content:"\f2af"} .ion-social-bitcoin-outline:before{content:"\f2ae"} .ion-social-buffer:before{content:"\f229"} .ion-social-buffer-outline:before{content:"\f228"} .ion-social-chrome:before{content:"\f4db"} .ion-social-chrome-outline:before{content:"\f4da"} .ion-social-codepen:before{content:"\f4dd"} .ion-social-codepen-outline:before{content:"\f4dc"} .ion-social-css3:before{content:"\f4df"} .ion-social-css3-outline:before{content:"\f4de"} .ion-social-designernews:before{content:"\f22b"} .ion-social-designernews-outline:before{content:"\f22a"} .ion-social-dribbble:before{content:"\f22d"} .ion-social-dribbble-outline:before{content:"\f22c"} .ion-social-dropbox:before{content:"\f22f"} .ion-social-dropbox-outline:before{content:"\f22e"} .ion-social-euro:before{content:"\f4e1"} .ion-social-euro-outline:before{content:"\f4e0"} .ion-social-facebook:before{content:"\f231"} .ion-social-facebook-outline:before{content:"\f230"} .ion-social-foursquare:before{content:"\f34d"} .ion-social-foursquare-outline:before{content:"\f34c"} .ion-social-freebsd-devil:before{content:"\f2c4"} .ion-social-github:before{content:"\f233"} .ion-social-github-outline:before{content:"\f232"} .ion-social-google:before{content:"\f34f"} .ion-social-google-outline:before{content:"\f34e"} .ion-social-googleplus:before{content:"\f235"} .ion-social-googleplus-outline:before{content:"\f234"} .ion-social-hackernews:before{content:"\f237"} .ion-social-hackernews-outline:before{content:"\f236"} .ion-social-html5:before{content:"\f4e3"} .ion-social-html5-outline:before{content:"\f4e2"} .ion-social-instagram:before{content:"\f351"} .ion-social-instagram-outline:before{content:"\f350"} .ion-social-javascript:before{content:"\f4e5"} .ion-social-javascript-outline:before{content:"\f4e4"} .ion-social-linkedin:before{content:"\f239"} .ion-social-linkedin-outline:before{content:"\f238"} .ion-social-markdown:before{content:"\f4e6"} .ion-social-nodejs:before{content:"\f4e7"} .ion-social-octocat:before{content:"\f4e8"} .ion-social-pinterest:before{content:"\f2b1"} .ion-social-pinterest-outline:before{content:"\f2b0"} .ion-social-python:before{content:"\f4e9"} .ion-social-reddit:before{content:"\f23b"} .ion-social-reddit-outline:before{content:"\f23a"} .ion-social-rss:before{content:"\f23d"} .ion-social-rss-outline:before{content:"\f23c"} .ion-social-sass:before{content:"\f4ea"} .ion-social-skype:before{content:"\f23f"} .ion-social-skype-outline:before{content:"\f23e"} .ion-social-snapchat:before{content:"\f4ec"} .ion-social-snapchat-outline:before{content:"\f4eb"} .ion-social-tumblr:before{content:"\f241"} .ion-social-tumblr-outline:before{content:"\f240"} .ion-social-tux:before{content:"\f2c5"} .ion-social-twitch:before{content:"\f4ee"} .ion-social-twitch-outline:before{content:"\f4ed"} .ion-social-twitter:before{content:"\f243"} .ion-social-twitter-outline:before{content:"\f242"} .ion-social-usd:before{content:"\f353"} .ion-social-usd-outline:before{content:"\f352"} .ion-social-vimeo:before{content:"\f245"} .ion-social-vimeo-outline:before{content:"\f244"} .ion-social-whatsapp:before{content:"\f4f0"} .ion-social-whatsapp-outline:before{content:"\f4ef"} .ion-social-windows:before{content:"\f247"} .ion-social-windows-outline:before{content:"\f246"} .ion-social-wordpress:before{content:"\f249"} .ion-social-wordpress-outline:before{content:"\f248"} .ion-social-yahoo:before{content:"\f24b"} .ion-social-yahoo-outline:before{content:"\f24a"} .ion-social-yen:before{content:"\f4f2"} .ion-social-yen-outline:before{content:"\f4f1"} .ion-social-youtube:before{content:"\f24d"} .ion-social-youtube-outline:before{content:"\f24c"} .ion-soup-can:before{content:"\f4f4"} .ion-soup-can-outline:before{content:"\f4f3"} .ion-speakerphone:before{content:"\f2b2"} .ion-speedometer:before{content:"\f2b3"} .ion-spoon:before{content:"\f2b4"} .ion-star:before{content:"\f24e"} .ion-stats-bars:before{content:"\f2b5"} .ion-steam:before{content:"\f30b"} .ion-stop:before{content:"\f24f"} .ion-thermometer:before{content:"\f2b6"} .ion-thumbsdown:before{content:"\f250"} .ion-thumbsup:before{content:"\f251"} .ion-toggle:before{content:"\f355"} .ion-toggle-filled:before{content:"\f354"} .ion-transgender:before{content:"\f4f5"} .ion-trash-a:before{content:"\f252"} .ion-trash-b:before{content:"\f253"} .ion-trophy:before{content:"\f356"} .ion-tshirt:before{content:"\f4f7"} .ion-tshirt-outline:before{content:"\f4f6"} .ion-umbrella:before{content:"\f2b7"} .ion-university:before{content:"\f357"} .ion-unlocked:before{content:"\f254"} .ion-upload:before{content:"\f255"} .ion-usb:before{content:"\f2b8"} .ion-videocamera:before{content:"\f256"} .ion-volume-high:before{content:"\f257"} .ion-volume-low:before{content:"\f258"} .ion-volume-medium:before{content:"\f259"} .ion-volume-mute:before{content:"\f25a"} .ion-wand:before{content:"\f358"} .ion-waterdrop:before{content:"\f25b"} .ion-wifi:before{content:"\f25c"} .ion-wineglass:before{content:"\f2b9"} .ion-woman:before{content:"\f25d"} .ion-wrench:before{content:"\f2ba"} .ion-xbox:before{content:"\f30c"} 12 | -------------------------------------------------------------------------------- /style/vendor/ionicons-2.0.1/fonts/ionicons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/ionicons-2.0.1/fonts/ionicons.eot -------------------------------------------------------------------------------- /style/vendor/ionicons-2.0.1/fonts/ionicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/ionicons-2.0.1/fonts/ionicons.ttf -------------------------------------------------------------------------------- /style/vendor/ionicons-2.0.1/fonts/ionicons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tjeffree/pihole-manager/4b9f452170ba605666a2331f2648b12cc3e6ed23/style/vendor/ionicons-2.0.1/fonts/ionicons.woff -------------------------------------------------------------------------------- /style/vendor/skin-blue.min.css: -------------------------------------------------------------------------------- 1 | .skin-blue .main-header .navbar{background-color:#3c8dbc}.skin-blue .main-header .navbar .nav>li>a{color:#fff}.skin-blue .main-header .navbar .nav>li>a:hover,.skin-blue .main-header .navbar .nav>li>a:active,.skin-blue .main-header .navbar .nav>li>a:focus,.skin-blue .main-header .navbar .nav .open>a,.skin-blue .main-header .navbar .nav .open>a:hover,.skin-blue .main-header .navbar .nav .open>a:focus{background:rgba(0,0,0,0.1);color:#f6f6f6}.skin-blue .main-header .navbar .sidebar-toggle{color:#fff}.skin-blue .main-header .navbar .sidebar-toggle:hover{color:#f6f6f6;background:rgba(0,0,0,0.1)}.skin-blue .main-header .navbar .sidebar-toggle{color:#fff}.skin-blue .main-header .navbar .sidebar-toggle:hover{background-color:#367fa9}@media (max-width:767px){.skin-blue .main-header .navbar .dropdown-menu li.divider{background-color:rgba(255,255,255,0.1)}.skin-blue .main-header .navbar .dropdown-menu li a{color:#fff}.skin-blue .main-header .navbar .dropdown-menu li a:hover{background:#367fa9}}.skin-blue .main-header .logo{background-color:#367fa9;color:#fff;border-bottom:0 solid transparent}.skin-blue .main-header .logo:hover{background-color:#357ca5}.skin-blue .main-header li.user-header{background-color:#3c8dbc}.skin-blue .content-header{background:transparent}.skin-blue .wrapper,.skin-blue .main-sidebar,.skin-blue .left-side{background-color:#222d32}.skin-blue .user-panel>.info,.skin-blue .user-panel>.info>a{color:#fff}.skin-blue .sidebar-menu>li.header{color:#4b646f;background:#1a2226}.skin-blue .sidebar-menu>li>a{border-left:3px solid transparent}.skin-blue .sidebar-menu>li:hover>a,.skin-blue .sidebar-menu>li.active>a{color:#fff;background:#1e282c;border-left-color:#3c8dbc}.skin-blue .sidebar-menu>li>.treeview-menu{margin:0 1px;background:#2c3b41}.skin-blue .sidebar a{color:#b8c7ce}.skin-blue .sidebar a:hover{text-decoration:none}.skin-blue .treeview-menu>li>a{color:#8aa4af}.skin-blue .treeview-menu>li.active>a,.skin-blue .treeview-menu>li>a:hover{color:#fff}.skin-blue .sidebar-form{border-radius:3px;border:1px solid #374850;margin:10px 10px}.skin-blue .sidebar-form input[type="text"],.skin-blue .sidebar-form .btn{box-shadow:none;background-color:#374850;border:1px solid transparent;height:35px;-webkit-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.skin-blue .sidebar-form input[type="text"]{color:#666;border-top-left-radius:2px;border-top-right-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:2px}.skin-blue .sidebar-form input[type="text"]:focus,.skin-blue .sidebar-form input[type="text"]:focus+.input-group-btn .btn{background-color:#fff;color:#666}.skin-blue .sidebar-form input[type="text"]:focus+.input-group-btn .btn{border-left-color:#fff}.skin-blue .sidebar-form .btn{color:#999;border-top-left-radius:0;border-top-right-radius:2px;border-bottom-right-radius:2px;border-bottom-left-radius:0}.skin-blue.layout-top-nav .main-header>.logo{background-color:#3c8dbc;color:#fff;border-bottom:0 solid transparent}.skin-blue.layout-top-nav .main-header>.logo:hover{background-color:#3b8ab8} --------------------------------------------------------------------------------